* gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
[bpt/emacs.git] / src / ChangeLog
CommitLineData
74cdfe05
JD
12004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
4 gpix and gmask just before return to avoid memory leak.
5
ef544dc8
JR
62004-06-27 Jason Rumney <jasonr@gnu.org>
7
8 * w32fns.c (file_dialog_callback): Disable edit control if set
9 to directories only on CDN_INITDONE message.
10 (Fx_file_dialog): Default to directories only when prompt starts
11 with "Dired".
12
7b7990cc
KS
132004-06-25 Kim F. Storm <storm@cua.dk>
14
15 * alloc.c (allocate_misc): Update total_free_markers.
16 (free_misc): New function.
17 (safe_alloca_unwind, free_marker): Use it.
18
19 * lisp.h (free_misc): Add prototype.
20
21 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
22
d8c379f8
RS
232004-06-24 Richard M. Stallman <rms@gnu.org>
24
25 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
26 (syms_of_emacs): Lisp variables deleted.
27
559cdd07
DK
282004-06-23 David Kastrup <dak@gnu.org>
29
94939b84
DK
30 * search.c (Freplace_match): Adjust the match-data more thoroughly
31 when replacing strings in the buffer.
32 (Fmatch_data): When INTEGERS is non-nil and the last match was in
33 a buffer, add the buffer as last element to the match data.
34 (Fset_match_data): If an additional element of the match-data is a
35 buffer, restore it to last_thing_searched.
559cdd07
DK
36 (save_search_regs): Save last_thing_searched as part of the match
37 data.
38 (restore_match_data): Restore it again.
39
dce417e7
LT
402004-06-23 Luc Teirlinck <teirllm@auburn.edu>
41
42 * keymap.c (Ftext_char_description): Doc fix.
43 * doc.c (Fsnarf_documentation): Doc fix.
44
ef54b2d0
KS
452004-06-22 Kim F. Storm <storm@cua.dk>
46
b5bc4d05
KS
47 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
48
ef54b2d0
KS
49 * lisp.h (struct Lisp_Save_Value): New member dogc.
50 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
51 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
52 (SAFE_FREE_LISP): New macro.
53
54 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
55 (make_save_value): Init new dogc member.
56 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
57
58 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
59 SAFE_FREE_LISP macros.
60
3d33d993
KS
612004-06-22 Kim F. Storm <storm@cua.dk>
62
63 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
64 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
65 in that memory area are unknown to GC. Add comments.
66
67 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
68
5c917f98
KS
692004-06-21 Kim F. Storm <storm@cua.dk>
70
71 * lisp.h (MAX_ALLOCA): Define here.
72 (safe_alloca_unwind): Add prototype.
73 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
74
75 * alloc.c (safe_alloca_unwind): New function.
76
77 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
78
79 * charset.c (Fstring): Use SAFE_ALLOCA.
80
81 * coding.c (MAX_ALLOCA): Remove define.
82
83 * data.c (MAX_ALLOCA): Remove define.
84 (Faset): Use SAFE_ALLOCA.
85
86 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
87
88 * fns.c (string_make_multibyte, string_to_multibyte)
89 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
90 (MAX_ALLOCA): Remove define.
91 (Fbase64_encode_region, Fbase64_encode_string)
92 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
93 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
94 memory leak if encoding fails.
95
96 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
97
9a09408e
EZ
982004-06-21 Eli Zaretskii <eliz@gnu.org>
99
100 * print.c (Fwith_output_to_temp_buffer): Doc fix.
101
376de739
RS
1022004-06-20 Richard M. Stallman <rms@gnu.org>
103
104 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
105
106 * search.c (match_limit): Cleaner err msg when no match data available.
107
108 * window.c (syms_of_window): Doc fix.
109
110 * keyboard.c (command_loop_1): Handle values `only' and `identity'
111 for Vtransient_mark_mode.
112
113 * buffer.c (syms_of_buffer): Doc fix.
114
acd81db9
DK
1152004-06-21 David Kastrup <dak@gnu.org>
116
117 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
118 and unbinding of `case-fold-search' according to
119 `completion-ignore-case' around calls of string-match and
120 predicates, respectively. Should give satisfactory performance
121 in all relevant cases.
122
f303762d
JD
1232004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
124
95911c74
JD
125 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
126 clip_x/y_origin.
127
a6cb6b78
JD
128 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
129
f303762d
JD
130 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
131
132 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
133 on Mac OSX.
134
bbdb2684
LT
1352004-06-16 Luc Teirlinck <teirllm@auburn.edu>
136
137 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
138
5ea48b1c
KS
1392004-06-16 Kim F. Storm <storm@cua.dk>
140
141 * dispextern.h (Vimage_types): Remove extern.
142
803aac3e
MB
1432004-06-16 Miles Bader <miles@gnu.org>
144
145 * image.c (lookup_image_type): Initialize image type if necessary.
146
cdc97764
KS
1472004-06-15 Kim F. Storm <storm@cua.dk>
148
c4a5739c
KS
149 * xdisp.c (try_cursor_movement): Exclude header line from scroll
150 margin at top of window.
151 (try_window_reusing_current_matrix): Calculate proper cursor position
152 after scrolling up with non-zero scroll margin, as the old cursor
153 position corresponds to value of PT before executing this command.
154 (try_window_id): Consider scroll margin at bottom of window too;
155 otherwise we fail to scroll when hl-line-mode is enabled.
156
cdc97764
KS
157 * syntax.c (skip_chars): Only recognize [:class:] when it has the
158 proper format and class is a lower-case word.
159
5b166323
JD
1602004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
161
162 * gtkutil.c (xg_get_image_for_pixmap): New function.
163 (xg_get_gdk_pixmap_and_mask): Removed.
164 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
165 xg_get_gdk_pixmap_and_mask.
cdc97764 166
5b166323
JD
167 * xterm.h (struct x_display_info): Typo in comment fixed.
168
1ebd4f78
JB
1692004-06-14 Juanma Barranquero <lektu@terra.es>
170
171 * dispextern.h (Vimage_types): Make it conditional on
172 HAVE_WINDOW_SYSTEM.
173
174 * image.c (Vimage_types): Move from xdisp.c.
175 (Vimage_type_cache): New variable.
176 (define_image_type): New argument indicating whether an image
177 library was loaded; cache loaded status and return t on success,
178 nil otherwise.
179 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
180 (w32_delayed_load): New function to load an image library from a
181 list of possible filenames.
182 (init_xpm_functions, init_png_functions, init_jpeg_functions)
183 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
184 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
185 argument.
186 (Finit_image_library): New function, extracted from `init_image'.
187 Try to initialize an image library on demand and cache whether we
188 were successful or not.
189 (syms_of_image): Initialize `Vimage_types' and
190 `Vimage_type_cache'. Add recognized image types to Vimage_types.
191 Export `init-image-library'.
192 (init_image): Remove initialization of all image types, except xbm
193 and pbm.
194
195 * xdisp.c (Vimage_types): Delete (moved to image.c).
196
904ee128
AS
1972004-06-14 Andreas Schwab <schwab@suse.de>
198
199 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
200 Avoid calling specbind when completion-regexp-list is empty.
201
092de21d
RS
2022004-06-13 Richard M. Stallman <rms@gnu.org>
203
204 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
205 (re_wctype, re_iswctype, re_wctype_to_bit):
206 Non-function definitions moved here from regex.c.
1ebd4f78 207
092de21d
RS
208 * regex.c (re_wctype, re_iswctype): Function defs longer static.
209 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
210 (re_wctype, re_iswctype, re_wctype_to_bit):
211 Non-function definitions moved to regex.h.
212
213 * window.c (Fselect_window): Doc fix.
214
215 * syntax.c: Include regex.h.
216 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
217 If requested, make a list of classes, then check the scanned
218 chars for membership in them.
219 (in_classes): New function.
220 Doc fix.
221
222 * keyboard.c (cmd_error): Don't call any_kboard_state
223 if inside a recursive edit level.
224
2252004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
226
227 * keyboard.c (command_loop): Call any_kboard_state before
228 command_loop_2 when at top level.
229
3ebc0939
AS
2302004-06-13 Andreas Schwab <schwab@suse.de>
231
cea5d0d4
AS
232 * print.c (print_object): Always use %ld for printing EMACS_INT.
233
234 * keyboard.c (cancel_hourglass_unwind): Return a value.
235 (modify_event_symbol): Always use %ld for printing EMACS_INT.
236 (Fexecute_extended_command): Likewise.
237
238 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
239 avoid clashes.
240 (SYNTAX): Likewise.
241 (SYNTAX_WITH_FLAGS): Likewise.
242 (SYNTAX_MATCH): Likewise.
243
244 * syntax.c (char_quoted): Avoid warning about undefined operation.
245 (find_defun_start): Likewise.
246 (scan_lists): Likewise.
247 (INC_FROM): Likewise.
248 (scan_sexps_forward): Likewise.
249
be8c4ce4
AS
250 * image.c: Include <ctype.h>.
251
3ebc0939
AS
252 * xfaces.c (face_attr_equal_p): Declare parameters.
253
6fb41b5b
KH
2542004-06-13 Kenichi Handa <handa@m17n.org>
255
256 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
257
fc3095ce
EZ
2582004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
259
260 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
261
66189a40
KH
2622004-06-12 Kenichi Handa <handa@m17n.org>
263
264 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
265 ccl_prog_stack_struct and update it.
266 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
267 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
268 ccl->eof_ic on EOF.
269 (ccl_debug_hook): New function.
270 (struct ccl_prog_stack): New member eof_ic.
271 (ccl_driver): Handle EOF in subrountine call correctly.
272
2732004-06-11 Kenichi Handa <handa@m17n.org>
274
275 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
276
1da71023
KS
2772004-06-11 Kim F. Storm <storm@cua.dk>
278
279 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
280
e9efcef4
JB
2812004-06-11 Juanma Barranquero <lektu@terra.es>
282
283 * keyboard.c (Fposn_at_point): Doc fix.
284
9b9ceb61
DK
2852004-06-11 David Kastrup <dak@gnu.org>
286
287 * search.c (match_limit): Don't flag an error if match-data
288 exceeding the allocated search_regs.num_regs gets requested, just
289 return Qnil.
290
6e87ac8f
MB
2912004-06-08 Miles Bader <miles@gnu.org>
292
293 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
294
0b0dea7b
JB
2952004-06-07 Juanma Barranquero <lektu@terra.es>
296
297 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
298 (Fcurrent_time_string, Fcurrent_time_zone)
299 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
300
a0a23346
MB
3012004-06-07 Miles Bader <miles@gnu.org>
302
08384afd 303 * xfaces.c (struct named_merge_point): New type.
a0a23346
MB
304 (push_named_merge_point): New function.
305 (merge_named_face): New function.
306 (merge_face_ref, face_at_buffer_position, face_at_string_position):
307 Use `merge_named_face'.
308 (merge_face_inheritance): Function removed.
309 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
310 Add new `err_msgs' and `named_merge_points' args. Return error
311 status. Only print error messages if ERR_MSGS is true. Don't try to
312 do :inherit attribute validation.
313 (merge_face_heights): Handle `unspecified' in both directions.
314 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
315 Call `merge_face_ref' instead of `merge_face_inheritance'.
316 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
317 (compute_char_face, face_at_buffer_position)
318 (face_at_string_position): Call `merge_face_ref' instead of
319 `merge_face_vector_with_property'.
320
12d5b185
KH
3212004-06-07 Kenichi Handa <handa@m17n.org>
322
323 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
324 the necessary places.
325
2e2d7ee6
KS
3262004-06-07 Kim F. Storm <storm@cua.dk>
327
328 * process.c (Fdelete_process): Undo 2004-05-28 change.
329 Instead, call status_notify also for network process.
330 (status_message): Use process instead of status as arg.
331 Give messages "deleted" or "connection broken by remote peer" for
332 an exited network process.
333 (status_notify): Change call to status_message.
334 (read_process_output): Increase readmax to 4096. Do not increase
335 buffer size for datagram channels (default is now large enough).
336
fcf0d299
ST
3372004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
338
339 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
340 problem due to newly defined variable.
341
0722292b
MB
3422004-06-06 Miles Bader <miles@gnu.org>
343
344 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
345 immediately if non-interactive or not initialized.
346
ddfb8369
RS
3472004-06-05 Richard M. Stallman <rms@gnu.org>
348
349 * minibuf.c (Fcompleting_read): Doc fix.
350
57015754
AS
3512004-06-05 Andreas Schwab <schwab@suse.de>
352
353 * macfns.c (x_create_tip_frame): Fix declaration after statement.
354
23715ea6
JB
3552004-06-05 Juanma Barranquero <lektu@terra.es>
356
357 * keymap.c (Fdescribe_vector): Fix docstring.
358 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
359
8e330b22
MB
3602004-06-05 Miles Bader <miles@gnu.org>
361
362 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
363 attributes have different values than the default face.
364
9742a3a6
EZ
3652004-06-04 Eli Zaretskii <eliz@gnu.org>
366
367 * xfaces.c (x_supports_face_attributes_p): Make this function
368 conditional on HAVE_WINDOW_SYSTEM.
369 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
370 call x_supports_face_attributes_p if it was not compiled in.
371
9717e36c
MB
3722004-06-04 Miles Bader <miles@gnu.org>
373
374 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
375 from Ftty_supports_face_attributes_p.
376 (x_supports_face_attributes_p): New function.
377 (Ftty_supports_face_attributes_p): Function deleted.
378 (Fdisplay_supports_face_attributes_p): New function.
379 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
f9711de4 380 (face_attr_equal_p): New function.
9717e36c
MB
381 (lface_equal_p): Use it.
382
52deb19f
JB
3832004-06-03 Juanma Barranquero <lektu@terra.es>
384
385 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
386 (Vw32_color_map): Fix typo in docstring.
387 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
388 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
389 Make argument names match their use in docstring.
390
86d373e6
JB
3912004-06-02 Juanma Barranquero <lektu@terra.es>
392
393 Work around bugs/problems with MinGW builds of graphics libraries
394 called from MSVC builds of Emacs.
395
396 * image.c (lookup_image): Make pointer to img static.
397 (png_read_from_memory): Disable "global" optimization.
398
2fb0ce67
SM
3992004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
400
401 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
402
50bf7673
ST
4032004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
404
405 * macfns.c: Don't include ccl.h.
406 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
86d373e6
JB
407 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
408 TextUtils.h.
409 (Fx_create_frame): Sync with xfns.c. Initialize cursor
410 descriptors.
50bf7673
ST
411 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
412 display height/width.
413 (compute_tip_xy, Vx_max_tooltip_size): Declare.
414 (unwind_create_tip_frame, compute_tip_xy): New functions.
415 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
416 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
417 and last_show_tip_args.
2fb0ce67 418
50bf7673
ST
419 * macgui.h [!MAC_OSX]: Include Gestalt.h.
420 (Cursor, No_Cursor): New defines.
86d373e6
JB
421 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
422 macro.
50bf7673
ST
423 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
424
425 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
426
427 * macterm.c: Don't include Gestalt.h.
428 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
429 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
430 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
431 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
432 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
433 (construct_mouse_click, XTmouse_position)
434 (x_scroll_bar_report_motion, x_calc_absolute_position)
435 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
436 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
437 (note_mouse_movement): Clear the mouse face and reset the pointer
438 shape when the pointer goes outside the frame without grabbing.
439 (mac_front_window): New function.
440 (mac_window_to_frame): New macro.
441 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
442 (do_window_activate, do_window_deactivate, do_app_resume)
443 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
444 (do_zoom_window, mac_do_receive_drag, XTread_socket)
445 (mac_check_for_quit_char): Use mac_front_window and/or
446 mac_window_to_frame.
447 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
448 scroll-bar click event.
449 (mac_define_frame_cursor): Change the pointer shape.
86d373e6
JB
450 (x_free_frame_resources): Reset tip_window to NULL when it is
451 disposed.
50bf7673 452 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
86d373e6
JB
453 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
454 arrow_cursor.
50bf7673
ST
455 (do_window_update): Don't do anything if the updated window is the
456 tooltip window.
457 (do_mouse_moved): Handle mouse movement events here (previously in
458 XTread_socket). Clear the mouse face if
459 dpyinfo->mouse_face_hidden is set.
460 (do_os_event, do_events): Remove (now in XTread_socket).
461 (XTread_socket): Immediately return if interrupt_input_blocked.
86d373e6
JB
462 Loop until all the events in the queue are processed. Rearrange
463 codes for mouse grabbing. Add tooltip support. Include the
50bf7673
ST
464 contents of do_os_event and do_events. Remove mouse movement
465 handling (now in do_mouse_moved). Add the case where
466 Vmouse_highlight has an integer value.
467 (NewMacWindow): Remove.
468 (make_mac_frame): Do what NewMacWindow previously did. Don't do
469 excess initializations.
470 (make_mac_terminal_frame): Previous initializations in
471 make_mac_frame are moved here.
86d373e6
JB
472 (mac_initialize_display_info): Initialize
473 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
50bf7673
ST
474
475 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
476 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
477
08fd1251
RS
4782004-05-29 Richard M. Stallman <rms@gnu.org>
479
480 * lisp.h (truncate_undo_list): Update decl.
481
482 * alloc.c (undo_outer_limit): New variable.
483 (syms_of_alloc): Defvar it.
484 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
485
486 * undo.c (truncate_undo_list): New arg LIMITSIZE.
487
488 * alloc.c (lisp_align_malloc): Check for base == 0
489 regardless of HAVE_POSIX_MEMALIGN.
490 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
491
227ef0ff
SM
4922004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
493
494 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
495 (marker_blocks_pending_free): Remove.
496 (Fgarbage_collect): Sweep after cleaning up undo-lists.
497 Mark the undo lists after claning them up.
498 Don't free block in marker_blocks_pending_free.
499 (mark_buffer): Don't mark undo_list.
500 (gc_sweep): Sweep hash-tables and strings first.
501 Do free marker blocks that are empty.
502
034a6113
SM
5032004-05-28 Jim Blandy <jimb@redhat.com>
504
505 * regex.c (print_partial_compiled_pattern): Add missing 'break'
506 after 'case wordend'. For symbeg and symend, print to stderr,
507 like the other cases.
508
33594a8d
NF
5092004-05-28 Noah Friedman <friedman@splode.com>
510
511 * process.c (Fdelete_process): Do not call remove_process.
512
ce50a847
SM
5132004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
514
515 * alloc.c (struct backtrace): Remove.
516 (Fgarbage_collect): Use the new mark_backtrace.
517
518 * eval.c (mark_backtrace): New function.
519
520 * minibuf.c (run_exit_minibuf_hook): New function.
521 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
522 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
523
1e8dae36
KS
5242004-05-27 Kim F. Storm <storm@cua.dk>
525
526 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
527 over display properties, e.g. images, that replace buffer text.
528
846faa3b
KS
5292004-05-25 Kim F. Storm <storm@cua.dk>
530
531 * alloc.c (marker_blocks_pending_free): New var.
532 (gc_sweep): Store free marker blocks on that list.
533 (Fgarbage_collect): Free them after undo-list cleanup.
534
535 * process.c (wait_reading_process_input): Check connect_wait_mask
536 before actually accepting connection in case it has already been
537 accepted due to recursion.
538
6239a668
KH
5392004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
540
ce50a847
SM
541 * coding.c (Fset_safe_terminal_coding_system_internal):
542 Set suppress_error in safe_terminal_coding, not terminal_coding.
6239a668 543
71d5a208
RS
5442004-05-22 Richard M. Stallman <rms@gnu.org>
545
546 * alloc.c (Fmake_string): Doc fix.
547
548 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
549 and the alist pairs too.
550
551 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
552
553 * emacs.c (main): Update copyright year.
554
555 * fileio.c (Fread_file_name): Expand DIR if not absolute.
556
557 * insdel.c (del_range_2, replace_range): Don't write an anchor
558 if the gap is empty.
559
560 * xdisp.c (try_scrolling): If scroll-up-aggressively or
561 scroll-down-aggressively is small but positive, put point
562 near the screen edge.
563
f63fd14e
JB
5642004-05-22 Juanma Barranquero <lektu@terra.es>
565
566 * keymap.c (Fdefine_key): Doc fix.
567
4d12067c
KS
5682004-05-22 Kim F. Storm <storm@cua.dk>
569
570 * alloc.c (struct backtrace): Add debug_on_exit member.
571 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
572 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
573 the removed cons cells.
574 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
575 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
576 any cons cells pointing to unallocated stings.
577 Do not lisp_free any marker blocks, as there may still be pointers
578 to them from buffer undo lists at this stage of GC.
579
580 * keyboard.c (struct backtrace): Add debug_on_exit member.
581 (Fcommand_execute): Clear it.
582
931285e2
LT
5832004-05-20 Luc Teirlinck <teirllm@auburn.edu>
584
585 * intervals.c (lookup_char_property): Do not prematurely return nil.
586
669fa600
SM
5872004-05-19 Jim Blandy <jimb@redhat.com>
588
589 Add support for new '\_<' and '\_>' regexp operators, matching the
f63fd14e 590 beginning and end of symbols.
4d12067c 591
669fa600
SM
592 * regex.c (enum syntaxcode): Add Ssymbol.
593 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
594 (re_opcode_t): New opcodes `symbeg' and `symend'.
595 (print_partial_compiled_pattern): Print the new opcodes properly.
596 (regex_compile): Parse the new operators.
ce50a847 597 (analyse_first): Skip sym(beg|end) (they match only the empty string).
669fa600
SM
598 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
599 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
600 (re_match_2_internal): Match symbeg and symend.
601
602 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
603
0d8c2e5c
KS
6042004-05-19 Kim F. Storm <storm@cua.dk>
605
606 * .gdbinit (xsymbol): Fix last change.
607
669fa600
SM
6082004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
609
610 * .gdbinit (xprintstr): New fun.
611 (xstring, xprintsym): Use it.
612
613 * w32proc.c (create_child): Use INTMASK.
614
615 * alloc.c (Fgarbage_collect): Do all the marking before flushing
616 unmarked elements of the undo list.
617
9a6a4c40
DP
6182004-05-18 David Ponce <david@dponce.com>
619
620 * print.c (print): Reset print_depth before to call print_object.
621
f3c4ec74
JR
6222004-05-18 Jason Rumney <jasonr@gnu.org>
623
624 * w32console.c: Prefix RIF functions with w32con_ to avoid
625 namespace clash with functions in term.c and w32term.c.
626
627 * w32menu.c (add_menu_item, w32_menu_display_help)
628 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
629
0d8c2e5c 630 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
f3c4ec74 631
6be49c3a
EZ
6322004-05-18 Eli Zaretskii <eliz@gnu.org>
633
4d0b9a0a
EZ
634 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
635
6be49c3a
EZ
636 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
637 with make_number.
638 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
639 with XINT.
640
0bc90bba
KS
6412004-05-18 Kim F. Storm <storm@cua.dk>
642
89d19988
KS
643 * blockinput.h (INPUT_BLOCKED_P): New macros.
644
645 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
646 (Ftop_level): Unblock input if blocked.
647
0bc90bba
KS
648 * buffer.h (GET_OVERLAYS_AT): New macro.
649 * msdos.c (IT_note_mouse_highlight): Use it.
650 * textprop.c (get_char_property_and_overlay): Use it.
651 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
652 * xfaces.c (face_at_buffer_position): Use it.
653
654 * print.c (print_object): Increase buf size.
655
653bd0f6
JR
6562004-05-17 Jason Rumney <jasonr@gnu.org>
657
658 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
659 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
660 Lisp_Object using i member.
661 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
662 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
663 consistently.
664
665 * w32proc.c (create_child): Use make_number instead of masking pid.
666
667 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
668 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
669 Use EQ to compare Lisp_Objects.
670 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
671
672 * w32term.c (w32_num_mouse_buttons): Rename from
673 Vw32_num_mouse_buttons and make it an int.
674
675 * w32.c (init_environment): Use it.
676
677 * w32fns.c (w32_wnd_proc): Likewise.
678
679 * w32proc.c (w32_pipe_read_delay): Rename from
680 Vw32_pipe_read_delay and make it an int.
681
682 * w32.c (_sys_read_ahead): Use it.
683
684 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
685
686 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
687
688 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
689 (key_event): Don't mix Lisp_Object and int.
690
691 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
692
693 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
694 modifiers in language change event.
695
54b53ba7
KS
6962004-05-17 Kim F. Storm <storm@cua.dk>
697
698 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
699 Such objects may be freed markers which still exist on an undo list.
700
6e86a75d
JB
7012004-05-16 Juanma Barranquero <lektu@terra.es>
702
703 * data.c (Fset_default): Make argument names match their use in
704 docstring.
705
fc80da24
AS
7062004-05-15 Andreas Schwab <schwab@suse.de>
707
708 * emacs.c (gdb_array_mark_flag): Define.
709 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
710
c1380aa6
EZ
7112004-05-15 Eli Zaretskii <eliz@gnu.org>
712
713 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
714 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
715 defined for the MS-DOS build.
716
89458937
SM
7172004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
718
719 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
720
08020f9a
KH
7212004-05-14 Kenichi Handa <handa@m17n.org>
722
723 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
724
a433994a
ST
7252004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
726
727 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
728 section to frame.c section.
729 (Fxw_display_color_p, Fx_file_dialog): Declare if
89458937 730 HAVE_WINDOW_SYSTEM defined.
0d8c2e5c 731
a433994a 732 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
0d8c2e5c 733
a433994a 734 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
0d8c2e5c 735
a433994a
ST
736 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
737 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
738 (XTread_socket): Fix int/Lisp_Object mixup.
739 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
0d8c2e5c 740
a433994a
ST
741 * macterm.h (struct frame, struct face, struct image)
742 (display_x_get_resource, Fx_display_color_p)
89458937
SM
743 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
744 Add prototypes.
a433994a 745
b51a51b9
KS
7462004-05-14 Kim F. Storm <storm@cua.dk>
747
748 * process.c (wait_reading_process_input): Make reentrant.
749 Make Available and Connecting non-static. Save and restore value
750 of waiting_for_user_input_p.
751
2bde1dd8
KS
7522004-05-13 Kim F. Storm <storm@cua.dk>
753
754 * keyboard.c (mark_kboards): Don't mark x and y members
755 that are overloaded in selection request events.
756
a267ab4d
SM
7572004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
758
759 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
760
eb15ce9e
GM
7612004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
762
763 * window.c (Fdisplay_buffer, Fsplit_window)
764 (split-height-threshold): Doc fix.
765
7fc92635
JB
7662004-05-13 Juanma Barranquero <lektu@terra.es>
767
768 * xfaces.c (Ftty_supports_face_attributes_p)
769 (Finternal_copy_lisp_face): Fix typo in docstring.
770 (Finternal_get_lisp_face_attribute): Fix docstring.
771
1ec2a572
JD
7722004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
773
774 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
775
ae9292e0
ST
7762004-05-11 Steven Tamm <steventamm@mac.com>
777
778 * macfns.c (Fx_create_frame): Default to using tool-bar by
779 setting tool-bar-lines to 1 in default-frame-alist.
780
7812004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ea1aaa6f
ST
782
783 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
784 (xpm_get_color_table_v, xpm_make_color_table_h)
785 (xpm_put_color_table_h, xpm_get_color_table_h)
786 (xpm_str_to_color_key, xpm_load_image, xpm_load)
787 (syms_of_image): Support XPM on Carbon Emacs. Does not
a267ab4d 788 depend on libXpm, but only supports XPM version 3 without extensions.
ea1aaa6f 789
fe97e8df
ST
7902004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
791
a267ab4d 792 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
fe97e8df
ST
793 instead of FRAME_X_P
794
b47e779e
KS
7952004-05-11 Kim F. Storm <storm@cua.dk>
796
797 * process.c (read_process_output): Grow decoding_buf when needed;
798 this could cause a crash in allocate_string and compact_small_strings.
799
cdc9b845
EZ
8002004-04-29 Jim Blandy <jimb@redhat.com>
801
802 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
803 against proper opcode.
804
aa7094ba
JB
8052004-05-10 Juanma Barranquero <lektu@terra.es>
806
807 * process.c (Fstart_process): Fix docstring.
808
809 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
810 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
811 (Fsplit_char, Fchar_charset): Make argument names match their use
812 in docstring.
813
e109331a
RS
8142004-05-10 Richard M. Stallman <rms@gnu.org>
815
816 * print.c (print_preprocess): Use being_printed, loop_count and
817 halftail to detect overdeep nesting and cyclic cdr chains.
818
9a28b921
AS
8192004-05-10 Andreas Schwab <schwab@suse.de>
820
821 * lisp.h: Declare Fmake_symbolic_link.
822
823 * fileio.c (Frename_file): Remove extra argument in call to
824 Fmake_symbolic_link.
825
e2c02c1a
KS
8262004-05-10 Kim F. Storm <storm@cua.dk>
827
828 * xdisp.c (calc_line_height_property): Use string position when
829 object is a string.
830
cfe9d13e
KH
8312004-05-10 Kenichi Handa <handa@m17n.org>
832
a57e8159
KH
833 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
834 inhibit-modification-hooks to t temporarily before calling
835 Ferase_buffer.
836
837 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
838 inhibit-modification-hooks to t temporarily before calling
839 Ferase_buffer.
840
841 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
842 inhibit-modification-hooks to t temporarily before calling
843 Ferase_buffer.
844
cfe9d13e
KH
845 * fns.c (count_combining): Delete it.
846 (concat): Don't check combining bytes.
847
ceb96489
JR
8482004-05-09 Jason Rumney <jasonr@gnu.org>
849
850 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
851 (globals_of_w32fns): Set it.
852
b1c661c7
JB
8532004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
854
855 * data.c (Fquo): Simplify.
856
28712a21
JB
8572004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
858
859 * data.c (Fquo): If any argument is float, do the computation in
860 floating point.
861
0f0af7a8
JB
8622004-05-08 Juanma Barranquero <lektu@terra.es>
863
88214ef6
JB
864 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
865 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
866 Fix spelling of Emacs on docstring.
867 (Fset_process_coding_system, Fprocess_coding_system)
868 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
869 Make argument names match their use in docstring.
870 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
871 Fix docstring.
872
0f0af7a8
JB
873 * editfns.c (Finsert_buffer_substring): Make argument names match their
874 use in docstring.
875
876 * syntax.c (Fmodify_syntax_entry): Fix docstring.
877
2a316a84
ST
8782004-05-07 Steven Tamm <steventamm@mac.com>
879
880 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
881 around call to ReceiveEvent to avoid certain crashes.
882
8832004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
0d8c2e5c 884
2a316a84
ST
885 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
886 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
887 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
888 Save/restore the current graphics port and device handle when
889 drawing into an offscreen graphics world.
890
891 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
892 (gif_load): Likewise.
893
ab80314b
JB
8942004-05-07 Juanma Barranquero <lektu@terra.es>
895
896 * window.c (Fset_window_buffer): Fix docstring.
897
70646bb5
TTN
8982004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
899
900 * emacs.c (main) [VMS]: Fix var ref.
901
b03a4fdd
JB
9022004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
903
904 * data.c (Fsetq_default): Fix docstring.
905
279d3293
JR
9062004-05-06 Jason Rumney <jasonr@gnu.org>
907
908 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
909 to avoid name clash.
910
f72b5416
JD
9112004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
912
913 * fileio.c (barf_or_query_if_file_exists): Use lstat.
914 (Frename_file): Handle renaming of symlinks across file systems.
440c7d00 915 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
f72b5416 916
6ab66799
KS
9172004-05-04 Kim F. Storm <storm@cua.dk>
918
919 * xdisp.c (Qtotal): New var.
920 (syms_of_xdisp): Intern and staticpro it.
921 (calc_line_height_property): New arg total. Set it if
922 line-spacing property has format (total . VALUE).
923 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
924 Handle total line-spacing property.
925
ab2d724b
JD
9262004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
927
928 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
929 "under" scroll bar when size/position changes.
930
238add5e
JR
9312004-05-03 Jason Rumney <jasonr@gnu.org>
932
933 * makefile.nt: Remove.
934
1644f4e4
EZ
9352004-05-02 Eli Zaretskii <eliz@gnu.org>
936
a267ab4d
SM
937 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
938 Avoid compiler warnings.
05fdbeb8 939
1644f4e4
EZ
940 * Makefile.in (region-cache.o): Depend on config.h.
941
6cbc951e
SM
9422004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
943
944 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
945 with continuation lines, too.
946
2b98b088
TTN
9472004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
948
949 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
950
d9bf7950
SM
9512004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
952
953 * xdisp.c (calc_line_height_property): YAILOM (yet another
954 int/Lisp_Object mixup).
955
affa509c
EZ
9562004-05-01 Eli Zaretskii <eliz@gnu.org>
957
958 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
959 undo bad effect of pack(4) in some versions of system headers.
960
07c07cfe
JR
9612004-05-01 Jason Rumney <jasonr@gnu.org>
962
963 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
964
e71caa4e
KS
9652004-04-30 Kim F. Storm <storm@cua.dk>
966
967 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
b2b55d03 968 (syms_of_buffer) <cursor-type>: Doc fix.
e71caa4e
KS
969
970 * dispextern.h (struct it): Remove member use_default_face.
971 Add members override_ascent, override_descent, override_boff.
972
973 * xdisp.c (init_iterator): Handle line-spacing float value.
974 Initialize override_ascent member.
975 (append_space_for_newline): Reset override_ascent.
976 Remove use_default_face.
977 (calc_line_height_property): New function to calculate value of
978 line-height and line-spacing properties. Look at overlays, too.
979 Set override_ascent, override_descent, override_boff members when
980 using another face than the current face. Float values are now
981 relative to the frame default font, by default; accept a cons
982 of ratio and face name to specify value relative to a specific face.
983 (x_produce_glyphs): Use calc_line_height_property.
984 Use override_ascent etc. when set to handle different face heights.
985 A negative line-spacing property value is interpreted as a total
986 line height, rather than inter-line spacing.
987 (note_mouse_highlight): Allocate room for 40 overlays initially.
988
0fddae66
SM
9892004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
990
991 * data.c (Fsubr_name): New fun.
992 (syms_of_data): Defsubr it.
993
712d23dc
KS
9942004-04-29 Kim F. Storm <storm@cua.dk>
995
996 * xdisp.c (null_glyph_slice): New var.
997 (append_glyph, append_composite_glyph, append_stretch_glyph):
998 Use it to initialize glyph slice.
999
033ad8c6
SM
10002004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1001
1002 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1003 (on_hot_spot_p): Make sure we always return a value.
1004 (Flookup_image_map): Remove unused var ix and iy.
1005 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1006
93397360
EZ
10072004-04-27 Eli Zaretskii <eliz@gnu.org>
1008
1009 * msdos.c (init_environment): If one of the TMP... environment
1010 variables is set to a drive letter without a trailing slash,
1011 append a slash.
1012
0c54865e
EZ
10132004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1014
1015 * editfns.c (lisp_time_argument): Provide externally.
1016
1017 * fileio.c (Fset_file_times): New function.
1018 (syms_of_fileio): Intern and staticpro it.
1019
d3b111bd
KS
10202004-04-27 Kim F. Storm <storm@cua.dk>
1021
07dc1231
KS
1022 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1023 header line strings.
1024
360fe9d2
KS
1025 * dispextern.h (struct it): New member use_default_face.
1026
d3b111bd
KS
1027 * xdisp.c (Qline_height): New variable.
1028 (syms_of_xdisp): Intern and staticpro it.
1029 (append_space_for_newline): Partially undo 2004-04-25 change;
1030 add default_face_p arg, and restore callers.
1031 Clear it->use_default_face after use.
1032 (x_produce_glyphs): Set default font for ascii char if
1033 it->use_default_font is set. Change line-spacing property to set
1034 just extra line spacing. Handle new line-height property.
1035
0448588b
AS
10362004-04-26 Andreas Schwab <schwab@suse.de>
1037
1038 * print.c (print_object): Print non-ascii characters in bool
1039 vector representation as octal escapes.
1040
1041 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1042 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1043 bool vectors.
1044 * lread.c (read1): Likewise.
1045 * alloc.c (Fmake_bool_vector): Likewise.
1046 * data.c (Faref, Faset): Likewise.
1047 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1048 (mapcar1): Likewise.
d3b111bd 1049
536d6baa
ST
10502004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1051
1052 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1053
ae11577a
MB
10542004-04-26 Miles Bader <miles@gnu.org>
1055
1056 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1057
e198ba87
JB
10582004-04-26 Juanma Barranquero <lektu@terra.es>
1059
1060 * buffer.c (Fpop_to_buffer): Fix docstring.
1061
f3d5f92d 10622004-04-26 Steven Tamm <steventamm@mac.com>
e198ba87 1063
f3d5f92d
ST
1064 * lread.c (init_lread): Don't display missing lisp directory
1065 warnings with Carbon Emacs because self-contained bundled Emacs
e198ba87 1066 may be built without correct installation path.
f3d5f92d 1067
03e35edc
KS
10682004-04-25 Kim F. Storm <storm@cua.dk>
1069
9ff3aa31
KS
1070 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1071
1072 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1073
03e35edc
KS
1074 * xdisp.c (append_space_for_newline): Rename from append_space.
1075 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1076 (x_produce_glyphs): Handle line-spacing property on newline char.
1077 If value is t, adjust ascent and descent to fit current row height.
1078 If value is an integer or float, set extra_line_spacing to integer
1079 value, or to float value x current line height.
1080
f24814e0
KH
10812004-04-23 Kenichi Handa <handa@m17n.org>
1082
1083 * fontset.c (Finternal_char_font): If POSITION is nil, return
1084 font for displaying CH with the default face.
1085
d814862a
JB
10862004-04-23 Juanma Barranquero <lektu@terra.es>
1087
1088 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1089
063a45c5
SM
10902004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1091
1092 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1093 Don't make assumptions about the relative place of i and val.
1094 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1095
ae7ab2d3
KS
10962004-04-21 Kim F. Storm <storm@cua.dk>
1097
1098 * dispextern.h (struct glyph_slice): New struct.
1099 (struct glyph): New member slice.
1100 (GLYPH_SLICE_EQUAL_P): New macro.
1101 (GLYPH_EQUAL_P): Use it.
1102 (struct glyph_string): New member slice.
1103 (struct it_slice): New struct.
1104 (struct it): New member slice, add member to stack too.
1105 New member constrain_row_ascent_descent_p.
1106 (image_ascent): Add prototype.
1107
1108 * dispnew.c (buffer_posn_from_coords): Return full image width
1109 and height even for image slices (posn is relative to full image).
1110 (marginal_area_string): Adjust x0,y0 for image slice.
1111
1112 * image.c (image_ascent): Add slice arg; calculate ascent for
1113 image slice (or full image).
1114
1115 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1116 (syms_of_keyboard): Defsubr them.
1117
1118 * lisp.h (pos_visible_p): Fix prototype.
1119
c62aec78 1120 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
ae7ab2d3
KS
1121 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1122 (x_draw_image_foreground, x_draw_image_relief)
1123 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1124 Draw sliced images.
1125
1126 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1127 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1128 (x_draw_image_foreground, x_draw_image_relief)
1129 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1130 Draw sliced images.
1131
1132 * w32term.h (image_ascent): Remove prototype.
1133
1134 * window.c (Fpos_visible_in_window_p): Return pixel position if
1135 PARTIALLY arg is non-nil. Simplify. Doc fix.
1136 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1137 to return/set vscroll in pixels.
1138
1139 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1140
1141 * xdisp.c (Qslice): New variable.
1142 (syms_of_xdisp): Intern and staticpro it.
1143 (pos_visible_p): Return pixel position in new x and y args.
1144 (init_iterator): Reset it->slice info.
1145 (handle_display_prop): Parse (slice ...) property.
1146 (push_it, pop_it): Save/restore slice info.
1147 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1148 force repositioning of tall row if window is vscrolled, as that
1149 would reset vscroll.
1150 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1151 increasing row height if row is non-empty.
1152 (fill_image_glyph_string): Copy slice info.
1153 (take_vertical_position_into_account): Simplify.
1154 (produce_image_glyph): Handle iterator slice info, setup glyph
1155 slice info. Do not force minimum line height.
1156 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1157 do not increase height (ascent/descent) of non-empty row when
1158 adding normal character glyph; instead reduce glyph ascent/descent
1159 appropriately; if row is higher than current glyph, adjust glyph
1160 descent/ascent to reposition glyph within the existing row.
1161 Likewise, when char is newline, only set ascent/descent if row is
1162 currently empty.
1163 (note_mouse_highlight): Handle hotspots with sliced image.
1164
1165 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1166 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1167 (x_draw_image_foreground, x_draw_image_relief)
1168 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1169 Draw sliced images.
1170
1171 * xterm.h (image_ascent): Remove prototype.
1172
d58f8753
SM
11732004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1174
1175 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1176
4ce2719d
JPW
11772004-04-20 John Paul Wallington <jpw@gnu.org>
1178
1179 * fns.c (Fassoc, Feql): Fix indentation.
1180
d58f8753 1181 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
4ce2719d 1182
95f8c3b9
JPW
11832004-04-19 John Paul Wallington <jpw@gnu.org>
1184
1185 * fns.c (Feql): New function.
d58f8753 1186 (syms_of_fns): Defsubr it.
95f8c3b9 1187
b7e85537
JR
11882004-04-18 Jason Rumney <jasonr@gnu.org>
1189
1190 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1191 after closing the clipboard.
1192
5a72efd4
LT
11932004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1194
1195 * buffer.c (Fbuffer_base_buffer): Doc fix.
1196
20dc8583
KS
11972004-04-17 Kim F. Storm <storm@cua.dk>
1198
60962ec4
KS
1199 * keymap.c (Fkey_description): Add optional PREFIX arg.
1200 Combine prefix with KEYS to make up the full key sequence to describe.
1201 Correlate meta_prefix_char and following (simple) key to describe
1202 as meta modifier. All callers changed.
1203 (describe_map): Rename arg `keys' to `prefix'. Remove local
1204 `elt_prefix' var. Use Fkey_description with prefix instead of
1205 elt_prefix combined with Fsingle_key_description.
1206 (describe_vector): Declare static. Replace arg `elt_prefix' with
1207 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1208 if !KEYMAP_P. Use Fkey_description with prefix instead of
1209 Fsingle_key_description.
1210
1211 * keymap.h (Fkey_description): Fix prototype.
1212 (describe_vector): Remove prototype.
1213
409368b9
KS
1214 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1215
20dc8583
KS
1216 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1217 (png_load): Fix calculation of transparent background color on X
1218 and W32 platforms.
1219
75c5501b
JB
12202004-04-16 Juanma Barranquero <lektu@terra.es>
1221
1222 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1223 not too large before computing how much to scroll.
1224
da879ae8
SM
12252004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1226
1227 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1228
d01ca4a8
LT
12292004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1230
1231 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1232 Add hyperlink to Elisp manual to the docstring.
1233
572943b3
SM
12342004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1235
1236 * callint.c (fix_command): Use XDCR.
1237
5e30a0fb
NR
12382004-04-14 Nick Roberts <nick@nick.uklinux.net>
1239
1240 * window.c (Fget_lru_window): Doc fix.
1241
a27ddfaf
KS
12422004-04-14 Kim F. Storm <storm@cua.dk>
1243
1244 * editfns.c (Fformat): Fix allocation size of precision array.
1245
1246 * dispnew.c (update_window): Only set changed_p if
1247 scrolling_window actually did scroll.
1248 (scrolling_window): Only return 1 if we actually did scroll.
1249
1250 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1251 height to glyph height when cursor row is not fully visible.
1252 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1253 failure in case row is higher than window. Callers changed.
1254 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1255 Try to scroll partially visible, higher-than-window cursor row.
1256 (redisplay_window): Always try to scroll partially visible,
1257 higher-than-window cursor row - both initially and again with
1258 centering_position = 0.
1259 Clear desired matrix before retrying with centering_position = 0.
1260
da879ae8
SM
12612004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1262
1263 * syntax.c (scan_lists): Simplify backward string scan.
1264 Fix off-by-one boundary check for string and comment fences.
1265
5fc16e8e
SM
12662004-04-13 Joe Buehler <jbuehler@hekimian.com>
1267
1268 * sheap.c, unexcw.c: New files.
1269
c9aac8e6
LT
12702004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1271
1272 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1273 base buffer has been killed. Correct the error message if the
1274 base buffer does not exist.
1275
1e88a355
SM
12762004-04-12 Joe Buehler <jbuehler@hekimian.com>
1277
1278 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1279 Cygwin itself. Add support for Xaw3d scrollbars.
1280
1281 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1282
1283 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1284
1285 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1286 before Cygwin unexec.
1287
1288 * Makefile.in: Link changes for Cygwin unexec() support.
1289
8dbff9a0
AS
12902004-04-12 Andreas Schwab <schwab@suse.de>
1291
1292 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1293
54dffe35
LT
12942004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1295
1296 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1297 IGNORE argument equals NAME. Doc fix.
1298
99a72bdf
MY
12992004-04-11 Masatake YAMATO <jet@gyve.org>
1300
1e88a355 1301 * buffer.c (fix_start_end_in_overlays): Make overlays
99a72bdf
MY
1302 empty if they are backwards.
1303
40899d7b
SM
13042004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1305
1306 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1307
f8f853de
SM
13082004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1309
1310 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1311
c953fe1b
KS
13122004-04-06 Kim F. Storm <storm@cua.dk>
1313
661e85c1
KS
1314 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1315 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1316
1317 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1318 clearing highlight.
1319
1320 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1321
1322 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1323 clearing highlight.
1324
c953fe1b
KS
1325 * indent.c (vmotion): Do not reserve one column for continuation
1326 marks on window frames.
1327
c1994268
EZ
13282004-04-04 Eli Zaretskii <eliz@gnu.org>
1329
1330 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1331 from GCC.
1332
9f691b0d
SM
13332004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1334
1335 * .gdbinit-union: Remove.
1336
1337 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1338 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1339 ($nonvalbits): Remove.
1340 ($valmask): Set it by calling xreload to avoid redundancy.
1341
1342 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1343 (gdb_emacs_intbits): Remove.
1344
7a8560d7
JD
13452004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1346
9f691b0d 1347 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
7a8560d7 1348
3c8111fc
KH
13492004-03-30 Kenichi Handa <handa@m17n.org>
1350
1351 * editfns.c (Fformat): Fix initialization of the array info.
1352
48a0bce4
KS
13532004-03-30 Kim F. Storm <storm@cua.dk>
1354
1355 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1356 (syms_of_xterm): DEFVAR_BOOL it.
1357 (ignore_next_mouse_click_timeout): New var.
1358 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1359 Use it to filter mouse clicks following focus event.
1360
1cd0066c
KS
13612004-03-29 David Ponce <david@dponce.com>
1362
1363 * callint.c (Fcall_interactively): Fix last change.
1364
adb3b353
SM
13652004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1366
1367 * eval.c (Fcommandp): Simplify.
1368
1369 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1370 Extend to handle all kinds of functions.
1371
1372 * lisp.h (Finteractive_form): Declare.
1373
1374 * callint.c (Fcall_interactively): Use it.
1375
6fc4c9c9
KS
13762004-03-26 Kim F. Storm <storm@cua.dk>
1377
1378 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1379 to catch errors in calc_pixel_width_or_height during redisplay.
1380
abdb9b83
MY
13812004-03-26 Masatake YAMATO <jet@gyve.org>
1382
b17856dd 1383 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
abdb9b83 1384
b17856dd 1385 * lisp.h (fix_start_end_in_overlays): Likewise.
abdb9b83 1386
b17856dd 1387 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
abdb9b83 1388
b17856dd 1389 * editfns.c (Ftranspose_regions): Likewise.
abdb9b83 1390
e8a84b6c
JD
13912004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1392
b17856dd 1393 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
e8a84b6c 1394
36a3fd05
RS
13952004-03-19 Richard M. Stallman <rms@gnu.org>
1396
1397 * s/sol2-6.h: Delete previous change.
1398
ab24c127
KS
13992004-03-19 Kim F. Storm <storm@cua.dk>
1400
1401 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1402 to_charpos corresponds to newline in right fringe. Use local
1403 BUFFER_POS_REACHED_P macro.
1404
992126de
JD
14052004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1406
1407 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1408 to compile on non-window system.
1409
45dbfc84
KS
14102004-03-19 Kim F. Storm <storm@cua.dk>
1411
1412 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1413
1414 * image.c (Qcenter): Move to xdisp.c.
1415
1416 * xdisp.c (Qcenter): Declare here.
adb3b353 1417 (syms_of_xdisp): Intern and staticpro it.
45dbfc84
KS
1418 (handle_single_display_prop): Allow space display property on all
1419 platforms.
1420 (display_mode_line): Set mode_line_p before displaying line.
1421 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1422 handling. Remove complex cases for fringes and scroll-bars.
1423 Add left, right, and center alignment positions. Add text (area)
1424 width/height. Return width or height for image specs.
1425 (produce_stretch_glyph): Improve handling of :align-to. Is now
1426 relative to left of text area by default, but other base offsets
1427 can be specified -- also for text lines.
1428
1429 * term.c (produce_glyphs): Handle IT_STRETCH.
1430 (produce_stretch_glyph): New function to handle space width and
1431 align-to display properties on non-window systems.
1432
37264101
SM
14332004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1434
1435 * fileio.c (Fread_file_name): Set completion-ignore-case for
1436 case-insensitive systems.
1437
73bc43da
MY
14382004-03-14 Masatake YAMATO <jet@gyve.org>
1439
1440 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1441 when keymap and cursor are setup.
1442
9062aa89
ST
14432004-03-14 Steven Tamm <steventamm@mac.com>
1444
b17856dd 1445 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
9062aa89 1446
e4b1b5ab
KS
14472004-03-14 Kim F. Storm <storm@cua.dk>
1448
1449 * dispextern.h (x_find_image_file): Add prototype.
1450
1451 * image.c (x_find_image_file): Make extern.
1452
1453 * xfns.c (x_find_image_file): Remove prototype.
1454
a6eeaa81 14552004-03-13 Eli Zaretskii <eliz@gnu.org>
5109b06a 1456
37264101 1457 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
5109b06a 1458
37264101 1459 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
5109b06a 1460
e69cfac2
RS
14612004-03-12 Richard M. Stallman <rms@gnu.org>
1462
1463 * fns.c (internal_equal): New arg PROPS controls comparing
1464 text properties. All callers changed.
1465 (Fequal_including_properties): New function.
1466 (syms_of_fns): defsubr it.
1467
45034953
KS
14682004-03-12 Kim F. Storm <storm@cua.dk>
1469
1470 Fix image support on MAC. From YAMAMOTO Mitsuharu.
37264101 1471
45034953
KS
1472 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1473 (image_background, image_background_transparent): Fix prototypes.
1474
37264101 1475 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
45034953
KS
1476
1477 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1478 (x_query_font, x_find_ccl_program, x_set_window_size)
1479 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1480 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1481 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1482
1483 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1484 (x_query_font, x_find_ccl_program, x_set_window_size)
1485 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1486 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1487 (mac_draw_line_to_pixmap): Add prototypes.
1488
14892004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1490
1491 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1492
a12d3d87
KS
14932004-03-11 Kim F. Storm <storm@cua.dk>
1494
d3ab1cf1
KS
1495 * dispextern.h: Move image related prototypes from xfns.c section
1496 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1497 HAVE_X_WINDOWS.
37264101 1498
37de9f51 1499 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
37264101 1500 Move gtkutil.o to new GTK_OBJ list.
a12d3d87
KS
1501 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1502 (GTK_OBJ) [USE_GTK]: New declaration.
1503 (obj): Add $(GTK_OBJ) to list.
1504
5243c06a 15052004-03-11 Steven Tamm <steventamm@mac.com>
5109b06a 1506
5243c06a
ST
1507 * image.c [MAC_OSX]: Include sys/stat.h
1508
1509 * macfns.c (syms_of_macfns): Remove definitions of things now
1510 defined in image.c
1511
c0f97789
KS
15122004-03-11 Kim F. Storm <storm@cua.dk>
1513
1514 The following changes consolidates the identical/similar image
1515 support code previously found in xfns.c, w32fns.c, and macfns.c
1516 into a new file image.c.
1517
1518 * makefile.w32-in (OBJ1): Add image.o.
1519 ($(BLD)/image.$(O)): Add dependencies.
1520
1521 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1522 (image.o): Add dependencies.
37264101 1523
c0f97789
KS
1524 * image.c: New file with consolidated image support code.
1525 (COLOR_TABLE_SUPPORT): New define to control whether
1526 color table support is available (X only).
1527 (Bitmap_Record): Common name for x_bitmap_record,
1528 w32_bitmap_record, and mac_bitmap_record.
1529 (XImagePtr): Common name for pointer to XImage or equivalent.
1530 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1531 to XImagePtr on X+MAC, and to HDC on W32.
1532 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1533 (NO_PIXMAP): Common name for "None" or equivalent.
1534 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1535 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1536 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
37264101
SM
1537 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1538 Define with suitable equivalents on W32 and MAC for code sharing.
c0f97789
KS
1539 (XDrawLine): Define on MAC for code sharing.
1540 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1541 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1542 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1543 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1544 (x_reference_bitmap, x_create_bitmap_from_data)
1545 (x_create_bitmap_from_file, x_destroy_bitmap)
1546 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1547 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1548 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1549 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1550 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1551 (define_image_type, lookup_image_type, valid_image_p)
1552 (image_error, enum image_value_type, struct image_keyword)
1553 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1554 (make_image, free_image, prepare_image_for_display, image_ascent)
1555 (four_corners_best, image_background, image_background_transparent)
1556 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1557 (make_image_cache, free_image_cache, clear_image_cache)
1558 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1559 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1560 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1561 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1562 (init_image_func_pointer, image_load_quartz2d)
1563 (struct ct_color, init_color_table, free_color_table)
1564 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1565 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1566 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1567 (x_disable_image, x_build_heuristic_mask)
1568 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1569 (TIFF support, GIF support, Ghostscript support): Consolidate image
1570 code from xfns.c, w32fns.c, and macfns.c.
1571 (syms_of_image): Consolidate image related symbol setup here.
1572 (init_image): Consolidate image related initializations here.
37264101 1573
c0f97789
KS
1574 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1575 and init_image. Remove call to init_xfns.
1576
37264101
SM
1577 * macterm.h (struct mac_bitmap_record): Add file member.
1578 Not currently used, but simplifies code sharing.
c0f97789
KS
1579
1580 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1581 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1582 (x_reference_bitmap, x_create_bitmap_from_data)
1583 (x_create_bitmap_from_file, x_destroy_bitmap)
1584 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1585 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1586 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1587 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1588 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1589 (define_image_type, lookup_image_type, valid_image_p)
1590 (image_error, enum image_value_type, struct image_keyword)
1591 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1592 (make_image, free_image, prepare_image_for_display, image_ascent)
1593 (four_corners_best, image_background, image_background_transparent)
1594 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1595 (make_image_cache, free_image_cache, clear_image_cache)
1596 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1597 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1598 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1599 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1600 (init_image_func_pointer, image_load_quartz2d)
1601 (struct ct_color, init_color_table, free_color_table)
1602 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1603 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1604 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1605 (x_disable_image, x_build_heuristic_mask)
1606 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1607 (TIFF support, GIF support, Ghostscript support): Merge with image
1608 code from xfns.c and macfns.c into image.c.
1609 (syms_of_xfns): Move image related symbols to image.c.
1610 (init_external_image_libraries, init_xfns): Remove; initialization
1611 moved to init_image in image.c.
1612
1613 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1614 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1615 (x_reference_bitmap, x_create_bitmap_from_data)
1616 (x_create_bitmap_from_file, x_destroy_bitmap)
1617 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1618 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1619 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1620 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1621 (define_image_type, lookup_image_type, valid_image_p)
1622 (image_error, enum image_value_type, struct image_keyword)
1623 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1624 (make_image, free_image, prepare_image_for_display, image_ascent)
1625 (four_corners_best, image_background, image_background_transparent)
1626 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1627 (make_image_cache, free_image_cache, clear_image_cache)
1628 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1629 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1630 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1631 (struct ct_color, init_color_table, free_color_table)
1632 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1633 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1634 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1635 (x_disable_image, x_build_heuristic_mask)
1636 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1637 (TIFF support, GIF support, Ghostscript support): Merge with image
1638 code from xfns.c and macfns.c into image.c.
1639 (syms_of_xfns): Move image related symbols to image.c.
1640 (init_external_image_libraries, init_xfns): Remove; initialization
1641 moved to init_image in image.c.
1642
1643 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1644 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1645 (x_reference_bitmap, x_create_bitmap_from_data)
1646 (x_create_bitmap_from_file, x_destroy_bitmap)
1647 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1648 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1649 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1650 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1651 (define_image_type, lookup_image_type, valid_image_p)
1652 (image_error, enum image_value_type, struct image_keyword)
1653 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1654 (make_image, free_image, prepare_image_for_display, image_ascent)
1655 (four_corners_best, image_background, image_background_transparent)
1656 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1657 (make_image_cache, free_image_cache, clear_image_cache)
1658 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1659 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1660 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1661 (struct ct_color, init_color_table, free_color_table)
1662 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1663 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1664 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1665 (x_disable_image, x_build_heuristic_mask)
1666 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1667 (TIFF support, GIF support, Ghostscript support): Merge with
1668 w32fns.c and macfns.c image code into image.c.
1669 (syms_of_xfns): Move image related symbols to image.c.
1670 (init_xfns): Remove; initialization moved to init_image in image.c.
1671
1672 * lisp.h (syms_of_image, init_image): Add protoypes.
1673 (init_xfns): Remove prototype.
1674
1675 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1676 (x_reference_bitmap, x_create_bitmap_from_data)
1677 (x_create_bitmap_from_file, x_destroy_bitmap)
1678 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1679 (gamma_correct) [MAC_OS]: Add prototype.
1680
1681 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1682 (x_reference_bitmap, x_create_bitmap_from_data)
1683 (x_create_bitmap_from_file, x_destroy_bitmap)
1684 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1685
6eced09c
KH
16862004-03-09 Kenichi Handa <handa@etlken2>
1687
1688 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1689 correctly.
1690
9a7e95f3
RS
16912004-03-04 Richard M. Stallman <rms@gnu.org>
1692
04a6e76b
RS
1693 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1694
9a7e95f3
RS
1695 * window.c (Fdisplay_buffer): Doc fix.
1696
1697 * buffer.c (Fpop_to_buffer): Doc fix.
1698
6c2488df
KS
16992004-03-03 Kim F. Storm <storm@cua.dk>
1700
1701 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1702
d8d95bc7
SM
17032004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1704
1705 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1706
357589bf
RS
17072004-03-02 Richard M. Stallman <rms@gnu.org>
1708
1709 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1710
409949b5
KH
17112004-03-02 Kenichi Handa <handa@m17n.org>
1712
1713 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1714
d24bc50f
KS
17152004-03-02 Kim F. Storm <storm@cua.dk>
1716
1717 * window.h (struct window): New member overlay_arrow_bitmap.
1718
1719 * window.c (make_window): Initialize overlay_arrow_bitmap.
1720
1721 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1722 implement and integrate multiple overlay arrows with redisplay.
1723 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1724 (last_arrow_position, last_arrow_string): Replace by properties.
1725 (Qlast_arrow_position, Qlast_arrow_string)
1726 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1727 (syms_of_xdisp): Intern and staticpro them.
1728 (overlay_arrow_string_or_property, update_overlay_arrows)
1729 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1730 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1731 (redisplay_internal): Use them instead of directly accessing
1732 Voverlay_arrow_position etc. for multiple overlay arrows.
1733 (mark_window_display_accurate): Use update_overlay_arrows.
1734 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1735 (try_window_id): Use overlay_arrows_changed_p.
1736 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1737 (display_line): Use overlay_arrow_at_row to check multiple
1738 overlay arrows, and get relevant overlay-arrow-string and
d8d95bc7 1739 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
d24bc50f
KS
1740 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1741 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1742
1743 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1744 (update_window_fringes): Remove unused code.
1745
c1464661
JR
17462004-03-01 Jason Rumney <jasonr@gnu.org>
1747
1748 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1749
a64387ee
JB
17502004-03-01 Juanma Barranquero <lektu@terra.es>
1751
1752 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1753
1754 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1755
334faa08
JD
17562004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1757
1758 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1759 how many colors can be displayed.
1760
bb62616f
KH
17612004-03-01 Kenichi Handa <handa@m17n.org>
1762
1763 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1764 correctly.
1765
0fd16104
KS
17662004-02-28 Kim F. Storm <storm@cua.dk>
1767
1768 * dispnew.c (update_window): Update header line also if there are
1769 no other changes in window (move code after set_cursor label).
1770
1771 * lisp.h (mark_window_display_accurate): Remove prototype.
1772
1773 * window.c (window_loop, Fforce_window_update): Force mode line
1774 updates by setting prevent_redisplay_optimizations_p and
1775 update_mode_lines.
1776
b59dd9c8
JD
17772004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1778
d8d95bc7 1779 * xfns.c (x_window): Fix indentation.
b59dd9c8
JD
1780
1781 * xterm.c (x_calc_absolute_position): Call x_real_positions
1782 to get WM window sizes and use those to calculate position.
d8d95bc7 1783 (x_set_offset): Remove code commented out.
b59dd9c8 1784
a874691c
MB
17852004-02-28 Miles Bader <miles@gnu.org>
1786
1787 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1788
3e0c6482
KS
17892004-02-28 Kim F. Storm <storm@cua.dk>
1790
1791 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1792 an event into kbd fifo, but with special handling of quit event;
1793 a quit event is saved for later, and further events are discarded
1794 until the saved quit event has been processed.
1795 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1796 (gen_help_event): Store help event in kbd fifo.
1797 (NREAD_INPUT_EVENTS): Remove.
1798 (read_avail_input): Adapt to new read_socket_hook interface.
1799 Remove allocation and initialization of local input_event buffer,
1800 as read_socket_hook stores events directly in fifo. Allocate and
1801 initialize local hold_quit event to handle postponed quit event
1802 (and store it if set by kbd_buffer_store_event_hold).
1803
1804 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1805 (gen_help_event): Fix prototype.
1806
a64387ee 1807 * macterm.c (XTread_socket): Remove bufp_r and
3e0c6482 1808 numcharsp args. Add hold_quit arg.
f63fd14e 1809 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1810 directly in fifo using kbd_buffer_store_event_hold.
1811
1812 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1813 (read_input_waiting): Adapt to new read_socket_hook interface.
1814 Remove allocation and initialization of local input_event buffer,
1815 as read_socket_hook stores events directly in fifo. Allocate and
1816 initialize local hold_quit event to handle postponed quit event
1817 (and store it if set by kbd_buffer_store_event_hold).
1818
a64387ee 1819 * term.c (read_socket_hook): Fix arg list.
3e0c6482
KS
1820
1821 * termhooks.h (read_socket_hook): Fix prototype.
1822
1823 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1824 numcharsp args. Add hold_quit arg.
f63fd14e 1825 Rework to use just one, local, inev input_event. Store inev
3e0c6482
KS
1826 directly in fifo using kbd_buffer_store_event_hold.
1827
1828 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1829
1830 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
f63fd14e
JB
1831 Add hold_quit arg. Rework to use just one, local, inev
1832 input_event. Store inev directly in fifo using
3e0c6482
KS
1833 kbd_buffer_store_event_hold. Update count in one place.
1834 Postpone call to gen_help_event until inev is stored; use new
1835 local do_help for this.
1836 Remove local emacs_event in handing of ButtonPress event; just use
1837 inev instead (so no reason to copy it later).
1838
1839 * xsmfns.c (x_session_check_input): Remove numchars arg.
1840
d8d95bc7
SM
1841 * xterm.c (x_focus_changed, x_detect_focus_change):
1842 Remove numchars arg. Always store event into bufp arg.
1843 Return nothing. Callers changed accordingly.
3e0c6482
KS
1844 (glyph_rect): Simplify.
1845 (STORE_KEYSYM_FOR_DEBUG): New macro.
1846 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1847 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1848 (current_hold_quit) [USE_GTK]: Add.
1849 (event_handler_gdk): Adapt to new handle_one_xevent.
1850 (handle_one_xevent): Remove bufp_r and numcharsp args.
f63fd14e
JB
1851 Add hold_quit arg. Rework to use just one, local, inev
1852 input_event. Store inev directly in fifo using
3e0c6482
KS
1853 kbd_buffer_store_event_hold. Update count in one place.
1854 Postpone call to gen_help_event until inev is stored; use new
1855 local do_help for this.
1856 Simplify handling of keysyms (consolidate common code). Fix bug
1857 where count was updated with nchars instead of nbytes.
1858 Remove local emacs_event in handing of ButtonPress event; just use
1859 inev instead (so no reason to copy it later).
1860 Remove `out' label. Rename label `ret' to `done'; add various
1861 `goto done' to clarify code flow in deeply nested blocks.
1862 (x_dispatch_event): Simplify as handle_one_xevent now calls
1863 kbd_buffer_store_event itself.
f63fd14e 1864 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
3e0c6482
KS
1865 arg. Call handle_one_xevent with new arglist. Store event from
1866 x_session_check_input in fifo.
1867 [USE_GTK]: Setup current_hold_quit.
1868 Decrement handling_signal before unblocking input.
1869 (x_initialize) [USE_GTK]: Initialize current_count.
1870
1871 * xterm.h (x_session_check_input): Fix prototype.
1872
e3564461 18732004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
a64387ee 1874
d8d95bc7 1875 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
a64387ee 1876
e3564461
ST
1877 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1878 macgui.h).
a64387ee 1879
e3564461 1880 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
a64387ee 1881
e3564461
ST
1882 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1883 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1884 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1885 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1886 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1887 (Bitmap): Remove typedef.
1888 (Pixmap): Change int to GWorldPtr.
1889
d8d95bc7 1890 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
a64387ee 1891
d8d95bc7
SM
1892 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1893 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1894 New #define to extract 16-bit depth color components from unsigned
e3564461
ST
1895 long representation.
1896 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1897 colors used for masks.
1898 (struct mac_display_info): Add color_p. Remove n_cbits.
a64387ee 1899
e3564461
ST
1900 * macfns.c: Include sys/types.h and sys/stat.h.
1901 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1902 Include QuickTime/QuickTime.h.
1903 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1904 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1905 functions defined in macterm.c.
1906 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1907 (ZPixmap): New #define for compatibility with xfns.c.
1908 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1909 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
d8d95bc7
SM
1910 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1911 New functions.
e3564461 1912 (four_corners_best, x_create_x_image_and_pixmap)
d8d95bc7
SM
1913 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1914 (x_edge_detection, init_color_table, colors_in_color_table)
e3564461
ST
1915 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1916 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1917 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1918 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1919 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1920 long mixup.
1921 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1922 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1923 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1924 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1925 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1926 (x_alloc_image_color, clear_image_cache, lookup_image)
1927 (x_find_image_file, xbm_read_bitmap_file_data)
1928 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1929 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1930 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1931 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1932 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
d8d95bc7 1933 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
e3564461
ST
1934 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1935 #if 0.
1936 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1937 #if 0. Free white_relief.gc and black_relief.gc.
d8d95bc7
SM
1938 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1939 New functions (from xfns.c).
e3564461
ST
1940 (Fx_create_frame): Record unwind_create_frame.
1941 (Fxw_display_color_p): Use dpyinfo->color_p.
1942 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1943 dpyinfo->n_cbits.
1944 (Fx_display_color_cells): Use dpyinfo->n_planes;
1945 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1946 (Qheuristic, cross_disabled_images, emboss_matrix)
1947 (laplace_matrix): New variables (from xfns.c).
1948 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1949 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1950 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
d8d95bc7
SM
1951 (image_background_transparent): New function (from xfns.c).
1952 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1953 (image_load_quicktime): Add declaration.
1954 [MAC_OSX] (image_load_quartz2d): Likewise.
1955 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1956 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
d8d95bc7 1957 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
e3564461
ST
1958 (xbm_load_image_from_file, x_laplace_read_row)
1959 (x_laplace_write_row, pbm_read_file): Remove functions.
1960 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1961 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1962 (colors_in_color_table): Sync with xfns.c (although not used).
1963 (lookup_rgb_color): Don't lookup color table. Just do gamma
1964 correction.
1965 (COLOR_INTENSITY): New #define (from xfns.c).
d8d95bc7
SM
1966 (x_disable_image): New function (from xfns.c).
1967 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1968 (x_build_heuristic_mask): Sync with xfns.c.
1969 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1970 (HAVE_PBM): Remove #ifdef.
1971 (pbm_load): Sync with xfns.c. Set img->width and img->height
1972 before IMAGE_BACKGROUND.
d8d95bc7 1973 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
e3564461
ST
1974 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1975 Don't enclose with #if HAVE_PNG.
1976 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
d8d95bc7
SM
1977 symbol _CGImageCreateWithPNGDataProvider is defined.
1978 Otherwise use image_load_quicktime.
e3564461 1979 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
d8d95bc7
SM
1980 [HAVE_PNG] (png_load): Sync with xfns.c.
1981 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
e3564461
ST
1982 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1983 HAVE_JPEG.
1984 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1985 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1986 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1987 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1988 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1989 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1990 HAVE_TIFF.
1991 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1992 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1993 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
d8d95bc7
SM
1994 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1995 New functions (from xfns.c).
e3564461 1996 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
d8d95bc7 1997 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
e3564461
ST
1998 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1999 Don't enclose with #if HAVE_GIF.
2000 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2001 animated gif. Otherwise use image_load_quicktime.
2002 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2003 gif_DrawText to avoid conflict with QuickdrawText.h.
2004 [HAVE_GIF] (gif_load): Sync with xfns.c.
2005 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2006 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2007 Ghostscript is not supported yet).
2008 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2009 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2010 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2011 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2012 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2013 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
d8d95bc7
SM
2014 HAVE_PNG. Call EnterMovies to support animated gifs.
2015 Call init_image_func_pointer to bind a symbol
e3564461 2016 _CGImageCreateWithPNGDataProvider if it is defined.
a64387ee 2017
d8d95bc7 2018 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
e3564461
ST
2019 (x_draw_bar_cursor): Sync declaration with xterm.c.
2020 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2021 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2022 graphics).
2023 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2024 (mac_draw_line_to_pixmap, XCreatePixmap)
2025 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
d8d95bc7
SM
2026 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2027 New functions.
2028 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2029 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2030 Cast bits to char *.
e3564461
ST
2031 (reflect_byte): New function (from w32fns.c).
2032 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2033 due to byte alignment.
d8d95bc7
SM
2034 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2035 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
e3564461
ST
2036 (XSetForeground): Remove static (now used in macfns.c).
2037 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2038 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2039 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2040 (x_draw_glyph_string_box, x_draw_image_foreground)
2041 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2042 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2043 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2044 Sync with xterm.c.
2045 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2046 than the xterm.c version when a strictly horizontal or vertical
2047 line is drawn.
2048 (XTset_terminal_window): Add static.
2049 (x_make_frame_visible): Add UNBLOCK_INPUT.
2050 (x_free_frame_resources): New funcion (from xterm.c).
2051 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2052 occurs in tool bar area.
d8d95bc7
SM
2053 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2054 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
e3564461
ST
2055 Initialize image cache.
2056 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2057 Enclose unused functions with #if 0.
2058 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2059 (decode_mac_font_name): New function to apply code conversions
d8d95bc7 2060 from a mac font name to an XLFD font name according to its script code.
e3564461 2061 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
d8d95bc7 2062 font name to a mac font name according to REGISTRY and ENCODING fields.
e3564461
ST
2063 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2064 whose name starts with `.'.
2065 (init_font_name_table): Use decode_mac_font_name. Add both
2066 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2067 of a font is smJapanese.
2068 (mac_do_list_fonts): New function to list fonts that match a given
2069 pattern.
2070 (x_list_fonts, XLoadQueryFont): Use it.
2071 (XLoadQueryFont): Set rbearing field for each variable width
2072 character to avoid needless redraw.
2073 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2074
446f5f3d
KS
20752004-02-26 Kim F. Storm <storm@cua.dk>
2076
af617d0f
KS
2077 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2078 as read_socket_hook handler on X aborts if buffer is too small
2079 and W32 handler doesn't always check buffer limit.
2080
446f5f3d
KS
2081 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2082 right-fringe similar to a display margin image. Specifically,
2083 the characters having the fringe prop are no longer shown, and
2084 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2085 do this. Set fringe bitmap face_id in it->face_id.
2086 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2087 still realize it->face (i.e. the fringe bitmap face).
2088
7d8a0b55
MB
20892004-02-25 Miles Bader <miles@gnu.org>
2090
2091 * xdisp.c (check_it): Check string/string_pos consistency.
2092 (init_iterator): Initialize string-related fields properly.
2093
20942004-02-11 Miles Bader <miles@gnu.org>
2095
2096 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2097
20982004-02-10 Miles Bader <miles@gnu.org>
2099
2100 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2101 BLOCK_INPUT can be nested, so it doesn't make much sense.
2102
a64387ee 21032004-02-24 Michael Mauger <mmaug@yahoo.com>
ce35edd1
JR
2104
2105 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2106 (xbm_read_bitmap_data): Use unsigned char for image data.
2107
92f5fba2
LT
21082004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2109
2110 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2111
8565fb3d
JR
21122004-02-22 Jason Rumney <jasonr@gnu.org>
2113
2114 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2115 correctly over other bitmaps.
2116
a6eeaa81 21172004-02-21 Eli Zaretskii <eliz@gnu.org>
f8125c39
EZ
2118
2119 * emacs.c (USAGE1): Split into two halves.
2120 (USAGE2): Second half of the old USAGE1.
d8d95bc7
SM
2121 (USAGE3): Rename from USAGE2.
2122 (USAGE4): Rename from USAGE3.
f8125c39 2123
4effffca
EZ
21242004-02-21 Juri Linkov <juri@jurta.org>
2125
2126 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2127 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2128 --file. Fix -f, -l. Sort options. Untabify.
2129 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2130
923c1e6f
LT
21312004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2132
2133 * category.c (Fdefine_category, Fcategory_docstring)
2134 (Fget_unused_category, Fset_category_table)
2135 (Fcategory_set_mnemonics): Doc fixes.
2136
b0e225fd
KS
21372004-02-20 Kim F. Storm <storm@cua.dk>
2138
2139 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2140 The following changes are relative to the 2004-01-21 revision.
2141 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2142 in one call to read_socket_hook. Value is 8.
2143 (read_avail_input): Separate and rework handling of read_socket_hook
2144 and non-read_socket_hook cases. Use smaller input_event buffer
d8d95bc7
SM
2145 in read_socket_hook case, and repeat if full buffer is read.
2146 Use new local variable 'discard' to skip input after C-g.
b0e225fd
KS
2147 In non-read_socket_hook case, just use a single input_event, and
2148 call kbd_buffer_store_event on the fly for each character.
2149
b15aa9f9
SM
21502004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2151
2152 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2153 Remove unused `gu' alternative.
2154
83c9aa95
AS
21552004-02-19 Andreas Schwab <schwab@suse.de>
2156
2157 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2158 warning.
2159
cc808173
KS
21602004-02-18 Kim F. Storm <storm@cua.dk>
2161
2162 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2163 Fix last change.
2164
ab90a54d
KS
21652004-02-17 Kim F. Storm <storm@cua.dk>
2166
b26f249f
KS
2167 * xdisp.c (fast_find_position): Fix return value of new version;
2168 it was inverted compared to the 21.1 version.
2169 (get_window_cursor_type): Don't look at glyph if NULL.
2170 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
0bf7d005 2171
ab90a54d
KS
2172 * keyboard.c: Rework previous change; it didn't consider that the
2173 buf array was allocated on the stack.
2174 (prev_read): Remove variable.
2175 (read_avail_input_buf): New static event buffer array.
b9568dfc 2176 (in_read_avail_input): New static variable to handle re-entrancy.
ab90a54d 2177 (read_avail_input): Change buf to pinter to read_avail_input_buf.
b9568dfc
KS
2178 Use in_read_avail_input to handle re-entrance; when re-entered,
2179 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2180 Do not initialize read_avail_input_buf in full here; instead assume it
ab90a54d
KS
2181 is always cleared on entry. To ensure that, we clear (just) the
2182 entries that were used before we return.
2183 (init_keyboard): Initialize read_avail_input_buf here.
2184
4e039f3f
EZ
21852004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2186
2187 * cmds.c (Fend_of_line): Doc fix.
2188
7b5368c1
EZ
21892004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2190
2191 * keyboard.c (prev_read): New static variable.
2192 (read_avail_input): Use it to zero out only those slots in buf[]
2193 that were used last time we were called.
2194
a6eeaa81 21952004-02-16 Eli Zaretskii <eliz@gnu.org>
ca4bc494
EZ
2196
2197 * Makefile.in (obj): Move fringe.o from here...
2198 (XOBJ, MAC_OBJ): ...to here.
2199
159c348e
SE
22002004-02-16 Stephen Eglen <stephen@gnu.org>
2201
2202 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2203
d2f14999
SM
22042004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2205
b15aa9f9
SM
2206 * data.c (Fbyteorder):
2207 * fringe.c (Fdefine_fringe_bitmap):
2208 * xdisp.c (handle_single_display_prop):
d2f14999
SM
2209 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2210
8d50508a
JR
22112004-02-16 Jason Rumney <jasonr@gnu.org>
2212
2213 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2214
dd4497dc
ST
22152004-02-15 Steven Tamm <steventamm@mac.com>
2216
2217 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2218 controlling emulation of a three button mouse with option and
2219 command keys.
2220 (Qreverse, mac_get_enumlated_btn): Handle the emulation
b15aa9f9 2221 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
dd4497dc 2222
c9159cb3
KS
22232004-02-15 Kim F. Storm <storm@cua.dk>
2224
2cc52658
KS
2225 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2226
c9159cb3
KS
2227 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2228 Perform byte-swapping.
2229
12fde2dc
KS
22302004-02-14 Kim F. Storm <storm@cua.dk>
2231
2232 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2233 bits from char to short to facilitate wider bitmaps.
2234 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2235 member.
2236
2237 * fringe.c (struct fringe_bitmap): Change member bits from char to
2238 short to facilitate 16 bits wide bitmaps. Modify all standard
2239 bitmaps accordingly.
2240 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2241 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2242 (draw_fringe_bitmap): Ditto.
2243 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2244 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2245 handle up to 16 bits wide bitmaps.
2246 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
f21a7192 2247 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
12fde2dc
KS
2248
2249 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2250 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2251 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2252
2253 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2254 so it is no longer necessary to expand them here.
2255
2256 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2257
9d7271e8
KS
22582004-02-12 Kim F. Storm <storm@cua.dk>
2259
2260 * window.c (Fwindow_fringes): Doc fix.
2261
706c1e4f
JD
22622004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2263
2264 * xselect.c (x_get_foreign_selection): Add new optional parameter
2265 time_stamp.
2266 (Fx_get_selection_internal): Ditto, pass time_stamp to
2267 x_get_foreign_selection.
2268
2269 * data.c (Fbyteorder): New function.
2270
c2d12b5d
JD
22712004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2272
2273 * atimer.c: Move include stdio.h to same place as in other files.
2274
2275 * region-cache.c: Ditto.
2276
2277 * sysdep.c: Ditto.
2278
2279 * xfaces.c: Ditto.
2280
4c1947b9
SS
22812004-02-09 Sam Steingold <sds@gnu.org>
2282
89458937 2283 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
4c1947b9 2284
82722af3
KS
22852004-02-09 Kim F. Storm <storm@cua.dk>
2286
2287 * fringe.c: New file. Move original fringe related declarations
2288 and code from dispextern.h and xdisp.c here.
2289 Rework code to support user defined fringe bitmaps, redefining
2290 standard bitmaps, ability to overlay user defined bitmap with
2291 overlay arrow bitmap, and add faces to bitmaps.
2292 (Voverflow_newline_into_fringe): Declare here.
2293 (enum fringe_bitmap_align): New enum.
2294 (..._bits): All bitmaps are now defined without bitswapping; that
2295 is now done in init_fringe_once (if necessary).
2296 (standard_bitmaps): New array with specifications for the
2297 standard fringe bitmaps.
2298 (fringe_faces): New array.
2299 (valid_fringe_bitmap_id_p): New function.
2300 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2301 (draw_fringe_bitmap): New function which draws fringe bitmap,
2302 possibly overlaying bitmap with cursor in right fringe or the
2303 overlay arrow in the left fringe.
2304 (update_window_fringes): Do not handle overlay arrow here.
2305 Compare and copy fringe bitmap faces.
2306 (init_fringe_bitmap): New function.
2307 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2308 define and destroy user defined fringe bitmaps.
2309 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2310 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2311 (syms_of_fringe): New function. Defsubr new DEFUNs.
2312 DEFVAR_LISP Voverflow_newline_into_fringe.
2313 (init_fringe_once, init_fringe): New functions.
2314 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
4c1947b9 2315
82722af3
KS
2316 * Makefile.in (obj): Add fringe.o.
2317 (fringe.o): New dependencies.
2318
2319 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2320 bits allocated to hold a fringe number. Increase number of bits
2321 from 4 to 8 to allow user defined fringe bitmaps.
2322 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2323 left_user_fringe_face_id, right_user_fringe_bitmap,
2324 right_user_fringe_face_id.
2325 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2326 Move to new file fringe.c.
2327 (MAX_FRINGE_BITMAPS): Define here.
2328 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2329 and overlay_p. Change member which to int.
2330 (struct redisplay_interface): New members define_fringe_bitmap
2331 and destroy_fringe_bitmap.
2332 (valid_fringe_bitmap_id_p): Add prototype.
2333 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2334
2335 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2336 arrows.
2337 (update_frame): Do flush_display if force_flush_display_p to
2338 ensure display (specifically fringes) are updated in a timely
2339 manner when resizing the frame by dragging the mouse.
2340 (update_window_line): Update row if overlay arrow changed.
2341 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2342 or overlay arrow changed.
2343
2344 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2345 syms_of_fringe, and init_fringe.
2346
2347 * frame.h (struct frame): New member force_flush_display_p.
2348
2349 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2350 Add prototypes.
2351
a3993cc8 2352 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
a64387ee 2353 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
a3993cc8
KS
2354 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2355 Use cursor color for displaying cursor in fringe.
82722af3
KS
2356 (x_redisplay_interface): Add null handlers for
2357 define_fringe_bitmap and destroy_fringe_bitmap functions.
2358
2359 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2360 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2361 for displaying cursor in fringe.
2362 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2363 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2364 (w32_redisplay_interface): Add them to redisplay_interface.
2365 (w32_term_init): Call w32_init_fringe instead of explicitly
2366 defining fringe bitmaps in fringe_bmp array.
2367 (x_delete_display): Call w32_reset_fringes instead of explicitly
2368 destroying fringe bitmaps in fringe_bmp array.
2369
2370 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2371 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2372 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2373 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2374 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2375 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2376 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2377 Move fringe handling vars and code to new file fringe.c.
2378 (handle_display_prop): Handle left-fringe and right-fringe
2379 display properties; store user fringe bitmaps in iterator.
2380 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2381 (clear_garbaged_frames): Set force_flush_display_p if resized.
2382 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2383 (display_line): Handle cursor in fringe at eob.
2384 (display_line): Set row user fringe bitmaps from iterator.
2385
2386 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2387 Use cursor color for displaying cursor in fringe.
2388 (x_redisplay_interface): Add null handlers for
2389 define_fringe_bitmap and destroy_fringe_bitmap functions.
2390
030400eb
JD
23912004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2392
2393 * macfns.c (Fx_change_window_property): Make doc string and
2394 parameters same as for X version.
2395
2396 * w32fns.c (Fx_change_window_property): Ditto.
2397
3af55251
KS
23982004-02-07 Kim F. Storm <storm@cua.dk>
2399
ec110e9e
KS
2400 * xdisp.c (hscroll_window_tree): Position cursor near to right
2401 margin in hscrolled window when jumping to end of line (rather
2402 than centering cursor).
2403
3af55251
KS
2404 * process.c (wait_reading_process_input): Don't do adaptive read
2405 buffering if waiting for a specific process.
2406
b0c138ce
LT
24072004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2408
2409 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2410 (Fread_minibuffer, Feval_minibuffer)
2411 (Fread_string, Fread_no_blanks_input)
2412 (Fcompleting_read): Doc fixes.
2413 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2414 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2415 (read_minibuf): Fix initial comment.
2416 (Ftry_completion, Fall_completions, Ftest_completion): Bind
e8eeaed8 2417 case-fold-search to the value of completion-ignore-case when
b0c138ce
LT
2418 checking completion-regexp-list.
2419 (Fdisplay_completion_list): Make it handle arguments that are
2420 symbols. Doc fix.
2421
9676f5ad 24222004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
64d1e373 2423
9676f5ad 2424 * xterm.h: Add declaration of free_frame_menubar.
64d1e373 2425
9676f5ad
JD
2426 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2427 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
b0c138ce 2428 (Fx_change_window_property): Add declaration of parameters type and
9676f5ad 2429 format. Remove unused variable cons.
5b698285
JD
2430
2431 * xselect.c: Include stdio,h.
2432
fc1d15f6
KH
24332004-02-05 Kenichi Handa <handa@m17n.org>
2434
ebaff4af
KH
2435 * fns.c (Fset_char_table_range): Fix previous change.
2436
fc1d15f6
KH
2437 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2438
9676f5ad
JD
24392004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2440
2441 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2442
da75761f
SM
24432004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2444
2445 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2446 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2447
13c5d120
KH
24482004-02-04 Kenichi Handa <handa@m17n.org>
2449
2450 * fns.c (Fset_char_table_range): Handle charsets ascii,
2451 eight-bit-control, and eight-bit-graphic correctly.
2452
2883d842
JR
24532004-02-03 Jason Rumney <jasonr@gnu.org>
2454
2455 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2456
2457 * w32fns.c (x_to_w32_font): Likewise.
2458
69eff41f
JD
24592004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2460
2461 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2462 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2463
2464 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2465 ClientMessages.
2466
2467 * xselect.c: Include termhooks.h and X11/Xproto.h
2468 (x_check_property_data, x_fill_property_data)
2469 (x_property_data_to_lisp, mouse_position_for_drop)
2470 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
da75761f 2471 (Fx_send_client_event): Move here from xfns.c.
69eff41f
JD
2472 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2473
da75761f 2474 * xfns.c (x-send-client-message): Move to xselect.c
69eff41f
JD
2475 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2476 OUTER_P.
2477 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2478 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2479 if vector_ret_p is true.
2480 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
69eff41f 2481
a6eeaa81 24822004-02-02 Eli Zaretskii <eliz@gnu.org>
dcdbbb5d
EZ
2483
2484 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2485 basename of FILE relative to it, not FILE itself.
2486
09721b31
KH
24872004-02-02 Kenichi Handa <handa@m17n.org>
2488
2489 * coding.c (coding_restore_composition): Check invalid
2490 composition data more rigidly.
2491
eb996101
LT
24922004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2493
2494 * fileio.c (Fread_file_name_internal): Correctly handle the case
2495 where insert-default-directory is nil.
2496 (Fread_file_name): Always return an empty string if the user exits
2497 with an empty minibuffer. Adapt the docstring accordingly.
2498 (syms_of_fileio): Adapt the docstring of insert-default-directory
2499 to the change in Fread_file_name.
2500
a6eeaa81 25012004-01-29 Eli Zaretskii <eliz@gnu.org>
a0367d42
EZ
2502
2503 * alloca.c [!alloca]: Fix the prototype for xfree.
2504
13f52ed8
KH
25052004-01-29 Kenichi Handa <handa@m17n.org>
2506
2507 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2508 (string_byte_to_char): Likewise.
2509
d57625a0
JR
25102004-01-28 Peter Runestig <peter@runestig.com>
2511
2512 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2513
a64387ee 25142004-01-27 Steven Tamm <steventamm@mac.com>
911c78b4
ST
2515
2516 * unexmacosx.c (unexec_copy): Do not copy more than was
2517 requested to prevent overwriting during unexec.
2518
eb37b8fd
JD
25192004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2520
ce38070a
JD
2521 * process.c (sigchld_handler): Add comment about not calling malloc.
2522
eb37b8fd
JD
2523 * process.h: Add extern to synch_process_termsig.
2524
a64387ee 25252004-01-27 Steven Tamm <steventamm@mac.com>
21a3e657 2526
da75761f
SM
2527 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2528 Move setting of scroll bars from make_mac_frame to
2529 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
21a3e657 2530
d62a265d
RS
25312004-01-26 Richard M. Stallman <rms@gnu.org>
2532
2533 * search.c (Freplace_match): Handle nonexistent
2534 back-references properly.
2535
25362004-01-03 Richard M. Stallman <rms@gnu.org>
2537
2538 * window.c (decode_any_window): New function.
2539 (Fwindow_height, Fwindow_width, Fwindow_edges)
2540 (Fwindow_pixel_edges, Fwindow_inside_edges)
2541 (Fwindow_inside_pixel_edges): Use decode_any_window.
2542
ff236419
JD
25432004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2544
2545 * process.h: synch_process_termsig new variable.
2546
2547 * callproc.c: Define synch_process_termsig.
2548 (Fcall_process): Initiate synch_process_termsig to zero and
2549 check if non-zero and get signal name after subprocess has ended.
2550
2551 * process.c (sigchld_handler): Set synch_process_termsig
2552 if terminated by a signal. synch_process_death setting removed.
2553
2554 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2555
41b867ea
AS
25562004-01-26 Andreas Schwab <schwab@suse.de>
2557
2558 * print.c (print_preprocess): Declare size as EMACS_INT to not
2559 lose bits.
2560 (print_object): Likewise.
2561 * alloc.c (Fpurecopy): Likewise.
2562
a08084ff
LT
25632004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2564
2565 * window.c (Fwindow_minibuffer_p): Doc fix.
2566
b19ac475
JY
25672004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2568
2569 * editfns.c (Fformat): Make both passes accept the same set of flags.
2570
fe905025
KH
25712004-01-23 Kenichi Handa <handa@m17n.org>
2572
2573 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2574 one, set buffer to OBJECT temporarily.
2575
438fc6c0
SM
25762004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2577
455316e2
SM
2578 * keyboard.c (kbd_buffer_gcpro): Remove.
2579 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2580 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2581 Don't initialize and/or maintain the variable any more. It was made
2582 redundant by my commit of 2003-06-15.
2583
438fc6c0
SM
2584 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2585
5335a4ee
JD
25862004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2587
2588 * lisp.h: Add undef DECL_ALIGN.
2589
dcdaeebc
SM
25902004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2591
2592 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2593 Check interrupt_input_pending explicitly.
2594
2595 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2596
2597 * keyboard.c (handle_async_input): New fun,
2598 extracted from input_available_signal.
2599 (input_available_signal, reinvoke_input_signal): Use it.
2600
9076a823
SM
26012004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2602
d7107586
SM
2603 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2604
2605 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2606 manipulation macros for when tags are in the lower bits.
2607 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2608 (DECL_ALIGN): New macro.
2609 (DEFUN): Use it.
2610
2611 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2612
2613 * s/darwin.h (__attribute__): Remove outdated workaround.
2614
2615 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2616
2617 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2618 Don't check range of malloc address.
2619 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2620
9076a823
SM
2621 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2622
2623 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2624
ba029065
KH
26252004-01-19 Kenichi Handa <handa@m17n.org>
2626
2627 * fontset.c (fontset_font_pattern): Fix previous change.
2628
7af0e8d7
MB
26292004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2630
2631 * xdisp.c (Voverflow_newline_into_fringe)
2632 (move_it_in_display_line_to, redisplay_internal)
2633 (update_window_fringes, redisplay_window, display_line, window):
2634 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2635 that it compiles without a window-system.
2636 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2637
77a9cf69
KS
26382004-01-16 Kim F. Storm <storm@cua.dk>
2639
2640 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2641
a64387ee 2642 * buffer.c (init_buffer_once): Set buffer_defaults and
77a9cf69
KS
2643 buffer_local_flags for indicate_buffer_boundaries.
2644 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2645 default- variable for it.
2646
2647 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2648 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
d7107586 2649 New members exact_window_width_line_p and cursor_in_fringe_p for
77a9cf69
KS
2650 overflowing newlines into right fringe.
2651 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2652 and indicate_bottom_line_p for buffer boundaries and scrolling.
2653 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2654 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2655 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2656 and HOLLOW_SQUARE_BITMAP.
2657 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2658 Add prototypes.
2659
2660 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2661 instead of related indicator fields.
2662 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2663 (direct_output_for_insert): Handle exact width lines like
2664 contined lines. Call update_window_fringes.
2665 (update_window): Call update_window_fringes.
2666 (scrolling_window): Don't skip desired rows with changed bitmaps.
2667 Check if fringe bitmaps changes when assigning scrolled rows.
2668
2669 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2670 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2671 (move_it_in_display_line_to): Overflow newline into fringe for
2672 rows that are exactly as wide as the window.
2673 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2674 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2675 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2676 (fringe_bitmaps): Add new bitmaps.
2677 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2678 Select proper bitmap for cursor in fringe when appropriate.
2679 Handle alignment of bitmap to top or bottom of row.
2680 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2681 done by update_window_fringes.
2682 (update_window_fringes, draw_window_fringes): New functions.
2683 (redisplay_internal): Call update_window_fringes in case only
2684 cursor row is updated.
2685 (redisplay_window): Call update_window_fringes.
2686 Explicitly call draw_window_fringes if redisplay was done using
2687 the current matrix or the overlay arrow is in the window.
2688 (try_window_reusing_current_matrix): Mark scrolled rows for
2689 fringe update (to update buffer-boundaries / scrolling icons).
2690 (find_last_unchanged_at_beg_row): Handle exact width lines line
2691 continued lines.
2692 (display_line): Overflow newline into fringe for rows that are
2693 exactly as wide as the window. Don't append space for newline
d7107586 2694 in this case.
77a9cf69
KS
2695 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2696 in fringe as if it had been overwritten.
2697 (erase_phys_cursor): Erase cursor bitmap in fringe.
d7107586 2698 (syms_of_xdisp): Mark show-trailing-whitespace and
77a9cf69
KS
2699 void-text-area-pointer as user options.
2700 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
d7107586 2701
77a9cf69
KS
2702 * xterm.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 (x_draw_window_cursor): Draw cursor in fringe.
2707
2708 * w32term.c (x_update_window_end): Call draw_window_fringes.
2709 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2710 in row instead of actually drawing fringe bitmaps.
2711 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2712 (w32_draw_window_cursor): Draw cursor in fringe.
2713
2714 * macterm.c (x_update_window_end): Call draw_window_fringes.
2715 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2716 in row instead of actually drawing fringe bitmaps.
2717 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2718 (mac_draw_window_cursor): Draw cursor in fringe.
2719
a633a954
JD
27202004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2721
2722 * xterm.c (handle_one_xevent): Don't handle characters that are part
2723 of an old style (XLookupString) compose sequence.
2724
80460525
KH
27252004-01-15 Kenichi Handa <handa@m17n.org>
2726
2727 * search.c (Freplace_match): Use make_multibyte_string or
2728 make_unibyte_string according to the buffer multibyteness.
2729
7fc34f85
SM
27302004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2731
2732 * alloc.c (struct interval_block, struct string_block)
2733 (struct symbol_block, struct marker_block, live_string_p)
2734 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2735 Better preserve alignment for objects in blocks.
2736 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2737
2738 * lread.c (defvar_per_buffer): Remove dead declaration.
2739
2740 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2741 space size.
2742
66070bd1
JD
27432004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2744
2745 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2746 if a key press should pop down. Only pop down if a key is pressed
2747 outside the menu/dialog.
2748 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2749 popup_get_selection.
2750 (create_and_show_dialog): Pass 1 for down_on_keypress to
2751 popup_get_selection.
2752
de7515d6
JD
27532004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2754
2755 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2756 BLOCK/UNBLOCK_INPUT.
2757
160b1b50
JD
27582004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2759
2760 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2761 specified.
2762
3a9f36e6
KH
27632004-01-08 Kenichi Handa <handa@m17n.org>
2764
2765 * editfns.c (Fformat): Fix '&' to '&&'.
2766
3803eb32
AS
27672004-01-08 Andreas Schwab <schwab@suse.de>
2768
2769 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2770 size if PSEUDOVECTOR_FLAG is set.
2771
9da88f37
KH
27722004-01-07 Kenichi Handa <handa@m17n.org>
2773
74ac5074
KH
2774 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2775
9da88f37
KH
2776 * fontset.c (fontset_ref_via_base): Fix previous change.
2777
05faee07
KS
27782004-01-07 Kim F. Storm <storm@cua.dk>
2779
2780 * process.c (read_process_output): Only activate adaptive
2781 buffering if we read less than 256 bytes at a time.
2782
634910c8
KS
27832004-01-06 Kim F. Storm <storm@cua.dk>
2784
2785 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2786 object and image object. Return glyph width and height.
2787 (mode_line_string, marginal_area_string): Ditto.
2788
2789 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2790 (marginal_area_string): Fix prototypes.
2791
2792 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
f63fd14e 2793 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
634910c8
KS
2794 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2795
2796 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2797 buffer_posn_from_coords, and marginal_area_string functions to
2798 include both string object and image object in the lispy position.
2799 Also add actual glyph width and height to position.
2800 (read_key_sequence): Use real buffer position from mouse
2801 event to find keymap property even when click is in marginal area.
2802
2803 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2804 mode_line_string and marginal_area_string functions to handle
2805 both string object and image object properties.
d7107586 2806
57951c2e
AS
28072004-01-06 Andreas Schwab <schwab@suse.de>
2808
2809 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2810 character.
2811
181e6a61
AS
28122004-01-02 Andreas Schwab <schwab@suse.de>
2813
d7107586
SM
2814 * macterm.c (emacs_options, x_initialized, same_x_server):
2815 Remove unused (and duplicated) definitions.
181e6a61 2816
31e0fbdd
KS
28172004-01-02 Kim F. Storm <storm@cua.dk>
2818
2819 * process.h (struct Lisp_Process): New members for adaptive read
2820 buffering: adaptive_read_buffering, read_output_delay, and
2821 read_output_skip.
2822
2823 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2824 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2825 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2826 (process_output_delay_count, process_output_skip): New vars.
2827 (Vprocess_adaptive_read_buffering): New variable.
2828 (make_process): Initialize adaptive read buffering members.
2829 (Fstart_process): Set adaptive_read_buffering member.
2830 (deactivate_process): Cleanup adaptive read buffering.
2831 (wait_reading_process_input): Temporarily omit delayed
2832 subprocesses from the set of file descriptors to read from;
2833 adjust the select timeout if we skipped any subprocesses.
2834 (read_process_output): Increase adaptive read buffering delay if
2835 we read less than a full buffer; reduce delay when we read a
2836 full buffer.
2837 (send_process): Simplify using local Lisp_Process var.
2838 Reset adaptive read buffering delay after write.
2839 (init_process): Initialize process_output_delay_count and
2840 process_output_skip.
2841 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2842
68c6a789
JR
28432004-01-01 Jason Rumney <jasonr@gnu.org>
2844
d7107586 2845 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
68c6a789 2846
3f70fe82
LT
28472003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2848
2849 * print.c (Ferror_message_string): Add hyperlink in the docstring
2850 to the definition of `signal' in the Elisp manual.
2851 * eval.c (Fsignal): Ditto.
2852
a64387ee 28532003-12-29 James Clark <jjc@jclark.com> (tiny change)
c2be49ed
EZ
2854
2855 * fns.c (internal_equal): Return t for two NaN arguments.
2856
7abd90ea
RS
28572003-12-29 Richard M. Stallman <rms@gnu.org>
2858
2859 * data.c (store_symval_forwarding): Handle setting
2860 default-fill-column, etc., by changing the value in
2861 buffers that use the default.
2862
2863 * minibuf.c (Fset_minibuffer_window): Doc fix.
2864
2865 * fileio.c (choose_write_coding_system): Ignore auto_saving
2866 if using the visited file for auto saves.
2867 (Fwrite_region): Don't update SAVE_MODIFF
2868 if auto-saving in visited file.
2869
3e7cfcdc
KH
28702003-12-29 Kenichi Handa <handa@m17n.org>
2871
2872 * dispextern.h (face_font_available_p): Extern it.
2873
2874 * fontset.c (Voverriding_fontspec_alist): New variable.
2875 (lookup_overriding_fontspec): New function.
d7107586 2876 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3e7cfcdc
KH
2877 (fontset_font_pattern): Likewise.
2878 (regulalize_fontname): New function.
2879 (Fset_fontset_font): Call regulalize_fontname.
2880 (Fset_overriding_fontspec_internal): New function.
d7107586
SM
2881 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2882 Defsubr Sset_overriding_fontspec_internal.
3e7cfcdc
KH
2883
2884 * xfaces.c (face_font_available_p): New function.
2885
7abd90ea
RS
28862003-12-28 Richard M. Stallman <rms@gnu.org>
2887
2888 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2889 or if its name is nil.
2890
2891 * buffer.c (Fkill_buffer): Don't delete auto-save file
2892 if it's the same as the visited file.
2893
de1d1a40
LT
28942003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2895
2896 * coding.c (Fcheck_coding_system): Doc fix.
2897
204fb75e
KS
28982003-12-28 Kim F. Storm <storm@cua.dk>
2899
2900 * Makefile.in (eval.o): Depend on dispextern.h.
2901
2902 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2903 image glyph using image's ascent.
2904 (mode_line_string): Return image glyph as object clicked on.
2905 Adjust y0 for image glyph using image's ascent.
2906
2907 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2908 (struct glyph): New members, ascent and descent. Used to save
2909 this glyph's ascent and descent, instead of having.
2910 (struct glyph): Declare member face_id using FACE_ID_BITS.
2911 (find_hot_spot): Add prototype.
2912
2913 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2914 (QCmap): Declare extern.
2915 (make_lispy_position): When position is inside image hot-spot,
2916 use hot-spot element's id as posn element.
2917
2918 * lisp.h (IMAGEP): New macro to test for image object type.
2919 (Qimage): Declare extern.
2920
2921 * macfns.c (Qimage): Remove extern (now in lisp.h).
2922 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2923
2924 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2925
2926 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2927 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2928
2929 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2930
2931 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2932
2933 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2934 pointer types.
2935 (Qrelative_width, Qalign_to): Remove unused variables.
2936 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2937 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2938 image maps.
d7107586 2939 (x_y_to_hpos_vpos): Return glyph relative coordinates through
204fb75e
KS
2940 new dx and dy args.
2941 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2942 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2943 than row's ascent and height, to get sensible height on tall rows.
2944 (build_desired_tool_bar_string): Remove Qimage extern.
2945 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2946 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2947 image glyph is alone on the last line.
2948 (append_glyph, append_composite_glyph, produce_image_glyph)
d7107586 2949 (append_stretch_glyph): Set glyph's ascent and descent.
204fb75e 2950 (on_hot_spot_p): New function to check if position is inside an
d7107586 2951 rectangular, circular, or polygon-shaped image hot-spot,
204fb75e
KS
2952 (find_hot_spot): New function to search for image hot-spot.
2953 (Flookup_image_map): New defun to search for image hot-spot.
2954 (define_frame_cursor1): New aux function to determine frame pointer.
2955 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2956 Handle `pointer' text property and :pointer image property to
2957 control frame pointer shape. Detect image hot-spots for pointer
2958 and help_echo properties. Use define_frame_cursor1.
2959 (note_mouse_highlight): Use Vvoid_text_area_pointer.
f63fd14e 2960 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
204fb75e
KS
2961 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2962
2963 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2964
2965 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2966 (Qimage): Remove extern (now in lisp.h).
2967 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2968
2969 * xmenu.c (show_help_event): Remove unused code.
2970
2971 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2972 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2973 row's ascent and descent, to get a sensible height on tall rows.
2974
fc052137
LT
29752003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2976
2977 * minibuf.c (Fcompleting_read): Undo previous change.
2978
a64387ee 29792003-12-25 Lars Hansen <larsh@math.ku.dk>
b9148500
LH
2980
2981 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2982 Arguments GCPRO'ed in call to file name handler.
2983
56ffd194
TTN
29842003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2985
2986 * termcap.c (tgetst1): Scan for "%pN"; if all
2987 N are continuous in [1,9], remove all "%pN".
2988
5202d23d
JD
29892003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2990
f26fab36
JD
2991 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2992
5202d23d
JD
2993 * xfaces.c (lface_fully_specified_p): Take into account that
2994 MAC OS always have unspecified stipple.
2995
8babaa59
TTN
29962003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2997
2998 * tparam.c (tparam1): Add handling for `%pN', which
2999 means use param N for the next substitution.
3000
2d176448
TTN
30012003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3002
3003 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3004 In case `frame' is nil, consult the selected frame.
3005 (Fcolor_supported_p): Likewise.
3006
adb0708c
LT
30072003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3008
000eeb15
LT
3009 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3010 Doc fixes.
0dc72b11
LT
3011
3012 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3013 and an integer. Adapt the introductory comment accordingly.
adb0708c
LT
3014 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3015 Doc fix.
3016 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3017 read_minibuf.
3018 (Fcompleting_read): Delete code moved into read_minibuf.
d7107586 3019 (Ftest_completion): Make it handle obarrays and hash tables correctly.
adb0708c 3020
2e4d132b
KH
30212003-12-03 Kenichi Handa <handa@m17n.org>
3022
3023 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3024 encoding sequence.
3025
3999c705
KH
30262003-12-01 Kenichi Handa <handa@m17n.org>
3027
3028 * composite.c (syms_of_composite): Don't make the compostion hash
3029 table week.
3030
d344ecbb
LT
30312003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3032
3033 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3034 * textprop.c (Fget_char_property_and_overlay): New function.
3035 (syms_of_textprop): Defsubr it.
3036
03d6484e
JD
30372003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3038
019b1f0e
JD
3039 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3040 to compile on terminal configuration.
3041
03d6484e
JD
3042 * fileio.c (Fread_file_name): Check use_file_dialog also before
3043 calling Fx_file_dialog.
3044
3045 * fns.c: use_file_dialog: New variable.
3046 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3047
442d3fd0
KS
30482003-11-29 Kim F. Storm <storm@cua.dk>
3049
3050 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3051 (syms_of_msdos): Don't intern and staticpro them.
3052
0f6a07a8
KS
30532003-11-27 Kim F. Storm <storm@cua.dk>
3054
3055 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3056 coordinates relative to glyph at posn. If glyph is an image,
3057 return that as object at posn. Callers changed.
3058 (mode_line_string, marginal_area_string): Calculate and return
3059 pixel coordinates relative to glyph. Callers changed.
3060
3061 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3062 (marginal_area_string): Fix prototypes.
3063 (window_box_left_offset, window_box_right_offset): Add prototypes.
3064
3065 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3066 Remove prototypes.
3067
3068 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3069
3070 * keyboard.c (make_lispy_position): Add x and y coordinates
3071 relative to the current glyph as 7th element of position.
3072 If glyph is an image, return it in the object element.
3073 (read_key_sequence): Skip checks for keymap property in cases
3074 where POSN_STRING is not a string (e.g. an image).
3075
3076 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3077 (Vshow_text_cursor_in_void): New variable.
3078 (glyph_to_pixel_coords): Don't use negative hpos.
3079 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3080 (append_stretch_glyph): Change ascent arg to be actual value
f63fd14e 3081 in pixels rather than ratio to height. Callers changed.
0f6a07a8
KS
3082 (calc_pixel_width_or_height): New aux function, implementing
3083 pixel based artihmetic for glyph widths and heights.
3084 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3085 :width, :height, :align-to, and :ascent, thus allowing these to
3086 be specified in pixels as well as multiples of characters.
3087 Don't produce stretch glyphs with zero width or height.
3088 (get_specified_cursor_type): Declare static.
3089 (get_window_cursor_type): Declare static. Add glyph arg to be
3090 able to know when cursor is on an image; always substitute
3091 hollow-box cursor for filled-box cursor on images, to avoid
3092 negative images and flicker when blinking the cursor.
3093 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3094 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3095 than vertical scroll-bar cursor in display margins.
3096 (note_mouse_highlight): Use non-text cursor rather than text
3097 cursor in fringes and over images in the text area.
3098 Use non-text cursor when mouse pointer is outside editable text,
3099 i.e. in the void after end-of-line or end-of-buffer; this was
3100 already done for W32, but is now standard for all systems --
3101 user can toggle show-text-cursor-in-void to get old behaviour.
3102 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3103 Vdisplay_pixels_per_inch.
3104
00498bfc
AS
31052003-11-25 Andreas Schwab <schwab@suse.de>
3106
3107 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3108 EMACS_INT to not lose bits.
3109 (Ffillarray): Don't set bits beyond the size of a bool vector.
3110
edaa824d
KS
31112003-11-25 Kim F. Storm <storm@cua.dk>
3112
3113 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3114 define this defun on systems that cannot use stderr as lvalue.
3115
74d6f539
GM
31162003-11-24 Gerd Moellmann <gerd@gnu.org>
3117
3118 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3119 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3120 ld's default is incompatible with unexec.
3121
6a1ff3ba
KS
31222003-11-23 Kim F. Storm <storm@cua.dk>
3123
63dc7c6b
KS
3124 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3125 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3126 (Fforce_window_update): New defun.
3127 (syms_of_window): Defsubr it.
3128 (Fset_window_margins, Fset_window_fringes): Doc fix.
3129
6a1ff3ba
KS
3130 * print.c (Fredirect_debugging_output): New defun.
3131 (syms_of_print): Defsubr it.
3132
aef109b7
LT
31332003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3134
3135 * fns.c (Fset_char_table_parent): Doc fix.
3136
6a1ff3ba 31372003-11-22 Kim F. Storm <storm@cua.dk>
63ccbe21
KS
3138
3139 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3140 for glyph clicked on, rather than (unused) pixel positions.
3141 (mode_line_string, marginal_area_string): Change X and Y args to
3142 pointers for returning actual row/column for glyph clicked on.
3143 Simplify and optimize loops.
3144
aef109b7
LT
3145 * dispextern.h (mode_line_string, marginal_area_string):
3146 Update prototypes.
63ccbe21
KS
3147
3148 * keyboard.c (make_lispy_position): New function for generating
3149 mouse click positions from frame and pixel coordinates.
3150 Enhanced to return buffer position and actual row/column for
3151 events outside the text area using updated mode_line_string and
3152 marginal_area_string functions.
3153 Return left-fringe and right-fringe clicks as such, rather than
3154 clicks in text area.
3155 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3156 pixel_to_glyph_coords, as we never use the results.
3157 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3158 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3159 Eliminate unused code in WHEEL_EVENT handling.
3160 (make_lispy_movement): Use make_lispy_position.
3161
3162 * window.c (coordinates_in_window): Remove redundant tests.
3163 Fix returned X pixel value for left-margin.
3164
3165 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3166 mode_line_string and marginal_area_string parameters.
3167
a64387ee 31682003-11-22 Lars Hansen <larsh@math.ku.dk>
930a9995 3169
d7107586
SM
3170 * w32.c (struct the_group, getgrgid): Add.
3171 * mac.c (struct my_group, getgrgid): Add.
aef109b7 3172
3dbf3426
LT
31732003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3174
3175 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3176
cae8ddbb 31772003-11-21 Lars Hansen <larsh@math.ku.dk>
ded4064f 3178
d7107586
SM
3179 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3180 include in call to file name handler. Optionally translate numeric
3181 UID and GID to strings. Update docstring.
3182 (directory_files_internal): Add parameter ID-FORMAT.
3183 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3184 include in call to file name handler and call to
3185 directory_files_internal. Update Docstring.
3186 (Fdirectory_files): Add dummy parameter in call to
3187 directory_files_internal.
3188 * lisp.h (Qinteger): Add.
3189 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3190 (Ffile_attributes): Add parameter.
3191 * data.c (Qinteger): Export.
cae8ddbb 3192
2550b848
LT
31932003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3194
3dbf3426 3195 * fns.c (Freverse, Fnreverse): Doc fixes.
2550b848 3196
88380018
KS
31972003-11-19 Kim F. Storm <storm@cua.dk>
3198
3199 * xdisp.c (init_iterator): Initialize it->start to position
3200 before reseating (in case start position is invisible).
3201 (init_to_row_start): Set it->start to row-start.
3202 (redisplay_window): Accept optional_new_start if start position
3203 is invisible (in which case IT_CHARPOS overshoots PT).
3204 (display_line): Setup row->start from it->start (rather than
3205 it->current which is wrong if first char on line is invisible).
3206 When done, reseat it->start to it->current (= start of next row).
3207 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3208 is only partially visible.
3209
3210 * dispextern.h (struct it): New member start.
3211
854c1a59
SM
32122003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3213
455316e2
SM
3214 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3215 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3216 of block_index outside of the macro call.
3217 (Fgarbage_collect): Remove null code.
3218
3219 * m/amdx86-64.h: Don't redefine XPNTR.
3220
854c1a59
SM
3221 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3222 of VALMASK.
3223
3224 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3225 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3226 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3227
3228 * lisp.h (VALMASK): Only define for non-union type.
3229 (MARKBIT): Remove.
3230 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3231 (XTYPE): Define unconditionally.
3232 (XSETTYPE): Remove one more remnant.
3233 (EQ): Define differently for the union and non-union cases.
3234 (INTMASK): New bit mask.
3235 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3236 (GC_EQ): Delegate to EQ.
3237
3238 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3239
a0c6ef2d
JD
32402003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3241
3242 * xterm.c (x_window_to_scroll_bar): Move check of display to
3243 where window_id is compared.
3244
859492c4
KS
32452003-11-17 Kim F. Storm <storm@cua.dk>
3246
3247 * dispextern.h (struct it): New member first_vpos.
3248
3249 * xdisp.c (start_display): Set it->first_vpos.
3250 (try_window_id): Use first_vpos to start display in first _text_
3251 line if no reusable lines at start of window with header line.
3252
810f2256
JD
32532003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3254
7c402969 3255 * w32fns.c (XPutPixel):
854c1a59
SM
3256 * w32bdf.c (w32_init_bdf_font):
3257 * sunfns.c (sel_read):
3258 * process.c (Fmake_network_process):
3259 * frame.c (store_frame_param):
3260 * fontset.c (Fset_fontset_font):
3261 * emacs.c (shut_down_emacs):
a64387ee 3262 * ccl.c (ccl_driver): Remove period at end of error message.
7c402969 3263
a32e9bfd
JD
3264 * config.in: Regenerate.
3265
810f2256
JD
3266 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3267 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3268 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3269 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3270 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3271
3272 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3273
3274 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3275 (XTmouse_position, handle_one_xevent): Pass Display* to
3276 x_window_to_scroll_bar.
3277 (x_window_to_scroll_bar): Take a Display* argument.
3278 Check that display for frame is equal to Display* argument.
854c1a59 3279 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
810f2256
JD
3280 x_display_info_for_display instead. Use Display in xev instead
3281 of GDK_DISPLAY.
3282 (x_dispatch_event): Call x_display_info_for_display.
f63fd14e 3283 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
810f2256
JD
3284 (x_connection_closed): Call xg_display_close for GTK.
3285 (x_term_init): Call xg_display_open for additional displays.
3286 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3287 for GTK.
3288
3289 * xmenu.c (single_menu_item, mouse_position_for_popup)
3290 (x_activate_menubar): Formatting adjustments.
3291
3292 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3293 adjustments.
3294
3295 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3296 (xg_display_close, xg_create_default_cursor)
3297 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3298 handling.
854c1a59
SM
3299 (xg_left_ptr_cursor): Remove.
3300 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
810f2256
JD
3301 cursor here.
3302 (xg_win_to_widget): Take Display* argument, call
3303 gdk_xid_table_lookup_for_display.
3304 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3305 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3306 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3307 in FRAME_X_DISPLAY_INFO.
3308 (xg_get_scroll_id_for_window): Take Display* argument.
3309 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
854c1a59 3310 (xg_initialize): Remove xg_left_ptr_cursor.
810f2256
JD
3311
3312 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3313 Display* argument also. Declare xg_display_open,
3314 xg_display_close, xg_create_default_cursor.
3315
0b03cc78
JD
33162003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3317
3318 * xterm.c (x_detect_focus_change): Do not change focus frame for
3319 Enter/LeaveNotify if the current focus frame has explicit focus.
3320
77e688fa
KS
33212003-11-14 Kim F. Storm <storm@cua.dk>
3322
3323 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3324 is active and first glyph is only partially visible.
854c1a59 3325
dd429b03
KH
33262003-11-13 Kenichi Handa <handa@m17n.org>
3327
3328 * xdisp.c (select_frame_for_redisplay): New function.
3329 (redisplay_internal): Record also selected_frame for
3330 unwind_redisplay. Call select_frame_for_redisplay before
3331 redrawing each frame.
3332 (unwind_redisplay): Argument changed to a cons.
3333
6d9266f4
LT
33342003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3335
3336 * fns.c (Fstring_to_multibyte): Doc fix.
3337
80060eb3
KH
33382003-11-11 Kenichi Handa <handa@m17n.org>
3339
3340 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3341
74305183
JD
33422003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3343
3344 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3345 program specified positions.
3346
cfda993e
JD
33472003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3348
3349 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3350
df211069
KH
33512003-11-08 Kenichi Handa <handa@m17n.org>
3352
3353 * Makefile.in (lisp): Add kannada.el.
3354 (shortlisp): Likewise.
3355
4307d534
KH
33562003-11-07 Kenichi Handa <handa@m17n.org>
3357
854c1a59
SM
3358 * coding.c (coding_allocate_composition_data):
3359 Reset coding->composing to COMPOSITION_NO.
4307d534
KH
3360 (coding_restore_composition): Detect invalid composition data.
3361 Give Fstring and Fvector a Lispy integer, not C int.
3362
854c1a59
SM
33632003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3364
3365 * floatfns.c (Flogb): Don't use VALMASK.
3366
3367 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3368 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3369
3370 * lisp.h (XINT): Move the cast to clarify what is going on.
3371 (GCTYPEMASK, XSETTYPE): Remove.
3372 (XGCTYPE): Make it an alias of XTYPE.
3373
d04103a1
JD
33742003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3375
3376 * xterm.c (x_term_init): Fix formatting.
3377
da18b5ac
JD
33782003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3379
3380 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3381 and xg_did_tearoff.
3382
3383 * gtkutil.c: Remove variable xg_did_tearoff.
3384 (xg_have_tear_offs): New function.
3385 (tearoff_remove): Just decrease xg_detached_menus.
3386 (tearoff_activate): Increase xg_detached_menus and call
3387 tearoff_remove when tearoff is removed.
854c1a59 3388 (xg_keep_popup): Remove function.
da18b5ac
JD
3389 (create_menus): Give add_tearoff_p as argument to recursive
3390 call to create_menus.
3391 (xg_create_widget): Use variables instead of multiple
3392 strcmp. Tell create_menus to create tear off only for
3393 menu bar menus.
3394 (xg_update_menubar): Change title for a detached menu also.
3395 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3396 of deep_p.
3397 (xg_initialize): Initialize xg_detached_menus, remove
3398 initialization of xg_did_tearoff.
3399
3400 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3401 xg_have_tear_offs returns non-zero.
3402 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3403 call to xg_keep_popup.
3404
64d4923e
AC
34052003-11-01 Andrew Choi <akochoi@shaw.ca>
3406
3407 * macterm.c (XTread_socket): Handle menubar selection and grow
3408 window only for mouseDown events.
854c1a59 3409
6cc8bc07
JD
34102003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3411
3412 * xterm.c (x_term_init): For GTK part, increase x_initialized
3413 to check for more than one display. Use error instead of return 0.
3414
043131c4
AC
34152003-10-31 Andrew Choi <akochoi@shaw.ca>
3416
854c1a59 3417 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
043131c4
AC
3418 (copy_dysymtab): Call it.
3419
bdda99a1
LT
34202003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3421
3422 * eval.c (Fdefvaralias): Doc fix.
3423
800f42ff 34242003-10-26 Luc Teirlinck <teirllm@auburn.edu>
0d11571e
LT
3425
3426 * data.c (Fsetplist): Doc fix.
3427
ef35b389
LK
34282003-10-14 Lute Kamstra <lute@gnu.org>
3429
3430 * window.c (Fset_window_fringes): Clarify docstring.
07107abc 3431
ef35b389 34322003-10-14 Kim F. Storm <storm@cua.dk>
854c1a59 3433
07107abc
KS
3434 * window.c (Fset_window_margins): Simplify arg checking.
3435
f7005886
RS
34362003-10-13 Richard M. Stallman <rms@gnu.org>
3437
3438 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3439 (print_partial_compiled_pattern): Replace assert with a printout.
3440 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3441
3442 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3443
3444 * window.c (Fset_window_margins): Allow only integers as args.
3445 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3446 Doc fixes.
3447
9c0c2af5
LK
34482003-10-13 Lute Kamstra <lute@gnu.org>
3449
3450 * window.c (Fset_window_fringes): Elaborate docstring.
3451
3f080e4e
AC
34522003-10-12 Andrew Choi <akochoi@shaw.ca>
3453
854c1a59 3454 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
a4887377 3455
3f080e4e
AC
3456 * s/darwin.h (GC_MARK_STACK): Define.
3457
0aa513ed
JD
34582003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3459
3460 * window.c (shrink_windows): New function.
3461 (size_window): Call shrink_windows to calculate window sizes when
3462 shrinking frame with more than one window.
3463
6aa8858a
KS
34642003-10-12 Kim F. Storm <storm@cua.dk>
3465
3466 * xdisp.c (compute_fringe_widths): Doc fix.
3467
c2164d91
KH
34682003-10-08 Kenichi Handa <handa@m17n.org>
3469
854c1a59 3470 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
c2164d91 3471
f82ac129
KH
34722003-10-07 Kenichi Handa <handa@m17n.org>
3473
3474 * coding.c (Qcoding_system_define_form): New variable.
3475 (syms_of_coding): Intern and staticpro it.
3476 (Fcheck_coding_system): Try to autoload the definition of
3477 CODING-SYSTEM.
3478
9296c947
LT
34792003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3480
3481 * fns.c (Frequire): Doc fix.
3482
c1f0671a
JD
34832003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3484
3d8c3826
JD
3485 * xfns.c (Fx_send_client_event): New function as a base for
3486 manipulating extended window manager hints.
6dc15d98 3487 (Fx_send_client_event): Remove unused variable s.
3d8c3826 3488
068ae0fd
JD
3489 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3490 that function is removed.
3491
3492 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3493 x/y_pixels_outer_diff.
3494 (x_check_expected_move): Calculate move_offset_left/top.
3495
3496 * xterm.h (struct x_output): New members: move_offset_top/left.
3497
854c1a59 3498 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
068ae0fd
JD
3499 call x_set_offset directly.
3500
3501 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3502
96f09305
JD
3503 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3504
3505 * xterm.c (x_delete_display): Free font names and font_encoder
3506 in dpyinfo->font_table.
3507
854c1a59
SM
3508 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3509 Move xfree of font names to x_delete_display.
96f09305 3510
c1f0671a
JD
3511 * xterm.h (struct x_display_info): New member, wm_type.
3512 (struct x_output): New members, expected_top/left and
3513 check_expected_move.
3514
3515 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3516 is received.
854c1a59
SM
3517 (handle_one_xevent): Rename x_check_expected_move from
3518 x_check_fullscreen_move.
c1f0671a
JD
3519 (x_set_offset): Only add WM decoration sizes to modified_top/left
3520 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
854c1a59 3521 (x_check_expected_move): Rename from x_check_fullscreen_move.
c1f0671a
JD
3522 Removed fullscreen specific code. Use check_expected_move,
3523 expected_left/top instead. Also, set wm_type.
3524 (x_term_init): Initialize wm_type to unknown.
3525
3526 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3527 sizes to move_x/y.
3528
be2fdba9
KH
35292003-10-03 Kenichi Handa <handa@m17n.org>
3530
3531 * macterm.c (x_load_font): Clear all members of FONTP before start
3532 filling them.
3533
35342003-10-02 Kenichi Handa <handa@m17n.org>
3535
3536 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3537 before calling find_ccl_program_func. Call find_ccl_program_func
3538 only when fontp->font_encoder is not NULL.
3539
3540 * xterm.c (x_load_font): Clear all members of FONTP before start
3541 filling them.
3542
26a6e439
JPW
35432003-10-03 John Paul Wallington <jpw@gnu.org>
3544
3545 * keymap.c (map_keymap): Don't abort when binding is a vector.
3546
0d4c2dc2
JR
35472003-10-02 Jason Rumney <jasonr@gnu.org>
3548
854c1a59
SM
3549 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3550 Sync dependencies with Makefile.in.
a63cf46f
JR
3551 (alloca.o): Remove.
3552
0d4c2dc2
JR
3553 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3554 filling them.
3555
3556 * w32bdf.c (w32_load_bdf_font): Likewise.
3557
ab8f7d5c
RS
35582003-09-30 Richard M. Stallman <rms@gnu.org>
3559
3560 * term.c (set_tty_color_mode): Calculate current_mode_spec
3561 regardless of value of VAL.
3562
854c1a59 3563 * intervals.c (graft_intervals_into_buffer):
ab8f7d5c
RS
3564 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3565 Handle over_used when splitting UNDER.
3566
a64387ee 35672003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
ab8f7d5c
RS
3568
3569 * regex.c (regex_compile): Free the stack when returning from function.
3570
3413f972
KH
35712003-09-28 Kenichi Handa <handa@m17n.org>
3572
3573 * fontset.c (Finternal_char_font): Change return value to
3574 cons (FONT-NAME . GLYPH-CODE).
3575
a6eeaa81 35762003-09-28 Eli Zaretskii <eliz@gnu.org>
40409f05
EZ
3577
3578 * term.c (tty_setup_colors): Treat any negative argument as -1.
3579
f98ddc99
KH
35802003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3581
3582 * process.c (send_process): Delete unused temp_buf.
3583
66c8f1a8
DL
35842003-09-26 Dave Love <fx@gnu.org>
3585
3586 * xterm.c (x_bitmap_mask): Declare.
3587
ca716c26
DL
35882003-09-25 Dave Love <fx@gnu.org>
3589
3590 * Makefile.in (fns.o): Depend on md5.h.
3591
fbe57420
KS
35922003-09-25 Kim F. Storm <storm@cua.dk>
3593
3594 * window.c (set_window_buffer): Fix redisplay problems when
3595 switching between buffers with different display margin widths.
3596
ef6ae4ff
KS
35972003-09-23 Kim F. Storm <storm@cua.dk>
3598
3599 * process.c (set_socket_option): Fix :bindtodevice option.
3600 (Fset_network_process_option): Update process contact list when
3601 setting option succeeds.
3602 (Fmake_network_process): Doc fix.
3603
68e03c1c
DL
36042003-09-23 Dave Love <fx@gnu.org>
3605
7146d1c1 3606 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
68e03c1c 3607
a6eeaa81 36082003-09-22 Eli Zaretskii <eliz@gnu.org>
2f809aae
EZ
3609
3610 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3611 color mode is an integer number (it could be -1).
3612
8fe7d8c8
RS
36132003-09-22 Richard M. Stallman <rms@gnu.org>
3614
3615 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3616 in the case where OVER is longer than UNDER.
3617
2f71b5ea
MY
36182003-09-22 Masatake YAMATO <jet@gyve.org>
3619
7146d1c1 3620 * window.c (Fset_window_scroll_bars): Validate the value of
2f71b5ea 3621 `vertical_type'.
7146d1c1 3622
0c4da023
KS
36232003-09-21 Kim F. Storm <storm@cua.dk>
3624
3625 * frame.c (Vdefault_frame_scroll_bars): New variable.
3626 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3627 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3628 window-system default scroll bar position.
3629
b648413b
KS
3630 * window.c (Fwindow_scroll_bars): Doc fix.
3631
8f5b9e34
JD
36322003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3633
854c1a59 3634 * xterm.c (x_set_offset): Take window manager decorations into account.
8f5b9e34 3635
b0f23edf
RS
36362003-09-19 Richard M. Stallman <rms@gnu.org>
3637
3638 * atimer.h: Don't include lisp.h.
3639 (P_): Define it here (as well as elsewhere).
3640
3641 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3642 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3643
3644 * data.c (Fvariable_binding_locus): New function.
3645 (syms_of_data): defsubr it.
3646 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3647
e1283999
DL
36482003-09-18 Dave Love <fx@gnu.org>
3649
ad5f3636
DL
3650 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3651
e1283999
DL
3652 * process.c (Fnetwork_interface_info): Fix type error.
3653 (Fnetwork_interface_list): Doc fix.
3654 (read_process_output, read_process_output): Delete unused var.
3655
b8c7fd71
KS
36562003-09-17 Kim F. Storm <storm@cua.dk>
3657
3658 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3659 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3660 (Fnetwork_interface_info): Check that ifreq struct has required
3661 fields before accessing them; this requires that those fields are
3662 defined as macros, which may be too restrictive on some platforms,
3663 but it is better than failing on other platforms.
3664 (syms_of_process): Only defsubr above fns when included.
3665
11e0a411
DL
36662003-09-17 Dave Love <fx@gnu.org>
3667
3668 * unexalpha.c: Don't include varargs.h.
3669
e9c50801
KS
36702003-09-17 Kim F. Storm <storm@cua.dk>
3671
3672 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3673 for network process.
3674 (socket_options): Add `:' prefix to option names. Add optbit field.
3675 (set_socket_option): Remove no_error arg and special handling of s < 0.
3676 Return 1<<optbit for known option, 0 for unknown.
3677 Do not interpret 0 as false for boolean option (only nil).
3678 Pass failed option and value to report_file_error.
7146d1c1 3679 (Fset_network_process_options): Replace by Fset_network_process_option.
e9c50801
KS
3680 (Fset_network_process_option): New function to set just one option.
3681 (Fmake_network_process): Allow :coding arg to be a cons.
3682 Allow :server arg to be an integer specifying backlog size.
3683 Remove :options arg, and allow options to be specified directly
3684 as :KEY, VALUE pairs. Parse these options before binding socket.
3685 As before, :reuseaddr t is default for a server process, but this
3686 can now be disabled by specifying :reuseaddr nil.
3687 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3688 (init_process): Availability of network options is now checked with
3689 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3690 setup features.
3691 (syms_of_process): Fix defsubr's for the replaced functions.
3692
a0fc3644
DL
36932003-09-16 Dave Love <fx@gnu.org>
3694
3695 * Makefile.in: Depend on coding.h.
3696
6df2a645
KS
36972003-09-14 Kim F. Storm <storm@cua.dk>
3698
3699 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3700 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3701 (syms_of_process): Defsubr them.
3702
3703 * config.in: Regenerate.
7146d1c1
SM
3704
37052003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3706
3707 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3708 * m/news-r6.h (XUNMARK): Remove.
3709 * m/mips.h (XUNMARK): Remove.
3710 * m/mips-siemens.h (XUNMARK): Remove.
3711 * m/iris4d.h (XUNMARK): Remove.
3712 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3713
0930c1a1
SM
37142003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3715
31003b9e
SM
3716 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3717 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3718 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3719 (XTYPE): Use unsigned right-shift.
3720 (XMARKBIT, XMARK, XUNMARK): Remove.
3721
0930c1a1
SM
3722 * alloc.c (init_intervals, init_symbol, init_marker):
3723 Don't preallocate anything.
3724 (Fgarbage_collect, mark_object): Ignore the markbit.
3725
3726 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3727
19bb0fcd 37282003-09-08 Lute Kamstra <lute@gnu.org>
5df034de
LK
3729
3730 * xdisp.c (pint2hrstr): New function.
3731 (decode_mode_spec): Add `%i' and `%I' specs.
3732 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3733 for `mode-line-format'.
3734
03bb6a06
AS
37352003-09-07 Andreas Schwab <schwab@suse.de>
3736
3737 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3738 avoid warning.
3739
a6eeaa81 37402003-09-07 Eli Zaretskii <eliz@gnu.org>
2063d89c 3741
0930c1a1 3742 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
2063d89c 3743
ed159bbf
KS
37442003-09-03 Kim F. Storm <storm@cua.dk>
3745
3746 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3747 change (superseded by 2002-08-30 change); the default blink-off
3748 cursor is now again "no cursor".
3749
fe64a394
JR
37502003-09-01 Jason Rumney <jasonr@gnu.org>
3751
3752 * makefile.w32-in (alloca.o): Remove.
3753 (coding.o): Depend on intervals.h
3754 (emacs.o, bytecode.o): Depend on window.h
3755
c0175e24
DL
37562003-09-01 Dave Love <fx@gnu.org>
3757
3758 * Makefile.in (alloca.o): Remove commands.
3759 (coding.o): Depend on intervals.h composite.h window.h.
3760 (emacs.o): Depend on window.h keyboard.h keymap.h.
3761 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3762 (bytecode.o): Depend on window.h.
3763
a24d4cb2
JR
37642003-08-31 Jason Rumney <jasonr@gnu.org>
3765
4bc2315e
JR
3766 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3767 returned even when font_type is unknown.
3768
a24d4cb2
JR
3769 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3770
9d35adc7
JD
37712003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3772
3773 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3774
3775 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3776 *_offset.
3777
3778 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3779 calculate pixel value.
3780
6f68b035
GM
37812003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3782
0930c1a1
SM
3783 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3784 Don't tell redisplay display is accurate when it's actually been
3785 paused for pending input.
6f68b035 3786
4828b4d7
RS
37872003-08-29 Richard M. Stallman <rms@gnu.org>
3788
3789 * dispnew.c (adjust_glyph_matrix): Call window_box
3790 whenever W is nonzero.
3791
3792 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3793 (Fkill_local_variable, Fmake_variable_frame_local)
0930c1a1 3794 (Flocal_variable_p, Flocal_variable_if_set_p):
4828b4d7
RS
3795 Use indirect_variable to trace thru variable aliases.
3796
3797 * config.in: Updated.
3798
3799 * callint.c (Fcall_interactively): Save and restore
3800 Vthis_command, Vthis_original_command, real_this_command,
3801 and current_kboard->Vlast_command.
3802
3803 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3804
e019878d
GM
38052003-08-29 Gerd Moellmann <gerd@gnu.org>
3806
3807 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3808
85478bc6
KH
38092003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3810
0930c1a1 3811 * coding.c (decode_coding_iso2022): Initialize local variable c2.
85478bc6
KH
3812 (decode_coding_sjis_big5): Likewise.
3813
07ce82d3
JR
38142003-08-27 Jason Rumney <jasonr@gnu.org>
3815
d3703de3
JR
3816 * w32.c (sys_pipe): Protect against file descriptor overflow.
3817
ee4a01d1
JR
3818 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3819
07ce82d3
JR
3820 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3821
a64387ee 38222003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
72d19c66
LK
3823
3824 * xfns.c (Vgtk_version_string): New variable.
3825 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3826
a6eeaa81 38272003-08-24 Eli Zaretskii <eliz@gnu.org>
5459e42a 3828
0930c1a1 3829 * term.c (term_init): Remove `const' from buffer_size's declaration.
3d8714e7 3830
5459e42a
EZ
3831 * Makefile.in (msdos.o): Depend on intervals.h.
3832
0930c1a1 3833 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
5459e42a 3834
231d6cfb
JD
38352003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3836
3837 * xterm.h (struct x_display_info): New fields: client_leader_window
3838 and Xatom_wm_client_leader.
3839
3840 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3841 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3842
3843 * xsmfns.c (create_client_leader_window): New function.
3844 (x_session_initialize): Call create_client_leader_window, take
3845 dpyinfo as argument.
3846
3847 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3848
3849 * Makefile.in (xsmfns.o): Add more depenedencies.
3850
afa88464
DL
38512003-08-21 Dave Love <fx@gnu.org>
3852
3853 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3854
f730033e
KH
38552003-08-21 Kenichi Handa <handa@m17n.org>
3856
3857 * term.c (term_init): Fix previous change; don't rely on the
3858 length of `buffer' if TERMINFO is defined.
3859
6dca786c
DL
38602003-08-20 Dave Love <fx@gnu.org>
3861
3862 * atimer.h: Include lisp.h.
3863
3864 * lisp.h (EMACS_LISP_H): New.
3865 (popup_activated_flag): Don't declare.
3866
3867 * alloca.c: Some merging with gnulib. Change logic and doc
3868 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3869 [DO_BLOCK_INPUT]: Don't include lisp.h.
3870 (xmalloc, xfree): Declare.
3871 (malloc): Don't declare.
3872
0930c1a1 3873 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
6dca786c
DL
3874 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3875 atimer.h, blockinput.h.
3876
3877 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3878
3879 * alloca.s: Removed.
3880
3a06a6d9
RS
38812003-08-19 Gerd Moellmann <gerd@gnu.org>
3882
3883 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3884 use -lncurses.
3885
3886 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3887 FreeBSD returns something longer than 2044. Abort if the end of
3888 the buffer is overwritten.
3889
27eeee55
MB
38902003-08-19 Miles Bader <miles@gnu.org>
3891
3892 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3893
2f297815
GM
38942003-08-19 Gerd Moellmann <gerd@gnu.org>
3895
f4446bbf
GM
3896 * alloc.c (lisp_align_malloc): Check for memory full when
3897 allocating ablocks, which also avoids freeing a pointer into an
3898 ablocks structure.
3899
3900 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3901
0930c1a1 3902 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
2f297815 3903
0e7d7aae
RS
39042003-08-16 Richard M. Stallman <rms@gnu.org>
3905
3906 * editfns.c (Fencode_time): Doc fix.
3907
39082003-08-16 David Ponce <david@dponce.com>
3909
3910 * fileio.c (Fwrite_region): Fix conditional expression to issue
3911 the right message.
3912
39132003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3914
3915 * syntax.c (Fforward_word): Argument changed to optional.
0930c1a1 3916 Set default value to 1.
0e7d7aae 3917
5d551295
KH
39182003-08-15 Kenichi Handa <handa@m17n.org>
3919
3920 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3921 what autoscaled.
3922 (best_matching_font): Once we find a better scalable font, set
3923 non_scalable_has_exact_height_p to 1.
3924 (try_font_list): Call try_alternative_families to try any family
3925 with the given registry.
3926
1661e56b
AS
39272003-08-09 Andreas Schwab <schwab@suse.de>
3928
f29181dc
AS
3929 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3930
1661e56b
AS
3931 * print.c (print_string): Fix printing of multibyte string with
3932 nontrivial printcharfun.
3933
465aa50a
JD
39342003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3935
3936 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3937
3938 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3939
e430e5ba
KH
39402003-07-31 Kenichi Handa <handa@m17n.org>
3941
3942 * process.c (read_process_output): Return the actually read bytes
3943 instead of the result of decoding.
3944
97e7188e
KH
39452003-07-31 Kenichi Handa <handa@m17n.org>
3946
3947 * xterm.h (struct x_bitmap_record): New member have_mask.
3948
3949 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3950 to 0.
3951 (x_create_bitmap_from_file): Likewise.
3952 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3953 (x_destroy_all_bitmaps): Likewise.
3954 (x_create_bitmap_mask): Set have_mask member to 1.
3955
b53094d6
RS
39562003-07-30 Richard M. Stallman <rms@gnu.org>
3957
3958 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3959
631f2082
JD
39602003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3961
3962 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3963
c855f2ca
RS
39642003-07-29 Richard M. Stallman <rms@gnu.org>
3965
3966 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3967 Conditionalize XIM code on HAVE_XIM.
3968
3969 * fns.c (Fclear_string): New function.
3970 (syms_of_fns): defsubr it.
3971
17e6d491
KH
39722003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3973
0930c1a1 3974 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
17e6d491 3975
29ea8ae9
SM
39762003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3977
3978 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3979
3980 * buffer.c (delete_all_overlays): New function.
3981 * buffer.h (delete_all_overlays): Declare.
3982 * coding.c (run_pre_post_conversion_on_str):
3983 * print.c (temp_output_buffer_setup):
3984 * fileio.c (Finsert_file_contents):
3985 * minibuf.c (get_minibuffer): Use it.
3986
1dd7ccf2
AC
39872003-07-22 Andrew Choi <akochoi@shaw.ca>
3988
3989 * unexmacosx.c (unexec_regions_sort_compare):
3990 (unexec_regions_merge): New functions. Sort and merge unexec
3991 regions before dumping them.
3992
f57bd967
DL
39932003-07-22 Dave Love <fx@gnu.org>
3994
3995 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3996
7cdee936
SM
39972003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3998
3999 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4000 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4001 MARKBIT as the gcmarkbit for strings.
4002
e50886d3
RS
40032003-07-21 Richard M. Stallman <rms@gnu.org>
4004
4005 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4006
29ea8ae9 4007 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
e50886d3
RS
4008 (syms_of_fns): Corresponding change.
4009
4010 * alloc.c (syms_of_alloc): Doc fixes.
4011
40122003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4013
4014 * s/netbsd.h: Use -Wl syntax.
4015
fdc39b59
RS
40162003-07-17 Richard M. Stallman <rms@gnu.org>
4017
4018 * xterm.c (xim_initialize): Redo 6/24 change.
4019
9c53385f
SM
40202003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4021
4022 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4023 (Fswitch_to_buffer): Don't signal an error when switching to the same
4024 buffer in a dedicated window.
4025
4026 * alloc.c: Use bitmaps for cons, as was done for floats.
4027 (init_float, init_cons): Let the normal code allocate the first block.
4028 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4029 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4030 New macros.
4031 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4032 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4033 (live_cons_p): Check the pointer is not past the `conses' array.
4034 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4035 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4036 (survives_gc_p): Use CONS_MARKED_P and simplify.
4037 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4038
dde13196
PE
40392003-07-13 Paul Eggert <eggert@twinsun.com>
4040
4041 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4042 puts it into BSS instead, at least on Solaris 8 and 9.
4043 This is a valid optimization, and it may occur on other platforms,
4044 so Emacs should not assume that initializing a static variable to
4045 zero puts it into data.
4046 * alloc.c (pure, staticvec):
4047 Initialize these arrays to nonzero, so that they're not
4048 put into BSS by that optimization.
4049
a801bc34
SM
40502003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4051
4052 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4053 (lisp_align_malloc): Use posix_memalign is available.
4054 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4055 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4056 for consistency. Update users.
4057
0c8b2afa
RS
40582003-07-13 Richard M. Stallman <rms@gnu.org>
4059
4060 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4061
668c2ab0
JB
40622003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4063
4064 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4065 and use the Gtk+ function gtk_window_icon_from_file if available.
4066
4067 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4068 handle mask of bitmaps.
4069 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4070 mask property.
4071 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4072
4073 * xterm.h (xg_set_icon): New function.
4074
800bebe3
RS
40752003-07-12 Paul Eggert <eggert@twinsun.com>
4076
4077 * unexelf.c (unexec): Consider a section to precede the .bss
4078 section if its addresses overlap that of .bss.
4079
69e38995
RS
40802003-07-12 Richard M. Stallman <rms@gnu.org>
4081
4082 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4083
4084 * config.in (HAVE_CRTIN): Add #undef.
4085 (INLINE): Really inline only if OPTIMIZE is defined.
4086
4087 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4088 END_FILES_1.
4089 (START_FILES_1, END_FILES_1): New macros (conditional).
a801bc34 4090 (LD_SWITCH_SYSTEM_TEMACS): Define.
69e38995
RS
4091
4092 * s/openbsd.h: Don't include bsd4-3.h.
a801bc34
SM
4093 (TERMINFO): Define.
4094 (LIBS_TERMCAP): Define.
4095 (LD_SWITCH_SYSTEM): Define (two definitions).
69e38995
RS
4096
4097 * xfns.c: Include libpng/png.h instead of png.h.
4098
f1d0c238
AS
40992003-07-11 Andreas Schwab <schwab@suse.de>
4100
4101 * buffer.c (modify_overlay): Update prototype.
4102 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4103 Likewise.
4104
5f6bf5fe
SM
41052003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4106
4107 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4108 (struct interval): Move to intervals.h.
4109 (struct Lisp_Marker): Use EMACS_INT for position info.
4110 (forward_point): Remove prototype of defunct function.
4111 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4112 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4113 (syms_of_textprop, set_text_properties): Remove prototypes that are
4114 already in intervals.h.
4115
4116 * intervals.h (struct interval): Move from lisp.h.
4117 Use EMACS_INT for position and size info.
4118
4119 * coding.c: Include intervals.h for Fset_text_properties.
4120
4121 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4122 position and length information.
4123
2765b457
SM
41242003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4125
4126 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4127 position and length information.
4128
2410d73a
SM
41292003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4130
4131 Change overlays_after and overlays_before so the overlays themselves
4132 are linked into lists, rather than using cons cells. After all each
4133 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4134 Lisp_Overlay for free and save up one cons cell per overlay (not
4135 to mention one indirection when traversing the list of overlay).
4136
4137 * lisp.h (struct Lisp_Overlay): New field `next'.
4138
4139 * buffer.h (struct buffer): Change overlays_before and overlays_after
4140 from Lisp lists of overlays to pointers to overlays.
4141
4142 * buffer.c (overlay_strings, recenter_overlay_lists):
4143 Fix typo in eassert in last commit.
4144 (unchain_overlay): New function.
4145 (add_overlay_mod_hooklist): Use AREF.
4146 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4147 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4148 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4149 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4150 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4151 Adjust to new type of overlays_(before|after).
4152
4153 * alloc.c (mark_object): Mark the new `next' field of overlays.
4154 (mark_buffer): Manually mark the overlays_(after|before) fields.
4155
4156 * coding.c (run_pre_post_conversion_on_str):
4157 * editfns.c (overlays_around):
4158 * xdisp.c (load_overlay_strings):
4159 * fileio.c (Finsert_file_contents):
4160 * indent.c (current_column):
4161 * insdel.c (signal_before_change, signal_after_change):
4162 * intervals.c (set_point_both):
4163 * print.c (temp_output_buffer_setup): Use new type for
4164 overlays_(before|after).
4165
04812929
SM
41662003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4167
4168 * buffer.c (report_overlay_modification): Don't run hooks while
4169 traversing the list of overlays.
4170
4171 * buffer.h (struct buffer): Use an int for overlay_center.
4172 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4173 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4174
4175 * buffer.c (reset_buffer, recenter_overlay_lists)
4176 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4177 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4178 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4179 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4180 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4181
4182 * xdisp.c (fast_find_position): Remove unused var.
4183
4184 * cmds.c (Qexpand_abbrev): New sym.
4185 (syms_of_cmds): Initialize it.
4186 (internal_self_insert): Use it to call expand-abbrev.
4187
2e7ecf15
KS
41882003-07-09 Kim F. Storm <storm@cua.dk>
4189
f9711de4 4190 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
2e7ecf15 4191 was configured with --without-xim.
42f81f64 4192 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
2e7ecf15 4193
c6de56a0
RS
41942003-07-07 Richard M. Stallman <rms@gnu.org>
4195
4196 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4197
4198 * alloc.c (Fgarbage_collect): Doc fix.
4199
b93fb365
KH
42002003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4201
4202 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4203
bfe1a3f7
SM
42042003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4205
04812929
SM
4206 * minibuf.c (read_minibuf): UNGCPRO before returning.
4207 (Ftry_completion, Fall_completions): Doc fix.
4208
bfe1a3f7
SM
4209 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4210 now that `floats' is not the last element of the struct any more.
4211
ee79d1aa
JR
42122003-07-06 Jason Rumney <jasonr@gnu.org>
4213
4214 * w32term.h (ClipboardSequence_Proc): New type.
4215
4216 * w32fns.c (clipboard_sequence_fn): New variable.
4217 (globals_of_w32fns): Initialize it.
4218
4219 * w32select.c (last_clipboard_sequence_number): New variable.
4220 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4221 number if possible.
4222
49723c04
SM
42232003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4224
4698665f
SM
4225 * m/amdx86-64.h (MARKBIT):
4226 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4227 MARKBIT and ARRAY_MARK_FLAG any more.
4228
4229 * m/hp800.h (XSETMARKBIT):
4230 * m/sr2k.h (XSETMARKBIT):
4231 * lisp.h (XSETMARKBIT): Remove unused macro.
4232
49723c04
SM
4233 * lisp.h (mark_object): Change prototype.
4234
4235 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4236 (last_marked): Change accordingly.
4237 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4238 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4239 (mark_buffer): Update calls to mark_object.
4240
4241 * bytecode.c (mark_byte_stack):
4242 * fns.c (sweep_weak_table):
4243 * keyboard.c (mark_kboards): Update calls to mark_object.
4244
1d660eca
JR
42452003-07-06 Jason Rumney <jasonr@gnu.org>
4246
4247 * alloc.c (struct ablock): Only include padding when there is some.
4248
618b5ae4
SM
42492003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4250
4251 * alloc.c (ALIGN): Add casts to simplify usage.
4252 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4253 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4254 (struct ablock, struct ablocks): New types.
4255 (free_ablock): New global var.
4256 (lisp_align_malloc, lisp_align_free): New functions.
4257 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4258 (struct float_block): Reorder and add gcmarkbits.
4259 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4260 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4261 (init_float, make_float): Use lisp_align_malloc.
4262 (free_float, live_float_p): Don't use `type' any more.
4263 (make_float): Use FLOAT_UNMARK to access to mark bit.
4264 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4265 Use FLOAT_MARKED_P to access the mark bit.
4266 (pure_alloc): Simplify use of ALIGN.
4267 (mark_object): Use FLOAT_MARK to access the mark bit.
4268 (gc_sweep): Use new macros to access the float's mark bit.
4269 (init_alloc_once): Init free_ablock.
4270
4271 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4272
3ef06d12
SM
42732003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4274
4275 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4276 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4277 (allocate_buffer): Move.
4278 (string_bytes): Don't mask markbit of `size_byte'.
4279 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4280 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4281 Use the `size' field of buffers (rather than the `name' field) for
4282 the mark bit, as is done for all other vectorlike objects.
4283 Use the new macros to access the mark bit of vectorlike objects.
4284
e81043aa
RS
42852003-06-26 Richard M. Stallman <rms@gnu.org>
4286
4287 * puresize.h (BASE_PURESIZE): Increment base size.
4288
4289 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4290
4291 * xterm.c (xim_initialize): Undo previous change.
4292
2d0834cc
SM
42932003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4294
4295 * alloc.c (survives_gc_p): Simplify.
4296
4297 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4298
4299 * window.c (Fset_window_dedicated_p): Simplify.
4300 (display_buffer_1): Don't raise the win from which minibuf was entered.
4301 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4302 (Fminibuffer_selected_window): Simplify.
4303
4304 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4305
4306 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4307 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4308
4309 * insdel.c (check_markers, adjust_markers_for_delete)
4310 (adjust_markers_for_insert, adjust_markers_for_replace)
4311 (prepare_to_modify_buffer, RESTORE_VALUE):
4312 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4313 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4314 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4315 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4316 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4317 * editfns.c (save_excursion_restore, transpose_markers):
4318 * window.c (delete_window):
4319 * xdisp.c (message_dolog): Update for new types.
4320
d54ae3d8
JD
43212003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4322
a5f696ac
JD
4323 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4324 (realize_default_face): Use default_face_done_p for the force_p
2d0834cc 4325 argument to set_lface_from_font_name. Set default_face_done_p to one.
a5f696ac
JD
4326
4327 * frame.c (make_frame): Initialize default_face_done_p.
4328
4329 * frame.h (struct frame): Add default_face_done_p.
4330
d54ae3d8
JD
4331 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4332 will be defined.
4333
2336fe58
SM
43342003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4335
4336 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4337 Initialize the new field `gcmarkbit'.
4338 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4339 (mark_interval_tree): Don't mark the tree separately from the nodes.
4340 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4341 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4342 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4343
4344 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4345 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4346 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4347 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4348 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4349
bcea31c2
DL
43502003-06-24 Dave Love <fx@gnu.org>
4351
4352 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4353
4354 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4355 from gnulib.
4356
2601f59e
RS
43572003-06-21 Richard M. Stallman <rms@gnu.org>
4358
4359 * fileio.c (Fwrite_region): Alternate messages
4360 for append and partial write.
4361
4362 * keyboard.c (read_key_sequence): When converting upcase fn key to
4363 downcase, update fkey and keytran so `backspace' gets translated.
4364
4365 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4366
4367 * process.c (wait_reading_process_input): Don't signal SIGIO
4368 in batch mode.
4369
b5d2c621
KH
43702003-06-17 Kenichi Handa <handa@m17n.org>
4371
4372 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4373 composite.h.
4374
4375 * xselect.c: Don't include charset.h, coding.h, composite.h.
4376 (Qforeign_selection): New variable.
4377 (syms_of_xselect): Intern and static it.
4378 (selection_data_to_lisp_data): Return a unibyte string made from
4379 data with `foreign-selection' text property.
4380
6793bc63
SM
43812003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4382
4383 * termhooks.h (EVENT_INIT): New macro.
4384
4385 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4386
4387 * alloc.c (mark_kboards): Move to keyboard.c.
4388
4389 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4390 * xterm.c (x_dispatch_event):
4391 * xmenu.c (find_and_call_menu_selection):
4392 * xdisp.c (handle_tool_bar_click):
4393 * w32menu.c (menubar_selection_callback):
4394 * sysdep.c (kbd_input_ast, read_input_waiting):
4395 * msdos.c (dos_rawgetc):
4396 * macterm.c (mac_check_for_quit_char):
4397 * macmenu.c (menubar_selection_callback):
4398 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4399 data to kbd_buffer_store_event.
4400
b3ea810c
KS
44012003-06-15 Kim F. Storm <storm@cua.dk>
4402
4403 * xdisp.c (x_fix_overlapping_area): Always use area relative X
6793bc63 4404 to fix redisplay problem with tall characters (such as \e,AC\e(B).
b3ea810c 4405
b8f75eda
KG
44062003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4407
4408 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4409
ba92ce48
KH
44102003-06-12 Kenichi Handa <handa@m17n.org>
4411
4412 * fileio.c (Fwrite_region): Save and restore restriction.
4413
b80263be
DL
44142003-06-12 Dave Love <fx@gnu.org>
4415
4416 * alloca.c (alloca): Declare arg as size_t.
4417
6793bc63
SM
4418 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4419 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
b80263be 4420
b23c0a83
DL
44212003-06-11 Dave Love <fx@gnu.org>
4422
4423 * search.c (shrink_regexp_cache): Use xrealloc.
4424 (syms_of_search): Use xmalloc.
4425
700e47c2
KS
44262003-06-10 Kim F. Storm <storm@cua.dk>
4427
4428 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4429 Adjust phys_cursor.x to be relative to window box, rather than
4430 text area before checking -- to ensure cursor is redrawn when
4431 exposing window.
4432 Note: This also fixes a similar (older) bug if display margins
4433 are present.
4434
f11aa0b2
KH
44352003-06-06 Kenichi Handa <handa@m17n.org>
4436
4437 * coding.c (encoding_buffer_size): If coding->type is
4438 coding_type_ccl, double magnification on CRLF encoding.
4439
3d143690
JR
44402003-06-06 Jason Rumney <jasonr@gnu.org>
4441
4442 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4443 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4444
4445 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4446 Mac too.
4447
f16205ca
DL
44482003-06-05 Dave Love <fx@gnu.org>
4449
b23c0a83
DL
4450 * strftime.c: Merge changes from gnulib.
4451
f16205ca
DL
4452 * mktime.c (__mktime_internal): Merge changes from gnulib
4453 involving year 69 and dst2.
4454
4455 Changes to merge with gnulib version and be consistent with the
4456 autoconf test:
4457
6793bc63
SM
4458 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4459 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
f16205ca
DL
4460 [HAVE_LOCALE_H]: Include locale.h.
4461 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4462
9b87a0bc
KS
44632003-06-05 Kim F. Storm <storm@cua.dk>
4464
4465 * window.c (coordinates_in_window): Convert X and Y to window
4466 relative coordinates inside mode-line and header-line parts.
4467 Convert X and Y to margin area relative coordinates inside left
4468 and right display margin parts.
4469
5a8a15ec
JR
44702003-06-05 Jason Rumney <jasonr@gnu.org>
4471
4472 * w32fns.c (add_system_logical_colors_to_map): New function.
4473 (Fx_open_connection): Use it.
4474
01ed8ff1
SM
44752003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4476
4477 * process.c (allocate_pty): Revert part of the previous patch.
4478 (Faccept_process_output): Simplify.
4479
b427b65d
JR
44802003-06-04 Jason Rumney <jasonr@gnu.org>
4481
4482 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4483
4484 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4485 (lispy_mouse_wheel_names): Remove.
4486 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4487 Always define drag_and_drop_syms.
4488
4489 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4490 WHEEL_EVENT events.
4491
914a8c47
SM
44922003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4493
01ed8ff1
SM
4494 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4495
914a8c47
SM
4496 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4497
adcb132c
JD
44982003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4499
4500 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4501 menu item label.
4502
be781fa7
RS
45032003-06-03 Richard M. Stallman <rms@gnu.org>
4504
4505 * window.c (Fwindow_edges): Doc fix.
4506 (Fwindow_pixel_edges, Fwindow_inside_edges)
4507 (Fwindow_inside_pixel_edges): New functions.
4508 (syms_of_window): defsubr them.
4509
4510 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4511 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4512
914a8c47
SM
45132003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4514
4515 * dispnew.c (Fsit_for): Don't lie about the number of args.
4516
5b07197a
DL
45172003-06-02 Dave Love <fx@gnu.org>
4518
4519 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4520 (syms_of_callproc) <process-environment>: Doc fix.
4521
4522 * doc.c: Use HAVE_FCNTL_H, not USG5.
4523
4524 * xfaces.c (font_rescale_ratio): Fix for K&R.
4525
4526 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4527
4528 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4529
4530 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4531
4532 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4533 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4534
d7107586 4535 * xterm.c (Qutf_8): Move to coding.c
5b07197a
DL
4536
4537 * xmenu.c (ENCODE_MENU_STRING): New.
4538 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4539 Use it.
4540
4541 * coding.h (ENCODE_UTF_8): New.
4542 (Qutf_8): Declare.
4543
4544 * coding.c (Qutf_8): New.
4545 (syms_of_coding): Intern it.
4546
4547 * fns.c: Doc fixes.
4548
7335b336
KH
45492003-06-02 Kenichi Handa <handa@m17n.org>
4550
4551 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4552
914a8c47
SM
45532003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4554
4555 * lread.c (openp): Make sure STR is a string.
4556
9862c135
JR
45572003-06-01 David Ponce <david@dponce.com>
4558
4559 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4560 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4561
4562 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4563 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4564 (discard_mouse_events): Discard WHEEL_EVENT events too.
4565 (lispy_wheel_names, wheel_syms): New.
4566 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4567 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4568 defined.
914a8c47 4569 (make_lispy_event): Add WHEEL_EVENT handler.
9862c135
JR
4570
4571 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4572 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4573 WHEEL_EVENT events.
4574
f984e73e
JPW
45752003-05-31 John Paul Wallington <jpw@gnu.org>
4576
4577 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4578 timer are in lisp/emacs-lisp.
4579
1efcd78f
KH
45802003-05-31 Kenichi Handa <handa@m17n.org>
4581
458c8af4
KH
4582 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4583 region when a buffer is changed to unibyte.
4584
1efcd78f
KH
4585 * charset.h (VALID_LEADING_CODE_P): New macro.
4586 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4587
778e2804
KH
4588 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4589 is nonzero, accept multibyte form of eight-bit-control chars.
4590 (decode_composition_emacs_mule): Likewise.
4591 (decode_coding_emacs_mule): Likewise.
4592 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4593 multibyte form of eight-bit-control chars.
4594
4595 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4596 (Finsert_file_contents): If coding-system-for-read is bound to
4597 Qauto_save_coding, use the coding system emacs-mule with special
4598 setting for recovering a file.
4599 (choose_write_coding_system): On auto saving, use the coding
4600 system emacs-mule with special setting for auto saving.
4601 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4602
034060e4
KH
46032003-05-30 Kenichi Handa <handa@m17n.org>
4604
4605 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4606 properly before calling ccl_driver.
4607
778e2804 4608 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
034060e4
KH
4609
4610 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4611 nonzero.
4612 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4613 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4614
595f5aa5
GM
46152003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4616
4617 * xfaces.c (realize_default_face): Do not abort if lface is
4618 non-existent - reverts change from 2003-05-19.
4619
103e0180
KH
46202003-05-29 Kenichi Handa <handa@m17n.org>
4621
4622 * coding.c (decode_coding_iso2022): Pay attention to the byte
4623 sequence of CTEXT extended segment, and retain those bytes as is.
4624
46252003-05-28 Kenichi Handa <handa@m17n.org>
4626
4627 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4628 of CODING_REPLACEMENT_CHARACTER.
4629 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4630 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4631 check this flag on encoding.
4632 (encode_coding_sjis_big5): Check
4633 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4634 (Fset_terminal_coding_system_internal): Set
4635 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4636 instead of setting CODING_FLAG_ISO_SAFE flag in
4637 terminal_coding.flags.
4638
4639 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4640 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4641 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4642
ff6a3bfb 46432003-05-28 Richard M. Stallman <rms@gnu.org>
45f266dc 4644
ff6a3bfb
RS
4645 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4646
4647 * eval.c (unbind_to): Move init of this_binding to separate statement.
45f266dc 4648
1963c428
KS
46492003-05-28 Kim F. Storm <storm@cua.dk>
4650
4651 * xdisp.c (expose_window): Fix error in calculation of
4652 window relative coordinates of area to redisplay.
4653
2b5d4601
JR
46542003-05-27 Jason Rumney <jasonr@gnu.org>
4655
4656 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4657
1c64a4a2
JB
46582003-05-27 David Ponce <david@dponce.com>
4659
4660 Handle W32 mouse wheel events as mouse click events, like in X.
4661
4662 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4663 MOUSE_WHEEL_EVENT anymore.
4664
4665 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4666 Scrolling down/up the mouse wheel is respectively mapped to mouse
4667 button 4 and 5.
4668 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4669 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4670 WM_MOUSEWHEEL events.
4671
2d031b89
AS
46722003-05-27 Andreas Schwab <schwab@suse.de>
4673
20464fdf
AS
4674 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4675
2d031b89
AS
4676 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4677 partially visible line.
4678
4679 * alloc.c (Fgarbage_collect): Fix last change.
4680
97bc76d4
JPW
46812003-05-26 John Paul Wallington <jpw@gnu.org>
4682
4683 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4684
56613f06
SM
46852003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4686
4687 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4688 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4689
4690 * window.h (window_box_text_cols): Declare.
4691
4692 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4693 (x_draw_vertical_border): Remove unused var `f'.
4694
4695 * xfaces.c (build_scalable_font_name): Remove `unused var
4696 pixel_size' warning.
4697
4698 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4699
4700 * unexelf.c (unexec): Remove `unused var n' warning.
4701
4702 * strftime.c (my_strftime_localtime_r): Remove `defined but
4703 unused' warning.
4704
4705 * process.c (allocate_pty): Remove `unused var stb' and
4706 `cp might be used uninitialized' warnings.
4707
4708 * dispnew.c (mode_line_string): Remove unused var `f'.
4709
4710 * coding.c (find_safe_codings): Remove unused var `i'.
4711
4712 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4713
4714 * buffer.c (Fkill_buffer): Remove unused var `list'.
4715
4716 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4717
93421a1f
JD
47182003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4719
4720 * frame.c (make_frame): Condition want_fullscreen with
4721 HAVE_WINDOW_SYSTEM.
4722
c4b8aebc
JB
47232003-05-25 Juanma Barranquero <lektu@terra.es>
4724
4725 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4726 (Fwindow_scroll_bars): Fix typo in docstring.
4727
0416870b
KS
47282003-05-24 Kim F. Storm <storm@cua.dk>
4729
4730 The following changes serve several purposes:
4731
4732 1) Swap the position of fringes and display margins in windows, i.e.
4733 the fringes are now displayed between the margins and the text area
4734 (by default).
4735
4736 2) Allow fringe and scroll bar parameters to be set per-buffer and
4737 per-window (like display margins). Such settings are now stored
4738 in window configurations, preserved when frames are resized, and
9018a88e 4739 copied when windows are split vertically or horizontally.
0416870b
KS
4740 Several bugs related to display margins have been fixed.
4741
4742 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
9018a88e 4743
0416870b
KS
4744 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4745 rather than FRAME_WIDTH (FRAME_FONT (f)).
4746
4747 5) Introduce a consistent naming of variables, members and macros
4748 depending on whether their value is measured in pixels or in
4749 canonical columns/lines. Pixel dimensions are named *_width and
4750 *_height, while canonical columns/lines are named *_cols and
4751 *_lines. Pixel positions are named *_x and *_y, while column/line
4752 positions are named *_col and *_line.
4753
4754 6) Consolidate more of the X, W32, and MAC gui code by moving
4755 common data into struct frame, and generalize it for the non-gui
4756 case by using suitable defaults.
4757
4758 7) Cleanup and consolidate the macros controlling frame and window
4759 layout into frame.h and window.h, and generalize the use of the
4760 various window_box_* functions (enhanced to handle the new fringe
4761 position and the per-window fringe and scroll bar settings).
4762
4763 * frame.h (struct frame): Rename members height to text_lines,
4764 width to text_cols, window_height to total_lines, window_width to
4765 total_cols, new_height to new_text_lines, new_width to
4766 new_text_cols. All uses changed.
4767 (struct frame): New members which consolidate common members of
4768 x_output, w32_output, and mac_output structures: left_pos,
4769 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4770 win_gravity, size_hint_flags, border_width, internal_border_width,
4771 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4772 want_fullscreen. All uses changed.
4773 (struct frame): New member column_width contaning the canonical
4774 column width, analogue to line_height. All uses changed.
4775 (struct frame): Rename members scroll_bar_pixel_width to
4776 config_scroll_bar_width, and scroll_bar_cols to
4777 config_scroll_bar_cols. All uses changed.
4778 (struct frame): New member scroll_bar_actual_width which
4779 consolidates and renames the vertical_scroll_bar_extra member of
4780 x_output, w32_output, and mac_output structures. All uses changed.
4781 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4782 from x/w32/macterm.h files. All uses changed. Also change code
4783 which referred to f->output_data...->pixel_height.
4784 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
f63fd14e 4785 from x/w32/macterm.h files. All uses changed. Also change code
0416870b
KS
4786 which referred to f->output_data...->pixel_width.
4787 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4788 Also change code which referred to f->height.
4789 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4790 Also change code which referred to f->width.
4791 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4792 to update new_text_lines and new_text_cols members directly.
4793 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4794 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4795 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4796 FRAME_SCROLL_BAR_COLS. All uses changed.
4797 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4798 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4799 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4800 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4801 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4802 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4803 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4804 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4805 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4806 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4807 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4808 return line_height member (it now has proper value also for
4809 non-window frames).
4810 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4811 return new column_width member (rather than the default font width).
4812 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4813 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4814 from x/w32/macterm.h files. Unconditionally return corresponding
4815 member of frame structure (they now have proper values also for
4816 non-window frames).
4817 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4818 Calculate return value from left and right widths.
4819 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4820 internal_border_width member (has proper value for non-window frame).
4821 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4822 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4823 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4824 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4825 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4826 consolidated from xterm.h, macterm.h, and w32term.h.
4827 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4828 consolidated from xterm.h, macterm.h, and w32term.h.
4829 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4830 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4831 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4832 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4833 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4834 consolidated from x/mac/w32term.h.
4835 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4836 consolidated from x/mac/w32term.h.
4837 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4838 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4839 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4840 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4841
4842 * window.h (struct window): Rename members left to left_col,
4843 top to top_line, height to total_lines, width to total_cols,
4844 left_margin_width to left_margin_cols, right_margin_width to
4845 right_margin_cols, orig_height to orig_total_lines, orig_top to
4846 orig_top_line. All uses changed.
4847 (struct window): New members left_fringe_width, right_fringe_width,
4848 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4849 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4850 New macros primarily used to simplify other macros.
4851 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4852 referred to XINT (w->width).
4853 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4854 referred to XINT (w->height).
4855 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4856 referred to XINT (w->width) * canon_x_unit.
4857 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4858 referred to XINT (w->height) * canon_y_unit.
4859 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4860 referred to XINT (w->left).
4861 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4862 all uses and code that referred to XINT (w->left) + XINT (w->width).
4863 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4864 referred to XINT (w->top).
4865 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4866 referred to XINT (w->top) + XINT (w->height).
4867 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4868 referred to XINT (w->left) * canon_x_unit.
4869 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4870 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4871 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4872 referred to XINT (w->top) * canon_y_unit.
4873 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4874 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4875 (WINDOW_LEFTMOST_P): New macro.
4876 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4877 All uses changed.
4878 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4879 All uses changed.
4880 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4881 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4882 Do not exclude left fringe width.
4883 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4884 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4885 Do not exclude fringe widths.
4886 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4887 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4888 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4889 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4890 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4891 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4892 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4893 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4894 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4895 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4896 New macros. Change code which referenced corresponding
4897 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4898 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4899 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4900 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4901 allow per-window scroll-bar settings.
4902 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4903 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4904 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4905 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4906 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4907 FRAME_SCROLL_BAR_WIDTH.
4908 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
9018a88e 4909 (WINDOW_SCROLL_BAR_AREA_X): New macros.
0416870b
KS
4910 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4911 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4912 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4913 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4914 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4915 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4916 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4917 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4918 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4919 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4920 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4921 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4922 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4923 (window_from_coordinates): Update prototype.
4924 (Fset_window_buffer): Update EXFUN.
4925 (set_window_buffer): Update prototype.
9018a88e 4926
0416870b 4927 * dispextern.h (struct glyph_matrix): Rename members window_left_x
9018a88e 4928 to window_left_col, window_top_y to window_top_line. All uses
0416870b
KS
4929 changed.
4930 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4931 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4932 internal_border_width is now set to 0 for non-window frames.
4933 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4934 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4935 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4936 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4937 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4938 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4939 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4940 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4941 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
9018a88e 4942 Move to window.h and renamed [see window.h changes].
0416870b
KS
4943 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4944 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
9018a88e
SM
4945 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4946 Use WINDOW_TOTAL_LINES.
0416870b
KS
4947 (frame_update_line_height): Remove prototype.
4948
4949 * buffer.h (struct buffer): Rename members measured in columns:
4950 left_margin_width to left_margin_cols, right_margin_width to
4951 right_margin_cols. All uses changed.
4952 New members left_fringe_width, right_fringe_width,
4953 fringes_outside_margins for per-buffer fringe settings.
4954 New members scroll_bar_width and vertical_scroll_bar_type for
4955 per-buffer scroll bar settings.
4956
4957 * buffer.c (init_buffer_once): Set buffer_defaults and
4958 buffer_local_flags for new buffer-local variables
4959 left_fringe_width, right_fringe_width, fringes_outside_margins,
4960 scroll_bar_width, and vertical_scroll_bar_type.
4961 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4962 default-* variables for them.
4963
4964 * dispnew.c: Make (many) trivial substitutions for renamed and
4965 new macros in dispextern.h, frame.h and window.h.
4966 (mode_line_string): No need to adjust width for mode lines, as it
4967 is already adjusted by the caller.
4968 (marginal_area_string): Handle fringes inside/outside margins.
9018a88e 4969
0416870b
KS
4970 * frame.c: Make (many) trivial substitutions for renamed and
4971 new macros in dispextern.h, frame.h and window.h.
4972 (make_frame): Initialize left_fringe_width, right_fringe_width,
4973 fringe_cols, scroll_bar_actual_width, border_width,
4974 internal_border_width, column_width, line_height, x_pixels_diff,
4975 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4976 members with values suitable for a non-window frames.
4977
4978 * gtkutil.c: Make (many) trivial substitutions for renamed and
4979 new macros in dispextern.h, frame.h and window.h.
9018a88e 4980
0416870b
KS
4981 * indent.c: Make (few) trivial substitutions for renamed and
4982 new macros in dispextern.h, frame.h and window.h.
4983
4984 * keyboard.c: Make (many) trivial substitutions for renamed and
4985 new macros in dispextern.h, frame.h and window.h.
4986 (make_lispy_event): Use window positions returned from
4987 window_from_coordinates when constructing the lisp event for
4988 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4989 (incorrect) values locally.
4990 (make_lispy_movement): Use window positions returned from
4991 window_from_coordinates when constructing the lisp event, rather
4992 than calculating (incorrect) values locally.
4993
4994 * scroll.c: Make (some) trivial substitutions for renamed and
4995 new macros in dispextern.h, frame.h and window.h.
4996
4997 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4998 scroll-bars.
4999
5000 * sysdep.c: Make (few) trivial substitutions for renamed and
5001 new macros in dispextern.h, frame.h and window.h.
5002
5003 * term.c: Make (some) trivial substitutions for renamed and
5004 new macros in dispextern.h, frame.h and window.h.
5005
5006 * widget.c: Make (few) trivial substitutions for renamed and
5007 new macros in dispextern.h, frame.h and window.h.
5008
5009 * window.c: Make (many) trivial substitutions for renamed and
5010 new macros in dispextern.h, frame.h and window.h.
5011 (make_window): Initialize new members
5012 left_margin_cols, right_margin_cols, left_fringe_width,
5013 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5014 and vertical_scroll_bar_type.
5015 (coordinates_in_window): Adapted to new fringe/margin positions
9018a88e 5016 and per-window fringes and scroll-bars.
0416870b 5017 Fix bug related to incorrectly adjusting coordinates by
9018a88e 5018 frame's internal_border_width (the effect normally negible since
0416870b
KS
5019 the internal_border_width is typically 0 or 1 pixel, but very
5020 noticeable for an internal_border_width of e.g. 25 pixels).
5021 Upon successful return (other than ON_NOTHING), the coordinates
5022 are now always properly converted to window relative for the
5023 given display element.
5024 (window_from_coordinates): Add new parameters wx and wy to
5025 return the window relative x and y position in the returned
5026 window and part. A null arg means, don't return the position.
5027 All callers changed.
5028 (adjust_window_margins): New function which may reduce the width
5029 of the display margins if a window's text area is too small after
5030 resizing or splitting windows.
5031 (size_window): Fix bug that did not account for display margin
5032 widths when checking the minimum width of a window; use
5033 adjust_window_margins.
5034 (set_window_buffer): Call Fset_window_fringes and
5035 Fset_window_scroll_bars to setup per-window elements.
5036 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5037 existing display margin, fringe widths, and scroll bar settings
9018a88e
SM
5038 (e.g. after splitting a window or resizing the frame).
5039 All callers changed.
0416870b
KS
5040 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5041 (Fsplit_window): Duplicate original window's display margin,
5042 fringe, and scroll-bar settings; then call Fset_window_buffer with
5043 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5044 window to only preserve the display margins in one of the windows.
c4b8aebc 5045 When splitting horizontally, call adjust_window_margins on both
0416870b 5046 windows to ensure that the text area of the new windows is non too
f9711de4 5047 narrow. This fixes a bug which could cause Emacs to trap if the
0416870b
KS
5048 width of the split window was less than the width of the display
5049 margins.
9018a88e
SM
5050 (window_box_text_cols): Renamed from window_internal_width.
5051 All uses changed. Adapt to per-window fringes and scroll bars.
0416870b
KS
5052 Fix bug that caused vertical separator to be subtracted also on
5053 window frames. Fix another bug that did not reduce the returned
5054 value by the columns used for display margins.
5055 (window_scroll_line_based): Fix bug related to scrolling too much
5056 when display margins are present (implicitly fixed by the fix to
5057 window_box_text_cols).
5058 (scroll_left, scroll_right): Fix bug related to scrolling too far
5059 by default when display margins are present (implicitly fixed by
5060 the fix to window_box_text_cols).
5061 (struct saved_window): Rename members left to left_col, top to
5062 top_line, width to total_cols, height to total_lines, orig_top to
5063 orig_top_line, orig_height to orig_total_lines. All uses changed.
5064 New members left_margin_cols, right_margin_cols,
5065 left_fringe_width, right_fringe_width, fringes_outside_margins,
5066 scroll_bar_width, and vertical_scroll_bar_type for saving
5067 per-window display elements.
5068 (Fset_window_configuration): Restore display margins, fringes,
5069 and scroll bar settings. This fixes a bug which caused display
5070 margins to be discarded when saving and restoring a window
5071 configuration.
5072 (save_window_save): Save display margins, fringes, and scroll bar
5073 settings. This fixes a bug which caused display margins to be
5074 discarded when saving and restoring a window configuration.
5075 (Fset_window_margins): Do nothing if display margins are not
5076 really changed. Otherwise, call adjust_window_margins to ensure
5077 the text area doesn't get too narrow. This fixes a bug which
f9711de4 5078 could cause Emacs to trap if setting display margins wider than
0416870b
KS
5079 the width of the window.
5080 (Fset_window_fringes): New defun to allow user to specifically set
5081 this window's fringe widths and position vs. display margins.
5082 (Fwindow_fringes): New defun to return window's actual fringe
5083 settings.
5084 (Fset_window_scroll_bars): New defun to allow user to specifically
5085 set this window's scroll bar width and position.
5086 (Fwindow_scroll_bars): New defun to return window's actual scroll
5087 bar settings.
5088 (compare_window_configurations): Also compare display margins,
5089 fringes, and scroll bar settings.
5090 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5091
5092 * xdisp.c: Make (many) trivial substitutions for renamed and
5093 new macros in dispextern.h, frame.h and window.h.
5094 (window_box_width): Adapt to per-window fringes and scroll bars,
f63fd14e 5095 and new fringe vs. display margin position. Note that returned
0416870b
KS
5096 value is no longer guaranteed to be a whole multiple of the frame
5097 column width, since per-window fringes may now be any width.
5098 (window_box_left_offset): New function like window_box_left, but
5099 value is relative to left border of window (rather than frame).
5100 (window_box_right_offset): New function like window_box_right,
5101 but value is relative to left border of window.
5102 (window_box_left): Adapt to per-window fringes and scroll bars,
5103 and new fringe vs. display margin position. Simplify by using
5104 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5105 (window_box): Allow null args for unnecessary return values;
5106 change/simplify relevant callers.
5107 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
9018a88e
SM
5108 and new fringe vs. display margin position.
5109 Use window_box_left_offset and window_box_right_offset
0416870b 5110 (get_glyph_string_clip_rect): Adapt to per-window fringes and
9018a88e
SM
5111 scroll bars, and new fringe vs. display margin position.
5112 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
0416870b
KS
5113 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5114 fringe vs. display margin position.
5115 (hscroll_window_tree): Use window_box_width instead of window_box.
a64387ee
JB
5116 (redisplay_window): Adapt to per-window scroll bars.
5117 (draw_glyphs): Rework to handle per-window fringes and scroll
9018a88e
SM
5118 bars, and new fringe vs. display margin position.
5119 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
a64387ee 5120 (x_clear_end_of_line): Adapt to per-window fringes and scroll
0416870b
KS
5121 bars, and new fringe vs. display margin position. Fix bug which
5122 increased total width of full_width rows by width of scroll bars
5123 although window's total width already includes that.
5124 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5125 (expose_area): Simplify using window_box_left_offset.
5126 (x_draw_vertical_border): Handle per-window scroll bar settings,
5127 mixing windows with left, right and no scroll bars.
5128
5129 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5130 where it's used in x_list_fonts (for clarity).
5131 (frame_update_line_height): Remove unused function; functionality
5132 is now done directly when setting the default font in x_set_font.
5133
5134 * xfns.c: Make (many) trivial substitutions for renamed and
5135 new macros in dispextern.h, frame.h and window.h.
5136
5137 * xmenu.c: Make (some) trivial substitutions for renamed and
5138 new macros in dispextern.h, frame.h and window.h.
5139
5140 * xterm.h (struct x_output): Move members left_pos, top_pos,
5141 border_width, pixel_height, pixel_width, line_height,
5142 internal_border_width, vertical_scroll_bar_extra,
5143 left_fringe_width, right_fringe_width, fringe_cols,
5144 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5145 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5146 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5147 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5148 (PIXEL_WIDTH, PIXEL_HEIGHT)
5149 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5150 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5151 frame.h and renamed [see frame.h changes].
5152 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5153 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5154 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5155 and renamed [see frame.h changes].
9018a88e 5156
0416870b
KS
5157 * xterm.c: Make (several) trivial substitutions for renamed and
5158 new macros in dispextern.h, frame.h and window.h.
5159 (x_draw_glyph_string_box): Adapt to per-window fringes and
5160 scroll-bars.
5161 (scroll_run): Adapt to new fringe position.
5162 (glyph_rect): Use window coordinates returned from
5163 window_from_coordinates rather than frame_to_window_pixel_xy.
5164 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5165 scroll-bars.
5166 (handle_one_xevent): Simplify a USE_GTK conditional.
5167 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5168 (fringes are now inside margins, i.e. always in the clipping area).
5169 All callers changed.
5170 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5171 directly, then call compute_fringe_widths. Don't call
5172 frame_update_line_height.
5173
5174 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5175 border_width, pixel_height, pixel_width, line_height,
5176 internal_border_width, vertical_scroll_bar_extra,
5177 left_fringe_width, right_fringe_width, fringe_cols,
5178 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5179 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5180 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5181 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5182 (PIXEL_WIDTH, PIXEL_HEIGHT)
5183 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5184 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5185 frame.h and renamed [see frame.h changes].
5186 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5187 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5188 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5189 and renamed [see frame.h changes].
9018a88e 5190
0416870b
KS
5191 * w32term.c: Make (several) trivial substitutions for renamed and
5192 new macros in dispextern.h, frame.h and window.h.
5193 (x_draw_glyph_string_box): Adapt to per-window fringes and
5194 scroll-bars.
5195 (glyph_rect): Use window coordinates returned from
5196 window_from_coordinates rather than frame_to_window_pixel_xy.
5197 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5198 scroll-bars.
5199 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5200 (fringes are now inside margins, i.e. always in the clipping area).
5201 All callers changed.
5202 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5203 directly, then call compute_fringe_widths. Don't call
5204 frame_update_line_height.
5205
5206 * w32console.c: Make (few) trivial substitutions for renamed and
5207 new macros in dispextern.h, frame.h and window.h.
5208
5209 * w32fns.c: Make (many) trivial substitutions for renamed and
5210 new macros in dispextern.h, frame.h and window.h.
5211
5212 * w32menu.c: Make (few) trivial substitutions for renamed and
5213 new macros in dispextern.h, frame.h and window.h.
5214
5215 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5216 border_width, pixel_height, pixel_width, line_height,
5217 internal_border_width, vertical_scroll_bar_extra,
5218 left_fringe_width, right_fringe_width, fringe_cols,
5219 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5220 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5221 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5222 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5223 (PIXEL_WIDTH, PIXEL_HEIGHT)
5224 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5225 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5226 frame.h and renamed [see frame.h changes].
5227 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5228 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5229 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5230 and renamed [see frame.h changes].
9018a88e 5231
0416870b
KS
5232 * macterm.c: Make (several) trivial substitutions for renamed and
5233 new macros in dispextern.h, frame.h and window.h.
5234 (x_draw_glyph_string_box): Adapt to per-window fringes and
5235 scroll-bars.
5236 (glyph_rect): Use window coordinates returned from
5237 window_from_coordinates rather than frame_to_window_pixel_xy.
5238 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5239 scroll-bars.
5240 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5241 (fringes are now inside margins, i.e. always in the clipping area).
5242 All callers changed.
5243 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5244 directly, then call compute_fringe_widths. Don't call
5245 frame_update_line_height.
5246
5247 * macfns.c: Make (several) trivial substitutions for renamed and
5248 new macros in dispextern.h, frame.h and window.h.
9018a88e 5249 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
0416870b
KS
5250
5251 * macmenu.c: Make (few) trivial substitutions for renamed and
5252 new macros in dispextern.h, frame.h and window.h.
5253
5254 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5255 and line_height, and use corresponding new members in struct
5256 frame. All uses changed.
5257 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5258 superseeded by corresponding macros in frame.h.
5259
5260 * msdos.c: Make (several) trivial substitutions for renamed and
5261 new macros in dispextern.h, frame.h and window.h.
5262 (IT_note_mouse_highlight): Use updated window coordinates returned
9018a88e 5263 by window_from_coordinates, rather than adjusting them locally.
0416870b
KS
5264 (internal_terminal_init): No need to initialize line_height here;
5265 it now defaults to 1.
5266
9018a88e
SM
52672003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5268
5269 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5270 dropping `down' events.
5271
016bd3c0
AS
52722003-05-24 Andreas Schwab <schwab@suse.de>
5273
5274 * coding.c (find_safe_codings): Fix last change.
5275
4dacadcc
TTN
52762003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5277
5278 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5279
319830ce
SM
52802003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5281
9018a88e
SM
5282 * xdisp.c (display_mode_element): Increase max depth.
5283 Simplify the error handling code. Use a different error string
5284 for the case where we hit the depth limit.
5285
319830ce
SM
5286 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5287
5288 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5289
52902003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5291
5292 * intervals.c (get_local_map): Don't get char-property of previous
5293 point any more: get_pos_property already does it and better.
5294
c67de8ba
DL
52952003-05-21 Dave Love <fx@gnu.org>
5296
5297 [Merged from unicode branch.]
5298
5299 * xfns.c (x_window, x_window): Use use_xim.
5300
5301 * xterm.c (use_xim): Initialize.
5302 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5303 (x_term_init): Maybe set use_xim.
5304
5305 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5306
edd3ff1d
JR
53072003-05-21 Jason Rumney <jasonr@gnu.org>
5308
5309 * unexw32.c (_start): Remove _fmode initialization.
5310
5311 * emacs.c (main) [WINDOWSNT]: Move it here.
5312
463f55ee
DL
53132003-05-20 Dave Love <fx@gnu.org>
5314
5315 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5316
af253914
RS
53172003-05-19 Richard M. Stallman <rms@gnu.org>
5318
5319 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5320 as value for QCfont attribute.
5321 (realize_default_face): lface should already exist; crash if not.
5322 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5323
5324 * frame.c (Fignore_event): Doc fix.
5325
1d211019
KH
53262003-05-19 Kenichi Handa <handa@m17n.org>
5327
5328 * coding.c (decode_coding_string): Handle post-read-conversion
5329 even if the coding doesn't require decoding.
5330
4dd68254
RS
53312003-05-18 Richard M. Stallman <rms@gnu.org>
5332
5333 * callproc.c (Fcall_process_region): Doc fix.
5334
14d87dc9
SM
53352003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5336
deca5d96
SM
5337 * lread.c (Fload): Print a message if package is obsolete.
5338
14d87dc9
SM
5339 * window.c (Fselect_window): Add optional `norecord' arg.
5340 (select_window_1): Fold into Fselect_window.
5341 (select_window_norecord): New function.
5342 (temp_output_buffer_show): Use it. Preserve current buffer.
5343
5344 * window.h (Fselect_window): Update declaration.
5345
5346 * window.c (delete_window, Fother_window, Fset_window_configuration):
5347 * minibuf.c (read_minibuf):
5348 * macterm.c (x_new_focus_frame):
5349 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5350 * callint.c (Fcall_interactively):
5351 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5352
5353 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5354
78f52183
DK
53552003-05-17 David Kastrup <dak@gnu.org>
5356
5357 * process.c (read_process_output): Back out change from 2003-03-09.
5358
14d87dc9
SM
53592003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5360
5361 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5362
5363 * textprop.c (text_property_stickiness): New arg `buffer'.
5364
5365 * intervals.h (text_property_stickiness): New arg `buffer'.
5366 (get_pos_property): Declare.
5367
5368 * intervals.c (get_local_map): Use get_pos_property, to obey
5369 stickiness and empty overlays.
5370 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5371 (merge_properties, intervals_equal, merge_properties_sticky):
5372 Use XCAR, XCDR.
5373 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5374
1fd1cc2f
RS
53752003-05-17 Richard M. Stallman <rms@gnu.org>
5376
4f9f637a
RS
5377 * minibuf.c (read_minibuf): If buffer is empty, record the default
5378 in the history.
5379 (Fminibuffer_complete_word): When deleting the overlap, take account
5380 of its real position.
5381
5382 * fns.c (map_char_table): Fix previous change.
5383
1fd1cc2f
RS
5384 * syntax.c (find_defun_start):
5385 When open_paren_in_column_0_is_defun_start,
5386 return beginning of buffer.
5387
5388 * lisp.h (map_char_table): Declare added arg.
5389
5390 * fns.c (map_char_table): New arg TABLE gets the master table.
5391 All calls changed.
5392 Process default and inheritance, resorting to Faref if necessary.
5393
5394 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5395 (Faccessible_keymaps): Pass new arg to map_char_table.
5396
5397 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5398
5399 * casetab.c (set_case_table): Pass new arg to map_char_table.
5400
5401 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5402
5403 * lisp.h (specbinding_func): New typedef.
5404 (struct specbinding): Use specbinding_func, to put the `volatile'
5405 in the right place.
5406
5407 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5408 to avoid GCC warning.
14d87dc9 5409
b4bd27c5
RS
54102003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5411
14d87dc9 5412 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
b4bd27c5 5413
35fb885d
SM
54142003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5415
5416 * keyboard.c (apply_modifiers): Don't fill the other cache.
5417
9a274fbd
SM
54182003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5419
c55b5fad
SM
5420 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5421
9a274fbd
SM
5422 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5423 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5424 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5425 (Fset_window_configuration, Fcurrent_window_configuration)
5426 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5427 (Fpos_visible_in_window_p, mark_window_cursors_off)
5428 (window_internal_height, window_internal_width, Frecenter)
5429 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5430 (replace_buffer_in_all_windows, init_window_once, init_window)
5431 (syms_of_window, keys_of_window): Move from lisp.h.
5432 * lisp.h: Move window.c declarations to window.h.
5433
5434 * bytecode.c: Include window.h.
5435 * emacs.c: Include window.h.
5436
14d87dc9 5437 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
9a274fbd
SM
5438 (keyremap): Add `parent' field.
5439 (keyremap_step): Use it. Remove `parent' argument.
5440 (read_key_sequence): Setup and use the new `parent' field.
5441
fd93e331
SM
54422003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5443
5444 * keyboard.c (adjust_point_for_property): Ensure termination.
5445
1c4001a1
SM
54462003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5447
5448 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5449 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5450 duplicated handling of function-key-map and key-translation-map
5451 in read_key_sequence.
5452 (read_key_sequence): Use them.
5453
5454 * keyboard.c (adjust_point_for_property): Try harder to move point
5455 to the non-sticky end of an invisible property.
5456
5457 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5458 property intangible as well.
5459
780379b1
AS
54602003-05-10 Andreas Schwab <schwab@suse.de>
5461
5462 * xmenu.c (single_menu_item): Change last parameter to void* to
5463 avoid warning.
5464
ca2de342
RS
54652003-05-09 Richard M. Stallman <rms@gnu.org>
5466
5467 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5468 Bind Qinhibit_modification_hooks to t so there will be no GC.
5469 Rename local `tem' to `save_deactivate_mark'.
5470
5471 * eval.c (specpdl_ptr): Declare volatile.
5472 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5473 before doing the work of unbinding it.
5474
5475 * lisp.h (struct specbinding): Declare elements volatile.
5476 (specpdl_ptr): Declare volatile.
5477
5478 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5479
5480 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5481 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5482
347003be
DL
54832003-05-08 Dave Love <fx@gnu.org>
5484
5485 * coding.c (Vlast_coding_system_used): Doc fix.
5486
5adcec23
JR
54872003-05-07 Jason Rumney <jasonr@gnu.org>
5488
5489 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5490 when system does not support them.
5491
5fe3b8a4
SM
54922003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5493
5494 * fileio.c (Qwrite_region_annotate_functions): New var.
5495 (build_annotations): Use it to process the global part of the hook.
5496 (syms_of_fileio): Init and staticpro it.
5497
5498 * keyboard.c (safe_run_hooks_error): Display a message instead of
5499 silently ignoring the error.
5500
55012003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5502
5503 * keyboard.c (input_available_signal): Mark static.
5504 (menu_bar_items): Use map_keymap.
5505 (menu_bar_one_keymap): Remove.
5506 (menu_bar_item): Adjust arglist (for use in map_keymap).
5507 Properly hide a second binding when not both are keymaps.
5508
5509 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5510 (single_keymap_panes): Use it and map_keymap.
5511 (single_menu_item): Use skp as well.
5512
5513 * keymap.h (map_keymap_function_t): New type.
5514 (map_keymap): Declare.
5515
5516 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5517 (map_keymap_call, Fmap_keymap): New functions.
5518 (syms_of_keymap): Defsubr map-keymap.
5519
4b1b4443
JD
55202003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5521
5522 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5523 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5524 ..._with_mnemonic functions for menu items.
5525
1f816871
KH
55262003-05-01 Kenichi Handa <handa@m17n.org>
5527
5528 * coding.c (coding_system_accept_latin_extra_p): Delete this
5529 function.
5530 (find_safe_codings): Pay attention to
5531 the property tranlsation-table-for-encode of each codings.
5532 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5533
5ed6ba5b
SM
55342003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5535
5536 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5537
32c06229
SM
55382003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5539
5540 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5541
5542 * lisp.h (CHECK): Wrap args in parenthesis.
5543 (specbind): Fix doc: symbol = Qnil is not supported any more.
5544
5545 * bytecode.c (Fbyte_code) <unwind-protect>:
5546 Use Fprogn rather than 0 and Qnil.
5547
5548 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5549 `double', and `triple' modifiers as well.
5550
ed3c3314
RS
55512003-04-30 Richard M. Stallman <rms@gnu.org>
5552
5553 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5554
5555 * alloc.c (abort_on_gc): New variable.
5556 (Fgarbage_collect): Abort if abort_on_gc is set.
5557
5558 * lisp.h (abort_on_gc): Add decl.
5559
5560 * eval.c (Fsignal): Clear abort_on_gc.
5561
5562 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
32c06229 5563 Reinit FORMAT_START and END before second scan.
ed3c3314
RS
5564
5565 * xdisp.c (move_it_vertically_backward): Do the final big else
5566 even if nlines is 0.
5567
5568 * xdisp.c (redisplay_internal): Finish the per-frame loop
5569 even if redisplay is suspended by input.
5570
0b325c12
AC
55712003-04-24 Andrew Choi <akochoi@shaw.ca>
5572
5573 * macterm.c (x_list_fonts): Return all fonts that match if
5574 maxnames = -1.
5575
4e837cd0
KH
55762003-04-25 Kenichi Handa <handa@m17n.org>
5577
5578 * syntax.c (skip_chars): Fix previous change.
5579
9af7511a
KH
55802003-04-24 Kenichi Handa <handa@m17n.org>
5581
5582 * syntax.c (skip_chars): Make the code faster by using the common
5583 technique of *p, *stop, and *endp.
5584
e3b2c21f
JD
55852003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5586
5587 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
32c06229 5588 tool_bar_items so GTK tool bar expose callback does not access items
e3b2c21f
JD
5589 being updated.
5590
32c06229
SM
55912003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5592
5593 * eval.c (Fapply): Undo last change and add a comment about why.
5594
c6464167
MB
55952003-04-18 Miles Bader <miles@gnu.org>
5596
5597 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5598 pickier PARSE_MULTIBYTE_SEQ.
5599
e509f168
SM
56002003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5601
5602 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5603 Use XCDR, XCAR, CONSP.
5604 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5605 (Fapply): Remove unnecessary GCPRO.
5606
5607 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5608
5609 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5610
5611 * buffer.h: Don't hardcode BEG==1.
5612
5613 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5614
5ceea398
RS
56152003-04-16 Richard M. Stallman <rms@gnu.org>
5616
5617 * xdisp.c (try_window, try_window_reusing_current_matrix):
5618 When at end of window, set window_end_pos to Z-ZV.
5619
5620 * buffer.c (Foverlay_recenter): Doc fix.
5621
e509f168
SM
56222003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5623
5624 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5625
d243e605
AC
56262003-04-14 Andrew Choi <akochoi@shaw.ca>
5627
5628 * macterm.c (mac_check_for_quit_char): Don't check more often than
5629 once a second.
5630
6901b111
SM
56312003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5632
5633 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5634 specially, so that they can't hide an implicit switch-frame event.
5635 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5636 (head_table): Use switch-frame as event_kind for select-window.
5637 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5638
5639 * editfns.c (Fformat): Lisp_Object/int mixup.
5640 (format2): Remove unused var numargs.
5641
e301806f 56422003-04-11 Kenichi Handa <handa@m17n.org>
aa95b710 5643
6901b111 5644 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
aa95b710
KH
5645 (Qafter_insert_file_set_coding): New variable.
5646 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5647 for after-insert-file-adjust-coding-function.
5648 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5649 instead of Vafter_insert_file_adjust_coding_function.
5650
38914424
KH
56512003-04-11 Kenichi Handa <handa@m17n.org>
5652
5653 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5654
5655 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5656 string. Callers changed.
5657
56582003-04-10 Kenichi Handa <handa@m17n.org>
a288d979 5659
6901b111 5660 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
a288d979 5661 (syms_of_fileio): Declare it as a lisp variable.
6901b111
SM
5662 (Finsert_file_contents):
5663 Call Vafter_insert_file_adjust_coding_function before calling
a288d979
KH
5664 decode-format.
5665
f979dc05
JD
56662003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5667
5668 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5669 get GtkAdjustment as widget now is a GtkRange.
5670
5671 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5672 GtkRange to avoid memory leak.
5673
f8c6b4c2 56742003-04-09 Kenichi Handa <handa@m17n.org>
cb98871c 5675
50ebc53d
KH
5676 * xfaces.c (Vface_font_rescale_alist): New variable.
5677 (struct font_name): New member rescale_ratio.
5678 (font_rescale_ratio): New function.
6901b111 5679 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
50ebc53d
KH
5680 (better_font_p): On comparing point sized, pay attention to
5681 recale_ratio member of fonts.
5682 (build_scalable_font_name): Reflect font->rescale_ratio in the
5683 font name.
6901b111 5684 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
50ebc53d 5685
cb98871c
KH
5686 * lread.c (read1): Before calling index, check if the 2nd
5687 arguemnt is in ASCII range.
5688
4773b8ca
RS
56892003-04-08 Richard M. Stallman <rms@gnu.org>
5690
b0ada147
RS
5691 * fileio.c (Ffile_symlink_p): Doc fix.
5692
5693 * editfns.c (Fformat): Translate positions of text properties
5694 in the format string to apply them to the result.
5695
4773b8ca
RS
5696 * fileio.c (Finsert_file_contents): Doc fix.
5697 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5698
56992003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6901b111 5700
4773b8ca
RS
5701 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5702
e8f25745 57032003-04-08 Steven Tamm <steventamm@mac.com>
b0ada147 5704
e8f25745
ST
5705 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5706 that self-contained application finds libexec files.
5707
f8c6b4c2 57082003-04-08 Kenichi Handa <handa@m17n.org>
2310d84c 5709
6901b111
SM
5710 * coding.c (code_convert_region_unwind):
5711 Set Vlast_coding_system_used to the argument.
2310d84c
KH
5712 (code_convert_region): If post-read-conversion function changed
5713 the value of last-coding-sytem, keep the new value in
5714 coding->symbol so that it won't be overridden.
5715 (run_pre_post_conversion_on_str): Likewise.
7c086845
KH
5716 (coding_system_accept_latin_extra_p): New function.
5717 (find_safe_codings): Pay attention to characters registered in
5718 latin-extra-code-table.
2310d84c 5719
39c9a034
TTN
57202003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5721
5722 * Makefile.in (md5.o): Add missing dependency info.
5723
eb67c5d6
RS
57242003-04-06 Richard M. Stallman <rms@gnu.org>
5725
5726 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5727
5728 * marker.c (verify_bytepos): New function.
5729
5730 * intervals.c (set_intervals_multibyte_1): When becoming
5731 multibyte, adjust right and left child sizes to a whole set of
5732 characters. If an interval gets zero total-length, delete it.
5733 If an interval consists of just its children, delete one of them.
5734
5735 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5736 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
39c9a034 5737
eb67c5d6
RS
5738 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5739 All calls deleted.
5740 (lisp_malloc): Do the work here directly.
5741
b1f81fc5
JB
57422003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5743
5744 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5745 char tables.
5746
57472003-04-04 Kenichi Handa <handa@m17n.org>
aa8b70ae
KH
5748
5749 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5750 destructively change "%S" to "%s".
5751
774666fb
MB
57522003-04-03 Miles Bader <miles@gnu.org>
5753
5754 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5755 always set.
5756
19c37f01
DL
57572003-04-01 Dave Love <fx@gnu.org>
5758
5759 * xfns.c (xpm_lookup_color): Grok "opaque".
5760
2f4b24c3
AC
57612003-03-31 Andrew Choi <akochoi@shaw.ca>
5762
5763 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5764 parent window ID.
5765
5766 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5767
5768 * macterm.h (struct mac_output): Define x_pixels_diff and
5769 y_pixels_diff.
b1f81fc5 5770
9443fcf6
JB
57712003-03-31 Juanma Barranquero <lektu@terra.es>
5772
5773 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5774 blockinput.h and files included from it.
5775
e072891b
KS
57762003-03-31 Kim F. Storm <storm@cua.dk>
5777
5778 The following changes consolidates the common code related to
5779 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5780 files into frame.c.
9443fcf6 5781
e072891b
KS
5782 * frame.c: Include blockinput.h.
5783 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5784 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5785 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5786 related vars here.
5787 (struct frame_parm_table, frame_parms): New table for describing
5788 frame parameters and their associated Q-variable.
5789 The order of the parameters corresponds to the sequence of the
5790 frame_parm_handlers table in redisplay_interface.
5791 (x_fullscreen_move, x_set_frame_parameters)
5792 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5793 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5794 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5795 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5796 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5797 Generic functions for processing of frame parameters.
5798 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5799 (display_x_get_resource, x_get_resource_string): Functions for
5800 generic access to X resources.
5801 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5802 (x_default_parameter, Fx_parse_geometry): Functions for generic
5803 access to frame parameters.
6901b111
SM
5804 (x_figure_window_size): Generic calculation of frame size.
5805 Fixed to add space needed for tool bar. Also setup size_hint_flags.
e072891b
KS
5806 (syms_of_frame): Intern and staticpro frame parameter variables.
5807 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5808 Defsubr Sx_get_resource and Sx_parse_geometry.
9443fcf6 5809
e072891b
KS
5810 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5811 parameter related vars defined in frame.c.
5812 (EMACS_CLASS): Define here.
5813 (enum FULLSCREEN_*): Define here.
5814 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5815 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5816 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5817 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5818 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5819 (x_set_visibility, x_set_autoraise, x_set_autolower)
5820 (x_set_unsplittable, x_set_vertical_scroll_bars)
5821 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5822 (x_figure_window_size): Add prototypes.
5823
5824 * dispextern.h (frame_parm_handler): New typedef.
5825 (struct redisplay_interface): New member frame_parm_handlers.
5826 (enum resource_types): Move declaration here.
5827 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5828 (x_default_parameter): Add prototypes.
5829
5830 * window.c: Remove extern decl for frame parameter vars.
5831 (change_window_heights): New generic function;
5832 replaces x_change_window_heights. All users changed.
5833
5834 * window.h (change_window_heights): Add prototype.
5835
5836 * xfaces.c: Remove extern decl for frame parameter vars.
5837
5838 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5839 (struct w32_display_info): Fix type of xrdb member.
5840 (enum FULLSCREEN_*): Remove.
5841 Remove prototypes for generic functions (in frame.h).
5842
5843 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5844 parameters now defined in frame.h and frame.c.
f63fd14e 5845 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5846 (enum x_frame_parms): Remove (bogus, unused enum).
5847 (check_x_display_info): Make non-static (for frame.c).
5848 (struct x_frame_parm_table, x_frame_parms): Remove.
5849 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5850 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5851 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5852 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5853 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5854 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5855 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5856 Remove. Use generic functions instead.
5857 (enum resource_types): Remove.
5858 (x_set_scroll_bar_default_width): New global function (for frame.c).
5859 (Fx_create_frame): Depend on x_figure_window_size to add space for
5860 toolbar and setup size_hint_flags.
5861 (x_frame_parm_handlers): New table for redisplay_interface.
5862 (syms_of_xfns): Don't intern/staticpro removed vars.
9443fcf6 5863
e072891b 5864 * xterm.c: Remove unnecessary extern declarations.
f63fd14e 5865 (x_fullscreen_adjust): Remove. Use generic instead.
e072891b
KS
5866 (x_redisplay_interface): Add x_frame_parm_handlers member.
5867
5868 * w32gui.h (XrmDatabase): New (dummy) typedef.
5869
5870 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5871 (struct w32_display_info): Fix type of xrdb member.
5872 (enum FULLSCREEN_*): Remove.
5873 (x_fullscreen_adjust): Remove prototype.
5874
5875 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5876 parameters now defined in frame.h and frame.c.
f63fd14e 5877 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5878 (enum x_frame_parms): Remove (bogus, unused enum).
5879 (check_x_display_info): Make non-static (for frame.c).
5880 (struct x_frame_parm_table, x_frame_parms): Remove.
5881 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5882 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5883 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5884 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5885 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5886 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5887 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5888 Remove. Use generic functions instead.
5889 (enum resource_types): Remove.
5890 (x_set_scroll_bar_default_width): New global function (for frame.c).
5891 (Fx_create_frame): Depend on x_figure_window_size to add space for
5892 toolbar and setup size_hint_flags.
5893 (w32_frame_parm_handlers): New table for redisplay_interface.
5894 (syms_of_w32fns): Don't intern/staticpro removed vars.
9443fcf6 5895
e072891b
KS
5896 * w32term.c: Remove unnecessary extern declarations.
5897 (x_fullscreen_adjust): Remove. Use generic instead.
5898 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5899
5900 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5901
5902 * macgui.h (XrmDatabase): New (dummy) typedef.
5903
5904 * macterm.h (EMACS_CLASS): Remove.
5905 (struct mac_display_info): Add xrdb member.
5906 (struct mac_output): Add want_fullscreen member.
5907
5908 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5909 parameters now defined in frame.h and frame.c.
f63fd14e 5910 (Vx_resource_name): Remove. Use generic var.
e072891b
KS
5911 (check_x_display_info): Make non-static (for frame.c).
5912 (struct x_frame_parm_table, x_frame_parms): Remove.
5913 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5914 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5915 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5916 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5917 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5918 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5919 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5920 Remove. Use generic functions instead.
5921 (enum resource_types): Remove.
5922 (x_set_scroll_bar_default_width): New global function (for frame.c).
5923 (mac_frame_parm_handlers): New table for redisplay_interface.
5924 (syms_of_macfns): Don't intern/staticpro removed vars.
9443fcf6 5925
e072891b
KS
5926 * macterm.c: Remove unnecessary extern declarations.
5927 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5928
3e6a560b
KS
5929 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5930 included from it (atimer.h and systime.h).
5931
7b7b454e
AS
59322003-03-30 Andreas Schwab <schwab@suse.de>
5933
5934 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5935 parameters for shift_glyphs_for_insert.
5936
5937 * macterm.c (x_redisplay_interface): Add missing entry for
5938 draw_vertical_window_border.
5939
beb402de
KG
59402003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5941
5942 * fileio.c (Fexpand_file_name): In the no-handler case, after
5943 expanding, look again for a handler and invoke it. This is needed
5944 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5945 expansion produces "/user@host:/bar/../baz" which needs to be
5946 expanded again for the finame result "/user@host:/baz".
5947
b676f356
JD
59482003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5949
5950 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5951 of area to be redrawn for better performance.
5952
3c671a56
SM
59532003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5954
5955 * xterm.c (take_vertical_position_into_account): Remove.
5956 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5957 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5958 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5959 (x_set_toolkit_scroll_bar_thumb): Simplify.
5960 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5961 (XTread_socket): Remove unused var.
5962 (x_make_frame_invisible): Replace goto with else.
5963
5964 * xdisp.c (set_vertical_scroll_bar): New fun.
5965 (redisplay_window): Use it.
5966
84f2e615
RS
59672003-03-26 Richard M. Stallman <rms@gnu.org>
5968
5969 * xdisp.c (update_tool_bar): Recompute tool bar if
5970 update_mode_lines is set. Set w->update_mode_line
5971 only if the tool bar contents actually change.
5972 (update_menu_bar): Undo previous change.
5973
70b6104c
JD
59742003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5975
5fd6f727
JD
5976 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5977 (xg_frame_set_char_size): Calculate scroll bar width before frame
5978 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5979 (xg_separator_p): Check for all documented separator types.
5980 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5981 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5982
70b6104c
JD
5983 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5984 so tool bar gets updated.
5985
d9b36d19
SM
59862003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5987
5988 * data.c (store_symval_forwarding): Re-instate part of the code
5989 that was deleted with too much enthusiasm.
5990
59912003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5992
5993 * data.c (store_symval_forwarding): Delete special read-only
5994 hack for type == -1, since we now use ->constant instead.
5995 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5996
5997 * buffer.c (overlays_in): Declare static.
5998 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5999 `constant' field rather than the variable's `type' field.
6000
365fa1b3
AC
60012003-03-24 Andrew Choi <akochoi@shaw.ca>
6002
6003 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6004
6005 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6006
6007 * fns.c [MAC_OSX]: Do not redefine vector.
6008
6009 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6010
6011 * macgui.h: Remove definition of No_Cursor.
6012
d9b36d19 6013 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
365fa1b3
AC
6014
6015 * xdisp.c: Define No_Cursor.
6016 (x_write_glyphs, notice_overwritten_cursor)
6017 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6018 (note_mouse_highlight): Remove Mac-specific code.
6019 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
d9b36d19 6020
c0bcce6f
JPW
60212003-03-24 John Paul Wallington <jpw@gnu.org>
6022
6023 * xdisp.c (redisplay_window): If mini window's buffer is not
6024 empty, then redisplay it like other windows.
6025
a526b96c
KS
60262003-03-23 Kim F. Storm <storm@cua.dk>
6027
6028 * w32term.c (w32_draw_window_cursor): Fix last change.
6029
37ab321e
KH
60302003-03-23 Kenichi Handa <handa@m17n.org>
6031
a526b96c
KS
6032 * alloc.c (make_string_from_bytes, make_specified_string):
6033 Add `const' for the arg CONTENTS.
37ab321e
KH
6034
6035 * lisp.h (make_string_from_bytes, make_specified_string):
6036 Prototypes adjusted.
6037
7863d625
JD
60382003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6039
a526b96c 6040 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
fd4c9408 6041
7863d625
JD
6042 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6043 (XG_SB_RANGE): New define.
6044
6045 * gtkutil.c (xg_fixed_handle_expose): New function.
6046 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6047 expose events.
6048 (xg_update_scrollbar_pos): Take two more arguments, left and width
6049 of scroll bar including borders.
6050 Clear left and right part outside scroll bar separately as some
6051 themes have bars that are not an even number of pixels.
d9b36d19 6052 Don't set reallocate_redraws, don't call
7863d625
JD
6053 gdk_window_process_all_updates.
6054 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6055 so no need to change it. Calculate size and value with XG_SB_RANGE.
6056
d9b36d19
SM
6057 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6058 Pass left and width of scroll bar including borders to
7863d625
JD
6059 xg_update_scrollbar_pos.
6060
af0ad939
TTN
60612003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6062
6063 * Makefile.in: Make sure space precedes end-of-line backslashes.
6064
b22139fd
KS
60652003-03-22 Kim F. Storm <storm@cua.dk>
6066
6067 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6068 Add generic versions here. Remove system specific versions
6069 defined elsewhere.
6070
6071 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6072 Add prototypes.
6073
6e6410cf
KS
6074 * xterm.h (STORE_NATIVE_RECT): New macro.
6075
5c9cc435
KS
60762003-03-21 Kim F. Storm <storm@cua.dk>
6077
00c64fab
SM
6078 * xdisp.c (get_glyph_string_clip_rect):
6079 Use FRAME_INTERNAL_BORDER_WIDTH.
5c9cc435
KS
6080
6081 * dispextern.h (struct redisplay_interface): Add active_p
6082 argument to draw_window_cursor member. All uses changed.
6083
acd37560
KS
60842003-03-21 Kim F. Storm <storm@cua.dk>
6085
6086 The following changes consolidate code related to writing and
6087 inserting glyphs, exposing frame, the tool bar, the mouse face,
6088 the output cursor, and help echo from xterm.c, w32term.c and
6089 macterm.c into xdisp.c. It also generalizes the use of the
6090 window_part enum instead of using numeric values throughout.
af0ad939 6091
acd37560
KS
6092 * xdisp.c: Consolidate gui-independent code here.
6093 Include keymap.h.
6094 (Qhelp_echo): Import.
6095 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6096 (help_echo_string, help_echo_window, help_echo_object)
6097 (previous_help_echo_string, help_echo_pos): Declare here.
6098 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6099 (estimate_mode_line_height): Define here. Handle windowing
6100 systems directly (without using estimate_mode_line_height_hook).
6101 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6102 (update_window_cursor, update_cursor_in_window_tree)
6103 (fast_find_position, fast_find_string_pos)
6104 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6105 (expose_area, expose_line, expose_overlaps, expose_window)
6106 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6107 declared static as they are only used locally in xdisp.c.
6108 (draw_glyphs): Rename from x_draw_glyphs and make static.
6109 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6110 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6111 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
af0ad939 6112 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
acd37560
KS
6113 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6114 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6115 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6116 (note_mouse_highlight, x_clear_window_mouse_face)
6117 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6118 (x_intersect_rectangles): New generic functions for use by xdisp.c
6119 and GUI front-ends.
6120 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6121 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6122
6123 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6124 (NativeRectangle): Generic typedef for rectangle type.
6125 (enum window_part): Move here from window.c.
6126 (struct redisplay_interface): New members flush_display_optional,
6127 define_frame_cursor, clear_frame_area, draw_window_cursor,
6128 draw_vertical_window_border, shift_glyphs_for_insert.
6129 Rename member clear_mouse_face to clear_window_mouse_face.
6130 (estimate_mode_line_height_hook): Remove hook.
6131 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6132 (tool_bar_item_info): Remove prototype.
6133 (help_echo_string, help_echo_window, help_echo_object)
6134 (previous_help_echo_string, help_echo_pos)
6135 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6136 (x_stretch_cursor_p, output_cursor): Declare extern.
6137 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6138 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6139 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6140 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6141 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6142 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6143 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6144 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6145 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6146 Add prototypes.
6147 (mode_line_string, marginal_area_string): Fix prototypes.
6148
6149 * window.c (enum window_part): Move to dispextern.h.
6150 (coordinates_in_window): Use enum window_part member names
6151 instead of numbers to describe return value.
6152 (struct check_window_data): Change part member to window_part.
6153 (check_window_containing): Return window_part unaltered.
6154 (window_from_coordinates): Change part arg from int to enum
6155 window_part. Allow part arg to be null. All users changed.
6156
6157 * window.h (window_from_coordinates): Fix prototype.
6158
6159 * term.c (estimate_mode_line_height): Move to xdisp.c.
6160
6161 * keyboard.c (make_lispy_event): Use enum window_part.
6162
6163 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6164 window_part instead of int in arg list. Users changed.
6165
6166 * xterm.h (No_Cursor): Declare as None for X.
6167 (struct mac_output): Replace member cross_cursor by hand_cursor.
af0ad939 6168
acd37560
KS
6169 * xterm.c: Remove consolidated defines and code.
6170 (BETWEEN): Remove unused macro.
6171 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6172 (x_define_frame_cursor, x_clear_frame_area)
6173 (x_draw_window_cursor): New X-specific functions for RIF.
6174 (x_redisplay_interface): Add new members.
6175
6176 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6177
6178 * w32term.h (struct w32_output): Remove cross_cursor member.
6179
6180 * w32term.c: Remove consolidated defines and code.
6181 (BETWEEN): Remove unused macro.
6182 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6183 (w32_define_frame_cursor, w32_clear_frame_area)
6184 (w32_draw_window_cursor): New W32-specific functions for RIF.
6185 (w32_redisplay_interface): Add new members.
6186
a64387ee 6187 * w32gui.h (No_Cursor): Define as 0 for W32.
acd37560
KS
6188 (XRectangle): Add X compatible rectangle type.
6189 (NativeRectangle): Declare as RECT for W32.
6190 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6191
6192 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6193
6194 * w32console.c: Remove consolidated defines and code.
af0ad939 6195
acd37560
KS
6196 * msdos.h (Display_Info): Add generic typedef.
6197
6198 * msdos.c: Remove consolidated defines and code.
6199 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6200
6201 * macterm.h (struct mac_output): Replace member cross_cursor by
6202 hand_cursor.
6203 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6204
6205 * macterm.c: Remove consolidated defines and code.
6206 (BETWEEN): Remove unused macro.
6207 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6208 (mac_define_frame_cursor, mac_clear_frame_area)
6209 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6210 (x_redisplay_interface): Add new members.
6211
6212 * macgui.h (No_Cursor): Define as 0 for Mac.
6213 (XRectangle): Add X compatible rectangle type.
6214 (NativeRectangle): Declare as Rect for Mac.
6215 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6216
204ccab1
KS
6217 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6218 (x_set_cursor_color): Use x_display_and_set_cursor.
acd37560 6219
9443fcf6 6220 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
acd37560
KS
6221 included from it. Add dependency on keymap.h.
6222
6223 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6224
8ba01a70 62252003-03-21 Kenichi Handa <handa@m17n.org>
3f817c73
KH
6226
6227 * fileio.c (Fexpand_file_name): Fix previous change.
6228
8ba01a70 62292003-03-19 Kenichi Handa <handa@m17n.org>
4f497b0a
KH
6230
6231 * fileio.c (Ffile_name_directory): Reconstruct file name by
6232 make_specified_string.
6233 (Ffile_name_nondirectory, Ffile_name_as_directory)
6234 (Fdirectory_file_name, Fexpand_file_name)
6235 (Fsubstitute_in_file_name): Likewise.
6236 (Fread_file_name): Compare decoded homedir with DIR and
6237 DEFAULT_FILENAME.
6238
6239 * alloc.c (make_specified_string): If NCHARS is negative, count
6240 the number of characters.
6241
19536747
JD
62422003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6243
de38ae5a
JD
6244 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6245 all widgets.
6246
19536747
JD
6247 * gtkutil.h: Removed xg_ignore_next_thumb.
6248
37ab321e 62492003-03-18 Kenichi Handa <handa@m17n.org>
cb0d4562
KH
6250
6251 * coding.c (Vchar_coding_system_table): Remove this variable.
6252 (Vcoding_system_safe_chars): New variable.
6253 (intersection): Remove this function.
6254 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6255 all codings in SAFE_CODINGS.
00c64fab 6256 (Ffind_coding_systems_region_internal): Adjust for the change of
cb0d4562
KH
6257 find_safe_codings. Get generic coding systems from
6258 Vcoding_system_safe_chars.
6259 (Fdefine_coding_system_internal): New function.
6260 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6261 Initialize and staticpro Vcoding_system_safe_chars.
6262
17097258
JD
62632003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6264
2a2071c3
JD
6265 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6266 equal old values before updating.
6267
17097258
JD
6268 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6269
6270 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6271
62722003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6273
6274 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6275 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6276 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6277 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6278 (xg_create_scroll_bar): Pass bar to button event callback.
6279 (xg_find_top_left_in_fixed): New function.
6280 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6281 whole scroll bar area. Get old position with
6282 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6283 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6284 dragging is in progress. Calculate whole as for Motif.
6285 Remove code that saved last values. Call gtk_range functions to
6286 set scroll bar sizes.
6287
6288 * gtkutil.h: Removed xg_ignore_next_thumb.
6289
8cb9dfbf
JB
62902003-03-17 Juanma Barranquero <lektu@terra.es>
6291
6292 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6293 and files included from it.
6294
00c64fab
SM
62952003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6296
6297 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6298 multiple occurrences of the same keymap under different prefixes.
6299 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6300
c45bb3b2
JR
63012003-03-16 Jason Rumney <jasonr@gnu.org>
6302
6303 * w32gui.h: Use HDC for Display.
6304
6305 * w32term.c (w32_encode_char): Prevent double-byte chars from
6306 crashing Emacs.
6307
6308 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6309 as binary.
6310
2a6d0874
JB
63112003-03-16 Juanma Barranquero <lektu@terra.es>
6312
6313 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6314
03eb5fab
KS
63152003-03-16 Kim F. Storm <storm@cua.dk>
6316
6317 The following changes consolidate some of the gui-independent
6318 parts of the processing and drawing of "glyph strings" from
6319 xterm.c, w32term.c, and macterm.c into xdisp.c.
2a6d0874 6320
03eb5fab
KS
6321 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6322 21 bits (this reduces number of faces from 4M to 2M).
6323 Replace W32 specific w32_font_type member (2 bits) by generic
6324 font_type member (3 bits) for portability.
6325 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6326 (enum draw_glyphs_face): Define here.
6327 (struct glyph_string): Define here. Merge W32 and X versions.
6328 (struct redisplay_interface): New members per_char_metric,
6329 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6330 (VCENTER_BASELINE_OFFSET): Define here.
6331 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6332 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6333
6334 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6335 (dump_glyph_string): Moved here.
6336 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6337 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6338 (fill_composite_glyph_string, fill_glyph_string)
6339 (fill_image_glyph_string, fill_stretch_glyph_string)
6340 (left_overwritten, left_overwriting, right_overwritten)
6341 (right_overwriting, get_char_face_and_encoding)
6342 (set_glyph_string_background_width, compute_overhangs_and_x)
6343 (append_glyph, append_composite_glyph, produce_image_glyph)
6344 (take_vertical_position_into_account, append_stretch_glyph)
6345 (produce_stretch_glyph): New generic functions (based on X version).
6346 Call platform specific functions through rif.
6347 (INIT_GLYPH_STRING): New macro, hides W32 details.
6348 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6349 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6350 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6351 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6352 (notice_overwritten_cursor):
6353 Generic functions exported to platform modules. Users changed.
6354
6355 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6356 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6357 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
fad49844 6358 New macros for consolidated code.
2a6d0874 6359
03eb5fab
KS
6360 * xterm.c: Remove consolidated defines and code.
6361 (x_per_char_metric, x_encode_char)
6362 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6363 (x_redisplay_interface): Add new members.
6364
6365 * w32gui.h (Display): Add dummy typedef for consolidation.
6366 (XChar2b): Define alias for wchar_t for consolidation.
6367 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6368
6369 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
2a6d0874 6370 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
03eb5fab
KS
6371 New macros for consolidation.
6372
fad49844 6373 * w32term.c: Remove consolidated defines and code.
03eb5fab
KS
6374 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6375 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6376 (w32_per_char_metric): Change font_type arg to int for RIF.
6377 (w32_encode_char): Return int according to RIF requirements.
6378 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6379 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6380 x_get_glyph_overhangs.
6381 (w32_redisplay_interface): Add new members.
6382
6383 * macgui.h (XChar2b): Move typedef here for consolidation.
6384 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6385
6386 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6387 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6388 consolidation.
6389
6390 * macterm.c: Remove consolidated defines and code.
6391 (mac_per_char_metric): New function for RIF.
00c64fab 6392 (mac_encode_char): Adapt to new RIF requirements.
03eb5fab
KS
6393 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6394 (x_redisplay_interface): Add new members.
6395
00c64fab
SM
63962003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6397
6398 * keymap.c (Vmenu_events): New var.
6399 (syms_of_keymap): Initialize it.
6400 (where_is_internal): Check more carefully what is a menu event.
6401
225c7a07
RS
64022003-03-14 Richard M. Stallman <rms@gnu.org>
6403
6404 * lread.c (read1): After #!, exit loop on eof.
6405
cea9be54
JD
64062003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6407
9ea0e54d
JD
6408 * gtkutil.h: Add declaration for xg_frame_cleared.
6409
0cb35f4e
JD
6410 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6411
cea9be54
JD
6412 * gtkutil.c (struct xg_last_sb_pos): New structure.
6413 (handle_fixed_child): New function.
6414 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6415 and force a redraw on them.
6416 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6417 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6418 so we can avoid unneeded redraws.
6419 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6420 and force a redraw on the scroll bar.
6421 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6422 if xg_last_sb_pos shows the positions are up to date.
0cb35f4e 6423 (xg_frame_cleared): New function.
cea9be54 6424
20b853f3
KH
64252003-03-13 Kenichi Handa <handa@m17n.org>
6426
6427 * coding.c (Fdetect_coding_region): Fix docstring.
6428 (Fdetect_coding_string): Fix docstring.
6429
7a555aff
AS
64302003-03-13 Andreas Schwab <schwab@suse.de>
6431
25cc0080
AS
6432 * gtkutil.c: Add prototype for create_menus.
6433
30225431
AS
6434 * data.c (long_to_cons): Fix type of top.
6435
6436 * xselect.c (selection_data_to_lisp_data): Use int instead of
6437 long for an integer of size 4.
6438
7a555aff 6439 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
30225431 6440 (xg_tool_bar_help_callback): Likewise.
7a555aff 6441
a3e4741f
AS
64422003-03-12 Andreas Schwab <schwab@suse.de>
6443
6444 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6445
9668be7c
KS
64462003-03-12 Kim F. Storm <storm@cua.dk>
6447
03eb5fab 6448 The following changes consolidate the fringe handling from
9668be7c 6449 xterm.c, w32term.c, and macterm.c into xdisp.c.
00a88f32 6450
9668be7c
KS
6451 * xdisp.c: Consolidate fringe handling code here.
6452 (left_bits, right_bits, continued_bits, continuation_bits)
6453 (ov_bits, zv_bits): Define fringe bitmaps.
6454 (fringe_bitmaps): New array holding fringe bitmaps.
6455 (draw_fringe_bitmap): Draw a specific bitmap; call display
6456 specific drawing routine via rif->draw_fringe_bitmap.
6457 (draw_row_fringe_bitmaps): Generic replacement for
6458 x_draw_row_fringe_bitmaps; all callers changed.
6459 (compute_fringe_widths): Generic replacement for
6460 x_compute_fringe_widths; all callers changed.
6461
6462 * dispextern.h (enum fringe_bitmap_type): Define here.
6463 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6464 (fringe_bitmaps): Declare extern.
6465 (struct redisplay_interface): New member draw_fringe_bitmap.
6466 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6467
6468 * xterm.c: Remove generic fringe code.
6469 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6470 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6471
6472 * w32term.c: Remove generic fringe code.
6473 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6474 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
00a88f32 6475
9668be7c
KS
6476 * macterm.c: Remove generic fringe code.
6477 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6478 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6479
00a88f32
SM
64802003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6481
6482 * print.c (Fprin1_to_string): Return unibyte string if possible.
6483
1d1de695
DK
64842003-03-09 David Kastrup <dak@gnu.org>
6485
6486 * process.c (read_process_output): We have allocated enough space
6487 for readmax and carryover, so actually use the alloted space.
6488
257f40f2
JD
64892003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6490
6491 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6492 toolkit scrollbar click.
6493
6494 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6495 for USE_GTK.
6496 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6497 also.
6498 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6499 scrollbar and control is pressed, call x_scroll_bar_handle_click.
00a88f32 6500
257f40f2
JD
6501 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6502
6503 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6504 (xg_tool_bar_item_expose_callback): New function.
6505 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6506 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6507 on the tool bar widget.
6508 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6509 to expose on the tool bar item widgets.
6510
15213141
JD
65112003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6512
26b74a0b 6513 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
00a88f32 6514 struct image* when deciding to update (struct image* may have been
26b74a0b
JD
6515 deleted from the image cache).
6516
15213141
JD
6517 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6518 the event isn't for a frame (i.e. for dialogs).
6519
20b853f3 65202003-03-07 Kenichi Handa <handa@m17n.org>
cb681b34
KH
6521
6522 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6523 composition components reaches the limit, terminate composing.
6524 (COMPOSITION_OK): New macro.
00a88f32 6525 (detect_coding_iso2022): Use it if an escape sequence for
cb681b34
KH
6526 composition is found.
6527 (coding_restore_composition): Adjust the number of composition
6528 components if it is not sane.
6529
c9029fe5
JB
65302003-03-06 Juanma Barranquero <lektu@terra.es>
6531
6532 * w32term.h (struct w32_display_info): Add xrdb member to support
6533 passing resources via -xrm on Windows.
6534
6535 * w32term.c (w32_make_rdb): New function.
6536 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6537 struct. Delete leftover code.
6538
6539 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6540 for resources passed on the command line.
6541
6542 * w32reg.c (w32_get_rdb_resource): New function.
6543 (x_get_string_resource): Use it, so resources passed with -xrm
6544 supercede the ones in the registry.
6545
9d00001f
JD
65462003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6547
6548 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6549 instead of x_top_window_to_frame.
6550
ca2417b9
JD
65512003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6552
6553 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6554 when restarting Emacs.
6555
5b20caf0
RS
65562003-03-03 Richard M. Stallman <rms@gnu.org>
6557
6558 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6559 to run kill-buffer-query-functions.
6560 (Qkill_buffer_query_functions): New var.
6561 (syms_of_buffer): Init and staticpro it.
6562
58e91b77
JD
65632003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6564
6565 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6566
932357b4
KS
65672003-02-25 Kim F. Storm <storm@cua.dk>
6568
6569 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6570 If centering point failed to make whole line visible and vscroll
6571 is non-zero, disable vscroll and try centering point again.
6572
6573 * lread.c (read1): Accept `single space' syntax like (? x).
6574
bb8db7e1
JD
65752003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6576
6577 * keyboard.c (cancel_hourglass_unwind): Surround with
6578 #ifdef HAVE_X_WINDOWS
6579
47d77aab
KH
65802003-02-25 Kenichi Handa <handa@m17n.org>
6581
6582 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6583 process only when "subprocesses" is defined.
6584
6a097c0c
SM
65852003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6586
6587 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6588
0b063c27
JB
65892003-02-24 Juanma Barranquero <lektu@terra.es>
6590
d1135afc
JB
6591 * callint.c (fix_command): Declare as static void and move before
6592 Fcall_interactively.
6593
0b063c27
JB
6594 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6595 (syms_of_xdisp): Don't initialize Qwhen.
6596
0af912f0
JD
65972003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6598
6599 * keyboard.c (cancel_hourglass_unwind): New function.
6600 (command_loop_1): Cancel hourglass with unwind-protect.
6601
120d0a23
RS
66022003-02-23 Richard M. Stallman <rms@gnu.org>
6603
6604 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6605 Detect (when ... (region-beginning)) etc.
6606 (Fcall_interactively): Call fix_command.
6607 (Qif, Qwhen): New variables.
6608 (syms_of_callint): Init and staticpro them.
0b063c27 6609
120d0a23
RS
6610 * regex.c (print_partial_compiled_pattern): Output to stderr.
6611
4ece81a6
KG
66122003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6613
6614 * dired.c (directory_files_internal): Don't expand directory.
6615 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6616 instead. From Lars Hansen <larsh@math.ku.dk>.
6617
e52bd6b7
SM
66182003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6619
6620 * fns.c (string_to_multibyte): Remove unused var i.
6621 (Flanginfo): Fix int/Lisp_Object mixup.
6622 (void_call2): New fun.
6623 (Fmap_char_table): Use it in place of call2.
6624
6625 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6626
6627 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6628
6629 * keymap.c (copy_keymap_1): Make it static.
6630
6631 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6632
c33ef7c4
JB
66332003-02-22 David Ponce <david@dponce.com>
6634
6635 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6636
16782258
JD
66372003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6638
6639 * process.h: Removed subtty field from struct Lisp_Process.
6640
6641 * process.c (create_process): Remove setting of subtty.
6642 (emacs_get_tty_pgrp): New function.
e52bd6b7
SM
6643 (Fprocess_running_child_p, process_send_signal):
6644 Call emacs_get_tty_pgrp instead of ioctl.
16782258
JD
6645 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6646
3abeca61
KG
66472003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6648
6649 * keymap.c (Fdefine_key): Doc fix.
6650
92a8ce63
JB
66512003-02-21 Juanma Barranquero <lektu@terra.es>
6652
6653 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6654
6655 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6656 POLLING_PROBLEM_IN_SELECT.
6657
6658 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6659 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6660
6661 * s/hpux10-20.h: New file.
6662
e52bd6b7
SM
6663 * process.c (wait_reading_process_input):
6664 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
92a8ce63 6665
20f1ef2e
KH
66662003-02-20 Kenichi Handa <handa@m17n.org>
6667
32d0a9dc
KH
6668 * fontset.c (check_fontset_name): If NAME is nil, return the
6669 default fontset.
6670 (override_font_info): New function.
e52bd6b7 6671 (Fset_fontset_font): Document that NAME nil means the default fontset.
32d0a9dc
KH
6672 (Ffontset_info): If FONTSET is not the default fontset, merge
6673 FONTSET onto the copy of the default fontset, and work on that
6674 copy. Document that NAME nil means the default fontset.
6675 (Ffontset_font): Document that NAME nil means the default fontset.
6676
20f1ef2e
KH
6677 * process.c (setup_process_coding_systems): If the process's
6678 in/out descriptor is -1, do nothing.
6679
77d1daf2
AS
66802003-02-19 Andreas Schwab <schwab@suse.de>
6681
e52bd6b7
SM
6682 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6683 Add prototypes.
77d1daf2 6684
f9a45bb3
KH
66852003-02-19 Kenichi Handa <handa@m17n.org>
6686
6687 * xfaces.c (try_alternative_families): Try all scalable fonts if
6688 Vscalable_fonts_allowed is not Qt.
6689
72ecb43c
JD
66902003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6691
6692 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6693
ee5be7c3
JD
66942003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6695
6696 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6697 names.
6698
6699 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
e52bd6b7 6700 (sorted_font_list): Move allocation of struct font_name to
ee5be7c3
JD
6701 x_face_list_fonts.
6702 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6703 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6704
4cd519a7
KS
67052003-02-18 Kim F. Storm <storm@cua.dk>
6706
068f9882
KS
6707 * lread.c (read1): Fix last change.
6708 "`" is not always special. Allow "?" after a character constant.
4cd519a7 6709
7290a344
AC
67102003-02-18 Andrew Choi <akochoi@shaw.ca>
6711
6712 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6713
1f7fa69b
AS
67142003-02-18 Andreas Schwab <schwab@suse.de>
6715
6716 * window.c (window_scroll_pixel_based): Move outside a
6717 multi-glyph character before setting new window start.
6718
6719 * xdisp.c (in_display_vector_p): New function.
6720 * dispextern.h (in_display_vector_p): Declare.
6721
23e21195
KS
67222003-02-18 Kim F. Storm <storm@cua.dk>
6723
6724 * lread.c (read1): Fix and relax read syntax.
6725 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6726 Only recognize "," after dotted-pair dot if inside backquote.
6727 Never include "`" or "," (inside backquote) in a symbol.
6728 Allow dotted-pair dot after a character constant.
6729 Allow "`" and "," (inside backquote) after a character constant.
92a8ce63 6730
f098b121
JD
67312003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6732
6733 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6734 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6735 icons. Set name of tool bar to emacs-toolbar.
6736 (update_frame_tool_bar): Connect expose event to
6737 xg_tool_bar_expose_callback.
6738
63020c46
RS
67392003-02-17 Richard M. Stallman <rms@gnu.org>
6740
6741 * keyboard.c (this_command_key_count_reset): New variable.
6742 Initiatize to 0 where this_command_key_count is set.
6743 (read_char): Save and restore this_command_key_count_reset
6744 around input method code.
6745 (read_char): If this_command_key_count_reset, echo reread commands.
6746 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6747
fb4452cc
KH
67482003-02-17 Kenichi Handa <handa@m17n.org>
6749
6750 * fns.c (string_to_multibyte): Always return a multibyte string.
6751
bd11cc09
JR
67522003-02-16 Jason Rumney <jasonr@gnu.org>
6753
e52bd6b7
SM
6754 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6755 Negative max_fonts parameter means list all.
bd11cc09 6756
4cdf4bde
DL
67572003-02-14 Dave Love <fx@gnu.org>
6758
6759 * fns.c (Flanginfo): Doc fix.
6760
023b93f6
KS
67612003-02-13 Kim F. Storm <storm@cua.dk>
6762
37cd4238
KS
6763 * lread.c (read_escape): Interpret \s as a SPACE character, except
6764 for \s-X in a character constant which still is the super modifier.
6765 (read1): Signal an `invalid read syntax' error if a character
6766 constant is immediately followed by a digit or symbol character.
6767
140a6b7e
KS
6768 * search.c (Fmatch_data): Doc fix. Explicitly state that
6769 match-data is undefined if last search failed.
6770
023b93f6
KS
6771 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6772 All uses changed.
6773
7d5c86e5
JB
67742003-02-12 Juanma Barranquero <lektu@terra.es>
6775
6776 * eval.c (Fdefmacro): Fix typo.
6777
295fff2c
KS
67782003-02-12 Kim F. Storm <storm@cua.dk>
6779
6780 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6781 macro is a string, convert meta modifiers in string when copying
6782 the string into a vector.
6783
60f3202d
KS
67842003-02-11 Kim F. Storm <storm@cua.dk>
6785
6786 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6787
61cb0b53
KH
67882003-02-11 Kenichi Handa <handa@m17n.org>
6789
6790 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6791
7392e23c
KS
67922003-02-10 Kim F. Storm <storm@cua.dk>
6793
6794 * process.c: Doc fixes.
6795 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6796
ce4254bd
KH
67972003-02-10 Kenichi Handa <handa@m17n.org>
6798
9c7a329a
KH
6799 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6800
ce4254bd
KH
6801 * process.c (QCfilter_multibyte): New variable.
6802 (setup_process_coding_systems): New function.
e52bd6b7
SM
6803 (Fset_process_buffer, Fset_process_filter):
6804 Call setup_process_coding_systems.
ce4254bd
KH
6805 (Fstart_process): Initialize the member `filter_multibyte' of
6806 struct Lisp_Process.
6807 (create_process): Call setup_process_coding_systems.
6808 (Fmake_network_process): New keyward `:filter-multibyte'.
6809 Initialize the member `filter_multibyte' of struct Lisp_Process.
6810 Call setup_process_coding_systems.
6811 (server_accept_connection): Call setup_process_coding_systems.
6812 (read_process_output): If the process has a filter, decide the
6813 multibyteness of a string to given to the filter by
6814 `filter_multibyte' member of the process. If the process doesn't
6815 have a filter and the result of conversion is unibyte, use
6816 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6817 multibyte form.
6818 (Fset_process_coding_system): Call setup_process_coding_systems.
6819 (Fset_process_filter_multibyte): New function.
6820 (Fprocess_filter_multibyte_p): New function.
6821 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6822 Defsubr Sset_process_filter_multibyte and
6823 Sprocess_filter_multibyte_p.
6824
6825 * process.h (struct Lisp_Process): New member filter_multibyte.
6826
6827 * lisp.h (setup_process_coding_systems): Add prototype.
6828
6829 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6830 process, update coding systems for the process.
6831
b08d5f59
KH
68322003-02-09 Kenichi Handa <handa@m17n.org>
6833
6834 * fns.c (string_to_multibyte): New function.
6835 (Fstring_to_multibyte): New function.
6836 (syms_of_fns): Defsubr it.
6837
0dfd93c0
AS
68382003-02-08 Andreas Schwab <schwab@suse.de>
6839
6840 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6841 instead of the substitution.
6842
7b76ca1c
JD
68432003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6844
6845 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6846
6847 * xmenu.c (menu_position_func): Adjust menu popup position so that
6848 the menu is fully visible.
7b76ca1c 6849
2436a4e4
JD
68502003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6851
6852 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
e52bd6b7
SM
6853 (x_make_frame_invisible, x_wm_set_icon_position):
6854 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
2436a4e4
JD
6855
6856 * xfns.c (x_set_name, x_set_title): Ditto.
6857
37d1e680
RS
68582003-02-04 Richard M. Stallman <rms@gnu.org>
6859
6860 * keyboard.c (echo_now): Update before_command_echo_length.
6861 (Freset_this_command_lengths): Reset this_command_key_count etc.
6862 immediately rather than arranging to do it later.
6863 (before_command_key_count_1, before_command_echo_length_1)
6864 (before_command_restore_flag): Vars deleted.
6865 (add_command_key): Don't handle before_command_restore_flag.
6866 (read_char, record_menu_key): Don't update before_command_key_count or
6867 before_command_echo_length.
6868 (read_char): Don't handle before_command_restore_flag.
6869
6870 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6871 in direct-output clauses if it wouldn't be called in the ordinary case.
6872
578846a3
KS
68732003-02-04 Kim F. Storm <storm@cua.dk>
6874
6875 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6876
49853a4d
JD
68772003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6878
6879 * gtkutil.c (remove_from_container): Copying list is not needed.
6880 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6881 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6882 on list returned from gtk_container_get_children to avoid memory leak.
6883
8b53dc06
JR
68842003-02-01 Jason Rumney <jasonr@gnu.org>
6885
5d54d177
JR
6886 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6887 local malloc.
6888 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6889 definitions in xpm.h.
6890 (init_xpm_functions): New function.
f63fd14e 6891 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
5d54d177
JR
6892 (init_external_image_libraries): Try to load libXpm.dll.
6893
8b53dc06
JR
6894 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6895 timestamp.
6896
b222e415
DL
68972003-01-31 Dave Love <fx@gnu.org>
6898
6899 * syntax.c (Fskip_chars_forward)
6900 (open-paren-in-column-0-is-defun-start): Doc fix.
6901
c60ee5e7
JB
69022003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6903
6904 * fileio.c: Support // at start of name for Cygwin (just added proper
6905 preprocessor tests).
6906
6907 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6908
6909 * Makefile.in: Use @EXEEXT@ for Cygwin.
6910
6911 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6912
6913 * s/cygwin.h: Added for Cygwin port.
6914
53b37591
JB
69152003-01-31 Juanma Barranquero <lektu@terra.es>
6916
6917 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6918 when including gif_lib.h.
fe929957 6919 (init_gif_functions, init_tiff_functions): New functions.
f63fd14e
JB
6920 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6921 Windows. Disable color table lookups. Call library functions
53b37591 6922 through pointers determined at runtime.
fe929957
JB
6923 (init_external_image_libraries): Try to load libungif.dll and
6924 libtiff.dll.
53b37591 6925
45415a8f
KH
69262003-01-31 Kenichi Handa <handa@m17n.org>
6927
6928 * xdisp.c (SKIP_GLYPHS): New macro.
e52bd6b7 6929 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
45415a8f 6930
a97e4138
JD
69312003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6932
e52bd6b7 6933 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
a97e4138 6934
6eed9bed
DL
69352003-01-30 Dave Love <fx@gnu.org>
6936
6937 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6938 (Fgarbage_collect): Use them.
6939 (init_alloc, syms_of_alloc): Set them up.
6940
100dcd40
JB
69412003-01-30 Juanma Barranquero <lektu@terra.es>
6942
6943 * w32fns.c (init_external_image_libraries): Add missing operator.
6944
fbd852af
JR
69452003-01-29 Jason Rumney <jasonr@gnu.org>
6946
6947 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6948 an alternative name for jpeg.dll.
6949
8a2d8020
KH
69502003-01-29 Kenichi Handa <handa@m17n.org>
6951
6952 * xdisp.c (set_cursor_from_row): Pay attention to string display
6953 properties.
6954
058c18c7
AC
69552003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6956
6957 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6958 <escape>.
6959 (keycode_to_xkeysym_table): Reformat and add more comments.
6960 (XTread_socket): Drop special case for backspace.
6961
385f11cf
AC
69622003-01-28 Andrew Choi <akochoi@shaw.ca>
6963
6964 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6965 values in old-style RGB specs.
6966
c922a224
JB
69672003-01-27 Juanma Barranquero <lektu@terra.es>
6968
6969 * w32fns.c (init_external_image_libraries): Try alternate names for the
6970 jpeg dll.
6971
0a1d6de0
JD
69722003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6973
6974 * gtkutil.c (create_dialog, xg_separator_p)
6975 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6976 before calling strcmp or strlen.
6977
a97e4138 69782003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1d1885fc
JD
6979
6980 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6981 and handle image load failure.
6982
28908312
JR
69832003-01-26 Jason Rumney <jasonr@gnu.org>
6984
6985 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6986 New functions.
f63fd14e
JB
6987 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6988 Disable color table lookups. Call jpeg library functions
28908312
JR
6989 through pointers determined at runtime.
6990 (init_external_image_libraries): Try to load jpeg.dll.
6991
84e47416
RS
69922003-01-25 Richard M. Stallman <rms@gnu.org>
6993
6994 * lisp.h: Declare format2 instead of format1.
6995
6996 * fileio.c (barf_or_query_if_file_exists):
6997 Call format2 instead of format1.
6998
6999 * editfns.c (format2): New function, replaces format1
7000 but takes exactly two Lisp Objects as format args.
7001
7002 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7003
a97e4138 70042003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1fcfb866
JD
7005
7006 * xterm.h: Change to return value of x_dispatch_event to int.
7007
7008 * xterm.c (x_filter_event): New function.
7009 (event_handler_gdk, XTread_socket): Call x_filter_event.
7010 (x_dispatch_event): Change to return value of finish.
7011 (event_handler_gdk): Use return value from x_dispatch_event.
7012
7013 * xfns.c (x_window): Call create_frame_xic for GTK version to
7014 initialize input methods.
7015
7016 * gtkutil.h: Add (void) prototypes.
7017
7018 * gtkutil.c (create_menus): Remove code that puts the help menu to
7019 the right.
7020
54eefef1
JR
70212003-01-25 Jason Rumney <jasonr@gnu.org>
7022
7023 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7024 [HAVE_PNG]: Sync with xfns.c version.
f63fd14e
JB
7025 (png_load): Adjust colors for Windows. Use Windows
7026 bitmaps. Disable color table lookups.
c262430d
JR
7027 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7028 (init_png_functions): New function.
7029 (png_read_from_memory, png_load): Call png library functions
7030 through pointers determined at runtime.
7031 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7032 (init_external_image_libraries): New function.
7033 (init_xfns): Call it.
54eefef1 7034
1a9e275b
AS
70352003-01-24 Andreas Schwab <schwab@suse.de>
7036
7037 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7038
a97e4138 70392003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
81e302ef
JD
7040
7041 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7042 of static initializer.
7043
422eec7e
DL
70442003-01-24 Dave Love <fx@gnu.org>
7045
7046 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7047 architectures.
7048
7049 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7050 Use __alignof__.
7051
2a026b04
KH
70522003-01-24 Kenichi Handa <handa@m17n.org>
7053
7054 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
e52bd6b7 7055 It it is nonzero, don't pretend that an invisible area doesn't exist.
2a026b04
KH
7056 (command_loop_1): Call adjust_point_for_property with proper
7057 second arg.
7058
a18bb28d
JR
70592003-01-22 Jason Rumney <jasonr@gnu.org>
7060
7061 Sync changes with xterm.c and xfns.c.
7062
7063 * w32term.c (x_draw_glyph_string_foreground)
7064 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7065
7066 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7067 phys_cursor's hpos is overwritten. This is still not completely
7068 correct, as it doesn't really make sense to use hpos at all to
7069 get the cursor glyph (as that is relative to the width of the
7070 characters on the line, which may have changed during the update).
7071
7072 * w32term.c (notice_overwritten_cursor): Handle the special case
7073 of the cursor being in the first blank non-text line at the
7074 end of a window.
7075
7076 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7077 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7078 Compute from the x position returned by x_draw_glyphs.
7079
7080 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7081 except for NO_CURSOR and system caret, to make phys_cursor_width
7082 contain what its name suggests.
7083 (notice_overwritten_cursor): Consider the cursor image erased if
7084 the output area intersects the cursor image in y-direction.
7085
6a097c0c
SM
7086 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7087 note_mode_line_highlight and extend.
a18bb28d
JR
7088
7089 * w32term.c (last_window): New variable.
7090 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7091 (note_mouse_movement): Remove reimplemented code in #if 0.
7092
7093 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7094 not update_mode_lines, and always set it to 1.
7095
ac6e47ef
JR
70962003-01-21 Jason Rumney <jasonr@gnu.org>
7097
7098 * w32fns.c (IDC_HAND): Define it if system headers don't.
7099
71002003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7101
7102 * w32term.h (struct w32_output): New member hand_cursor.
7103 (WM_EMACS_SETCURSOR): New message definition.
7104
7105 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7106 function w32_define_cursor.
7107 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7108 position, change member name output_data.x to output_data.w32 and
7109 add function w32_define_cursor.
7110 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7111 and change member name output_data.x to output_data.w32.
e52bd6b7
SM
7112 (w32_initialize_display_info):
7113 Setup dpyinfo->vertical_scroll_bar_cursor.
ac6e47ef
JR
7114
7115 * w32fns.c (Vx_hand_shape): New variable.
7116 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7117 WM_EMACS_SETCURSOR.
7118 (x-create-frame): Setup Cursor types.
7119
ceb39a17
JB
71202003-01-21 David Ponce <david@dponce.com>
7121
ac6e47ef 7122 * w32term.c (w32_encode_char): For DIM=1 charset, set
f63fd14e 7123 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
ac6e47ef 7124 x_encode_char change by Kenichi Handa <handa@m17n.org> on
ceb39a17 7125 2002-09-30.)
ac6e47ef
JR
7126 (w32_draw_relief_rect): Declare all args.
7127 (w32_define_cursor): New.
7128
7129 * w32fns.c (w32_load_cursor): New function.
7130 (w32_init_class): Use it.
7131 (x_put_x_image): Declare all args.
7132
46cf0bed
JB
71332003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7134
7135 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7136
a97e4138 71372003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e8794476
JD
7138
7139 * gtkutil.c: Must include stdio.h before termhooks.h
7140
83fc9c63
DL
71412003-01-21 Dave Love <fx@gnu.org>
7142
7143 * alloc.c (Fgc_status): Print zombie list.
7144 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7145 Fix assignment of zombies.
7146 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7147 Don't take car of non-cons.
7148
7149 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7150
7151 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7152
fe04b8c8
JR
71532003-01-20 David Ponce <david@dponce.com>
7154
7155 * w32menu.c (digest_single_submenu): Declare all args.
7156
7157 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7158 changes in xmenu.c:
7159
7160 (parse_single_submenu): Use individual keymap's prompt
7161 string as pane name, if there is one.
7162 (set_frame_menubar): Save menu_items_n_panes from each call to
7163 parse_single_submenu and use it when calling digest_single_submenu.
7164
539e69a9
ST
71652003-01-20 Steven Tamm <steventamm@mac.com>
7166
7167 * macterm.c (XTread_socket): Checks for valid, visible window
7168 before sending a scroll-wheel event.
7169
675d000f
RS
71702003-01-20 Richard M. Stallman <rms@gnu.org>
7171
7172 * xdisp.c (redisplay_window): If mini window's buffer is not
7173 a minibuffer, then redisplay it like other windows.
7174
a97e4138 71752003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
22174d10
JD
7176
7177 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7178 external tool bar before setting tool bar height.
7179
048addec
JD
71802003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7181
7182 * xterm.c (handle_one_xevent): Surround popup_activated
7183 with #ifdef:s for non-toolkit version.
7184
7185 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7186 (gtkutil.o): New file.
7187 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7188 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7189
7190 * gtkutil.c: New file for GTK version.
7191
7192 * gtkutil.h: New file for GTK version.
7193
7194 * xterm.h: Add xt_or_gtk_widget.
7195 Include gtk files for USE_GTK.
7196 (struct x_output): Add toolbar_height.
7197 (struct x_output): Add GTK widgets and Gdk size_hints.
7198 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7199 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7200 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7201
7202 * xterm.c: Include gtkutil.h for USE_GTK.
7203 Declare extern void free_frame_menubar for USE_GTK.
7204 (note_mouse_highlight): Check popup_activated for USE_GTK.
7205 (xt_action_hook): Don't compile if USE_GTK.
7206 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7207 (xg_scroll_callback): New function.
7208 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7209 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7210 for USE_GTK.
7211 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7212 xg_show_scroll_bar for USE_GTK.
7213 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7214 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7215 (event_handler_gdk): New function for USE_GTK.
7216 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7217 (handle_one_xevent): Make sure widget is mapped before
7218 calling x_real_positions for USE_GTK.
7219 (XTread_socket): Add GTK event loop for USE_GTK.
7220 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7221 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7222 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7223 (x_iconify_frame): Add code for USE_GTK.
7224 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7225 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7226 is in gtkutil.c.
7227 (x_term_init): Add initialization for GTK.
7228 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7229
7230 * xmenu.c: Include gtkutil.h for USE_GTK.
7231 (Fx_popup_menu): Use current position if x and y is NIL.
6bdb309a
SM
7232 (single_menu_item, single_menu_item, Fx_popup_dialog):
7233 Check for USE_GTK.
048addec
JD
7234 (popup_widget_loop): New function for USE_GTK.
7235 (x_activate_menubar): Add code for USE_GTK.
7236 (popup_activate_callback, popup_deactivate_callback)
6bdb309a
SM
7237 (menu_highlight_callback, menubar_selection_callback):
7238 Add USE_GTK versions.
048addec
JD
7239 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7240 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7241 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7242 is in gtkutil.c.
7243 (popup_selection_callback): New version for USE_GTK.
7244 (create_and_show_popup_menu): New fuction, one USE_GTK version and
6bdb309a 7245 one USE_X_TOOLKIT version.
048addec
JD
7246 (xmenu_show): Call create_and_show_popup_menu.
7247 (dialog_selection_callback): New version for USE_GTK.
7248 (create_and_show_dialog): New fuction, one USE_GTK version and
6bdb309a 7249 one USE_X_TOOLKIT version.
048addec
JD
7250 (xdialog_show): Call create_and_show_dialog.
7251
7252 * xfns.c: Include gtkutil for USE_GTK.
7253 (x_window_to_frame, x_any_window_to_frame)
7254 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7255 (x_top_window_to_frame): Add code for USE_GTK.
7256 (x_set_background_color): Call xg_set_background_color for GTK.
7257 (x_set_menu_bar_lines): Check for USE_GTK.
7258 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7259 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7260 (x_window): Call xg_create_frame_widgets for USE_GTK.
7261 (Fx_create_frame): Check for USE_GTK
7262 (Fx_file_dialog): New implementation for USE_GTK.
7263
7264 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7265 (update_menu_bar): Add check for USE_GTK.
7266 (update_tool_bar): Add check for USE_GTK and external tool bar.
7267 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7268 (redisplay_internal): Add check for USE_GTK and popup_activated.
7269 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7270 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7271 (display_menu_bar): Add check for USE_GTK
7272
7273 * lisp.h: Declare Vx_resource_name extern.
7274
a64387ee 7275 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
048addec
JD
7276 for USE_GTK.
7277 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7278
7279 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7280 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7281 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7282
7283 * fileio.c (Fread_file_name): Add check for USE_GTK.
7284
6bdb309a
SM
7285 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7286 Add check for USE_GTK.
048addec
JD
7287
7288 * config.in: Added HAVE_GTK
7289
7290 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7291
72922003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7293
7294 * charset.h (Funibyte_char_to_multibyte): Export.
7295
72962003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7297
7298 * xmenu.c (mouse_position_for_popup): New function.
7299 (Fx_popup_menu): Call mouse_position_for_popup for X and
7300 mouse_position_hook for others.
7301
73022003-01-17 Kim F. Storm <storm@cua.dk>
7303
7304 * editfns.c (Finsert): Mention `string-make-multibyte' and
7305 `string-as-multibyte' in doc string.
7306
73072003-01-17 Kenichi Handa <handa@m17n.org>
7308
7309 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
3c02a6f5 7310
048addec
JD
7311 * editfns.c (Fformat): Convert an unibyte char argument that is
7312 formatted by "%c" to multibyte if the total result must be a
7313 multibyte string.
cd7df9c0 7314
048addec 73152003-01-16 Kim F. Storm <storm@cua.dk>
cd7df9c0 7316
048addec
JD
7317 * process.c (set-process-filter): Document unibyte/multibyte-ness
7318 of string argument.
56210ecd 7319
048addec 73202003-01-16 Kenichi Handa <handa@m17n.org>
56210ecd 7321
048addec 7322 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
56210ecd 7323
048addec
JD
7324 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7325 (re_search_2): Likewise.
6df8b9fe 7326
048addec 73272003-01-15 Kenichi Handa <handa@m17n.org>
6df8b9fe 7328
048addec
JD
7329 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7330 buffer is unibyte.
292ddc31 7331
048addec 73322003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
292ddc31 7333
048addec 7334 * fns.c (Fsubstring): Clarify doc string.
292ddc31 7335
048addec
JD
7336 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7337 (Fprevious_char_property_change)
7338 (Fnext_single_char_property_change)
7339 (Fprevious_single_char_property_change, Fnext_property_change)
7340 (Fnext_single_property_change, Fprevious_property_change)
7341 (Fprevious_single_property_change, Fadd_text_properties)
7342 (Fput_text_property, Fset_text_properties)
7343 (Fremove_text_properties, Fremove_list_of_text_properties)
7344 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
63e4e4c6 7345
048addec 73462003-01-14 Kim F. Storm <storm@cua.dk>
63e4e4c6 7347
048addec
JD
7348 * process.h (struct Lisp_Process): New member plist replaces old
7349 member private_vars. All uses changed.
63e4e4c6 7350
048addec 7351 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
6bdb309a 7352 (QCplist): Rename from QCvars. Change all uses.
048addec 7353 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
6bdb309a 7354 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
048addec 7355 (syms_of_process): Intern, staticpro, defsubr these.
6bdb309a 7356 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7ed16567 7357
048addec 73582003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7ed16567 7359
6bdb309a 7360 * m/delta.h: Remove (obsolete).
e833850f 7361
048addec 73622003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
e833850f 7363
048addec
JD
7364 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7365 behaviour in front of symlinks.
7366 (Fdelete_file): Raise an error on directories.
817cb127 7367
048addec 73682003-01-13 Dave Love <fx@gnu.org>
817cb127 7369
048addec 7370 * fns.c (Freverse): Use QUIT.
3e8cf2ea 7371
048addec 73722003-01-13 Richard M. Stallman <rms@gnu.org>
3e8cf2ea 7373
048addec
JD
7374 * minibuf.c (minibuffer_completion_contents):
7375 Error if point is inside prompt.
3e8cf2ea 7376
048addec
JD
7377 * keyboard.c (command_loop_1): Don't redisplay directly
7378 if there's a post-command-hook.
3e8cf2ea 7379
048addec
JD
7380 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7381 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
2c10f029 7382
048addec 73832003-01-12 Kim F. Storm <storm@cua.dk>
94e8ffca 7384
048addec 7385 * process.h (struct Lisp_Process): New member private_vars.
94e8ffca 7386
048addec
JD
7387 * process.c (QCvars): New variable.
7388 (syms_of_process): Intern and staticpro it.
7389 (Fset_process_contact): Removed function.
7390 (Fprocess_variable, Fset_process_variable): New functions.
7391 (syms_of_process): Defsubr them.
7392 (Fstart_process): Initialize private_vars plist to nil.
7393 (Fmake_network_process): New arg :vars to setup the private
7394 variables for new network process.
7395 (server_accept_connection): Copy server's private variables to
7396 client process.
2c10f029 7397
048addec
JD
7398 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7399 crashes). Code rewritten and simplified. Now directly aligns the
7400 pointer and recalculates pure_bytes_used, rather than aligning the
7401 size and adjusting the pointer.
b8a76c6c 7402
048addec 74032003-01-11 Kim F. Storm <storm@cua.dk>
b8a76c6c 7404
048addec
JD
7405 * process.c (Fset_process_contact): New function.
7406 (syms_of_process): defsubr it.
7407 (make-network-process): Update doc.
3a8d0899 7408
048addec 74092003-01-10 Andreas Schwab <schwab@suse.de>
3a8d0899 7410
048addec
JD
7411 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7412 Reported by Berthold Gunreben <b.gunreben@web.de>.
4abc7470 7413
048addec 74142003-01-10 Dave Love <fx@gnu.org>
4abc7470 7415
048addec 7416 * composite.c (syms_of_composite): Make composition_hash_table weak.
b809d662 7417
048addec 74182003-01-09 Kim F. Storm <storm@cua.dk>
b809d662 7419
048addec
JD
7420 * process.c (Fmake_network_process): Convert new port number
7421 to host byte order for `:service t' case. From Mario Lang.
bf338245 7422
048addec 74232003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
bf338245 7424
048addec
JD
7425 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7426 instead of XtAppProcessEvent.
bf338245 7427
048addec
JD
7428 * xterm.c (handle_one_xevent): New function.
7429 (x_dispatch_event): New function.
7430 (XTread_socket): Call handle_one_xevent.
bf338245 7431
048addec 7432 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
e833850f 7433
048addec
JD
7434 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7435 call XQueryPointer to get coordinates.
7436 (popup_get_selection): Do not set popup_activated_flag to zero,
7437 let popup_deactivate_callback do that. Needed for Motif.
7438 Call x_dispatch_event instead of XtDispatchEvent.
7439 (xmenu_show): Calculate root coordinate from frame top/left position.
c4af2bce 7440
048addec 74412003-01-08 Kim F. Storm <storm@cua.dk>
c4af2bce 7442
6bdb309a 7443 * process.c (server_accept_connection): Fix recording of new
048addec
JD
7444 connection's local address in :local property of contact info.
7445 (Fmake_network_process): Record local network address for new
7446 client processes in :local property of contact info.
6bdb309a 7447 (format-network-address): Add arg OMIT-PORT. Change callers.
00e3ab56 7448
048addec 74492003-01-07 Dave Love <fx@gnu.org>
00e3ab56 7450
048addec 7451 * Makefile.in (fns.o): Depend on coding.h.
f387e1fd 7452
048addec 74532003-01-07 Markus Rost <rost@math.ohio-state.edu>
f387e1fd 7454
048addec 7455 * minibuf.c (Fread_variable): Doc fix.
f387e1fd 7456
048addec
JD
7457 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7458 use the same test as for custom-variable-p.
8c6d74c6 7459
048addec 74602003-01-05 Richard M. Stallman <rms@gnu.org>
e833850f 7461
048addec
JD
7462 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7463 Count LAST_LINE_MISFIT in scroll margin for end of window.
7464 Move label too_near_end before setting SCROLL_MARGIN_POS.
7465 Set LAST_LINE_MISFIT before jumping there.
8c6d74c6 7466
048addec
JD
7467 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7468 scroll_conservatively case. If scrolling that much doesn't change
7469 STARTP, move it down one line.
e833850f 7470
048addec
JD
7471 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7472 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8c6d74c6 7473
048addec
JD
7474 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7475 selected frame.
8c6d74c6 7476
048addec
JD
7477 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7478 (syms_of_keymap): staticpro them.
7479 (Fapropos_internal): Initialize them and clear them out.
7480 Don't GCPRO them.
8c6d74c6 7481
048addec
JD
7482 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7483 Doc fixes.
8c6d74c6 7484
048addec
JD
7485 * lisp.h: New misc type Lisp_Save_Value.
7486 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7487 (XSAVE_VALUE): New macro.
7488 (struct Lisp_Save_Value): New data type.
7489 (union Lisp_Misc): Add u_save_value alternative.
7490 (make_save_value): Declared.
8c6d74c6 7491
048addec 7492 * alloc.c (make_save_value): New function.
8c6d74c6 7493
048addec
JD
7494 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7495 (x_catch_errors_unwind): Call XSync.
8c6d74c6 7496
048addec 74972003-01-01 Richard M. Stallman <rms@gnu.org>
8c6d74c6 7498
048addec 7499 * window.c (window_scroll_pixel_based): Partially undo last change.
8c6d74c6 7500
048addec
JD
7501 * keyboard.c (command_loop_1): Call adjust_point_for_property
7502 in direct action cases for Qforward_char and Qbackward_char.
7503 Set already_adjusted so it won't be done twice.
8c6d74c6 7504
048addec 75052002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8c6d74c6 7506
048addec
JD
7507 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7508 type definition of size_t.
8c609cff 7509
048addec 75102003-01-02 Steven Tamm <steventamm@mac.com>
8c609cff 7511
048addec
JD
7512 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7513 distinguish Carbon GUI builds from X11 builds on darwin.
b37113a1 7514
048addec 75152002-12-30 Steven Tamm <steventamm@mac.com>
b37113a1 7516
048addec
JD
7517 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7518 to default to t.
fa634a5e 7519
048addec 75202002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
fa634a5e 7521
048addec 7522 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
ce0669d4 7523
048addec 75242002-12-28 Steven Tamm <steventamm@mac.com>
ce0669d4 7525
048addec
JD
7526 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7527 allow building in a different directory than source. Uses some
7528 GNU Make extensions, but there is no other make on Mac OS X.
2308af15 7529
048addec 75302002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
2308af15 7531
048addec
JD
7532 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7533 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7534 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7535 (Fstring_to_number): Mention the returned value in the doc strings.
2155ecf3 7536
048addec 75372002-12-23 Richard M. Stallman <rms@gnu.org>
2155ecf3 7538
048addec
JD
7539 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7540 <scroll-down-aggressively>: Doc fix.
2155ecf3 7541
048addec
JD
7542 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7543 string as pane name, if there is one.
7544 (set_frame_menubar): Save menu_items_n_panes from each call to
7545 parse_single_submenu and use it when calling digest_single_submenu.
2155ecf3 7546
048addec
JD
7547 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7548 Don't try to make last line fully visible if it is past end of window.
61f1d295 7549
048addec 75502002-12-22 Steven Tamm <steventamm@mac.com>
61f1d295 7551
048addec
JD
7552 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7553 (mac_menu_show): Add support for hierarchical popup menus.
7554 (add_menu_item): Remove indentation support.
7555 (fill_submenu, fill_menu): Create hierarchical menus
7556 instead of using indentation.
0b17a217 7557
048addec 75582002-12-22 Richard M. Stallman <rms@gnu.org>
0b17a217 7559
048addec
JD
7560 * xdisp.c (try_cursor_movement): Don't call try_window here.
7561 (redisplay_window): Never redisplay minibuffer when inactive.
0b17a217 7562
048addec 7563 * window.c (select_window_1): Undo 9/21 change.
402e4f8b 7564
048addec 75652002-12-22 Steven Tamm <steventamm@mac.com>
402e4f8b 7566
048addec
JD
7567 * macterm.c (XTread_socket): Call KeyTranslate for control and
7568 meta to deal correctly shifted non-alpha characters, like C-S-5
7569 being treated like C-%. Does not look for shift key to deal
7570 with masking off control-key with mac-reverse-ctrl-meta.
f02cac82 7571
048addec 75722002-12-21 Richard M. Stallman <rms@gnu.org>
f02cac82 7573
048addec
JD
7574 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7575 If it is non-nil, run timers. Use an unwind-protect to requeue
7576 the events that were read ahead.
7577 (popup_get_selection_unwind): New subroutine.
7578 (popup_get_selection_queue): File-scope variable now holds that queue.
7579 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7580 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7581 Use an unwind-protect to pop down the dialog box.
7582 (xdialog_show_unwind): New subroutine implements that.
f02cac82 7583
048addec
JD
7584 * xdisp.c (row_containing_pos): Change exit test using last_y.
7585 (try_window_id): Abort if row_containing_pos returns null.
f02cac82 7586
048addec
JD
7587 * lread.c (load_error_handler): New function.
7588 (Fload): Handle errors in Fsubstitute_in_file_name.
7589 Don't expect Fsignal to return.
f02cac82 7590
048addec
JD
7591 * eval.c: Errors and throws work right with interrupt blocking.
7592 (struct catchtag): New elt interrupt_input_blocked.
7593 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7594 (internal_catch, Fcondition_case, internal_condition_case)
7595 (internal_condition_case_1, internal_condition_case_2): Save it.
7596 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
f02cac82 7597
048addec 7598 * editfns.c (Fformat): Add parens.
f02cac82 7599
048addec
JD
7600 * dired.c (file_name_completion): Fix that change.
7601 Delete special quit-handling code; just use QUIT.
f02cac82 7602
048addec 76032002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
f02cac82 7604
048addec
JD
7605 * dired.c (file_name_completion): Close directory on error
7606 just as in directory_files_internal.
1a590729 7607
048addec 76082002-12-19 David Kastrup <David.Kastrup@t-online.de>
1a590729 7609
048addec
JD
7610 * window.c (Fset_window_configuration): Set old_point to correct
7611 value when new_current_buffer == current_buffer.
f02cac82 7612
048addec 76132002-12-17 Ben Key <bkey1@tampabay.rr.com>
2308af15 7614
048addec
JD
7615 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7616 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7617 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9785d95b 7618
048addec
JD
7619 These changes were in part based upon suggestions made by Peter
7620 'Luna' Runestig [peter@runestig.com].
9785d95b 7621
048addec
JD
7622 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7623 g_b_init_get_token_information, g_b_init_lookup_account_sid,
6bdb309a 7624 g_b_init_get_sid_identifier_authority ): Add several static
048addec 7625 global variables.
9785d95b 7626
048addec
JD
7627 * w32.c (globals_of_w32): New function. Used to initialize those
7628 global variables that must always be initialized on startup even
7629 when the global variable initialized is non zero. Its primary
7630 purpose at this time is to set the global variables
7631 g_b_init_is_windows_9x, g_b_init_open_process_token,
7632 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7633 g_b_init_get_sid_identifier_authority to 0 on startup.
7634 Called from main.
9785d95b 7635
048addec
JD
7636 * w32.c (is_windows_9x): Perform initialization only if
7637 g_b_init_is_windows_9x is equal to 0. On initialization set
7638 g_b_init_is_windows_9x equal to 1.
2308af15 7639
048addec
JD
7640 * w32.c (open_process_token): Perform initialization only if
7641 g_b_init_open_process_token is equal to 0. On initialization set
7642 g_b_init_open_process_token equal to 1.
2308af15 7643
048addec
JD
7644 * w32.c (get_token_information): Perform initialization only if
7645 g_b_init_get_token_information is equal to 0. On initialization
7646 set g_b_init_get_token_information equal to 1.
9785d95b 7647
048addec
JD
7648 * w32.c (lookup_account_sid): Perform initialization only if
7649 g_b_init_lookup_account_sid is equal to 0. On initialization
7650 set g_b_init_lookup_account_sid equal to 1.
9785d95b 7651
048addec
JD
7652 * w32.c (get_sid_identifier_authority): Perform initialization
7653 only if g_b_init_get_sid_identifier_authority is equal to 0.
7654 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
9785d95b 7655
f63fd14e 7656 * w32fns.c (globals_of_w32fns): New function. Used to initialize
048addec
JD
7657 those global variables that must always be initialized on startup
7658 even when the global variable initialized is non zero.
7659 Its primary purpose at this time is to initialize the global variable
7660 track_mouse_event_fn.
9785d95b 7661
a64387ee 7662 * w32fns.c (w32_wnd_proc): Remove initialization of
048addec 7663 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
9785d95b 7664
048addec 7665 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
9785d95b 7666
f63fd14e 7667 * w32menu.c (globals_of_w32menu): New function. Used to
048addec
JD
7668 initialize those global variables that must always be initialized
7669 on startup even when the global variable initialized is non zero.
7670 Its primary purpose at this time is to initialize the global
7671 variables get_menu_item_info and set_menu_item_info.
9785d95b 7672
048addec
JD
7673 * w32menu.c (initialize_frame_menubar): Remove initialization of
7674 get_menu_item_info and set_menu_item_info.
9785d95b 7675
048addec 7676 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
9785d95b 7677
048addec
JD
7678 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7679 Declare them.
9785d95b 7680
048addec
JD
7681 * emacs.c (main): Call globals_of_w32 prior to calling
7682 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7683 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7684 is defined.
9785d95b 7685
048addec
JD
7686 * w32term.c (x_update_window_begin): Fix Windows API error
7687 detected by BoundsChecker. Test to determine if
7688 w32_system_caret_hwnd is NULL prior to attempting to use
7689 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
2308af15 7690
048addec
JD
7691 * w32term.c (x_update_window_end): Fix Windows API error
7692 detected by BoundsChecker. Test to determine if
7693 w32_system_caret_hwnd is NULL prior to attempting to use
7694 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
b6da19ef 7695
048addec 76962002-12-17 Kenichi Handa <handa@m17n.org>
b6da19ef 7697
048addec
JD
7698 * coding.c (coding_system_require_warning): New variable.
7699 (syms_of_coding): DEFVAR it.
b6da19ef 7700
048addec 7701 * coding.h (coding_system_require_warning): Extern it.
b6da19ef 7702
048addec
JD
7703 * fileio.c (choose_write_coding_system): Even if
7704 Vcoding_system_for_write is non-nil, if
7705 coding_system_require_warning is nonzero, call
7706 Vselect_safe_coding_system_function.
bfcf6dbe 7707
048addec 77082002-12-17 Markus Rost <rost@math.ohio-state.edu>
bfcf6dbe 7709
048addec
JD
7710 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7711 (lisp): Add font-core.
2c568af5 7712
048addec 77132002-12-13 Stefan Monnier <monnier@cs.yale.edu>
2c568af5 7714
048addec
JD
7715 * textprop.c (text_read_only): New arg `propval'.
7716 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7717 (verify_interval_modification): Use text_read_only's new arg.
b8c6225c 7718
048addec 77192002-12-13 Kenichi Handa <handa@m17n.org>
b8c6225c 7720
048addec 7721 * coding.c (Funencodable_char_position): Set pend correctly.
706ddb8f 7722
048addec 77232002-12-12 Jason Rumney <jasonr@gnu.org>
706ddb8f 7724
048addec
JD
7725 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7726 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7727 Be more careful about when help_events are generated.
96720f09 7728
048addec 77292002-12-12 Steven Tamm <steventamm@mac.com>
96720f09 7730
048addec
JD
7731 * macterm.c (mac_check_for_quit_char): Correctly set the
7732 modifiers of the event to 0.
7733 * mac.c (sys_select): Duplicate rfds before calling select to
7734 ensure that rfds survive the while loop.
e5ae1c49 7735
048addec 77362002-12-11 Kim F. Storm <storm@cua.dk>
e5ae1c49 7737
048addec
JD
7738 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7739 row_containing_pos returned NULL.
2eb46b2d 7740
048addec 77412002-12-10 Steven Tamm <steventamm@mac.com>
2eb46b2d 7742
6bdb309a 7743 * mac.c (sys_read): Fix sys_read to not call select if IO is
048addec 7744 non-blocking.
6bdb309a 7745 (sys_select): Fix sys_select to not use a timeout larger than
048addec 7746 the one given.
b11f1d8a 7747
048addec 77482002-12-10 Juanma Barranquero <lektu@terra.es>
b11f1d8a 7749
048addec 7750 * editfns.c (Fformat): Use alloca, not _alloca.
d8528226 7751
048addec 77522002-12-09 Richard M. Stallman <rms@gnu.org>
d8528226 7753
048addec
JD
7754 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7755 as the last thing.
a4ac5b17 7756
048addec 77572002-12-09 Dave Love <fx@gnu.org>
a4ac5b17 7758
048addec 7759 * s/sol2-8.h: Removed. (Not necessary.)
ac42d7b9 7760
048addec 77612002-12-09 Matthew Swift <swift@alum.mit.edu>
ac42d7b9 7762
048addec
JD
7763 * editfns.c (Fformat): Handle precision in string conversion
7764 specifiers like libc functions do (ie, print at most that many
7765 characters).
85cce843 7766
048addec 77672002-12-08 Richard M. Stallman <rms@gnu.org>
85cce843 7768
048addec
JD
7769 * xdisp.c (row_containing_pos): Check more carefully
7770 whether charpos is really in the row before returning it.
0d4d26a7 7771
048addec 77722002-12-07 Steven Tamm <steventamm@mac.com>
0d4d26a7 7773
048addec 7774 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
b11f1d8a 7775
048addec
JD
7776 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7777 each stack frame. This may change as it could be time consuming.
0d4d26a7 7778
048addec
JD
7779 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7780 (init_quit_char_handler, mac_determine_quit_char_modifiers)
6bdb309a 7781 (mac_initialize): Add code to check for pressing of quit_char
048addec 7782 in the OS event queue.
b11f1d8a 7783
048addec
JD
7784 * mac.c (sys_select): Call mac_check_for_quit_char every second
7785 while blocking on select.
0d4d26a7 7786
048addec
JD
7787 * mac.c (sys_read): Use sys_select to test for input first
7788 before calling read, to allow C-g to break.
9252f7bc 7789
048addec 77902002-12-07 Richard M. Stallman <rms@gnu.org>
9252f7bc 7791
048addec 7792 * minibuf.c (Fcompleting_read): Doc fix.
9252f7bc 7793
048addec 7794 * lread.c (syms_of_lread) <load-history>: Doc fix.
9252f7bc 7795
048addec 7796 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
9252f7bc 7797
048addec
JD
7798 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7799 autoload.
9252f7bc 7800
048addec 7801 * data.c (Fdefalias): Record in load-history redefining an autoload.
9252f7bc 7802
048addec 7803 * alloca.c: Undo ifdef change accidentally made on 12-04.
bfa261c0 7804
048addec 78052002-12-06 Francesco Potorti` <pot@gnu.org>
bfa261c0 7806
048addec 7807 * xfns.c (png_load): Avoid double gamma correction for PNG images.
c5992177 7808
048addec 78092002-12-04 Richard M. Stallman <rms@gnu.org>
c5992177 7810
048addec 7811 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7812
048addec 7813 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
c5992177 7814
048addec 7815 * alloca.c: Don't use #error.
02d588e2 7816
048addec 78172002-12-03 Dave Love <fx@gnu.org>
02d588e2 7818
048addec
JD
7819 * buffer.c (Qucs_set_table_for_input): New.
7820 (Fget_buffer_create): Use it.
7821 (Qset_buffer_major_mode_hook): Deleted.
7822 (Fset_buffer_major_mode): Revert previous change.
7823 (init_buffer_once): Intern ucs-set-table-for-input.
7824 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7825 Add &Qucs_set_table_for_input.
451e2697 7826
048addec 78272002-12-03 Andreas Schwab <schwab@suse.de>
451e2697 7828
048addec
JD
7829 * callint.c (Fcall_interactively): Use next_event only if less
7830 than key_count.
72742a99 7831
048addec 78322002-12-02 Andrew Choi <akochoi@shaw.ca>
72742a99 7833
048addec
JD
7834 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7835 names to 255 characters.
72742a99 7836
048addec
JD
7837 * macterm.c (XTread_socket): If all frames have been collapsed,
7838 expand the first one before handling drag-and-drop events.
72742a99 7839
048addec
JD
7840 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7841 which is detected by autoconf.
40e6ff95 7842
048addec 78432002-12-01 Steven Tamm <steventamm@mac.com>
40e6ff95 7844
048addec
JD
7845 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7846 offset in two hints table to allow prebinding to be redone and
7847 allow the executable to be stripped.
c02138c6 7848
048addec 78492002-11-29 Dave Love <fx@gnu.org>
c02138c6 7850
048addec
JD
7851 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7852 already provided.
0e47bbf7 7853
048addec 78542002-11-29 Richard M. Stallman <rms@gnu.org>
0e47bbf7 7855
048addec
JD
7856 * xdisp.c (start_display): Check more intelligently for
7857 whether the line is continued.
7858 (move_it_vertically_backward): Clear it->continuation_lines_width.
44129dcb 7859
048addec 78602002-11-28 Dave Love <fx@gnu.org>
44129dcb 7861
048addec
JD
7862 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7863 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
f707342d 7864
048addec 78652002-11-27 Steven Tamm <steventamm@mac.com>
f707342d 7866
048addec
JD
7867 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7868 more descriptive error output from lread.c:Fload upon most require
7869 cycles during boostrapping.
1637fd2c 7870
048addec 78712002-11-27 Jason Rumney <jasonr@gnu.org>
1637fd2c 7872
048addec
JD
7873 * fileio.c (Finsert_file_contents): Give a more appropriate error
7874 for files bigger than 2Gb when off_t is 32 bit.
1637fd2c 7875
048addec
JD
7876 * dired.c (Ffile_attributes): Don't return negative file sizes for
7877 files bigger than 2Gb when off_t is 32 bit.
540c2788 7878
048addec 78792002-11-27 Dave Love <fx@gnu.org>
6b2fd6ea 7880
048addec 7881 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
6b2fd6ea 7882
048addec
JD
7883 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7884 Test GETPGRP_VOID instead.
7885 [BSD_TERMIOS]: Remove definitions (never used).
6b2fd6ea 7886
048addec
JD
7887 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7888 Don't define.
7889 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
540c2788 7890
048addec 7891 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8cc03716 7892
048addec 78932002-11-25 Jason Rumney <jasonr@gnu.org>
8cc03716 7894
048addec
JD
7895 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7896 supported.
4042a81a 7897
048addec 78982002-11-25 Dave Love <fx@gnu.org>
4042a81a 7899
048addec 7900 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
4042a81a 7901
048addec 7902 * Makefile.in (TEMACS_LDFLAGS): Update last change.
be4ee72f 7903
048addec 79042002-11-25 Andreas Schwab <schwab@suse.de>
be4ee72f 7905
048addec 7906 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
82122254 7907
048addec 79082002-11-24 Steven Tamm <steventamm@mac.com>
82122254 7909
048addec
JD
7910 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7911 determine the size of pointers alloced in unexed space instead
7912 of using possibly invalid emacs_zone pointers. This fixes the
7913 binary incompatibility problems caused by updates to libSystem.B.
c1ee53bc 7914
048addec 79152002-11-24 Richard M. Stallman <rms@gnu.org>
c1ee53bc 7916
048addec 7917 * search.c (Fstring_match): Doc fix.
c1ee53bc 7918
048addec
JD
7919 * callint.c (Fcall_interactively): If a command fails because
7920 `*' detects a read-only buffer, but RECORD_FLAG is set,
7921 record it anyway if the args don't actually do tty input.
5598c32e 7922
048addec 79232002-11-22 Dave Love <fx@gnu.org>
5598c32e 7924
048addec 7925 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
5598c32e 7926
048addec
JD
7927 * keyboard.c (interrupt_signal): Provide forward declaration.
7928 (kbd_buffer_store_event): Don't declare interrupt_signal.
5598c32e 7929
048addec 7930 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
97b14e22 7931
048addec 79322002-11-21 Richard M. Stallman <rms@gnu.org>
97b14e22 7933
048addec
JD
7934 * eval.c (interactive_p): Skip any number of bytecode
7935 and special form frames, in any order.
516eea8e 7936
048addec 79372002-11-20 Jason Rumney <jasonr@gnu.org>
516eea8e 7938
048addec
JD
7939 * w32fns.c (convert_mono_to_color_image): New function.
7940 (xbm_load, xbm_load_image): Use it when foreground or background
7941 is explicitly set.
04dbfa08 7942
048addec 79432002-11-19 Dave Love <fx@gnu.org>
04dbfa08 7944
048addec 7945 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
b4aebae3 7946
048addec 79472002-11-18 Jason Rumney <jasonr@gnu.org>
b4aebae3 7948
048addec
JD
7949 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7950 (XPutPixel): Swap blue and red.
7951 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7952 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7953 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7954 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
1998560a 7955
048addec 79562002-11-18 Dave Love <fx@gnu.org>
d824beee 7957
048addec 7958 * m/orion105.h (HAVE_ALLOCA): Don't define.
d824beee 7959
048addec 7960 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
d824beee 7961
048addec 7962 * m/intel386.h: Don't include alloca.h or define alloca.
d824beee 7963
048addec
JD
7964 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7965 malloc, realloc, calloc.
d824beee 7966
048addec
JD
7967 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7968 (bcmp): Don't define.
d824beee 7969
048addec 7970 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
d824beee 7971
048addec 7972 * m/amdahl.h: Don't define LIB_STANDARD.
d824beee 7973
048addec 7974 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
d824beee 7975
048addec 7976 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
d824beee 7977
048addec
JD
7978 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7979 Don't include alloca.h.
d824beee 7980
048addec 7981 * s/aix3-2.h (HAVE_FSYNC): Don't define.
1998560a 7982
048addec 7983 * regex.c (_GNU_SOURCE): Don't define.
1998560a 7984
048addec 7985 * process.c (_GNU_SOURCE): Don't define.
1998560a 7986
048addec 7987 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8704a6ab 7988
048addec 79892002-11-18 Markus Rost <rost@math.ohio-state.edu>
8704a6ab 7990
048addec 7991 * s/sol2-8.h: Include sol2-6.h.
6ae2cd57 7992
048addec 79932002-11-18 Miles Bader <miles@gnu.org>
6ae2cd57 7994
048addec
JD
7995 * dispextern.h (struct face): Add `overstrike' field.
7996 * xterm.c (x_draw_glyph_string_foreground)
7997 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7998 * xfaces.c (load_face_font): Set `face->overstrike' based on
7999 result from choose_face_font.
8000 (best_matching_font, choose_face_font): Add `needs_overstrike'
8001 argument, and use it to return whether overstriking is desirable
8002 for this face/font combo.
8003 (set_font_frame_param: Pass new argument to choose_face_font.
6ae2cd57 8004
048addec 80052002-11-17 Ben Key <BKey1@tampabay.rr.com>
3582b6a3 8006
048addec
JD
8007 This change is my fix for the following entry in etc/PROBLEMS:
8008 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8009 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
f60ae425 8010
048addec
JD
8011 * w32.c: Added wrapper functions around the win32 API functions
8012 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8013 GetSidIdentifierAuthority. These wrapper functions serve two
8014 purposes:
8015 1. They ensure that the wrapped function can never be called
8016 when Emacs is running on an operating system on which they are
8017 not supported (Microsoft Windows 95 / 98 / ME).
8018 2. They call the wrapped functions via function pointers rather
8019 than calling them directly. This avoids taking advantage of the
8020 undocumented fact that although these functions are not supported
8021 in the 9x branch of Microsoft Windows, the functions do exist in
8022 the version of advapi32.dll that is found in the 9x branch of
8023 Microsoft Windows.
f60ae425 8024
6bdb309a 8025 * w32.c (init_user_info): Replace the calls to the win32 API
048addec
JD
8026 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8027 and GetSidIdentifierAuthority with calls to the newly added
8028 wrapper functions.
f60ae425 8029
048addec
JD
8030 * w32.h: Added extern declarations for the following functions:
8031 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8032 syms_of_w32menu, and void syms_of_fontset.
f60ae425 8033
6bdb309a 8034 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
048addec
JD
8035 function pointer track_mouse_event_fn in the handler for the
8036 WM_SETFOCUS message.
3582b6a3 8037
6bdb309a 8038 * w32menu.c (initialize_frame_menubar): Add code to
048addec
JD
8039 reinitialize the function pointers set_menu_item_info and
8040 get_menu_item_info.
f60ae425 8041
048addec 80422002-11-17 Ben Key <BKey1@tampabay.rr.com>
f60ae425 8043
048addec
JD
8044 * sound.c: Added a partial implementation of play-sound-internal
8045 for Microsoft Windows. Added various #ifdef / #else / #endif
8046 code blocks to separate the code that will compile under
8047 Microsoft Windows from the code that is specific to Gnu/Linux.
8048 Moved several blocks of code around to make this separation of code
8049 into Windows compatible and Gnu/Linux compatible code blocks easier.
f60ae425 8050
048addec 8051 * makefile.w32-in: Include sound.c and link with WinMM.lib.
a0f0878d 8052
048addec
JD
8053 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8054 added support for play-sound-internal under Windows would be
8055 included in the build of Emacs.
517f42a0 8056
048addec 80572002-11-16 Jason Rumney <jasonr@gnu.org>
517f42a0 8058
048addec 8059 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
517f42a0 8060
048addec 8061 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
a0f0878d 8062
048addec 80632002-11-15 Stefan Monnier <monnier@cs.yale.edu>
a0f0878d 8064
048addec
JD
8065 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8066 (adjust_point_for_property): Move out of display and invisible even if
8067 we were already inside before (in case a property was added while
8068 we weren't looking). Be more careful when handling invisible props.
8069 Skip invisible text as if it really wasn't there at all.
aab83f91 8070
048addec 80712002-11-15 Jason Rumney <jasonr@gnu.org>
aab83f91 8072
048addec
JD
8073 * w32term.c (x_draw_image_foreground)
8074 (w32_draw_image_foreground_1): Use standard copy and invert
8075 operations to draw images.
aab83f91 8076
048addec
JD
8077 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8078 depth of 1.
8079 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8080 (XPutPixel): Don't invert bits here.
a4478a76 8081
048addec 80822002-11-15 Jason Rumney <jasonr@gnu.org>
a4478a76 8083
048addec
JD
8084 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8085 (w32_draw_image_foreground_1): Handle image masks.
8086 (x_draw_image_glyph_string): Don't BitBlt transparently.
a4478a76 8087
048addec
JD
8088 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8089 (x_from_xcolors): Adjust RGB values for W32.
8090 (image_background, image_background_transparent)
8091 (postprocess_image, x_to_xcolors, x_disable_image)
8092 (x_build_heuristic_mask): Adapt for W32 and enable.
8093 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8094 (xbm_load): Remove unused variable.
03670a65 8095
048addec 80962002-11-14 Richard M. Stallman <rms@gnu.org>
03670a65 8097
048addec 8098 * buffer.c (syms_of_buffer): Doc fix.
59daa29a 8099
048addec 81002002-11-14 Dave Love <fx@gnu.org>
59daa29a 8101
048addec 8102 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
59daa29a 8103
048addec
JD
8104 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8105 * xmenu.c (unuse_menu_items, digest_single_submenu):
8106 * xfns.c (x_put_x_image):
8107 * xdisp.c (message2_nolog, set_message):
8108 * undo.c (record_point):
8109 * terminfo.c (tparam):
8110 * syntax.c (scan_sexps_forward):
8111 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8112 * composite.c (update_compositions):
8113 * cm.c (calccost, cmgoto):
8114 * charset.c (c_string_width): Declare all args (per C99).
59daa29a 8115
048addec 8116 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
59daa29a 8117
048addec
JD
8118 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8119 Don't declare.
59daa29a 8120
048addec 8121 * emacs.c (main) [!VMS]: Avoid third arg.
59daa29a 8122
048addec
JD
8123 * fns.c (Fcopy_sequence): Doc fix.
8124 (Fmap_char_table): Cast `call2'.
3947677c 8125
048addec
JD
81262002-11-14 Francesco Potorti` <pot@gnu.org>
8127
8128 * s/sol2-8.h: New file.
8129
81302002-11-14 Kim F. Storm <storm@cua.dk>
8131
8132 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8133 dependency on `risky-local-variable' and the :propertize form.
8134
81352002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8136
8137 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8138
8139 * syntax.c (scan_sexps_forward): Undo last patch.
8140 Use a more obvious fix: check eob before updating the syntax table.
8141
81422002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8143
8144 * syntax.c (scan_sexps_forward): Update syntax table before reading
8145 a char rather than after so we don't update the table past eob.
8146
81472002-11-09 Dave Love <fx@gnu.org>
8148
8149 * buffer.c (Fset_buffer_major_mode): Fix last change.
8150
8151 * regex.c (regexec): Fix pmatch declaration.
8152
8153 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8154
8155 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8156 to self-inserting characters.
8157 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8158
8159 * coding.c (Vtranslation_table_for_input): New.
8160 (syms_of_coding): DEFVAR it.
8161
81622002-11-08 Juanma Barranquero <lektu@terra.es>
8163
8164 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8165 window.
8166
81672002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8168
6bdb309a 8169 * process.c (Fformat_network_address): Remove unused locals p,
048addec
JD
8170 cp, and i.
8171
81722002-11-06 Dave Love <fx@gnu.org>
8173
8174 * buffer.c (Qset_buffer_major_mode_hook): New.
8175 (Fset_buffer_major_mode): Use it.
8176
81772002-11-06 Richard M. Stallman <rms@gnu.org>
8178
8179 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8180 and stop_polling.
8181
8182 * process.c (wait_reading_process_input):
8183 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8184 Avoid initialization for auto Lisp_Object var.
8185
8186 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8187
8188 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8189
81902002-11-05 Richard M. Stallman <rms@gnu.org>
8191
8192 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8193
8194 * callint.c (Fcall_interactively): New local filter_specs.
8195 (Fcall_interactively): Check for progn as well as let.
8196 Add a gcpro.
8197 (Qprogn): New variable.
8198 (syms_of_callint): Staticpro and init Qprogn.
8199
82002002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8201
8202 * lread.c (Feval_buffer): Doc fix.
8203
82042002-11-04 Dave Love <fx@gnu.org>
8205
8206 * keyboard.c (read_char): Always translate iff
8207 Vkeyboard_translate_table is a char table and c is valid.
8208
8209 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8210 and fix C types.
8211
82122002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8213
8214 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8215
8216 * editfns.c (get_pos_property): Don't hardcode Qfield.
8217
8218 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8219 overlays. Also handle `invisible' prop.
8220
82212002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8222
8223 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8224 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8225
82262002-11-01 Andreas Schwab <schwab@suse.de>
8227
8228 * editfns.c (Fmessage): Revert last change to properly handle %%.
8229
82302002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8231
8232 * xmenu.c (unuse_menu_items): New fun.
8233 (menu_items_inuse): New var.
8234 (syms_of_xmenu): Initialize it.
8235 (init_menu_items): Use it to detect re-entrance.
8236 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8237 (Fx_popup_menu): Remove spurious XSETFRAME.
8238
8239 * editfns.c (find_field): Make an exception for nil fields.
8240
82412002-11-01 Dave Love <fx@gnu.org>
8242
8243 * m/gec63.h: Deleted.
8244
82452002-10-31 Dave Love <fx@gnu.org>
8246
8247 * xterm.c (XTread_socket): Fix last change.
8248 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8249
82502002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8251
8252 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8253
82542002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8255
8256 * editfns.c (overlays_around, get_pos_property): New funs.
8257 (find_field): Use them.
8258 Also be careful not to modify POS before its last use.
8259 (Fmessage): Don't Fformat if there's nothing to format.
8260
82612002-10-30 Dave Love <fx@gnu.org>
8262
8263 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8264 [HAVE_PTY_H]; Include pty.h.
8265
8266 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8267
8268 * xterm.c (Qeql): Declare.
8269 (Vx_keysym_table): New.
8270 (syms_of_xterm): Initialize it.
8271 (XTread_socket): Use it. Deal with ASCII keysyms.
8272 (XSetIMValues) [HAVE_X11R6]: Prototype.
8273
8274 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8275 (lispy_kana_keys): Comment out.
8276 (make_lispy_event) [XK_kana_A]: Comment out.
8277 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8278 Fix sprintf call.
8279
8280 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8281 regexp.h change).
8282 (TERMINFO, LIBS_TERMCAP): Define.
8283
8284 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8285 (bcmp): Define conditional on HAVE_BCMP.
8286 (NO_SIOCTL_H): Don't define.
8287 (TIOCSIGSEND): Don't make conditional on IRIX6.
8288
8289 * s/sol2-5.h: Don't include strings.h.
8290 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8291
8292 * s/irix6-0.h (IRIX6): Don't define.
8293 (bcopy, bcmp, bzero): Don't undef.
8294
8295 * s/irix6-5.h: Don't include strings.h.
8296 (IRIX6): Don't define.
8297 (bcopy, bcmp, bzero): Don't undef.
8298
8299 * syntax.c (Fforward_comment): Doc fix.
8300
83012002-10-29 Kim F. Storm <storm@cua.dk>
8302
8303 * process.c (Fsignal_process): Allow PROCESS to be specified by
8304 name in addition to pid (as integer or string).
8305
83062002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8307
8308 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8309 environments.
8310
83112002-10-27 Kim F. Storm <storm@cua.dk>
8312
8313 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8314
8315 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8316
8317 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8318
8319 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8320
83212002-10-26 Richard M. Stallman <rms@gnu.org>
8322
8323 * editfns.c (Fformat): Detect invalid format letters for floats.
8324
83252002-10-25 Kenichi Handa <handa@m17n.org>
8326
8327 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8328 (x_set_title): Likewise.
8329
83302002-10-25 Juanma Barranquero <lektu@terra.es>
8331
8332 * macgui.h:
8333 * w32gui.h: Remove definition of XColor.
8334
8335 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8336
83372002-10-24 Kim F. Storm <storm@cua.dk>
8338
8339 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8340 Callers changed (supply dummy arg).
8341
8342 * lisp.h (get_window_cursor_type): Update prototype.
8343
8344 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8345 get_window_cursor_type to track system caret.
8346
83472002-10-24 Kim F. Storm <storm@cua.dk>
8348
8349 * process.c (Fformat_network_address): New function.
8350 (syms_of_process): Defsubr it.
8351 (list_processes_1): Use it to format :local/:remote address if
f9711de4 8352 service/host is not set; before Emacs would crash in that case.
048addec
JD
8353 (Fmake_network_process): Don't use Ffind_operation_coding_system
8354 to setup coding system if host or service is not set.
8355
83562002-10-23 Juanma Barranquero <lektu@terra.es>
8357
8358 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8359
8360 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8361 COLORREF.
8362
8363 * macgui.h:
8364 * w32gui.h: Add definition of XColor.
8365
8366 * macfns.c:
8367 * w32fns.c:
8368 * xfaces.c: Remove definition of XColor.
8369
83702002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8371
8372 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8373
8374 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8375 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8376 window if it is dedicated.
8377 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8378 (Vspecial_display_function): Update docstring.
8379
8380 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8381 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8382 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8383
83842002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8385
8386 * casefiddle.c (casify_region): Don't treat a prefix char as part
8387 of a word when at the beginning.
8388
83892002-10-17 Juanma Barranquero <lektu@terra.es>
8390
8391 * lread.c (syms_of_lread): Fix typos.
8392
83932002-10-17 Dave Love <fx@gnu.org>
8394
8395 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8396
83972002-10-16 Richard M. Stallman <rms@gnu.org>
8398
8399 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8400
84012002-10-14 Juanma Barranquero <lektu@terra.es>
8402
8403 * w16select.c (syms_of_win16select): Fix docstring for
8404 `selection-coding-system'.
8405
8406 * w32select.c (syms_of_w32select): Likewise.
8407
84082002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8409
8410 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8411 a backslash-quoted char.
8412 (scan_lists, scan_sexps_forward): Pacify the compiler.
8413
84142002-10-13 Richard M. Stallman <rms@gnu.org>
8415
8416 * window.c (window_scroll): Set immediate_quit.
8417
8418 * print.c (print): When backquote form is the car of a list,
8419 output in old style. Use old_backquote_output to output all
8420 comma forms inside it in old style too.
8421
8422 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8423
84242002-10-11 Markus Rost <rost@math.ohio-state.edu>
8425
8426 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8427 batch mode).
8428
8429 * lread.c (Fload): Doc fix (load-suffixes).
8430
84312002-10-10 Steven Tamm <steventamm@mac.com>
8432
8433 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8434 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8435 Also switch the default to Qnil from Qt.
8436
84372002-10-08 Kenichi Handa <handa@m17n.org>
8438
8439 * coding.c (code_convert_region): When we need more GAP for
8440 conversion, pay attention to the case that coding->produced is not
8441 greater than coding->consumed.
8442
84432002-10-07 Richard M. Stallman <rms@gnu.org>
8444
8445 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8446
84472002-10-06 Andrew Choi <akochoi@shaw.ca>
8448
8449 * macmenu.c (mac_menu_show): Add j to count menu items; match
8450 menu_item_selection to it to find selected item.
8451
84522002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8453
8454 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8455 cases. The correct fix is to pass ReparentNotify to Xt.
8456 The shell widget interprets ConfigureNotify differently depending
8457 on if it has been reparented or not.
8458
84592002-10-05 Markus Rost <rost@math.ohio-state.edu>
8460
8461 * editfns.c (Fformat_time_string): Doc fix.
8462
84632002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8464
8465 * fns.c (Flength): Doc fix.
8466
84672002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8468
8469 * keyboard.c (keyremap): New struct.
8470 (read_key_sequence): Use it: globally replace keytran_foo with
8471 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8472 keytran_next and fkey_next to just `next'.
8473
84742002-10-04 Steven Tamm <steventamm@mac.com>
8475
8476 * macterm.c (keycode_to_xkeysym_table): Change return to be
8477 treated like an X keysym.
8478
84792002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8480
8481 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8482 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8483 This is to also handle x/y changes that occur because of a resize.
8484
84852002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8486
8487 * frame.c (Vdelete_frame_functions): New variable.
8488 (syms_of_frame): Initialize and defvar it.
8489 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8490 it when frame's `tooltip' parameter is non-nil.
8491
8492 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8493
8494 * w32fns.c (x_create_tip_frame): Likewise.
8495
8496 * macfns.c (x_create_tip_frame): Likewise.
8497
84982002-09-30 Kenichi Handa <handa@m17n.org>
8499
8500 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8501 -1 before calling ccl_driver.
8502
8503 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8504 Only when it is non-nil, handle composition sequence.
8505 (setup_coding_system) <0>: Don't force composition handling.
8506
8507 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8508
85092002-09-29 Richard M. Stallman <rms@gnu.org>
8510
8511 * search.c (Freplace_match): Adjust match data for the substitution
8512 just made in the buffer.
8513
8514 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8515 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8516
85172002-09-27 Richard M. Stallman <rms@gnu.org>
8518
8519 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8520 (read_char): Use them. Do all exits thru the end of the function.
8521
85222002-09-27 Kenichi Handa <handa@etl.go.jp>
8523
8524 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8525 is nil.
8526
85272002-09-26 Richard M. Stallman <rms@gnu.org>
8528
8529 * regex.h (__restrict_arr): Don't define if already defined.
8530
8531 * coding.c (run_pre_post_conversion_on_str):
8532 Save and restore Vdeactivate_mark.
8533
85342002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8535
8536 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8537
85382002-09-26 Kenichi Handa <handa@etl.go.jp>
8539
8540 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8541 nonzero, try face's family at first. Otherwise try FAMILY at first.
8542 (choose_face_font): If C is a single byte char or latin-1, call
8543 try_font_list with PREFER_FACE_FAMILY 1.
8544
85452002-09-21 Richard M. Stallman <rms@gnu.org>
8546
8547 * window.c (select_window_1): Don't select frame.
8548 Set frame's selected window only when frame itself is selected.
8549 (Fselect_window): Doc fix.
8550
85512002-09-18 Kim F. Storm <storm@cua.dk>
8552
8553 * process.c (make-network-process): Doc fix (there is no
8554 network-server-log-function hook).
8555
85562002-09-18 Richard M. Stallman <rms@gnu.org>
8557
8558 * print.c (print): Clear out the unused parts of Vprint_number_table.
8559 (syms_of_print): Doc fix for `print-number-table'.
8560
8561 * unexelf.c (unexec): Undo previous change.
8562
85632002-09-17 Andreas Schwab <schwab@suse.de>
8564
8565 * m/alpha.h [LINUX]: Don't define DATA_START.
8566
85672002-09-16 Dave Love <fx@gnu.org>
8568
8569 * unexelf.c (unexec): Deal with .got, reinstating change from
8570 25-08-1999.
8571
85722002-09-13 Richard M. Stallman <rms@gnu.org>
8573
8574 * s/sol2-6.h (UNEXEC): Comment out definition.
8575
8576 * unexsol.c (unexec): Don't downcase first letter of error msg.
8577
8578 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8579
85802002-09-12 Markus Rost <rost@math.ohio-state.edu>
8581
8582 * unexsol.c: Include buffer.h, charset.h, coding.h.
8583
85842002-09-11 Richard M. Stallman <rms@gnu.org>
8585
8586 * unexsol.c: Don't use report_file_error; do it by hand
8587 using dlerror.
8588
8589 * process.c (wait_reading_process_input, both versions):
8590 Before calling turn_on_atimers, call stop_polling.
8591
8592 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8593
8594 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8595 we go to too_near_end, call clear_glyph_matrix.
8596 (redisplay_window): After make_cursor_line_fully_visible,
8597 call clear_glyph_matrix and bypass `goto done'.
8598
8599 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8600 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8601
86022002-09-10 Richard M. Stallman <rms@gnu.org>
8603
8604 * fileio.c (Fdo_auto_save): Catch error making directory.
8605 Only call push_message if we need to.
8606 At the same time, make an unwind-protect to pop it.
8607 Rename local message_p to old_message_p.
8608 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8609 (do_auto_save_unwind): Don't call pop_message.
8610
8611 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8612
8613 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8614
8615 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8616
8617 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8618
86192002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8620
8621 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8622 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8623 (re_match_2_internal): Be more careful with infinite loops.
8624
86252002-09-10 Kim F. Storm <storm@cua.dk>
8626
8627 * macros.c (end_kbd_macro): New function.
8628 (Fend_kbd_macro): Use it.
8629
8630 * macros.h (end_kbd_macro): Declare extern.
8631
8632 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8633 end and save it instead of discarding it.
8634
86352002-09-09 Markus Rost <rost@math.ohio-state.edu>
8636
8637 * s/sol2-6.h: Fix typo. Add comment.
8638
86392002-09-09 Richard M. Stallman <rms@gnu.org>
8640
8641 * regex.c (regnum_t): Use signed int, not unsigned int.
8642
8643 * s/sol2-6.h: New file.
8644
8645 * s/sol2-5.h (UNEXEC): Definition deleted.
8646
86472002-09-08 Kim F. Storm <storm@cua.dk>
8648
8649 * macros.c (executing_macro_index): Change type to EMACS_INT.
8650 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8651
8652 * macros.h (executing_macro_index): Change type to EMACS_INT.
8653
86542002-09-06 Richard M. Stallman <rms@gnu.org>
8655
8656 * casetab.c (set_case_table): Make canon table point to eqv table.
8657
86582002-09-06 Juanma Barranquero <lektu@terra.es>
8659
8660 * coding.c (syms_of_coding): Fix spacing.
8661
8662 * composite.c (Fcompose_region_internal)
8663 (Fcompose_string_internal): Likewise.
8664
8665 * data.c (Flsh): Likewise.
8666
8667 * fontset.c (Fset_fontset_font): Likewise.
8668
8669 * macfns.c (Fx_server_max_request_size): Likewise.
8670
8671 * w16select.c (syms_of_win16select): Likewise.
8672
8673 * w32select.c (syms_of_w32select): Likewise.
8674
8675 * xselect.c (syms_of_xselect): Likewise.
8676
86772002-09-05 Richard M. Stallman <rms@gnu.org>
8678
8679 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8680 call EXTEND_RANGE_TABLE and return a proper value.
8681 (set_image_of_range): Don't call set_image_of_range_1
8682 if no TRANSLATE or if range includes all of Latin-1.
8683 Only call it for the Latin-1 part of the range.
8684 For other cases, make two separate ranges,
8685 one for the original specified characters and one for
8686 their case-conversions.
8687
86882002-09-04 Richard M. Stallman <rms@gnu.org>
8689
8690 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8691
8692 * window.c (displayed_window_lines): Correct for one-off bug
8693 in HEIGHT on non-window displays.
8694
8695 * regex.c (set_image_of_range_1): New function.
8696 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8697 Return a value to indicate running out of memory.
8698 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8699 (extend_range_table_work_area): New subroutine.
8700 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8701 Different calling conventions, and used from set_image_of_range{,_1}.
8702 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8703
87042002-09-04 Juanma Barranquero <lektu@terra.es>
8705
8706 * makefile.w32-in: All dependencies updated.
8707
87082002-09-01 Richard M. Stallman <rms@gnu.org>
8709
8710 * unexsol.c: New file.
8711
8712 * xfns.c (Qbox): Declare external, don't define.
8713
8714 * xdisp.c (redisplay_window) <force-start case>:
8715 If point is on semi-visible last line, reposition
8716 it at previous line.
8717
8718 * alloc.c (display_malloc_warning): Use display-warning.
8719 (malloc_warning_1): Function deleted.
8720
8721 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8722
8723 * lread.c (read1): Handle #! by skipping the line.
8724
87252002-08-31 Richard M. Stallman <rms@gnu.org>
8726
8727 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8728 Don't include LDFLAGS.
8729 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8730
87312002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8732
8733 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8734 member of x_display_info unless we compile for some window system.
8735
87362002-08-31 Kim F. Storm <storm@cua.dk>
8737
8738 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8739 (get_window_cursor_type): Don't use them.
8740 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8741
87422002-08-30 Kenichi Handa <handa@etl.go.jp>
8743
8744 * xdisp.c (get_next_display_element): Fix previous change.
8745
87462002-08-30 Andrew Choi <akochoi@shaw.ca>
8747
8748 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8749 (expose_window): Use it to fix the display of overlapping
8750 rows (merge code from xterm.c).
8751
8752 * macfns.c (Qbox): Add extern declaration.
8753
87542002-08-30 Juanma Barranquero <lektu@terra.es>
8755
8756 * w32fns.c (Qbox): Make extern.
8757 (syms_of_w32fns): Remove initialization of Qbox.
8758
87592002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8760
8761 * xfns.c (Fx_open_connection): Fix error message.
8762
87632002-08-30 Kim F. Storm <storm@cua.dk>
8764
8765 The following changes consolidates the handling of the cursor
8766 type in xdisp.c, moving duplicate code and functionality from
8767 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8768
8769 * frame.h (enum text_cursor_kinds): Consolidated here.
8770 Added DEFAULT_CURSOR value.
8771 (struct frame) <desired_cursor, cursor_width>
8772 <blink_off_cursor, blink_off_cursor_width>: New fields.
8773 Consolidated from output_x, output_w32 and output_mac structs.
8774 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8775 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8776
8777 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8778 Variables consolidated here.
8779 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8780 (Vcursor_in_non_selected_windows): Renamed from
8781 cursor_in_non_selected_windows and changed to Lisp_Object.
8782 (syms_of_xdisp): Define and staticpro new and moved variables.
8783 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8784 consolidated here. Recognize Qhollow setting.
8785 (set_frame_cursor_types): New function to set frame cursor types
8786 based on the frame parameters.
8787 (get_window_cursor_type): New function to calculate new cursor
8788 type and width for the specified window. Based on duplicated
8789 code consolidated here.
8790 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8791 check buffer-local alternate-cursor-type and blink-cursor-alist
8792 before using built-in blink off methods.
8793
8794 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8795
8796 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8797 (get_specified_cursor_type, get_window_cursor_type)
8798 (set_frame_cursor_types): Added prototypes.
8799
8800 * macfns.c (x_specified_cursor_type): Removed.
8801 (x_set_cursor_type): Use set_frame_cursor_types.
8802 (Qbar, Qbox): Removed.
8803 (syms_of_macfns): Don't intern or staticpro them.
8804
8805 * macterm.c (x_specified_cursor_type): Remove prototype.
8806 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8807 (x_display_and_set_cursor): Use get_window_cursor_type.
8808 Remove unused local variables cursor_non_selected, active_cursor.
8809 Redraw cursor if hbar cursor width changes.
8810 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8811
8812 * macterm.h (enum text_cursor_kinds): Removed.
8813 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8814 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8815 (FRAME_DESIRED_CURSOR): Macro removed.
8816
8817 * w32fns.c (Vblink_cursor_alist): Removed.
8818 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8819 (syms_of_w32fns): Don't intern, staticpro, or define them.
8820 (x_specified_cursor_type): Removed.
8821 (x_set_cursor_type): Use set_frame_cursor_types.
8822
8823 * w32term.c (x_specified_cursor_type): Remove prototype.
8824 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8825 (x_display_and_set_cursor): Use get_window_cursor_type.
8826 Remove unused local variables cursor_off_state.
8827 Redraw cursor if hbar cursor width changes.
8828 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8829
8830 * w32term.h (enum text_cursor_kinds): Removed.
8831 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8832 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8833 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8834 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8835 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8836 w32_highlight_frame.
8837
8838 * xfns.c (Vblink_cursor_alist): Removed.
8839 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8840 (syms_of_xfns): Don't intern, staticpro, or define them.
8841 (x_specified_cursor_type): Removed.
8842 (x_set_cursor_type): Use set_frame_cursor_types.
8843
8844 * xterm.c (x_specified_cursor_type): Remove prototype.
8845 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8846 (x_display_and_set_cursor): Use get_window_cursor_type.
8847 Remove unused local variables cursor_off_state.
8848 Redraw cursor if hbar cursor width changes.
8849
8850 * xterm.h (enum text_cursor_kinds): Removed.
8851 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8852 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8853 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8854 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8855 (x_specified_cursor_type): Remove prototype.
8856
88572002-08-28 Richard M. Stallman <rms@gnu.org>
8858
8859 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8860 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8861 (Vblink_cursor_alist): New variable.
8862 (syms_of_w32fns): Initialize and defvar it.
8863 (x_specified_cursor_type): Recognize Qbox for filled box.
8864 Exceptions are hollow boxes.
8865 (Qbox, Qhollow): New variables.
8866 (syms_of_w32fns): Initialize and staticpro them.
8867
8868 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8869 New macros.
8870 (struct w32_output): New fields blink_off_cursor,
8871 blink_off_cursor_width.
8872 (FRAME_CURSOR_WIDTH): New macro.
8873
8874 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8875 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8876
8877 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8878 for bar cursor.
8879
8880 * w32term.c (expose_overlaps): New function.
8881 (expose_window): Use it to fix the display of overlapping rows.
8882
88832002-08-28 Simon Josefsson <jas@extundo.com>
8884
8885 * xfns.c (Fx_open_connection): Improve help when X connection
8886 fails, xhost is insecure and xauth is better.
8887
88882002-08-28 Juanma Barranquero <lektu@terra.es>
8889
8890 * makefile.w32-in: Add missing dependencies on w32term.h and
8891 composite.h.
8892
8893 * emacs.c (USAGE1): Add missing newline.
8894
88952002-08-27 Andrew Choi <akochoi@shaw.ca>
8896
8897 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8898
88992002-08-27 Richard M. Stallman <rms@gnu.org>
8900
8901 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8902 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8903 (Vblink_cursor_alist): New variable.
8904 (syms_of_xfns): Initialize and defvar it.
8905 (x_specified_cursor_type): Recognize Qbox for filled box.
8906 Exceptions are hollow boxes.
8907 (Qbox, Qhollow): New variables.
8908 (syms_of_xfns): Initialize and staticpro them.
8909
8910 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8911 New macros.
8912 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8913
8914 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8915 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8916
8917 * emacs.c (main): Handle --script.
8918 (USAGE1): Mention --script.
8919 (standard_args): Define sort order for --script.
8920
89212002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8922
8923 * xdisp.c (redisplay_updating_p): Variable removed.
8924 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8925 New variables.
8926 (init_iterator): Don't free realized faces if
8927 inhibit_free_realized_faces is set.
8928 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8929 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8930 initialize Qinhibit_free_realized_faces.
8931
8932 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8933 when iterator is adding glyphs to a glyph matrix.
8934
89352002-08-27 Kenichi Handa <handa@etl.go.jp>
8936
8937 * xdisp.c (get_next_display_element): In unibyte case, don't use
8938 octal form for such eight-bit characters that can be converted to
8939 multibyte char.
8940
89412002-08-26 Kim F. Storm <storm@cua.dk>
8942
8943 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8944 and background colors. From Joe Buehler (tiny change).
8945
89462002-08-26 Miles Bader <miles@gnu.org>
8947
8948 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8949
89502002-08-25 Andrew Choi <akochoi@shaw.ca>
8951
8952 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8953 defined instead of MAC_OSX.
8954
8955 * s/darwin.h (select): Define select to sys_select only if
8956 HAVE_CARBON is defined.
8957 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8958 (DONT_REOPEN_PTY): #def it.
8959
8960 * macterm.c (XTread_socket): Remove code to call
8961 SendEventToEventTarget for keys with command modifiers when
8962 mac_command_key_is_meta is nil.
8963
89642002-08-24 Andreas Schwab <schwab@suse.de>
8965
8966 * eval.c (Fdefvar): Fix last change.
8967
89682002-08-23 Richard M. Stallman <rms@gnu.org>
8969
8970 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8971 Record variables in load history as (defvar . VAR).
8972 (Fdefvar): Don't record in load history if no initial value.
8973 (Qdefvar): New variable.
8974 (syms_of_eval): Init and staticpro it.
8975
8976 * lread.c (syms_of_lread): Doc fix.
8977 (build_load_history): Use Fmember to see if a definition
8978 is already in the Vload_history element.
8979
8980 * process.c (Fstart_process): Remove /: from program name.
8981
8982 * emacs.c (decode_env_path): Don't add /: if file name handler
8983 has a `safe-magic' property.
8984
8985 * callproc.c (Fcall_process): Remove /: from program name.
8986
89872002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8988
8989 * regex.c (PATFETCH): Remove the translating fetch.
8990 (PATFETCH_RAW): Rename to PATFETCH.
8991 (set_image_of_range): New fun.
8992 (SET_RANGE_TABLE_WORK_AREA): Use it.
8993 (regex_compile): Don't translate the pattern chars so eagerly.
8994 Only do it when inserting an `exactn' bytecode or when handling
8995 a char-range.
8996 (mutually_exclusive_p): Avoid empty statement.
8997
89982002-08-22 Kim F. Storm <storm@cua.dk>
8999
9000 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9001 end up on a partially visible line; this reverts a specific part
9002 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9003 display error which has been reported several times now.
9004 However it introduces the problem that changes was supposed to fix.
9005 See my comments in the source if you want to debug this further.
9006
90072002-08-20 Kenichi Handa <handa@etl.go.jp>
9008
9009 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9010
90112002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9012
9013 * msdos.c (croak): Add `void' to definition.
9014
c1380aa6 9015 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
048addec
JD
9016 Don't define them, they are defined in msdos.c.
9017
9018 * mem-limits.h [MSDOS]: Declare etext.
9019
9020 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9021 `const' since CORRECT_DIR_SEPS modifies its target.
9022
90232002-08-19 Kim F. Storm <storm@cua.dk>
9024
2fb0ce67 9025 * keyboard.c (Fclear_this_command_keys): Add optional arg
048addec
JD
9026 KEEP-RECORD to avoid clearing lossage when we just want to clear
9027 the current key sequence (kmacro needs this).
9028
90292002-08-19 Kenichi Handa <handa@localhost>
9030
9031 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9032
9033 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9034 cons, return Qnil.
9035
90362002-08-17 Richard M. Stallman <rms@gnu.org>
9037
9038 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9039
9040 * sysdep.c [!VMS]: Include sys/files.h.
9041
9042 * editfns.c (save_restriction_restore): Defend from unchained marker.
9043
9044 * buffer.c (overlays_at): Handle extending vec uniformly.
9045 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9046
90472002-08-15 Andrew Choi <akochoi@shaw.ca>
9048
9049 * mac.c (init_mac_osx_environment): New function.
9050
9051 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9052
90532002-08-14 Kim F. Storm <storm@cua.dk>
9054
9055 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9056 executing macro before appending to it (when used from Lisp).
9057 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9058 which is called prior to each iteration of macro (for kmacro.el).
9059 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9060
9061 * lisp.h (Fexecute_kbd_macro): Update prototype.
9062
9063 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9064
90652002-08-14 Kenichi Handa <handa@etl.go.jp>
9066
9067 * xselect.c (QUTF8_STRING): New variable.
9068 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9069 (x_atom_to_symbol): Likewise.
9070 (x_get_local_selection): New argument local_request. If it is
9071 nonzero, call handler_fn with the second arg nil.
9072 (x_handle_selection_request): Call x_get_local_selection with
9073 local_request 0.
9074 (lisp_data_to_selection_data): Don't encode the string here.
9075 (Fx_get_selection_internal): Call x_get_local_selection with
9076 local_request 1.
9077 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9078
9079 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9080
9081 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9082
90832002-08-13 Richard M. Stallman <rms@gnu.org>
9084
9085 * minibuf.c (Fminibufferp): New function.
9086 (syms_of_minibuf): Defsubr it.
9087 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9088
90892002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9090
9091 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9092
90932002-08-12 Richard M. Stallman <rms@gnu.org>
9094
9095 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9096 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9097 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9098 already.
9099
9100 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9101
91022002-08-11 Andrew Choi <akochoi@shaw.ca>
9103
9104 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9105 (Vmac_pass_command_to_system): New variable.
9106 (Vmac_pass_control_to_system): New variable.
9107 (do_mouse_moved): Check wp with is_emacs_window.
9108 (XTread_socket): Check window_ptr with is_emacs_window.
9109 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9110 events back to Mac Toolbox for processing, depending on values of
9111 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9112 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9113 Vmac_pass_control_to_system.
9114
91152002-08-10 Kenichi Handa <handa@etl.go.jp>
9116
9117 * coding.c (unencodable_char_position): New function.
9118 (Funencodable_char_position): New function.
9119 (syms_of_coding): Defsubr Funencodable_char_position.
9120
91212002-08-10 Andrew Choi <akochoi@shaw.ca>
9122
9123 * mac.c (sys_select) [MAC_OSX]: New function.
9124
9125 * macterm.c (MakeMeTheFrontProcess): New function.
9126 (mac_initialize): Call MakeMeTheFrontProcess.
9127
9128 * s/darwin.h: Define select to sys_select.
9129
91302002-08-09 Richard M. Stallman <rms@gnu.org>
9131
9132 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9133
91342002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9135
9136 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9137 end of the buffer.
9138
91392002-08-08 Ken Raeburn <raeburn@mit.edu>
9140
9141 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9142
9143 * puresize.h (BASE_PURESIZE): Increase to 910000.
9144
91452002-08-08 Kenichi Handa <handa@etl.go.jp>
9146
9147 * coding.c (Ffind_operation_coding_system): For write-region, if
9148 VISIT is a filename, make it the target.
9149
91502002-08-07 Richard M. Stallman <rms@gnu.org>
9151
9152 * alloc.c (mark_object): Detect long lists for debugging.
9153 (mark_object_loop_halt): New variable.
9154
9155 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9156
9157 * data.c (Fmake_variable_frame_local): Doc fix.
9158
91592002-08-01 David Ponce <david@dponce.com>
9160
9161 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9162 (malloc_widget_value, free_widget_value)
9163 (w32_free_submenu_strings): Use them.
9164
9165 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9166 (push_menu_pane, push_menu_item, single_keymap_panes)
9167 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9168 (single_submenu, set_frame_menubar)
9169 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9170
9171 (Fx_popup_menu): Don't show pop up menu until preceding one is
9172 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9173
9174 * w32menu.c: Changes adapted from xmenu.c
9175 (set_frame_menubar): First parse all submenus,
9176 then make widget_value trees from them.
9177 Don't allocate any widget_value objects
9178 until we are done with the parsing.
9179 (parse_single_submenu): New function.
9180 (digest_single_submenu): New function.
9181 (single_submenu): Function deleted, replaced by those two.
9182
91832002-08-04 Andrew Choi <akochoi@shaw.ca>
9184
9185 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9186 returns a valid window pointer before proceeding for keyDown and
9187 autoKey events.
9188
91892002-08-03 Andrew Choi <akochoi@shaw.ca>
9190
9191 * macterm.c (USE_CARBON_EVENTS): New macro.
9192 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9193 (x_iconify_frame): Call CollapseWindow.
9194 (Vmac_reverse_ctrl_meta): New variable.
9195 (Vmac_wheel_button_is_mouse_2): New variable.
9196 (init_mac_drag_n_drop): New function.
9197 (mac_do_receive_drag): New function.
9198 (mac_handle_service_event): New function.
9199 (init_service_handler): New function.
9200 (mac_to_emacs_modifiers): New function.
9201 (mac_event_to_emacs_modifiers): New function.
9202 (mac_get_mouse_btn): New function.
9203 (mac_convert_event_ref): New function.
9204 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9205 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9206 mac_get_mouse_btn.
9207 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9208
9209 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9210 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9211 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9212 TOOL_BAR_EVENT for MAC_OS as well.
9213 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9214 as for WINDOWS_NT.
9215 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9216
9217 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9218
92192002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9220
9221 * xdisp.c (forward_to_next_line_start): Fix a condition that
9222 lead to a newline being skipped.
9223
92242002-08-02 Andrew Choi <akochoi@shaw.ca>
9225
9226 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9227
92282002-08-01 Richard M. Stallman <rms@gnu.org>
9229
9230 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9231
92322002-07-31 Andrew Choi <akochoi@shaw.ca>
9233
9234 * macfns.c: #undef init_process before #define-ing it.
9235
9236 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9237 HAVE_CARBON is defined.
9238
92392002-07-31 Richard M. Stallman <rms@gnu.org>
9240
9241 * xmenu.c (set_frame_menubar): First parse all submenus,
9242 then make widget_value trees from them.
9243 Don't allocate any widget_value objects
9244 until we are done with the parsing.
9245 (parse_single_submenu): New function.
9246 (digest_single_submenu): New function.
9247 (single_submenu): Function deleted, replaced by those two.
9248
92492002-07-30 Juanma Barranquero <lektu@terra.es>
9250
9251 * w32proc.c (syms_of_ntproc): Fix docstring of
9252 `w32-get-true-file-attributes'.
9253
92542002-07-28 Richard M. Stallman <rms@gnu.org>
9255
9256 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9257 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9258
9259 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9260
9261 * keyboard.c (make_lispy_event):
9262 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9263 Explicitly clear up_modifier in event->modifiers.
9264
92652002-07-27 Richard M. Stallman <rms@gnu.org>
9266
9267 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9268
9269 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9270 for bar cursor.
9271
92722002-07-26 Kenichi Handa <handa@etl.go.jp>
9273
9274 * coding.c (detect_coding_iso2022): While checking a byte sequence
9275 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9276 it in the normal loop.
9277
92782002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9279
9280 * xterm.c (expose_overlaps): New function.
9281 (expose_window): Use it to fix the display of overlapping rows.
9282
9283 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9284
92852002-07-23 Ken Raeburn <raeburn@gnu.org>
9286
9287 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9288 since it only depends on XUINT.
9289
9290 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9291 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9292 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9293 Macros deleted.
3947677c 9294
77d1daf2
AS
9295 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9296 its value over other approaches.
9297 * sysdep.c (start_of_data): Don't define the function if a macro
9298 form has been defined.
8a8e19a3 9299
048addec
JD
93002002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9301
9302 * xdisp.c (redisplay_updating_p): New variable.
9303 (init_iterator): Don't free realized faces when
9304 redisplay_updating_p is set.
9305 (redisplay_internal): Set redisplay_updating_p while updating
9306 the display.
9307
93082002-07-23 Richard M. Stallman <rms@gnu.org>
9309
9310 * editfns.c (Fmessage): Treat "" like nil.
9311
93122002-07-23 Kenichi Handa <handa@etl.go.jp>
9313
9314 * xdisp.c (face_before_or_after_it_pos):
9315 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9316
93172002-07-22 Juanma Barranquero <lektu@terra.es>
9318
9319 * callproc.c (init_callproc) [DOS_NT]:
9320 Initialize Vshared_game_score_directory to nil.
9321 (syms_of_callproc) [DOS_NT]: Likewise.
9322
93232002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9324
9325 * xdisp.c (display_line): Replace an abort with xassert.
9326
93272002-07-21 Richard M. Stallman <rms@gnu.org>
9328
9329 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9330 and END_UNCHANGED when setting buffer_unchanged_p.
9331 Use current_matrix_up_to_date_p to decide whether to use
9332 try_cursor_movement.
9333
9334 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9335
9336 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9337
9338 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9339 Set to nil if dir does not exist.
9340 (syms_of_callproc): Init unconditionally and simply.
9341
9342 * buffer.c (Fbuffer_list): Doc fix.
9343
93442002-07-21 Ken Raeburn <raeburn@gnu.org>
9345
9346 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9347
9348 * buffer.c (mmap_realloc): When shrinking, make sure number of
9349 pages to unmap is rounded towards zero.
9350
9351 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9352 (XSETINT): Deleted.
9353
9354 * m/att3b.h (XINT): Don't define.
9355 (VALBITS, VALMASK, XTYPE): Deleted.
9356 (DATA_SEG_BITS): Define.
9357 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9358 ARRAY_MARK_FLAG): Deleted.
9359 (DATA_SEG_BITS): Define.
9360 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9361 (DATA_SEG_BITS): Define.
9362
93632002-07-20 Richard M. Stallman <rms@gnu.org>
9364
9365 * print.c (print_error_message): New args CONTEXT and CALLER.
9366 Calls changed.
9367
9368 * lisp.h (print_error_message): Declare new args.
9369
9370 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9371 and CONTEXT to print_error_message, don't print them here.
9372 For a Quit, don't use Vsignaling_function.
9373 Call message_log_maybe_newline.
9374
9375 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9376
93772002-07-20 Kim F. Storm <storm@cua.dk>
9378
9379 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9380
93812002-07-19 Ken Raeburn <raeburn@gnu.org>
9382
9383 * bytecode.c (struct byte_stack): Pointers into byte string now
9384 point to const.
9385 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9386 const.
9387 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9388 * coding.c (encode_eol, detect_coding, detect_eol):
9389 (decode_coding, encode_coding, detect_coding_system):
9390 Source strings now treated as const.
9391 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9392 modify Lisp string contents.
9393 * coding.h (decode_coding, encode_coding, detect_coding,
9394 detect_eol): Declarations updated.
9395 * composite.c (compose_chars_in_text): Treat Lisp string contents
9396 as const.
9397 * dispnew.c (safe_bcopy): Source pointer now points to const.
9398 * lisp.h (STRING_COPYIN): New macro.
9399 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9400 (internal_with_output_to_temp_buffer): Declarations updated.
9401 * print.c (temp_output_buffer_setup):
9402 (internal_with_output_to_temp_buffer): Buffer name argument is now
9403 pointer to const.
9404 * sound.c (struct sound_device): Function pointer field "write"
9405 buffer argument now points to const.
9406 (vox_write): Buffer argument points to const.
9407 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9408 contents as const.
9409 * sysdep.c (emacs_write): Buffer pointer now const.
9410 * term.c (encode_terminal_code): Buffer pointer now const.
9411 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9412 (x_face_list_fonts, x_update_menu_appearance):
9413 (hash_string_case_insensitive): Treat Lisp string contents as const.
9414
94152002-07-19 Juanma Barranquero <lektu@terra.es>
9416
048addec
JD
9417 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9418
9419 * fileio.c (syms_of_fileio): Likewise.
c62aec78
JB
9420 (Ffile_name_as_directory): Fix argument name in docstring.
9421 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
048addec
JD
9422
94232002-07-18 Richard M. Stallman <rms@gnu.org>
9424
9425 * data.c (Fdefalias): Doc fix.
9426
94272002-07-17 Dave Love <fx@gnu.org>
9428
9429 * intervals.h (text_property_stickiness): Use P_.
9430
9431 * ccl.c: Remove `emacs' conditionals.
9432 (ccl_backtrace_table): Fix size spec.
9433 (ccl_driver): Fix type errors.
9434
94352002-07-16 Ken Raeburn <raeburn@gnu.org>
9436
9437 * alloc.c (xstrdup, make_string, make_unibyte_string)
9438 (make_multibyte_string, build_string): String pointer args now
9439 point to const.
9440 * charset.c (find_charset_in_text, c_string_width):
9441 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9442 * fileio.c (report_file_error):
9443 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9444 (count_combining_before, count_combining_after, insert_1_both):
9445 (insert, insert_and_inherit, insert_string):
9446 (insert_before_markers, insert_before_markers_and_inherit):
9447 * lread.c (intern, oblookup, hash_string):
9448 * minibuf.c (temp_echo_area_glyphs):
9449 * search.c (fast_c_string_match_ignore_case):
9450 * sysdep.c (emacs_open, set_file_times):
9451 * xfaces.c (xstricmp):
9452 * xdisp.c (store_frame_title, string_char_and_length):
9453 (message_dolog, message2, message2_nolog, set_message): Likewise.
9454 (set_message_1): Cast message string argument to const pointer.
9455 * editfns.c (general_insert_function): Insertion function now
9456 takes pointer to const for input data.
9457 * charset.h (find_charset_in_text, c_string_width):
9458 (parse_str_as_multibyte): Declarations updated.
9459 * dispextern.h (xstricmp): Declaration updated.
9460 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9461 (count_size_as_multibyte, count_combining_before):
9462 (count_combining_after, insert_1, insert_1_both, message_dolog):
9463 (insert, insert_and_inherit, insert_before_markers)
9464 (insert_before_markers_and_inherit, set_message, message2):
9465 (message2_dolog, build_string, make_string, make_unibyte_string):
9466 (make_multibyte_string, intern, oblookup, report_file_error):
9467 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9468 (emacs_open, xstrdup): Declarations updated.
9469 * systime.h (set_file_times): Declaration updated.
9470
9471 * charset.c (find_charset_in_text, lisp_string_width): Use const
9472 for pointer to lisp string data.
9473 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9474 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9475 * coding.c (Ffind_coding_systems_region_interval):
9476 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9477 (Fmake_directory_internal, Fdelete_directory):
9478 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9479 * fontset.c (font_family_registry, fs_query_fontset):
9480 (list_fontsets):
9481 * frame.c (Fframe_parameter):
9482 * keyboard.c (cmd_error_internal):
9483 * keymap.c (Fdescribe_buffer_bindings):
9484 * lread.c (complete_filename_p, openp):
9485 * minibuf.c (Fminibuffer_complete_word):
9486 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9487 (face_before_or_after_it_pos, next_element_from_string):
9488 (get_overlay_arrow_glyph_row, display_mode_element):
9489 (decode_mode_spec_coding):
9490 * xterm.c (same_x_server): Likewise.
9491
9492 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9493 settings of non-existent fields.
9494
9495 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9496 copy a lisp value.
9497
9498 * lread.c (Fintern_soft): Use string macros instead of
9499 Lisp_String fields.
9500 * keyboard.c (echo_char, parse_modifiers_uncached):
9501 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9502 * textprop.c (validate_interval_range, interval_of): Likewise.
9503
9504 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9505
9506 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9507 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9508 XSTRING()->size_byte.
9509
9510 * lisp.h (SDATA, SREF): Produce rvalue.
9511 (SSET): New macro.
9512 * alloc.c (make_event_array): Use SSET for storing into a string.
9513 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9514 a string.
9515 * casefiddle.c (casify_object): Use SSET.
9516 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9517 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9518 address of string contents.
9519 * data.c (Faref): Use SDATA.
9520 (Faset): Use SDATA, SSET.
9521 * dired.c (directory_files_internal): Use SSET.
9522 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9523 (Fread_file_name): Use SREF, SSET.
9524 * fns.c (concat): Use SSET.
9525 (concat, Fdelete): Use SDATA.
9526 * insdel.c (insert_from_string_1): Use SDATA.
9527 * keyboard.c (Fevent_convert_list): Use SREF.
9528 * lread.c (Fload): Use SDATA, SSET.
9529 * macfns.c (validate_x_resource_name): Use SSET.
9530 * process.c (status_message): Use SSET.
9531 * search.c (wordify): Use SDATA.
9532 (Freplace_match): Use SREF.
9533 * w32fns.c (validate_x_resource_name): Use SSET.
9534 * xfns.c (validate_x_resource_name): Use SSET.
9535 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9536
95372002-07-16 Richard M. Stallman <rms@gnu.org>
9538
9539 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9540
9541 * xdisp.c (reconsider_clip_changes):
9542 Don't test prevent_redisplay_optimizations_p.
9543 (redisplay_internal): Test prevent_redisplay_optimizations_p
9544 along with clip_changed in some cases.
9545 (try_window_id): Likewise.
9546 (redisplay_window): New local var buffer_unchanged_p.
9547
9548 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9549
9550 * process.c (create_process): Test USG_SUBTTY_WORKS.
9551 (process_send_signal): Clean up handling of GID.
9552 Detect errors in ioctls meant to set GID.
9553
9554 * window.c (temp_output_buffer_show):
9555 Don't set prevent_redisplay_optimizations_p.
9556
95572002-07-15 Juanma Barranquero <lektu@terra.es>
9558
9559 * eval.c (Fdefvaralias): Add docstring argument.
9560
95612002-07-15 Ken Raeburn <raeburn@gnu.org>
9562
9563 * lisp.h (STRING_INTERVALS): Produce rvalue.
9564 (STRING_SET_INTERVALS): New macro.
9565 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9566 * fns.c (Fstring_as_multibyte): Likewise.
9567 * intervals.c (balance_possible_root_interval, delete_interval)
9568 (create_root_interval, copy_intervals_to_string): Likewise.
9569 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9570 instead of 0.
9571
95722002-07-14 Ken Raeburn <raeburn@gnu.org>
9573
9574 * lisp.h (STRING_SET_CHARS): New macro.
9575 (SCHARS, SBYTES): Produce rvalues.
9576 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9577 * fns.c (concat): Likewise.
9578 * lread.c (read_vector): Likewise.
9579
9580 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9581 (STRING_SET_UNIBYTE): New macro.
9582 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9583 length of -1) changed to use STRING_SET_UNIBYTE.
9584 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9585 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9586 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9587 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9588 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9589 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9590 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9591 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9592 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9593 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9594 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9595 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9596 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9597 unchanged for now.
9598
95992002-07-13 Kim F. Storm <storm@cua.dk>
9600
9601 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9602
96032002-07-12 Richard M. Stallman <rms@gnu.org>
9604
9605 * fileio.c (Fwrite_region): Doc fix.
9606
9607 * print.c (print_error_message): Don't handle Vsignaling_function here.
9608
9609 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9610 (command_loop_1): Avoid certain actions after memory-full error.
9611
9612 * eval.c (Fsignal): Don't call cancel_hourglass.
9613 For a memory-full error, don't call Vsignal_hook_function
9614 and don't set Vsignaling_function.
9615
9616 * process.c (process_send_signal): Add abort call.
9617
96182002-07-11 Markus Rost <rost@math.ohio-state.edu>
9619
9620 * keymap.c (Fkey_binding): Fix typo.
9621
96222002-07-11 Richard M. Stallman <rms@gnu.org>
9623
9624 * alloc.c (Vmemory_full): New variable.
9625 (Vmemory_signal_data): Renamed from memory_signal_data.
9626 Uses changed.
9627 (syms_of_alloc): Defvar them.
9628 (memory_full, buffer_memory_full): Set Vmemory_full.
9629
9630 * lisp.h (Vmemory_full): Add declaration.
9631 (current_column, indented_beyond_p): Change declaration.
9632
9633 * indent.c (last_known_column): Declare as double, not float.
9634 (current_column, current_column_1, string_display_width)
9635 (position_indentation): Return `double'.
9636 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9637
9638 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9639 (back_to_previous_visible_line_start)
9640 (reseat_at_next_visible_line_start, next_element_from_buffer):
9641 Use `double', not `float', when calling indented_beyond_p.
9642
9643 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9644
9645 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9646
96472002-07-11 Juanma Barranquero <lektu@terra.es>
9648
9649 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
f9711de4
JB
9650 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9651 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9652 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9653 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9654 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
048addec
JD
9655
96562002-07-10 Juanma Barranquero <lektu@terra.es>
9657
d814862a
JB
9658 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9659 All callers changed.
048addec
JD
9660
96612002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9662
9663 * data.c (Fdefalias): Add an optional `docstring' argument.
9664 (set_internal, Fsetq_default): Use XCAR/XCDR.
9665
9666 * composite.c (HASH_VALUE, HASH_KEY):
9667 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9668
96692002-07-09 Kenichi Handa <handa@etl.go.jp>
9670
9671 * callproc.c (Fcall_process): Fix previous change.
9672
96732002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9674
9675 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9676 Add support for hash-tables.
9677 (Ftry_completion): Return t even if the string appears multiple times.
9678
9679 * fns.c (Fnconc): Use XCDR.
9680 (Fprovide): Use CONSP and XCDR.
9681 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9682 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9683 (Fmake_hash_table): Accept `:size nil'.
9684 (Fmakehash): Delete: moved to subr.el.
9685 (syms_of_fns): Don't defsubr makehash.
9686
9687 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9688 (HASH_TABLE_SIZE): Move from fns.c.
9689
96902002-07-07 Richard M. Stallman <rms@gnu.org>
9691
9692 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9693 Instead just return 0 when there is something to be done.
9694 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9695 retry scrolling as if cursor were off the bottom.
9696 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9697 return CURSOR_MOVEMENT_MUST_SCROLL.
9698 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9699 go to try_to_scroll.
9700
9701 * buffer.c (Fbuffer_local_value): Store current value into its binding
9702 so we get the up-to-date value for the binding that is loaded.
9703
9704 * eval.c (Fdefmacro): Doc fix.
9705
97062002-07-05 Dave Love <fx@gnu.org>
9707
9708 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9709 correctly.
9710
9711 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9712 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9713 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9714 CCL_LookupCharConstTbl.
9715 (syms_of_ccl): Defvar translation-hash-table-vector.
9716
97172002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9718
9719 * xdisp.c: Remove unused variable `face'.
9720
97212002-07-04 Juanma Barranquero <lektu@terra.es>
9722
9723 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9724 obsolescence information.
9725
97262002-07-03 Andrew Choi <akochoi@shaw.ca>
9727
9728 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9729 pattern. Search cache first.
9730 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9731 for Japanese font.
9732 (XLoadQueryFont): Use it.
9733
97342002-07-02 Richard M. Stallman <rms@gnu.org>
9735
9736 * keymap.c (Fdefine_key): Doc fix.
9737
9738 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9739
97402002-07-02 Juanma Barranquero <lektu@terra.es>
9741
9742 * keymap.c (syms_of_keymap): Fix typo.
9743
97442002-07-01 Andrew Choi <akochoi@shaw.ca>
9745
9746 * s/darwin.h: Define POSIX_SIGNALS.
9747
9748 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9749 and FSRefMakePath to convert FSSpec returned with Apple Event to
9750 Posix pathname.
9751 (mac_initialize) [TARGET_API_MAC_CARBON]:
9752 Call init_required_apple_events and disable the `Quit' menu item
9753 provided automatically by the Carbon Toolbox.
9754
97552002-07-01 Dave Love <fx@gnu.org>
9756
9757 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9758 for K&R.
9759
9760 * xterm.c: Fix prototype for K&R.
9761
9762 * term.c (costs_set): Declare static, non-initialized for pcc.
9763
97642002-07-01 Richard M. Stallman <rms@gnu.org>
9765
9766 * keyboard.c (timer_last_idleness_start_time): New variable.
9767 (timer_start_idle): Set that.
9768 (read_key_sequence): Use that to reset timer_idleness_start_time
9769 to previous value.
9770
9771 * window.c (Frecenter): With arg, set optional_new_start.
9772
9773 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9774
9775 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9776 buffer for completion.
9777
97782002-06-29 Ken Raeburn <raeburn@gnu.org>
9779
9780 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9781
97822002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9783
9784 * keyboard.c (readable_filtered_events): New function that filters
9785 FOCUS_IN_EVENT depending on parameter.
9786 (readable_events): Calls readable_filtered_events, not filtering
9787 FOCUS_IN_EVENT.
9788 (get_filtered_input_pending): New function, filtering parameter passed
9789 to readable_filtered_events.
9790 (get_input_pending): Calls get_filtered_input_pending, not filtering
9791 FOCUS_IN_EVENT.
9792 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9793 FOCUS_IN_EVENT.
9794
9795 * xterm.h (struct x_output): Add focus_state.
9796
9797 * xterm.c (x_focus_changed): New function.
9798 (x_detect_focus_change): New function.
9799 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9800 EnterNotify and LeaveNotify to track X focus changes.
9801
98022002-06-28 Andreas Schwab <schwab@suse.de>
9803
9804 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9805
98062002-06-27 Kim F. Storm <storm@cua.dk>
9807
9808 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9809 (mode_line_string_face_prop): New variables.
9810 (store_mode_line_string): New function.
9811 (display_mode_element): Use store_mode_line_string to
9812 add mode-line string elements to mode_line_string_list
9813 when mode_line_string_list is non-nil.
9814 (Fformat_mode_line): Now returns propertized string by
9815 default. New arg NO-PROPS to ignore properties.
9816 (decode_mode_spec): Only add two dashes for %- in propertized
9817 mode-line string.
9818 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9819
98202002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9821
9822 * minibuf.c (minibuffer_completion_contents): Add return type.
9823
98242002-06-27 Juanma Barranquero <lektu@terra.es>
9825
9826 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9827
98282002-06-26 Juanma Barranquero <lektu@terra.es>
9829
9830 * fileio.c (read_file_name_cleanup): Add missing return.
9831
98322002-06-26 Richard M. Stallman <rms@gnu.org>
9833
9834 * window.c (Frecenter): Don't set force_start flag.
9835
9836 * minibuf.c (do_completion, Fminibuffer_complete_word)
9837 (Fminibuffer_completion_help): Complete just the text before point.
9838 (minibuffer_completion_contents): New function.
9839
9840 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9841
9842 * frame.c (frames_bury_buffer): Function deleted.
9843
98442002-06-25 Miles Bader <miles@gnu.org>
9845
9846 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9847 the end of callint_message, allow for a terminating '\0'.
9848
98492002-06-24 Juanma Barranquero <lektu@terra.es>
9850
9851 * w32select.c: Include composite.h
9852
9853 * w16select.c: Likewise.
9854
98552002-06-24 Kenichi Handa <handa@etl.go.jp>
9856
9857 * callproc.c (Fcall_process): If code detection is necessary,
9858 call detect_coding directly here.
9859
9860 * coding.c (detect_eol): Preserve coding->cmp_data.
9861
9862 * w16select.c (Fw16_get_clipboard_data):
9863 * w32fns.c (w32_to_x_font):
9864 * w32select.c (Fw32_get_clipboard_data):
9865 * xselect.c (selection_data_to_lisp_data):
9866 * xterm.c (XTread_socket): Disable composition handling.
9867
98682002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9869
9870 * print.c (temp_output_buffer_setup): Kill all local variables.
9871
98722002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9873
9874 * lread.c (Fread): Remove redundant and imprecise declaration.
9875
9876 * xfns.c (check_x_display_info): Use check_x_frame.
9877
9878 * .gdbinit (xprintsym): Use the new `xname' field.
9879 (xsymbol): Use it.
9880
98812002-06-22 Jason Rumney <jasonr@gnu.org>
9882
9883 * w32fns.c (file_dialog_callback): New function.
9884 (Fx_file_dialog): Allow selecting directories as well as files.
9885
98862002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9887
9888 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
f63fd14e 9889 OpenBSD. Add support for mipseb-*-netbsd* machines.
048addec
JD
9890
98912002-06-17 Andrew Choi <akochoi@shaw.ca>
9892
9893 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9894 black and white before scrolling. Restore frame background and
9895 foreground color after scrolling.
9896 (do_window_update): Call XClearWindow before calling expose_frame.
9897 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9898 FRAME_FOREGROUND_PIXEL of frame.
9899
9900 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9901 test Mac command key as <ALT> key.
9902
99032002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9904
9905 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9906
9907 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9908 Lookup keys in function-key-map immediately so that key-translation-map
9909 can be applied earlier.
9910 Remove function_key_possible and key_translation_possible, replaced
9911 by checking `keytran_start < t'.
9912
9913 * .gdbinit (xsymbol): Use the new `xname' field.
9914
99152002-06-17 Andrew Choi <akochoi@shaw.ca>
9916
9917 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9918 test Mac command key as <ALT> key.
9919
9920 * mac.c (do_applescript): Call initialize_applescript if necessary
9921 when first called. Dispose of result_desc only when there is no error.
9922 (Fdo_applescript): Use %d format specifier instead of %ld.
9923
99242002-06-16 Andrew Choi <akochoi@shaw.ca>
9925
9926 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9927 of FrontWindow for cases keyDown and autoKey.
9928
9929 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9930 Vdefault_fontset to Monaco with mac-roman coding.
9931
9932 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9933 init_process before and after inclusion of Carbon/Carbon.h, resp.
9934
9935 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9936 cursor_gc.
9937 (add_font_name_table_entry): New function.
9938 (init_font_name_table): Use add_font_name_table_entry; add italic,
9939 bold, and bold-italic entries for truetype fonts.
9940
9941 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9942 for Mac too.
9943 (try_font_list) [MAC_OS]: If no font matches given registry, try
9944 fonts with any registry matching face_family.
9945 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9946
9947 * s/darwin.h: If autoconf detects the Ncurses library, define
9948 LIBS_TERMCAP to -lncurses to use it.
9949
99502002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9951
9952 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9953
99542002-06-15 Richard M. Stallman <rms@gnu.org>
9955
9956 * window.c (Fset_window_configuration): Explicitly preserve
9957 the point value that new_current_buffer had at the start.
9958
99592002-06-14 Juanma Barranquero <lektu@terra.es>
9960
9961 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9962 Fix typos.
9963
99642002-06-14 Kim F. Storm <storm@cua.dk>
9965
9966 * insdel.c (insert_1_both, insert_from_string_1)
9967 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9968 insert happened in the end_unchanged region. Otherwise, the
9969 redisplay may be confused and duplicate the last line in the
9970 buffer [seen after save-buffer when require-final-newline==t].
9971
99722002-06-13 Jason Rumney <jasonr@gnu.org>
9973
9974 * w32.c (init_environment): Remove EMACSLOCKDIR.
9975 (stat): Swap _S_IFDIR and _S_IFREG.
9976
99772002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9978
9979 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9980 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9981 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9982 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9983 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9984 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9985 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9986 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9987 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9988 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9989 SELECTION_REQUEST_EVENT, selection_clear_event to
9990 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9991 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9992 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9993 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9994 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9995 no_event to NO_EVENT.
9996
99972002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9998
9999 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10000
100012002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10002
10003 * intervals.c (textget): Don't forget to `return'.
10004 (lookup_char_property): Use XCAR/XCDR.
10005
100062002-06-12 Juanma Barranquero <lektu@terra.es>
10007
10008 * xdisp.c (Fformat_mode_line): Fix typo.
10009
100102002-06-12 Kim F. Storm <storm@cua.dk>
10011
10012 * xdisp.c (Fformat_mode_line): New function.
10013 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10014 (store_frame_title_char, store_frame_title): Use unconditionally.
10015 (init_xdisp): Defsubr Fformat_mode_line.
10016 Initialize frame_title_buf etc. unconditionally.
10017
100182002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10019
10020 * keyboard.c (read_key_sequence):
10021 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10022 things through those maps after downcasing events.
10023 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10024 applies after function-key-map.
10025 Make sure that keytran can be done in the middle in the sequence.
10026 Be careful not to throw away events past the one we downcase.
10027
10028 * lread.c (read_integer): Remove unused var `tem'.
10029 (read1): Fix int/Lisp_Object mixup.
10030
10031 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10032
100332002-06-11 Richard M. Stallman <rms@gnu.org>
10034
10035 * keyboard.c (readable_events): Ignore any number of
10036 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10037
100382002-06-09 Miles Bader <miles@gnu.org>
10039
10040 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10041 (parse_rgb_list, tty_lookup_color): New functions.
10042 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10043 (color_distance, Fcolor_distance): New functions.
10044 (TTY_SAME_COLOR_THRESHOLD): New macro.
10045 (Qtty_color_standard_values): New variable.
10046 (syms_of_xfaces): Initialize new vars & functions.
10047
100482002-06-08 Colin Walters <walters@verbum.org>
10049
10050 * textprop.c (Vchar_property_alias_alist): New variable.
10051 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10052
10053 * intervals.c (lookup_char_property): New function for looking up
10054 overlay and text properties, created from textget.
10055 (textget): Use it.
10056
10057 * intervals.h (lookup_char_property): Declare.
10058 (Vchar_property_alias_alist): Declare.
10059
10060 * buffer.c (Foverlay_get): Use lookup_char_property.
10061
100622002-06-07 Sam Steingold <sds@gnu.org>
10063
10064 * xselect.c (lisp_data_to_selection_data): Fix last change:
10065 *data_ret is not a Lisp string, while unibyte_string is.
10066
100672002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10068
10069 * xselect.c (lisp_data_to_selection_data): Fix last change:
10070 set size_ret.
10071
100722002-06-07 Andreas Schwab <schwab@suse.de>
10073
10074 * m/amdx86-64.h: New file.
10075
100762002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10077
10078 * fns.c (Fstring_make_unibyte): Doc fix.
10079
10080 * xselect.c (lisp_data_to_selection_data): If the requested type
10081 is STRING, call string_make_unibyte to encode the selected text
10082 as a string.
10083
10084 * window.c (Fset_window_hscroll): Doc fix.
10085
100862002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10087
10088 * fileio.c (choose_write_coding_system):
10089 Call select-safe-coding-system properly.
10090
100912002-06-03 Richard M. Stallman <rms@gnu.org>
10092
10093 * xdisp.c (message_with_string): Error if STRING is not a string.
10094
10095 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10096
10097 * fileio.c (choose_write_coding_system): Pass FILE arg to
10098 Vselect_safe_coding_system_function.
10099
101002002-06-03 Ken Raeburn <raeburn@gnu.org>
10101
10102 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10103
101042002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10105
10106 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10107 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10108 * keymap.c (describe_command): Likewise.
10109 * minibuf.c (read_minibuf): Likewise.
10110
10111 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10112 Cast `current_column' return value to int.
10113 (back_to_previous_visible_line_start)
10114 (reseat_at_next_visible_line_start, next_element_from_buffer):
10115 Cast `indented_beyond_p' 3rd arg to float.
10116
10117 * indent.c (last_known_column): Now a float.
10118 (current_column_1, position_indentation, current_column)
10119 (string_display_width): Return float.
10120 (Fcurrent_column): Cast `current_column' return value to int.
10121 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10122 (indented_beyond_p): Third arg now a float.
10123 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10124
10125 * lisp.h (current_column): Now returns float.
10126 (indented_beyond_p): 3rd arg now a float.
10127
101282002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10129
10130 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10131 is Qcompound_text_with_extensions.
10132
10133 * xselect.c (lisp_data_to_selection_data): Always set selection
10134 type as string if x_encode_text returns streingp non-NULL.
10135
10136 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10137
101382002-05-30 Richard M. Stallman <rms@gnu.org>
10139
10140 * window.c (Fset_window_configuration): Correct the handling
10141 of point in current buffer, to work with multiple windows.
10142
101432002-05-29 Colin Walters <walters@verbum.org>
10144
10145 * lread.c (Fread_from_string): Don't depend on order of evaluation
10146 for C function parameters.
10147
101482002-05-28 Richard M. Stallman <rms@gnu.org>
10149
10150 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10151 way for blinked-off state and for a nonselected window.
10152
10153 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10154 instead, see if the new start pos is at beginning of line.
10155
10156 * fileio.c (Fwrite_region): If START is a string, don't
10157 make any annotations.
10158
10159 * eval.c (syms_of_eval): Doc fix.
10160
101612002-05-28 Colin Walters <walters@debian.org>
10162
10163 * emacs.c (USAGE1): Add --no-splash.
10164 (standard_args): Ditto.
10165
101662002-05-28 Colin Walters <walters@gnu.org>
10167
10168 * lread.c (readchar_count): New variable.
10169 (readchar): Increment it.
10170 (unreadchar): Decrement it.
10171 (read_multibyte): Decrement it.
10172 (Vread_with_symbol_positions): New variable.
10173 (Vread_symbol_positions_list): New variable.
10174 (read_internal_start): New function, created from Fread and
10175 Fread_from_string. Handle Vread_symbol_positions_list and
10176 Vread_with_symbol_positions.
10177 (readevalloop, Fread, Fread_from_string): Use it.
10178 (read1): Use readchar_count to add symbol positions to
10179 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10180 (syms_of_lread): DEFVAR_LISP and initialize them.
10181
10182 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10183 (substitute_object_recurse, substitute_object_in_subtree)
10184 (substitute_in_interval): Prototype.
10185 (read_multibyte): Return c if it's less than zero.
10186
101872002-05-28 Kim F. Storm <storm@cua.dk>
10188
10189 * fileio.c (Fread_file_name_internal): Added brute-force
10190 speed up for using predicate file-directory-p.
10191
101922002-05-28 Kim F. Storm <storm@cua.dk>
10193
10194 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10195 New variables.
10196 (syms_of_fileio): DEFVAR_LISP them.
10197 (read_file_name_cleanup): New unwind function.
10198 (Fread_file_name_internal): Only return completions satifying
10199 Vread_file_name_predicate. Temporarily unwind protect and rebind
10200 default-directory while checking completions against the predicate.
10201 (Fread_file_name): Added PREDICATE argument. Specbind it to
10202 Vread_file_name_predicate during completion.
10203 Call Vread_file_name_function to read the file name if non-nil.
10204
10205 * lisp.h (Fread_file_name): Now has 6 args.
10206
10207 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10208 predicate for Fread_file_name when reading directory name.
10209 Supply Qnil for predicate in other calls to Fread_file_name.
10210
102112002-05-26 Miles Bader <miles@gnu.org>
10212
10213 * term.c (tty_capable_p): New function.
10214 * dispextern.h (tty_capable_p): New function declaration.
10215 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10216 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10217
102182002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10219
10220 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10221 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10222 (Vwrite_region_annotate_functions): Docstring fix.
10223
102242002-05-23 Kim F. Storm <storm@cua.dk>
10225
10226 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10227 phys_cursor's hpos is overwritten. This is still not completely
10228 correct, as it doesn't really make sense to use hpos at all to
10229 get the cursor glyph (as that is relative to the width of the
10230 characters on the line, which may have changed during the update).
10231
102322002-05-22 Jason Rumney <jasonr@gnu.org>
10233
10234 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10235 Lisp_Object.
10236 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10237 Use modified enumfont_t struct.
10238
10239 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10240
10241 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10242 Handle the `hbar' cursor type.
10243 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10244
10245 * w32fns.c (Qhbar): New variable.
10246 (x_specified_cursor_type): Use it.
10247
102482002-05-21 Ken Raeburn <raeburn@gnu.org>
10249
10250 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10251 now, when the address is needed.
10252
102532002-05-21 Colin Walters <walters@gnu.org>
10254
10255 * Makefile.in (shortlisp): Add font-core.el.
10256
102572002-05-20 Richard M. Stallman <rms@gnu.org>
10258
10259 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10260
10261 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10262 equivalent key bindings here.
10263
102642002-05-20 Ken Raeburn <raeburn@gnu.org>
10265
10266 Change symbol structure to contain a lisp object for the symbol
10267 name:
10268 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10269 object field named "xname".
10270 (SYMBOL_NAME): New macro.
10271 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10272 name field.
10273 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10274 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10275 instead of name field.
10276 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10277 SYMBOL_NAME instead of XSYMBOL and name field.
10278 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10279 instead of XSYMBOL and name field.
10280 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10281 and SYMBOL_NAME instead of XSYMBOL and name field.
10282 * coding.c (Fread_coding_system, code_convert_region1)
10283 (code_convert_string1, code_convert_string_norecord)
10284 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10285 XSYMBOL and name field.
10286 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10287 (Fmake_variable_buffer_local, Fmake_local_variable)
10288 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10289 of XSYMBOL and name field.
10290 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10291 XSYMBOL and name field.
10292 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10293 instead of XSYMBOL and name field.
10294 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10295 XSYMBOL and name field.
10296 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10297 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10298 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10299 instead of XSYMBOL and name field.
10300 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10301 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10302 (parse_solitary_modifier, Fexecute_extended_command):
10303 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10304 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10305 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10306 of XSYMBOL and name field.
10307 (describe_command, describe_translation): Use SYMBOL_NAME and
10308 assignment instead of XSYMBOL and name field and XSETSTRING.
10309 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10310 instead of XSYMBOL and name field.
10311 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10312 name field and XSETSTRING.
10313 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10314 of XSYMBOL and name field.
10315 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10316 assignment instead of XSYMBOL and name field and XSETSTRING.
10317 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10318 XSTRING instead of XSYMBOL and name field.
10319 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10320 and XSTRING instead of XSYMBOL and name field.
10321 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10322 and XSTRING instead of XSYMBOL and name field.
10323 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10324 XSTRING instead of XSYMBOL and name field.
10325 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10326 of XSYMBOL and name field.
10327 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10328 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10329
103302002-05-19 Ken Raeburn <raeburn@gnu.org>
10331
10332 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10333 and XCDR real rvalues in most configurations.
10334
10335 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10336 Don't take the address of the cdr part of a cons cell; instead, track
10337 the parent cell and call XSETCDR, or set the variable for the head
10338 of the list if we haven't started down the list yet.
10339
103402002-05-19 Richard M. Stallman <rms@gnu.org>
10341
10342 * doc.c (reread_doc_file): Don't ask for confirmation.
10343
103442002-05-18 Jason Rumney <jasonr@gnu.org>
10345
10346 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10347 (xbm_load_image): Use it.
10348 (xbm_load): Ditto.
10349 (xbm_read_bitmap_data): Reverted to xfns.c version.
10350 From David Ponce <david@dponce.com>.
10351
103522002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10353
10354 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10355 2.02 and later.
10356
103572002-05-16 Juanma Barranquero <lektu@terra.es>
10358
10359 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10360
103612002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10362
10363 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10364 meaningful test.
10365 (read_char_minibuf_menu_prompt): Fix typo.
10366
103672002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10368
10369 * eval.c (Fcommandp): Doc fix.
10370
103712002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10372
10373 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10374 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10375 (Fset_keymap_parent): Gcpro a bit more.
10376 (access_keymap): Gcpro around meta_map call and around the main loop.
10377 (get_keyelt): Gcpro when following indirect references.
10378 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10379 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10380 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10381 Remove useless ad-hoc remap code.
10382
103832002-05-13 Richard M. Stallman <rms@gnu.org>
10384
10385 * search.c (search_buffer): Give up boyer moore search if inverse
10386 translation change charset_base.
10387
103882002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10389
10390 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10391 characters is carried over from the previous block of text, adjust
10392 coding->produced to account for the extra character.
10393
103942002-05-11 Andreas Schwab <schwab@suse.de>
10395
10396 * coding.c (intersection): Keep the elements of the returned list
10397 in the same order as in the first list.
10398
103992002-05-11 Kim F. Storm <storm@cua.dk>
10400
10401 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10402 only update cmm_size if realloc actually succeeds.
10403 Testing with initial size of 2 elements revealed that using
10404 realloc on GNU/Linux would cause a random trap in xmalloc
10405 later on, so I rewrote the code to use malloc/bcopy/free instead
10406 of realloc.
10407
104082002-05-10 Jason Rumney <jasonr@gnu.org>
10409
10410 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10411
104122002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10413
10414 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10415 parens, to ensure correct evaluation order.
10416
104172002-05-10 Kim F. Storm <storm@cua.dk>
10418
10419 * keymap.c (Vemulation_mode_map_alists): New variable.
10420 (syms_of_keymap): DEFVAR_LISP it.
10421 (current_minor_maps): Process keymap alists in that list before
10422 minor-mode-overriding-map-alist and minor-mode-map-alist.
10423
104242002-05-09 Richard M. Stallman <rms@gnu.org>
10425
10426 * search.c (Freplace_match): Doc fix.
10427
104282002-05-09 Kim F. Storm <storm@cua.dk>
10429
10430 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10431 Enlarge cursor rectangle drawn around image with non-zero relief.
10432
10433 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10434 Enlarge cursor rectangle drawn around image with non-zero relief.
10435
10436 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10437 Enlarge cursor rectangle drawn around image with non-zero relief.
10438
104392002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10440
10441 * xselect.c (lisp_data_to_selection_data): Don't set selection
10442 type if comes from the Lisp object's car. If the selection
10443 contains a pure ASCII text, always return QSTRING as its type.
10444
104452002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10446
10447 * mac.c (mac-cut-function): Doc fix.
10448
104492002-05-05 Richard M. Stallman <rms@gnu.org>
10450
10451 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10452
104532002-05-04 Jason Rumney <jasonr@gnu.org>
10454
10455 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10456 for event-click-count.
10457
10458 * process.c (init_process): Only add server subfeature if we can
10459 use non-blocking I/O.
10460
104612002-05-04 Andrew Choi <akochoi@shaw.ca>
10462
10463 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10464 repeatedly.
10465
104662002-05-03 Jason Rumney <jasonr@gnu.org>
10467
10468 * process.c (Fmake_network_process): Only support server sockets
10469 when we can make them non-blocking.
10470
10471 * s/ms-w32.h (HAVE_SELECT): Define.
10472
10473 * w32.h (FILE_NDELAY): New flag.
10474
10475 * w32.c (sys_getpeername, fcntl): New functions.
10476 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10477
10478 * w32proc.c: include sys/file.h.
10479
104802002-05-03 Colin Walters <walters@verbum.org>
10481
10482 * callproc.c (Vgame_score_directory): Renamed to
10483 Vshared_game_score_directory.
10484
104852002-04-30 Richard M. Stallman <rms@gnu.org>
10486
10487 * s/gnu.h [emacs]: Include stdio.h.
10488 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10489
10490 * eval.c (do_autoload): Error if called while preparing to dump.
10491
10492 * fns.c (Frequire): Error if need to load while preparing to dump.
10493
104942002-04-28 Colin Walters <walters@verbum.org>
10495
10496 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10497 Default to "~/.emacs.d/games".
10498
104992002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10500
10501 * lread.c (openp): Change arg exec_only to predicate.
10502 (build_load_history): Use XCAR/XCDR.
10503 (Flocate_file_internal): New fun.
10504 (syms_of_lread): Defsubr it.
10505 (Fload): Update call to openp.
10506
10507 * lisp.h (openp): Update prototype.
10508
10509 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10510 * w32proc.c (sys_spawnve):
10511 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10512 * w32.c (check_windows_init_file):
10513 * sound.c (Fplay_sound_internal):
10514 * process.c (Fstart_process):
10515 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10516 * mac.c (run_mac_command):
10517 * emacs.c (init_cmdargs):
10518 * callproc.c (Fcall_process): Update call to openp.
10519
10520 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10521
10522 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10523
105242002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10525
10526 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10527 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10528
105292002-04-28 Richard M. Stallman <rms@gnu.org>
10530
10531 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10532
10533 * eval.c (Fcommandp): New arg for_call_interactively.
10534 * lisp.h (Fcommandp): Declare new arg.
10535
105362002-04-28 Jason Rumney <jasonr@gnu.org>
10537
10538 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10539
10540 * w32.c (stat, fstat): Use file index information to generate
10541 inodes for directories where available.
10542
105432002-04-26 Andrew Choi <akochoi@shaw.ca>
10544
10545 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10546 [HAVE_CARBON]: Include Mac object files.
10547
10548 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10549 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10550 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10551 MAC_OSX, and MAC_OS instead of macintosh.
10552
10553 * editfns.c [MAC_OS8]: Include stdio.h.
10554
10555 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10556
10557 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10558 Apple Monaco.
10559
10560 * process.c: Declare QCfamily and QCfilter as extern.
10561 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10562 calling select.
10563
10564 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10565
10566 * tparam.c [MAC_OSX]: Don't define BC and UP.
10567
10568 * config.in [HAVE_CARBON]: Add.
10569
10570 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10571 Move here from mac/src and mac/inc.
10572
10573 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10574
105752002-04-26 Gerd Moellmann <gerd@gnu.org>
10576
10577 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10578 Compute phys_cursor_width from the x position returned
10579 by x_draw_glyhs, which is cheaper.
10580 (x_display_and_set_cursor): Compute the buffer-local value
10581 of `cursor-in-non-selected-windows' only when needed.
10582
105832002-04-25 Gerd Moellmann <gerd@gnu.org>
10584
10585 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10586 cursor on a stretch glyph has a width that depends on
10587 x_stretch_cursor_p.
10588
105892002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10590
10591 * abbrev.c (abbrev-start-location): Doc fix.
10592
10593 * indent.c (Fvertical_motion): Fix last change.
10594
105952002-04-25 Gerd Moellmann <gerd@gnu.org>
10596
10597 * indent.c (Fvertical_motion): Move to the start of the line
10598 containing PT before moving up or down.
10599
106002002-04-24 Gerd Moellmann <gerd@gnu.org>
10601
10602 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10603 case of writing a whole row, more or less analogous to the case of
10604 writing only parts of a row.
10605
10606 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10607 0 for NO_CURSOR.
10608
10609 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10610
106112002-04-23 Colin Walters <walters@verbum.org>
10612
10613 * buffer.c (syms_of_buffer): Doc fix.
10614
106152002-04-23 Gerd Moellmann <gerd@gnu.org>
10616
10617 * xterm.c (notice_overwritten_cursor): Handle the special case
10618 of the cursor being in the first blank non-text line at the
10619 end of a window.
10620
10621 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10622 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10623 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10624 bar cursors only, to make phys_cursor_width contain what its name
10625 suggests.
10626 (notice_overwritten_cursor): Consider the cursor image erased if
10627 the output area intersects the cursor image in y-direction.
10628
106292002-04-23 Simon Marshall <simon@gnu.org>
10630
10631 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10632 to XC_hand2.
10633
106342002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10635
10636 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10637
106382002-04-22 Kim F. Storm <storm@cua.dk>
10639
10640 * textprop.c (remove_properties): Fixed trap for malformed plist.
10641
106422002-04-22 Richard M. Stallman <rms@gnu.org>
10643
10644 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10645
10646 * window.c (make_window): Initialize height_fixed_p,
10647 last_cursor_off_p, and p->cursor_off_p slots.
10648
106492002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10650
10651 * fns.c (use-dialog-box): Doc fix.
10652
106532002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10654
10655 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10656 variables `row', `i' and `area'.
10657 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10658 toolkit library.
10659
106602002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10661
10662 * xfaces.c (clear_font_table): Don't free the default font of
10663 a frame even if it's on another display.
10664 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10665 that could be Qt.
10666
106672002-04-19 Juanma Barranquero <lektu@terra.es>
10668
10669 * indent.c (Fmove_to_column): Remove unused local variable
10670 `next_boundary_byte'.
10671 (current_column_1): Likewise.
10672
106732002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10674
10675 * msdos.c (Qhbar): New variable.
10676 (syms_of_msdos): Intern and staticpro it.
10677 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10678 cursor type.
10679
106802002-04-19 Dave Lambert <dlambert@acm.org>
10681
10682 Theses change implement an underscore-like (`hbar') cursor.
10683
10684 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10685
10686 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10687 Handle the `hbar' cursor type.
10688 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10689
10690 * xfns.c (Qhbar): New variable.
10691 (syms_of_xfns): Intern and staticpro it.
10692 (x_specified_cursor_type): Handle `hbar' cursor.
10693
10694 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10695 not defined.
10696
106972002-04-18 Richard M. Stallman <rms@gnu.org>
10698
10699 * textprop.c (remove_properties): New arg LIST allows scanning
10700 either a list or a plist.
10701 (interval_has_some_properties_list): New function, like
10702 interval_has_some_properties using list instead of plist.
10703 All callers changed.
10704 (Fremove_list_of_text_properties): New function.
10705 (syms_of_textprop): Defsubr it.
10706
107072002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10708
10709 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10710
107112002-04-17 Juanma Barranquero <lektu@terra.es>
10712
10713 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10714
107152002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10716
10717 * window.c (coordinates_in_window): Don't report on margin area
10718 if its width is zero.
10719
107202002-04-16 Jason Rumney <jasonr@gnu.org>
10721
10722 * w32fns.c (Fx_file_dialog): Decode file name before using.
10723
10724 * w32term.c (construct_drag_n_drop): Likewise.
10725
107262002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10727
10728 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10729 store load-history in pure space.
10730
10731 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10732
107332002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10734
10735 * xterm.c (Qlatin_1, Qutf_8): New vars.
10736 (syms_of_xterm): Initialize them.
10737 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10738 decoding the output of X*LookupString.
10739 Always use latin-1 to decode the output of XLookupString.
10740 Try Xutf8LookupString if XmbLookupString failed.
10741
10742 * region-cache.c (new_region_cache): Use BEG.
10743
107442002-04-16 Gerd Moellmann <gerd@gnu.org>
10745
10746 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10747 configuration files.
10748 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10749 returns 0.
10750
107512002-04-15 Andreas Schwab <schwab@suse.de>
10752
10753 * config.in: Regenerated using autoheader.
10754
10755 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10756 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10757 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10758 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10759 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10760 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10761 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10762 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10763 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10764 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10765 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10766 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10767 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10768 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10769 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10770 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10771 STACK_DIRECTION, now set by autoconf.
10772
107732002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10774
10775 * dispnew.c (marginal_area_string): Sort arguments.
10776
10777 * dispextern.h (marginal_area_string): Add prototype.
10778
107792002-04-13 Richard M. Stallman <rms@gnu.org>
10780
10781 * fileio.c (Finsert_file_contents):
10782 Don't call temp_output_buffer_setup--do just part, by hand.
10783
10784 * coding.c (run_pre_post_conversion_on_str):
10785 Don't call temp_output_buffer_setup--do just part, by hand.
10786
10787 * keyboard.c (command_loop_1): Don't call start_hourglass
10788 or cancel_hourglass when executing a macro.
10789
10790 * marker.c (count_markers): New function.
10791
10792 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10793 grow without limit. Move recently used elements to the front.
10794
107952002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10796
10797 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10798
107992002-04-12 Gerd Moellmann <gerd@gnu.org>
10800
10801 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10802 rows marginal areas.
10803 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10804 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10805
10806 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10807
108082002-04-12 Dave Love <fx@gnu.org>
10809
10810 * dispnew.c (marginal_area_string): New.
10811
10812 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10813 (Qleft_margin, Qright_margin): Declare.
10814 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10815
10816 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10817 note_mode_line_highlight and extended.
10818
10819 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10820 (make_lispy_event): Deal with mouse events in margins.
10821
108222002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10823
10824 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10825
10826 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10827 than deactivating the mark if tmm is set to `lambda'.
10828 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10829 Use a single event for HELP_EVENT.
10830 (Fexecute_extended_command): Save last_point_position.
10831
108322002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10833
10834 * lisp.h (Fpropertize): Add prototype.
10835
10836 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10837
108382002-04-10 Colin Walters <walters@verbum.org>
10839
10840 * config.in: Add HAVE_SHARED_GAME_DIR.
10841
10842 * callproc.c: (Vgame_score_directory): New variable.
10843 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10844
108452002-04-10 Richard M. Stallman <rms@gnu.org>
10846
10847 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10848
108492002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10850
10851 * minibuf.c (read_minibuf): Use empty_string.
10852 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10853 Short-circuit the search as soon as it "failed".
10854 (Fall_completions): Allow lambda forms and lists of strings for alist.
10855 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10856 when require_match is nil.
10857 (Ftest_completion): Rename from `test_completion' and export to elisp.
10858 Call the predicate also when alist is a list.
10859 Obey Vcompletion_regexp_list.
10860 (do_completion, Fminibuffer_complete_and_exit): Use it.
10861 (Fassoc_string): Rename from `assoc_for_completion'.
10862 Allow list of strings as well and export to elisp.
10863
108642002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10865
10866 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10867
108682002-04-08 Juanma Barranquero <lektu@terra.es>
10869
10870 * w32.c (sys_accept): Don't hide variable `s'.
10871
108722002-04-05 Gerd Moellmann <gerd@gnu.org>
10873
10874 * callint.c (Fcall_interactively): Use INTEGERP instead of
10875 NUMBERP for checking Vhistory_length.
10876
108772002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10878
10879 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10880 Doc fix to reflect it.
10881
108822002-04-04 Richard M. Stallman <rms@gnu.org>
10883
10884 * xdisp.c (display_mode_element): New arg RISKY.
10885 Disregard text props found or specified within a variable
10886 that isn't marked risky-local-variable.
10887 (Qrisky_local_variable): New variable.
10888 (syms_of_xdisp): Init and staticpro it.
10889
108902002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10891
10892 * undo.c (record_point): New fun.
10893 (record_delete, record_insert): Use it.
10894
108952002-04-03 Juanma Barranquero <lektu@terra.es>
10896
10897 * doc.c (Fdocumentation): Add missing parentheses.
10898 (Fdocumentation_property): Likewise.
10899
109002002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10901
10902 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10903 data is 0, just return nil.
10904
109052002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10906
10907 * msdos.c (syms_of_msdos): Fix last change with
10908 mouse_autoselect_window.
10909
109102002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10911
10912 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10913 mouse_autoselect_window.
10914
109152002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10916
10917 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10918 with system-specific keysyms. Use it also for unknown function keys.
10919
10920 * doc.c (reread_doc_file): Return whether reload was attempted.
10921 (Fdocumentation, Fdocumentation_property): Don't try to reload
10922 if the doc is 0 and only ask once.
10923
10924 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10925
109262002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10927
10928 * keyboard.c (read_char): If the event was Qselect_window,
10929 restore timer_idleness_start_time to its previous value.
10930
10931 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10932
109332002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10934
10935 * region-cache.c (new_region_cache): Use BEG.
10936
10937 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10938 Use BEG and BEG_BYTE.
10939
10940 * doc.c (get_doc_string): Return nil if the location is wrong.
10941 (reread_doc_file): New fun.
10942 (Fdocumentation, Fdocumentation_property):
10943 Call it if get_doc_string fails.
10944 (Fsnarf_documentation): Make it work for a dumped Emacs.
10945
10946 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10947 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10948
10949 * charset.c (Fstring): Allow 0 arguments.
10950
10951 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10952
10953 * process.c (DATAGRAM_CONN_P, list_processes_1)
10954 (Fprocess_datagram_address, Fset_process_datagram_address)
10955 (Fset_network_process_options, server_accept_connection):
10956 Fix some int/Lisp_Object confusions (thank you union types).
10957
109582002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10959
10960 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10961
10962 * w32term.c: Likewise.
10963 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10964
10965 * keyboard.c (Qselect_window): New symbol.
10966 (head_table): Use it.
10967 (keys_of_keyboard): Bound select-window event to handle-select-window.
10968 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10969
10970 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10971 (last_window): New variable.
10972 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10973 (note_mouse_movement): Remove reimplemented code in #if 0.
10974 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10975 Emacs windows.
10976
10977 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10978
109792002-03-31 Gerd Moellmann <gerd@gnu.org>
10980
10981 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10982 Callers changed.
10983
109842002-03-30 Richard M. Stallman <rms@gnu.org>
10985
10986 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10987 loop whenever it stops making progress.
10988
10989 * widget.c (set_frame_size): Don't call change_frame_size.
10990
109912002-03-30 Gerd Moellmann <gerd@gnu.org>
10992
10993 * dispnew.c (direct_output_for_insert):
10994 Call mark_window_display_accurate.
10995
109962002-03-29 Jason Rumney <jasonr@gnu.org>
10997
10998 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10999
110002002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11001
11002 * Makefile.in (lread.o): Depend on coding.h.
11003
11004 * lread.c (openp, Fload): Encode the file name before passing it
11005 to `stat', `access', and `emacs_open'.
11006 (openp): GCPRO the encoded file name. Don't recompute Lisp
11007 strings unnecessarily.
11008
110092002-03-29 Kim F. Storm <storm@cua.dk>
11010
11011 * fns.c (Flax_plist_put): Doc fix.
11012
110132002-03-28 Miles Bader <miles@gnu.org>
11014
11015 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11016
110172002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11018
11019 * process.c (set-network-process-options): Add usage.
11020 (make-network-process): Doc fix.
11021
110222002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11023
11024 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11025
110262002-03-26 Richard M. Stallman <rms@gnu.org>
11027
11028 * fns.c (Fsubstring_no_properties): New function.
11029 (Flax_plist_get, Flax_plist_put): New functions.
11030 (syms_of_fns): defsubr them.
11031
11032 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11033 don't test or alter w->update_mode_line.
11034
11035 * window.c (Fdisplay_buffer): Doc fix.
11036
110372002-03-24 Richard M. Stallman <rms@gnu.org>
11038
11039 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11040
110412002-03-24 Gerd Moellmann <gerd@gnu.org>
11042
11043 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11044 (Fdefmacro): Handle `(declare ...)'.
11045 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11046 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11047
110482002-03-24 Jason Rumney <jasonr@gnu.org>
11049
11050 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11051 (xbm_file_p): Add prototypes.
11052 (xbm_format, xbm_image_p): Sync with xfns.c.
11053 (reflect_byte): New function.
11054 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11055 (xbm_load_image): Create bitmaps with a depth of 1.
11056 (init_xfns): Enable XBM images.
11057
110582002-03-23 Jason Rumney <jasonr@gnu.org>
11059
11060 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11061 correctly. Do not pass up_modifier to keyboard buffer.
11062
11063 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11064
110652002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11066
11067 * Makefile.in (bootstrapclean): New target.
11068 (bootstrap-temacs, bootstrap-doc): Remove.
11069 (bootstrap-emacs): Use a bog-standard `temacs'.
11070 Don't bother to build a DOC file.
11071
11072 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11073
11074 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11075 in temacs even if !CANNOT_DUMP.
11076 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11077
11078 * alloc.c (check_pure_size): Only output a warning.
11079
110802002-03-22 Jason Rumney <jasonr@gnu.org>
11081
11082 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11083 supported.
11084
11085 * w32term.c (zv_bits): Declare as short, for word alignment.
11086 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11087 (syms_of_w32term): Define x-use-underline-position-properties.
11088
11089 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11090 (clear_image_cache): Block input, fix logic, clear matrices in
11091 all frames that share this cache.
11092
110932002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11094
11095 * emacs.c (main): Update the Copyright year in the blurb printed
11096 by "emacs --version".
11097
11098 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11099
11100 * xterm.c (XTread_socket): If XK_ISO_Lock and
11101 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11102 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11103
111042002-03-21 Kim F. Storm <storm@cua.dk>
11105
11106 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11107 menu-bar bindings in keymap and local-map properties _are_ used.
11108 But try keymap property first in accordance with 2002-01-03 patch.
11109 Added comment describing why this is not always reliable.
11110 (tool_bar_items): Ditto for tool-bar.
11111
111122002-03-21 Jason Rumney <jasonr@gnu.org>
11113
11114 * w32fns.c (x_clear_image_1): Disable color table code.
11115
111162002-03-21 Kim F. Storm <storm@cua.dk>
11117
11118 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11119 removed the wrong version of the DEFUN macro; fixed it.
11120
11121 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11122 Fmember rather than Fmemq).
11123 (Fprovide): Check that subfeatures is a list.
11124
11125 * process.c (QCfeature, QCdatagram): Removed variables.
11126 (QCtype, Qdatagram): New variables.
11127 (network_process_featurep): Removed function.
11128 (Fmake_network_process): Removed :feature check.
11129 Use :type 'datagram instead of :datagram t to create a datagram
11130 socket. This allows us to add other connection types (e.g. raw
11131 sockets) later in a consistent manner.
11132 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11133 supported subfeatures for feature make-network-process.
11134 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11135 Intern and staticpro QCtype and Qdatagram.
11136 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11137
11138 * xfns.c: (QCtype): Remove duplicate declaration and
11139 initialization (is now declared in process.c).
11140
11141 * w32fns.c: (QCtype): Remove duplicate declaration and
11142 initialization (is now declared in process.c).
11143
111442002-03-21 Richard M. Stallman <rms@gnu.org>
11145
11146 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11147 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11148 when jumping to `fail' to avoid undoing reg changes in the
11149 last iteration of the loop.
11150 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11151
11152 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11153 Depend on process.h.
11154
111552002-03-20 Jason Rumney <jasonr@gnu.org>
11156
11157 Most of the following changes are still conditional on HAVE_IMAGES
11158 which is not set by default on Windows.
11159
11160 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11161
11162 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11163 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11164 (four_corners_best, x_clear_image_1, x_clear_image)
11165 (x_alloc_image_color, postprocess_image)
11166 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11167 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11168 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11169
11170 * w32gui.h (struct XImage): Define.
11171
11172 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11173 extract mouse co-ordinates.
11174
111752002-03-20 Jason Rumney <jasonr@gnu.org>
11176
11177 * w32.c (init_winsock): Dynamically load new server and UDP
11178 socket functions.
11179 (socket_to_fd): New function.
11180 (sys_socket): Use it.
11181 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11182 (sys_recvfrom, sys_sendto): New wrapper functions.
11183
11184 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11185 and initialization.
11186
11187 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11188
111892002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11190
11191 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11192 Don't use "sun" as a variable, it's a predefined constant on Sun
11193 machines.
11194
111952002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11196
11197 * bytecode.c (Fbyte_code): Revert last change.
11198
111992002-03-19 Kim F. Storm <storm@cua.dk>
11200
11201 * makefile.w32-in (LIBS): Add $(WSOCK32).
11202 From David Ponce <dponce@voila.fr>.
11203
112042002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11205
11206 * process.c (wait_reading_process_input): Move variables `pname'
11207 and `pnamelen' down where they are used.
11208
11209 * bytecode.c (Fbyte_code): Discard unused computed value to
11210 prevent gcc warning.
11211
11212 * lisp.h (Fplist_member): Add prototype.
11213
112142002-03-18 Kim F. Storm <storm@cua.dk>
11215
11216 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11217 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11218
11219 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11220 Remove explicit GNU_LINUX settings for datagram support.
11221
112222002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11223
11224 * process.c (Fmake_network_process): Remove unused variable `sa'.
11225 Doc fix. Add usage:.
11226 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11227
112282002-03-17 Richard M. Stallman <rms@gnu.org>
11229
11230 * xdisp.c (cursor_type_changed): New variable.
11231 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11232 Clear it when clearing windows_or_buffers_changed.
11233 (try_cursor_movement, redisplay_window, try_window_id)
11234 (try_window_reusing_current_matrix): Test cursor_type_changed
11235 along with windows_or_buffers_changed.
11236
11237 * window.h (cursor_type_changed): New variable.
11238
11239 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11240 not update_mode_lines, and always set it to 1.
11241
11242 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11243 if no frames needed redrawing.
11244
112452002-03-17 Kim F. Storm <storm@cua.dk>
11246
11247 The following changes add support for network server processes,
11248 datagram connections, and local (unix) sockets.
11249
11250 * process.h (struct Lisp_Process): New member log.
11251 Doc fix: Member command used to indicate stopped network process.
11252 Doc fix: Member childp contains plist for network process.
11253 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11254
11255 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11256 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11257 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11258 New variables.
11259 (NETCONN1_P): New macro.
11260 (DATAGRAM_SOCKETS): New conditional symbol.
11261 (datagram_address): New array.
11262 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11263 (status_message): Use concat3.
11264 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11265 for a stopped network process.
11266 (Fset_process_buffer): Update contact plist for network process.
11267 (Fset_process_filter): Ditto. Don't enable input for stopped
11268 network processes. Server must listen, even if filter is t.
11269 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11270 New functions.
11271 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11272 (Fprocess_contact): Added KEY argument. Handle datagrams.
11273 (list_processes_1): Optionally show only processes with the query
11274 on exit flag set. Dynamically adjust column widths. Omit tty
11275 column if not needed. Report stopped network processes.
11276 Identify server and datagram network processes.
11277 (Flist_processes): New optional arg `query-only'.
11278 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11279 (conv_lisp_to_sockaddr, set_socket_options)
11280 (network_process_featurep, unwind_request_sigio): New helper functions.
11281 (Fprocess_datagram_address, Fset_process_datagram_address):
11282 (Fset_network_process_options): New lisp functions.
11283 (Fopen_network_stream): Removed. Now defined in simple.el.
11284 (Fmake_network_process): New lisp function. Code is based on previous
11285 Fopen_network_stream, but heavily reworked with new property list based
11286 argument list, support for datagrams, server processes, and local
11287 sockets in addition to old client-only functionality.
11288 (server_accept_connection): New function.
11289 (wait_reading_process_input): Use it to handle incoming connects.
11290 Do not enable input on a new connection if process is stopped.
f63fd14e 11291 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
048addec
JD
11292 (send_process): Handle datagram sockets.
11293 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11294 network process is indicated by setting command field to t .
11295 (Fprocess_send_eof): No-op if datagram connection.
11296 (Fstatus_notify): Don't read input for a stream server socket or a
11297 stopped network process.
11298 (init_process): Initialize datagram_address array.
11299 (syms_of_process): Intern and staticpro new variables, defsubr new
11300 functions.
11301
113022002-03-16 Jason Rumney <jasonr@gnu.org>
11303
11304 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11305 startup case.
11306
113072002-03-16 Richard M. Stallman <rms@gnu.org>
11308
11309 * xdisp.c (redisplay_internal, redisplay_windows):
11310 Use list_of_error to call internal_condition_case_1.
11311 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11312 so as to catch all errors with no possibility of debugger redisplay.
11313 (list_of_error): New variable.
11314 (syms_of_xdisp): Init and staticpro it.
11315
11316 * print.c (print_object): Delete `\ ' from printed rep of frame.
11317
113182002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11319
11320 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11321 until its implementation is fixed.
11322
113232002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11324
11325 * xfns.c (png_load): Remove unused variable `gamma_str'.
11326
113272002-03-14 Richard M. Stallman <rms@gnu.org>
11328
11329 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11330
113312002-03-14 Miles Bader <miles@gnu.org>
11332
11333 * intervals.c (adjust_for_invis_intang): New function.
11334 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11335 work for dealing with invisible+intangible regions. Do so before
11336 and after both forward and backward movements, to handle both
11337 front-sticky and rear-sticky cases.
11338 * textprop.c (text_property_stickiness): Function moved here from
11339 `editfns.c'.
11340 * intervals.h (text_property_stickiness): New declaration.
11341 * editfns.c (char_property_eq): Function removed.
11342 (text_property_stickiness): Function moved to `textprop.c'.
11343
113442002-03-13 Jason Rumney <jasonr@gnu.org>
11345
11346 * config.in: Add STRFTIME_NO_POSIX2.
11347
11348 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11349 and %OX when underlying strftime does not.
11350
113512002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11352
11353 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11354 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11355 line) to avoid annoying flicker.
11356 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11357 (XTread_socket): Mark it static.
11358
11359 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11360
113612002-03-13 Kim F. Storm <storm@cua.dk>
11362
11363 * puresize.h (BASE_PURESIZE): Increase to 775000.
11364
113652002-03-12 Juanma Barranquero <lektu@terra.es>
11366
11367 * editfns.c (syms_of_editfns): Fix typo.
11368
113692002-03-12 Gerd Moellmann <gerd@gnu.org>
11370
11371 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11372 Include termopt.h for interrupt_input.
11373
113742002-03-11 Andreas Schwab <schwab@suse.de>
11375
11376 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11377
113782002-03-11 Gerd Moellmann <gerd@gnu.org>
11379
11380 * xterm.c (note_mouse_movement): Put code for
11381 x_autoselect_window_p in #if 0.
11382
11383 * lread.c (Fload): Don't assume that message_with_string uses the
11384 string it is given like a C string.
11385
113862002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11387
11388 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11389
11390 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11391 x_session_have_connection.
11392 (x_initialize): Add call to x_session_initialize.
11393
11394 * termhooks.h (enum event_kind): Add save_session_event.
11395
11396 * keyboard.c: Add Emacs event save_session_event.
11397
11398 * emacs.c (main): Add call to syms_of_xsmfns.
11399
11400 * lisp.h: Declare syms_of_xsmfns as extern.
11401
11402 * config.in: Add HAVE_X_SM.
11403
11404 * Makefile.in (LIBXT): Add -lSM -lICE
11405 if HAVE_X_SM and not USE_X_TOOLKIT.
11406 (XOBJ): New file xsmfns.c added.
11407
11408 * xsmfns.c: New file for X session management.
11409
114102002-03-09 Jason Rumney <jasonr@gnu.org>
11411
11412 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11413 read-only when setting modified time.
11414
114152002-03-08 Gerd Moellmann <gerd@gnu.org>
11416
11417 * xdisp.c (move_it_vertically_backward): At the end of the function,
11418 when moving forward by lines, treat terminal frames specially.
11419
11420 * keyboard.c (echo_char): Make sure to add a separator between
11421 keys even if echo_dash hasn't been called.
11422
11423 * xdisp.c: Use new string macros.
11424 (update_echo_area): Pass number of bytes to message3 instead of
11425 number of chars.
11426 (set_message_1): Don't access a string's size_byte directly.
11427 (decode_mode_spec_coding): Use number of bytes of eoltype string
11428 instead number of chars.
11429
11430 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11431
114322002-03-08 Juanma Barranquero <lektu@terra.es>
11433
11434 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11435 24-bit.
11436
114372002-03-06 Jason Rumney <jasonr@gnu.org>
11438
11439 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11440
114412002-03-06 Gerd Moellmann <gerd@gnu.org>
11442
11443 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11444 (cancel_echoing, echo_length, echo_truncate): Changed to
11445 work with new kboard definition.
11446 (echo_now): Use message3_nolog instead of message2_nolog.
11447
11448 * alloc.c (mark_kboards): Mark echo_string.
11449
11450 * keyboard.h (ECHOBUFSIZE): Removed.
11451 (struct kboard): Member echoptr removed, member echobuf renamed
11452 to echo_string.
11453
11454 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11455 message3 instead of message2 to display the message using STRING's
11456 text properties.
11457
114582002-03-05 Andreas Schwab <schwab@suse.de>
11459
11460 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11461
114622002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11463
11464 * frame.c (default-frame-alist): Explain that setting it doesn't
11465 affect existing frames.
11466
114672002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11468
11469 * indent.c (skip_invisible): Fix my brain fart.
11470
11471 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11472
114732002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11474
11475 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11476 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11477 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11478 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11479 and variables to use EMACS_INT instead of just int.
11480
11481 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11482
114832002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11484
11485 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11486 environment, pass it down with corrected value.
11487
114882002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11489
11490 * lread.c (read_filtered_event): Do not call start_hourglass
11491 before returning.
11492
114932002-03-04 Juanma Barranquero <lektu@terra.es>
11494
11495 * w32term.c (x_display_and_set_cursor): Fix typo.
11496
114972002-03-03 Richard M. Stallman <rms@gnu.org>
11498
11499 * fileio.c (Fmake_temp_name): Doc fix.
11500
115012002-03-03 Gary Wong <gtw@gnu.org>
11502
11503 * termcap.c [!emacs]: Replace ospeed for building standalone
11504 libtermcap, for binary compatibility.
11505
11506 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11507
115082002-03-03 Richard M. Stallman <rms@gnu.org>
11509
11510 * xrdb.c (file_p): Rename arg `path' to `filename'.
11511
11512 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11513 only if it is an integer.
11514
11515 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11516 If png_get_sRGB gives an answer, call png_set_gamma
11517 using the default image gamma value.
11518
11519 * lread.c (read1): When reading from a file, default string to
11520 multibyte only if it has some multibyte characters.
11521
11522 * print.c (print_object): Output multibyte chars 128...255
11523 using \x even if ! print_escape_multibyte.
11524
11525 * xdisp.c (display_mode_element): Move the places where
11526 bytepos, charpos, this, and lisp_string are set.
11527 Use lisp_string to set bytepos.
11528
11529 * xdisp.c (redisplay_internal):
11530 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11531
11532 * xdisp.c (display_mode_element): Merge properties specified with
11533 :propertize onto those that come with the string.
11534
115352002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11536
11537 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11538 automatic-hscrolling. Users changed.
11539 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11540 Users changed.
11541 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11542
115432002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11544
11545 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11546
115472002-03-02 Kim F. Storm <storm@cua.dk>
11548
11549 * window.c (Fminibuffer_selected_window): New function.
11550 (syms_of_window): Defsubr it.
11551
115522002-03-01 Kim F. Storm <storm@cua.dk>
11553
11554 * window.h (struct window): New member phys_cursor_width.
11555
11556 * window.c (make_window, replace_window): Init phys_cursor_width.
11557
11558 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11559 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11560
11561 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11562 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11563
11564 * lisp.h (GCPRO6): New macro.
11565
11566 * process.c (Fopen_network_stream): Use GCPRO6.
11567
115682002-03-01 Kim F. Storm <storm@cua.dk>
11569
11570 * process.c (Qconnect, Qfailed): New variables.
11571 (syms_of_process): Intern and staticpro them.
11572 (Fprocess_status): Document connect and failed return values.
11573 [NON_BLOCKING_CONNECT]: New conditional.
11574 (connect_wait_mask, num_pending_connects): New variables.
11575 (status_message): Convert Qfailed status.
11576 (Fopen_network_stream): Added support for non-blocking connect.
11577 New optional args: filter, sentinel, non_blocking. Doc updated.
11578 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11579 (deactivate_process): Handle pending non-blocking connect.
11580 (wait_reading_process_input): Poll for status of non-blocking
11581 connects. Exec sentinel directly when connect succeeds.
11582 (status_notify): Don't read process output if not yet connected.
11583
115842002-02-28 Kim F. Storm <storm@cua.dk>
11585
11586 * window.c: (minibuf_selected_window): Renamed from
11587 Vminibuf_selected_window. Users changed.
11588 (syms_of_window): Staticpro it.
11589
115902002-02-26 Kim F. Storm <storm@cua.dk>
11591
11592 The following changes add a new Vminibuf_selected_window variable
11593 which is similar to Vminibuf_scroll_window, but which is only set
11594 on entry to the minibuffer (from a non-minibuffer window):
11595
11596 * window.c: (Vminibuf_selected_window): New variable.
11597 (struct save_window_data): New member minibuf_selected_window.
11598 (Fset_window_configuration): Restore Vminibuf_selected_window.
11599 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11600 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11601 (compare_window_configurations): Compare minibuf_selected_window.
11602
11603 * window.h: (Vminibuf_selected_window): Declare extern.
11604
11605 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11606 entry to minibuffer or on entry from a non-minibuffer window.
11607
11608 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11609 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11610
11611 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11612 instead of Vminibuf_scroll_window when deciding in which window
11613 the region should be highlighted. Consequently, the region remains
11614 highlighteded even when a completion buffer is also displayed.
11615
116162002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11617
11618 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11619
11620 * xselect.c (Qcompound_text_with_extensions): Renamed from
11621 Qcompound_text_no_extensions.
11622 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11623
116242002-02-26 Juanma Barranquero <lektu@terra.es>
11625
11626 * w32proc.c (syms_of_ntproc): Doc fix.
11627
116282002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11629
11630 * intervals.h: Include "dispextern.h" unconditionally.
11631
116322002-02-24 Jason Rumney <jasonr@gnu.org>
11633
11634 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11635 and disp-table.elc.
11636 (lisp): Add emacs-lisp/backquote.elc.
11637
116382002-02-24 Kim F. Storm <storm@cua.dk>
11639
11640 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11641 The validation of the event type was too strict as it didn't
11642 allow string events; buffer names are used in bindings for
11643 menu-bar-select-buffer (see `menu-bar-update-buffers').
11644
116452002-02-23 Kim F. Storm <storm@cua.dk>
11646
11647 The following changes rework my patch of 2002-02-06 which
11648 added command remapping by entering the commands directly into
11649 the keymaps. Now, command remapping uses an explicit `remap'
11650 prefix in the keymaps, i.e. [remap COMMAND].
11651
11652 * keymap.c (Qremap, remap_command_vector): New variables.
11653 (is_command_symbol): Removed function.
11654 (Fdefine_key): No longer accept a symbol for KEY.
11655 Added validation of [remap COMMAND] argument for KEY.
11656 The DEF is no longer required to be a symbol when remapping a command.
11657 (Fremap_command): New function to remap command through keymaps.
11658 (Flookup_key): Perform command remapping initiated by
11659 Fremap_command directly for speed.
11660 (Fkey_binding): Use Fremap_command for command remapping.
11661 (where_is_internal): Handle new command remapping representation.
11662 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11663 staticpro them. Defsubr Fremap_command.
11664
11665 * keymap.h (Fremap_command): Declare extern.
11666 (is_command_symbol): Remove extern.
11667
11668 * keyboard.c (command_loop_1): Use Fremap_command for command
11669 remapping; now try command remapping for all symbols.
11670
116712002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11672
11673 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11674
116752002-02-23 Jason Rumney <jasonr@gnu.org>
11676
11677 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11678 on the string before encoding it.
11679 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11680 after decoding it.
11681
11682 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11683
116842002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11685
11686 * w32term.c (enter_timestamp): Remove unused static variable to
11687 prevent warning.
11688
11689 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11690
116912002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11692
11693 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11694
11695 * xselect.c (selection_data_to_lisp_data): Fix last change.
11696
116972002-02-22 Jason Rumney <jasonr@gnu.org>
11698
11699 * w32term.h (struct w32_output): New member menu_command_in_progress.
11700
11701 * w32menu.c (menubar_selection_callback): Free the menu and
11702 clear the menu_command_in_progress flag.
11703
11704 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11705 (menu_free_timer): New variable.
11706 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11707 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11708 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11709 menu command is in progress.
11710 <WM_COMMAND>: Set the menu_command_in_progress flag.
11711 Kill any menu_free_timer that is running.
11712
11713 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11714 Call ExtTextOutA rather than ExtTextOut.
11715
117162002-02-22 Eli Zaretskii <eliz@gnu.org>
11717
11718 * puresize.h (BASE_PURESIZE): Increase to 755000.
11719
117202002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11721
11722 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11723 on the string before encoding it.
11724 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11725 after decoding it.
11726
117272002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11728
11729 Support for ICCCM Extended Segments in X selections:
11730
11731 * xselect.c <Qcompound_text_no_extensions>: New variable.
11732 (syms_of_xselect): Intern and staticpro it.
11733 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11734 selection text.
11735 (lisp_data_to_selection_data): If next-selection-coding-system is
11736 compound-text-no-extensions, set the type of selection to be
11737 compound-text.
11738
11739 * xterm.h (x_encode_text): Update prototype.
11740
11741 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11742 callers changed. If SELECTIONP is non-zero, run the
11743 pre-write-conversion function before encoding the selection text.
11744
117452002-02-21 Kim F. Storm <storm@cua.dk>
11746
11747 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11748
11749 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11750 Correct composing of language-change event.
11751
117522002-02-20 Kim F. Storm <storm@cua.dk>
11753
11754 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11755 bindings at PT when building menu (the menu is not updated often
11756 enough for this to work reliable).
11757 (tool_bar_items): Likewise.
11758 (current_active_maps): Removed unused (and buggy) function.
11759
117602002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11761
11762 * xfns.c (gif_load): Use correct width and height for GIF images.
11763
117642002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11765
11766 * floatfns.c (Fatan): Accept an optional second arg and call
11767 atan2 if passed 2 args.
11768
117692002-02-18 Jason Rumney <jasonr@gnu.org>
11770
11771 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11772
117732002-02-17 Jason Rumney <jasonr@gnu.org>
11774
11775 * w32term.c (x_autoselect_window_p): New variable.
11776 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11777 (note_mouse_movement): Use it.
11778
11779 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11780
11781 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11782
11783 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11784 New variables.
11785 (syms_of_w32fns): Intern and staticpro them.
11786 (x_frame_parms) <"fullscreen">: New parameter.
11787 (x_fullscreen_move, x_set_fullscreen): New functions.
11788 (x_set_frame_parameters): Support Qfullscreen.
11789 (x_real_positions): Save x/y_pixels_diff frame params.
11790 (x_figure_window_size): Support full-screen frames.
11791 (Fx_create_frame): Default the fullscreen parameter.
11792
11793 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11794 (x_fullscreen_adjust): New functions.
11795 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11796 fullscreen. Call x_check_fullscreen_move, and set the
11797 want_fullscreen member of output_data.w32
11798 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11799
11800 * w32term.h: New enum for FULLSCREEN_* constants.
11801 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11802 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11803 (x-fullscreen-adjust): New prototype.
11804
118052002-02-17 Kim F. Storm <storm@cua.dk>
11806
11807 * frame.c: (Vmouse_highlight): New variable.
11808 (syms_of_frame): DEFVAR_LISP it.
11809
11810 * frame.h: (Vmouse_highlight): Declare extern.
8a8e19a3 11811
048addec 11812 * xterm.h (struct x_display_info): Add mouse_face_hidden.
8a8e19a3 11813
048addec
JD
11814 * xterm.c (disable_mouse_highlight): Removed variable.
11815 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11816 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11817 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11818 and on after keyboard input.
11819 (x_term_init): Initialize mouse_face_hidden.
8a8e19a3 11820
048addec 11821 * msdos.h (struct display_info): Add mouse_face_hidden.
8a8e19a3 11822
048addec
JD
11823 * msdos.c (disable_mouse_highlight): Removed variable.
11824 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11825 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11826 (internal_terminal_init): Initialize mouse_face_hidden.
11827 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11828 and on after keyboard input.
4f1b1854 11829
048addec 11830 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
4f1b1854 11831
048addec
JD
11832 * w32term.c (disable_mouse_highlight): Removed variable.
11833 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11834 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11835 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11836 and on after keyboard input.
11837 (w32_initialize_display_info): Initialize mouse_face_hidden.
4f1b1854 11838
048addec 118392002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
4f1b1854 11840
048addec
JD
11841 * msdos.c (last_mouse_window): New variable.
11842 (dos_rawgetc): Fix last change--if the mouse is in the same window
11843 as recorded in last_mouse_window, don't select this window.
5cb6905d 11844
048addec 11845 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
5cb6905d 11846
048addec
JD
11847 * msdos.c (x_autoselect_window_p): New variable.
11848 (syms_of_msdos): Defvar it.
11849 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11850 which the last mouse movement occured, unless it is already selected.
437dfb9f 11851
048addec
JD
11852 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11853 New variables.
11854 (syms_of_xdisp): DEVFAR them.
11855 (hscroll_window_tree): Use automatic_hscroll_margin and
11856 Vautomatic_hscroll_step to compute the amount of window scrolling.
437dfb9f 11857
048addec 118582002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9f696a00 11859
048addec
JD
11860 * xterm.c (x-autoselect-window): New variable.
11861 (note_mouse_movement): Use it.
9f696a00 11862
048addec 11863 * keyboard.c: Do not include "systime.h" twice.
d57966d7 11864
048addec 118652002-02-15 Andreas Schwab <schwab@suse.de>
d57966d7 11866
048addec 11867 * puresize.h (BASE_PURESIZE): Increase to 9/5.
d57966d7 11868
048addec 11869 * alloc.c (NSTATICS): Increase to 1280.
74779f52 11870
048addec 118712002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
74779f52 11872
048addec 11873 * alloc.c (NSTATICS): Bump to 1026.
a474d59c 11874
048addec
JD
11875 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11876 (Vx_super_keysym): New variables.
11877 (syms_of_xterm): DEFVAR_LISP them.
11878 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11879 variables to determine which keys to use for the various modifiers.
a474d59c 11880
048addec 118812002-02-13 Kim F. Storm <storm@cua.dk>
fbb70ad9 11882
048addec
JD
11883 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11884 (mode_line_in_non_selected_windows): New variable.
11885 (syms_of_window): DEFVAR_BOOL it.
fbb70ad9 11886
048addec
JD
11887 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11888 Use mode_line_in_non_selected_windows.
11889 (mode_line_in_non_selected_windows): Declare extern.
11890 (Vmode_line_in_non_selected_windows): Removed extern.
2d10309f 11891
048addec 118922002-02-13 Richard M. Stallman <rms@gnu.org>
2d10309f 11893
048addec
JD
11894 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11895 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11896 (Fclear_this_command_keys): Doc fixes.
2d10309f 11897
048addec
JD
11898 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11899 (update_face_from_frame_parameter): Increment face_change_count
11900 and windows_or_buffers_changed to force redisplay using changed faces.
7f2cddf3 11901
048addec
JD
11902 * xdisp.c (QCpropertize): New variable.
11903 (mode_line_proptrans_alist): New variable.
11904 (display_mode_element): New arg PROPS; all calls changed.
11905 Implement this, for strings.
11906 Handle literal output of strings by sharing the
11907 main-line code for strings, using local var `literal'.
11908 Handle :propertize feature.
11909 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11910 mode_line_proptrans_alist.
0b1e6b54 11911
048addec 119122002-02-11 Kim F. Storm <storm@cua.dk>
7f2cddf3 11913
048addec
JD
11914 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11915 (syms_of_window): DEFVAR_LISP it.
7f2cddf3 11916
048addec
JD
11917 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11918 (CURRENT_MODE_LINE_FACE_ID): Use it.
11919 (Vmode_line_in_non_selected_windows): Declare extern.
e17144de 11920
048addec
JD
11921 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11922 to get mode line face.
e17144de 11923
048addec 119242002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11925
048addec
JD
11926 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11927 variables; cus-start.el doesn't need them anymore.
44368f8f 11928
048addec 119292002-02-09 Kim F. Storm <storm@cua.dk>
f884b6f4 11930
048addec
JD
11931 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11932 reduction. This fixes a display problem where stray newlines were
11933 inserted in the window (corrected by C-l). Clarified code (IMHO).
6637c996 11934
048addec 119352002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
6637c996 11936
048addec 11937 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
6637c996 11938
048addec 11939 * xdisp.c (display_mode_lines): Fix last change.
453c5510 11940
048addec 119412002-02-09 Jason Rumney <jasonr@gnu.org>
453c5510 11942
048addec
JD
11943 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11944 match each other.
11945 (w32_load_system_font): Prevent Cleartype fonts from loading.
11946 (Fx_show_tip): Ensure tip frames are above other topmost windows.
d1d070e3 11947
048addec 119482002-02-09 Kim F. Storm <storm@cua.dk>
d1d070e3 11949
048addec
JD
11950 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11951 (CURRENT_MODE_LINE_HEIGHT): Use it.
11952 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11953
048addec
JD
11954 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11955 (pos_visible_p, handle_face_prop): Likewise.
11956 (display_mode_lines): Likewise, but for the real selected window.
11957 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
9ec1bdb6 11958
048addec
JD
11959 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11960 in non-selected windows.
11961 (realize_basic_faces): Realize it.
11962 (syms_of_term): Intern and staticpro it.
308dd672 11963
048addec 119642002-02-08 Kim F. Storm <storm@cua.dk>
edde72f6 11965
048addec
JD
11966 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11967 Changed mail addresses to emacs-devel@gnu.org.
308dd672 11968
048addec 119692002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
3c1e6b46 11970
048addec
JD
11971 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11972 ~user, and there's no such user, don't discard everything before ~user.
03950b5b 11973
048addec 11974 * floatfns.c (Fround): Doc fix.
3c1e6b46 11975
048addec 119762002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c1e11810 11977
048addec 11978 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
c1e11810 11979
048addec 119802002-02-07 Stefan Monnier <monnier@cs.yale.edu>
1996baee 11981
048addec 11982 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
1996baee 11983
048addec 119842002-02-07 Kim F. Storm <storm@cua.dk>
0065bb74 11985
048addec
JD
11986 * keymap.c (where_is_internal): Only check whether definition is
11987 remapped if it fulfills is_command_symbol.
0065bb74 11988
048addec 119892002-02-07 Andreas Schwab <schwab@suse.de>
0065bb74 11990
048addec 11991 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
b5cb6072 11992
048addec 11993 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
b5cb6072 11994
048addec 119952002-02-06 Kim F. Storm <storm@cua.dk>
15fff01d 11996
048addec
JD
11997 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11998 defining command remapping. Doc updated.
11999 (Flookup_key): Remap command through keymap if KEY is a symbol.
12000 (is_command_symbol): New function.
12001 (Fkey_binding): Use it. New optional argument NO-REMAP.
12002 Doc updated. Callers changed. Perform command remapping via
12003 recursive call unless that arg is non-nil.
12004 (where_is_internal): New argument no_remap. Callers changed.
12005 Call recursively to find original key bindings for a remapped
12006 comand unless that arg is non-nil.
12007 (Fwhere_is_internal): New optional argument NO-REMAP.
12008 Doc updated. Callers changed. Pass arg to where_is_internal.
0065bb74 12009
048addec
JD
12010 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12011 (is_command_symbol): Added prototype.
0d8466cc 12012
048addec
JD
12013 * keyboard.c (Vthis_original_command): New variable.
12014 (syms_of_keyboard): DEFVAR_LISP it.
12015 (command_loop_1): Set it, and perform command remapping.
15fff01d 12016
048addec 120172002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2fae9111 12018
048addec 12019 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
2d6c1fc0 12020
048addec 120212002-02-06 Jason Rumney <jasonr@gnu.org>
07025a55 12022
048addec 12023 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
07025a55 12024
048addec 120252002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
07025a55 12026
048addec 12027 * charset.c (get_charset_id): Use if-else instead of ?:.
3a232704 12028
048addec 120292002-02-06 Richard M. Stallman <rms@gnu.org>
539e92ad 12030
048addec 12031 * filelock.c (S_ISLNK): Define if not defined.
3a232704 12032
048addec 120332002-02-03 Richard M. Stallman <rms@gnu.org>
0cb8bb48 12034
048addec 12035 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
539e92ad 12036
048addec
JD
12037 * lread.c (read1): Redesign strategy for force_multibyte and
12038 force_singlebyte. Now is_multibyte records whether read_buffer
12039 is multibyte. Encountering any multibyte character makes it so.
4e02881b 12040
048addec 120412002-02-02 Stefan Monnier <monnier@cs.yale.edu>
4e02881b 12042
048addec
JD
12043 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12044 with the same sequence, map that sequence to f10 rather than f0.
1ab964d7 12045
048addec 120462002-02-03 Andreas Schwab <schwab@suse.de>
1ab964d7 12047
048addec
JD
12048 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12049 latter never being defined on GNU/Linux.
749f499f 12050
048addec 120512002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
749f499f 12052
048addec
JD
12053 * xfaces.c (realize_default_face): Don't set the weight and slant of
12054 the default face to Qnormal, unless these attributes are unspecified.
b5d9aaba 12055
048addec 120562002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3a232704 12057
048addec
JD
12058 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12059 Call cancel_hourglass unconditionally.
d0fd26dd 12060
048addec
JD
12061 * eval.c (Fsignal): Remove duplicated declaration of
12062 the variable `display_hourglass_p'.
b4c45162 12063
048addec 120642002-01-31 Richard M. Stallman <rms@gnu.org>
d0fd26dd 12065
048addec 12066 * editfns.c (region_limit): Nicer error message.
c95eaa61 12067
048addec
JD
12068 * coding.c (decode_composition_emacs_mule):
12069 Give up if NCOMPONENT gets too large to index `component'.
c95eaa61 12070
048addec
JD
12071 * callint.c (check_mark): New arg to specify clearer error message.
12072 Callers changed.
c95eaa61 12073
048addec 120742002-01-27 Richard M. Stallman <rms@gnu.org>
c95eaa61 12075
048addec 12076 * minibuf.c (Fcompleting_read): Doc fix.
c95eaa61 12077
048addec 120782002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c95eaa61 12079
048addec
JD
12080 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12081 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12082 Fix doc-strings.
c95eaa61 12083
048addec 120842002-01-26 Richard M. Stallman <rms@gnu.org>
c95eaa61 12085
048addec 12086 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
c95eaa61 12087
048addec
JD
12088 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12089 and scroll_up_aggressively.
c95eaa61 12090
048addec 120912002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
31877e0a 12092
048addec 12093 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
31877e0a 12094
048addec 120952002-01-25 Stefan Monnier <monnier@cs.yale.edu>
e2c3786a 12096
048addec
JD
12097 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12098 (Fprevious_property_change, Fprevious_single_property_change):
12099 Stay within the narrowed-buffer boundaries.
e2c3786a 12100
048addec 121012002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
c513fc03 12102
048addec
JD
12103 * term.c (Ftty_display_color_cells): New function.
12104 (syms_of_term): Defsubr it.
12105 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12106 argument name to DISPLAY. Doc fix.
bf794306 12107
048addec
JD
12108 * dispextern.h: Add prototype for set_tty_color_mode and
12109 tty_setup_colors.
bf794306 12110
048addec 121112002-01-24 Jason Rumney <jasonr@gnu.org>
bf794306 12112
048addec
JD
12113 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12114 If region left to draw is not what was expected, mark the frame as
12115 garbaged.
62582985 12116
048addec
JD
12117 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12118 Combine the regions returned by BeginPaint and GetUpdateRect.
c513fc03 12119
048addec 121202002-01-23 Jason Rumney <jasonr@gnu.org>
3509a04c 12121
048addec
JD
12122 * w32term.c (x_update_window_begin): Only hide caret if
12123 w32_use_visible_system_caret is set.
12124 (x_update_window_end): Only show caret if
12125 w32_use_visible_system_caret is set.
12126 (syms_of_w32term): Handle SystemParametersInfo call failing.
3509a04c 12127
048addec 12128 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
3509a04c 12129
048addec 121302002-01-22 Richard M. Stallman <rms@gnu.org>
3509a04c 12131
048addec
JD
12132 * unexelf.c (unexec): Define n so as to cause compilation error
12133 for the code where people have often written n instead of nn.
1e9a6186 12134
048addec 12135 * .gdbinit (hookpost-run): Defined.
1e9a6186 12136
048addec 121372002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
e4e34e31 12138
048addec 12139 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
e4e34e31 12140
048addec 121412002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4521d1fc 12142
048addec
JD
12143 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12144 if fullscreen is being set.
7c75be36 12145
048addec 121462002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4521d1fc 12147
048addec
JD
12148 * minibuf.c (Fminibuffer_contents)
12149 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12150 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
4521d1fc 12151
048addec 121522002-01-21 Richard M. Stallman <rms@gnu.org>
4521d1fc 12153
048addec 12154 * window.c (check_frame_size): Fix minimum height calculation.
93dec019 12155
048addec 121562002-01-20 Ken Raeburn <raeburn@gnu.org>
93dec019 12157
048addec
JD
12158 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12159 height before comparison.
12160 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
905cc05a 12161
048addec 121622002-01-20 Jason Rumney <jasonr@gnu.org>
2ed06289 12163
048addec
JD
12164 * w32term.c (w32_system_caret_width): Remove.
12165 (w32_use_visible_system_caret): New user flag.
12166 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12167 Windows reports a screen reader running.
12168 (x_update_window_begin): Hide the system caret.
12169 (x_update_window_end): Show the system caret.
12170 (x_display_and_set_cursor): Don't draw a cursor when
12171 w32_use_visible_system_caret is set. Do not adjust width.
0e79d667 12172
048addec
JD
12173 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12174 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12175 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12176 the user requests it. Use system default width when creating.
12177 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
0e79d667 12178
048addec
JD
12179 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12180 New window messages.
905cc05a 12181
048addec 121822002-01-20 Richard M. Stallman <rms@gnu.org>
82a7ab23 12183
048addec 12184 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
d75bec6a 12185
048addec 121862002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
52dcb476 12187
048addec 12188 * doprnt.c (doprnt1): Fix typos in error call.
82a7ab23 12189
048addec 121902002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
82a7ab23 12191
048addec 12192 * unexelf.c (unexec) [__sgi]: Support the .got sections.
82a7ab23 12193
048addec 121942002-01-20 Jason Rumney <jasonr@gnu.org>
4d0fa4f3 12195
048addec
JD
12196 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12197 that Windows returns. If a double check fails, try to guess how
12198 ExtTextOut is going to act.
4d0fa4f3 12199
048addec
JD
12200 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12201 in place of stricmp.
12202 (w32_list_synthesized_fonts): Removed.
12203 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12204 (struct enumfont_t): New element; list.
12205 (enum_font_cb2): List all style and charset variations of a font.
12206 (Fw32_select_font): New optional argument; include_proportional.
12207 Exclude vertical fonts. Exclude proportional fonts unless
12208 include_proportional is non-nil.
12209 (w32_enable_synthesized_fonts): Change to a boolean.
12210 (Fw32_send_sys_command): Doc fix.
493faf20 12211
048addec 122122002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
493faf20 12213
048addec
JD
12214 * dispnew.c (update_frame): Move the variable `tem' to the block
12215 where it is used.
4971e491 12216
048addec 122172002-01-19 Jason Rumney <jasonr@gnu.org>
4971e491 12218
048addec
JD
12219 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12220 call to face-set-after-frame-default.
4971e491 12221
048addec 122222002-01-18 Richard M. Stallman <rms@gnu.org>
d911a0fa 12223
048addec
JD
12224 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12225 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
d911a0fa 12226
048addec 122272002-01-17 Richard M. Stallman <rms@gnu.org>
d911a0fa 12228
048addec
JD
12229 * window.c (enlarge_window): When exceeding size of parent,
12230 directly delete all the siblings instead of trying to resize it.
201c831a 12231
048addec 122322002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
201c831a 12233
048addec 12234 * term.c (set_tty_color_mode): Remove unused variable `tem'.
201c831a 12235
048addec 122362002-01-16 Henrik Enberg <henrik@enberg.org>
34e39c95 12237
048addec 12238 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
34e39c95 12239
048addec 122402002-01-16 Kim F. Storm <storm@cua.dk>
d77fbc16 12241
048addec
JD
12242 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12243 is invisible. This can happen if cursor is on top line of a
12244 window, and we switch to a buffer with a header line.
d77fbc16 12245
048addec 12246 * w32term.c (x_erase_phys_cursor): Ditto.
61e3b944 12247
048addec 122482002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
61e3b944 12249
048addec
JD
12250 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12251 `dont_resize' only when used.
61e3b944 12252
048addec 12253 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
70da46c3 12254
048addec 122552002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
70da46c3 12256
048addec
JD
12257 * xdisp.c (display_mode_element): When computing charpos, depend
12258 on multibyteness of elt, not the text in field.
8af01033 12259
048addec 122602002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8af01033 12261
048addec
JD
12262 * buffer.c (Fkill_all_local_variables):
12263 Increment `update_mode_lines' only once.
7363986a 12264
048addec 122652002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
7363986a 12266
048addec
JD
12267 * lisp.h (adjust_after_replace_noundo)
12268 (Fupdate_coding_systems_internal): Add prototypes.
d9e6c4b1 12269
048addec 12270 * sound.c (Fplay_sound): Initialize header_size also for :data case.
d20fc48a 12271
048addec 122722002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
d9e6c4b1 12273
048addec
JD
12274 Support for the --color command-line argument and tty-color-mode
12275 frame parameter:
f1a85b89 12276
048addec
JD
12277 * term.c (tty_default_color_capabilities, tty_setup_colors)
12278 (set_tty_color_mode): New functions.
12279 (term_init): Call tty_default_color_capabilities.
12280 (Qtty_color_mode_alist): New variable.
12281 (syms_of_term): Intern and staticpro it.
f1a85b89 12282
048addec
JD
12283 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12284 frames.
12285 (do_switch_frame): For termcap frames, switch the tty
12286 color mode as specified by the frame's parameters.
12287 (Qtty_color_mode): New variable.
12288 (syms_of_frame): Intern and staticpro it.
3a62677f 12289
048addec
JD
12290 * emacs.c (USAGE2): Add the --color option.
12291 (standard_args): Ditto.
72244db2 12292
048addec
JD
122932002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12294
12295 * xterm.h (struct x_output): New members want_fullscreen,
12296 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12297 y_pixels_outer_diff.
12298 New enum for FULLSCREEN_* constants.
12299 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12300 is NULL.
12301 (x_fullscreen_adjust): Add prototype.
3a62677f 12302
048addec
JD
12303 * emacs.c (USAGE2): Add the new full-screen arguments.
12304 (standard_args): Ditto.
3a62677f 12305
048addec
JD
12306 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12307 New variables.
12308 (syms_of_xfns): Intern and staticpro them.
12309 (x_frame_parms) <"fullscreen">: New parameter.
12310 (x_fullscreen_move, x_set_fullscreen): New functions.
12311 (x_set_frame_parameters): Support for Qfullscreen.
12312 (x_real_positions): More accurate computation of the frame position.
12313 (x_figure_window_size): Support full-screen frames.
12314 (Fx_create_frame): Default the fullscreen parameter.
3a62677f 12315
048addec
JD
12316 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12317 (XTread_socket) <Expose>: Call x_check_fullscreen.
12318 <ConfigureNotify>: Don't resize to fullscreen.
12319 Call x_check_fullscreen_move, and set the want_fullscreen member of
12320 output_data.x.
3a62677f 12321
048addec 123222002-01-13 Jason Rumney <jasonr@gnu.org>
9d113d9d 12323
048addec
JD
12324 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12325 for mice with more than 3 buttons.
b8523839 12326
048addec
JD
12327 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12328 (w32_read_socket): Handle new "XBUTTON" messages.
9464dea4 12329
048addec
JD
12330 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12331 (syms_of_w32fns): DEFVAR_BOOL it.
12332 (w32_wnd_proc): Handle new "XBUTTON" messages.
9d113d9d 12333
048addec 123342002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
70ec1377 12335
048addec 12336 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
70ec1377 12337
048addec 123382002-01-13 Andreas Schwab <schwab@suse.de>
92f7dd37 12339
048addec 12340 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
92f7dd37 12341
048addec 123422002-01-12 Andreas Schwab <schwab@suse.de>
c93674bb 12343
048addec
JD
12344 * .gdbinit (xbuffer): Remove address operator since data is now a
12345 pointer.
c93674bb 12346
048addec 123472002-01-11 Richard M. Stallman <rms@gnu.org>
59b59892 12348
048addec 12349 * insdel.c (adjust_after_replace_noundo): New function.
59b59892 12350
048addec 12351 * coding.c (code_convert_region): Don't copy old text if undo disabled.
c6ea2775 12352
048addec 123532002-01-09 Jason Rumney <jasonr@gnu.org>
c6ea2775 12354
048addec
JD
12355 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12356 when checking for multiple frames.
91175673 12357
048addec 123582002-01-08 Richard M. Stallman <rms@gnu.org>
91175673 12359
048addec
JD
12360 * window.c (delete_window): Rewrite the code for changing the
12361 selected window to handle the case where WINDOW is not a leaf.
91175673 12362
048addec 123632002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
e0fead5d 12364
048addec
JD
12365 * process.c (send_process): Set src_multibyte to 1 after the call
12366 top setup_coding_system, not before the call.
e0fead5d 12367
048addec 123682002-01-07 Jason Rumney <jasonr@gnu.org>
e0fead5d 12369
048addec
JD
12370 * xmenu.c (set_frame_menubar, xmenu_show):
12371 (xdialog_show): Initialize wv->help to Qnil.
c186cdb3 12372
048addec
JD
12373 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12374 (w32_dialog_show): Initialize wv->help to Qnil.
c186cdb3 12375
048addec 123762002-01-06 Jason Rumney <jasonr@gnu.org>
c186cdb3 12377
048addec 12378 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
c186cdb3 12379
048addec 12380 * w32menu.c (w32_menu_display_help): Revert last change.
58cfce98 12381
048addec 12382 * xmenu.c (menu_highlight_callback): Revert last change.
58cfce98 12383
048addec 123842002-01-06 Andreas Schwab <schwab@suse.de>
62854fe2 12385
048addec
JD
12386 * insdel.c (make_gap_larger): Make sure buffer size does not
12387 overflow range of int.
62854fe2 12388
048addec 123892002-01-05 Jason Rumney <jasonr@gnu.org>
656f46bb 12390
048addec
JD
12391 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12392 OVERLAPS_P.
656f46bb 12393
048addec 12394 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
656f46bb 12395
048addec
JD
12396 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12397 to the left or to the right of the pointer, put it against
12398 the left screen edge.
12399 (x_frame_parms): Add missing braces around initializer.
036e218d 12400
048addec
JD
12401 * w32term.c (x_setup_relief_colors): Don't compute an image's
12402 background color if it doesn't have a Pixmap.
12403 (notice_overwritten_cursor): Don't depend on
12404 output_cursor and updated_area. Compare pixel coordinates with
12405 window's cursor pixel coordinates.
12406 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12407 Call notice_overwritten_cursor with new arg list.
12408 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12409 unconditionally.
12410 (x_draw_image_relief): Use predefined macro instead of
12411 constant when the value of `tool_bar_button_relief' is negative.
036e218d 12412
048addec 12413 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
7ddb2c16 12414
048addec 124152002-01-04 Richard M. Stallman <rms@gnu.org>
7ddb2c16 12416
048addec 12417 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
ace9b298 12418
048addec 124192002-01-03 Richard M. Stallman <rms@gnu.org>
90647b07 12420
048addec
JD
12421 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12422 (Fkey_binding): Try the `keymap' property map first.
12423 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12424 minor mode bindings.
90647b07 12425
048addec 124262002-01-03 Kim F. Storm <storm@cua.dk>
ace9b298 12427
048addec 12428 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
ace9b298 12429
048addec 124302002-01-02 Richard M. Stallman <rms@gnu.org>
ace9b298 12431
048addec
JD
12432 * keyboard.c (read_key_sequence): Handle the keymap property
12433 before minor mode maps.
9fbc32aa 12434
048addec
JD
12435 * editfns.c (Fformat): Update thissize from field_width
12436 based on the actual width, in the string case.
036e218d 12437
048addec 124382002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fbc32aa 12439
048addec
JD
12440 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12441 when used as truth value to prevent gcc warnings.
9fbc32aa 12442
048addec
JD
12443 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12444 * w32proc.c: Include <config.h>.
9fbc32aa 12445
048addec 124462002-01-01 Andreas Schwab <schwab@suse.de>
9fbc32aa 12447
048addec
JD
12448 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12449 not EMACS_INT, to make them compatible with DEFVAR_INT.
12450 * lisp.h (max_specpdl_size): Adjust declaration.
9fbc32aa 12451
048addec 124522002-01-01 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12453
048addec
JD
12454 * print.c (print_object): Test print_escape_nonascii only for
12455 unibyte strings.
12456 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12457 when outputting to a multibyte buffer.
9fbc32aa 12458
048addec 124592001-12-29 Richard M. Stallman <rms@gnu.org>
9fbc32aa 12460
048addec
JD
12461 * print.c (print_object): In multibyte string, use hex escapes.
12462 Use octal only for unibyte strings.
12463 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
0142178a 12464
048addec
JD
12465 * lread.c (read_escape): New arg BYTEREP for reporting whether
12466 escape forces unibyte or multibyte.
12467 (read1): When reading a string, take note of that info.
0142178a 12468
048addec 124692001-12-29 Ken Raeburn <raeburn@gnu.org>
d4824a5d 12470
048addec
JD
12471 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12472 comparison to test lisp value returned by Fget.
d4824a5d 12473
048addec 124742001-12-29 Richard M. Stallman <rms@gnu.org>
b1356234 12475
048addec 12476 * lisp.h (max_specpdl_size): Add declaration.
b1356234 12477
048addec 12478 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
3ce081f5 12479
048addec
JD
12480 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12481 Handle modifier bits. Correct typo in error message.
99e380ee 12482
048addec 124832001-12-28 Richard M. Stallman <rms@gnu.org>
3ce081f5 12484
048addec
JD
12485 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12486 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12487 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12488 Update calls to Fdefine_abbrev.
12489 (write_abbrev): Update for changed data format.
12490 Don't list "system" abbrevs.
12491 (Fexpand_abbrev): Update use count with new data format.
12492 (describe_abbrev): Update for changed data format.
12493 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
66458f32 12494
048addec 12495 * config.in (HAVE_MBSINIT): Add #undef.
66458f32 12496
048addec 12497 * strftime.c (mbsinit): Define as no-op if not available.
66458f32 12498
048addec
JD
12499 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12500 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
59a86c99 12501
048addec
JD
12502 * keymap.c (Flookup_key): Error message if key has wrong data type.
12503 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12504 (exclude_key): New variable.
59a86c99 12505
048addec 125062001-12-28 Gerd Moellmann <gerd@gnu.org>
eb77a5f4 12507
048addec
JD
12508 * xterm.c (x_setup_relief_colors): Don't compute an image's
12509 background color if it doesn't have a Pixmap.
eb77a5f4 12510
048addec
JD
12511 * xterm.c (notice_overwritten_cursor): Don't depend on
12512 output_cursor and updated_area. Compare pixel coordinates with
12513 window's cursor pixel coordinates.
12514 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12515 Call notice_overwritten_cursor with new arg list.
12516 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12517 unconditionally.
eb77a5f4 12518
048addec
JD
12519 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12520 height of the cursor line to the amount to scroll.
eb77a5f4 12521
048addec 125222001-12-27 Richard M. Stallman <rms@gnu.org>
bb313871 12523
048addec
JD
12524 * intervals.c (set_point_both): The position after an invisible,
12525 intangible character is not an acceptable stopping point.
bb313871 12526
048addec 125272001-12-27 Ken Raeburn <raeburn@gnu.org>
55b43a63 12528
048addec
JD
12529 * window.c (enlarge_window): In new preserve_before code, convert
12530 CURBEG from lisp object to integer before doing arithmetic.
6052529b 12531
048addec 125322001-12-27 Richard M. Stallman <rms@gnu.org>
3ce081f5 12533
048addec 12534 * bytecode.c (Fbyte_code): Undo previous change.
3ce081f5 12535
048addec 125362001-12-26 Kim F. Storm <storm@cua.dk>
3ce081f5 12537
048addec
JD
12538 * keyboard.c (record_char): Ignore duplicate help-echo events only
12539 separated by mouse-movement. When tracking mouse, only record
12540 first and last mouse-movement event in same window.
12541 Don't record mouse-movement events in keyboard macros.
3ce081f5 12542
048addec 125432001-12-25 Richard M. Stallman <rms@gnu.org>
55b43a63 12544
048addec
JD
12545 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12546 (Fenlarge_window): New arg PRESERVE_BEFORE.
111ed14e 12547
048addec
JD
12548 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12549 instead of Fstring_as_unibyte.
9fabb2f5 12550
048addec 125512001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9fabb2f5 12552
048addec 12553 The following changes remove mocklisp support:
9fabb2f5 12554
048addec 12555 * mocklisp.h, mocklisp.c: Files removed.
111ed14e 12556
048addec
JD
12557 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12558 `Qmocklisp' and `Qmocklisp_arguments'.
12559 Remove prototype of syms_of_mocklisp.
2fa0eedf 12560
048addec 12561 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
d1420435 12562
048addec
JD
12563 * callint.c: Do not include mocklisp.h.
12564 (Fcall_interactively): Do not test for mocklisp case.
2fa0eedf 12565
048addec
JD
12566 * eval.c: Remove variables `Qmocklisp_arguments',
12567 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12568 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12569 Do not test for mocklisp case.
12570 (Fwhile): Remove unused variable `tem'.
12571 (syms_of_eval): Remove variable `moclisp-arguments'.
ebcbef4e 12572
048addec 12573 * data.c (wrong_type_argument): Remove mocklisp case.
5c131048 12574
048addec 12575 * doc.c (Fdocumentation): Remove mocklisp case.
5c131048 12576
048addec 12577 * emacs.c (main): Do not call syms_of_mocklisp.
5c131048 12578
048addec 125792001-12-21 Richard M. Stallman <rms@gnu.org>
96d276c3 12580
048addec
JD
12581 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12582 to the left or to the right of the pointer, put it against
12583 the left screen edge.
6108b49c 12584
048addec 125852001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
96d276c3 12586
048addec
JD
12587 * Makefile.in (distclean): Remove .gdbinit if we are building
12588 outside the source tree.
5eea19a4 12589
048addec 125902001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
5eea19a4 12591
048addec 12592 * w32.c (emacs_root_dir): New function.
5eea19a4 12593
048addec 12594 * msdos.c (emacs_root_dir): New function.
5eea19a4 12595
048addec
JD
12596 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12597 of the current drive as the fallback for default_directory.
438e57dd 12598
048addec
JD
12599 * dired.c (file_name_completion): Run the elements of
12600 completion-ignored-extensions through ENCODE_FILE.
438e57dd 12601
048addec
JD
12602 * lisp.h (scmp): Remove prototype, since it's now a static
12603 function private to dired.c.
c88e5347 12604
048addec 126052001-12-18 Richard M. Stallman <rms@gnu.org>
c88e5347 12606
048addec
JD
12607 * dired.c (scmp): Function moved from minibuf.c.
12608 Delete multibyte handling--used only on encoded strings.
59ce1461 12609
048addec 12610 * minibuf.c (scmp): Function moved to dired.c.
59ce1461 12611
048addec 12612 * fns.c (merge): Add QUIT call.
59ce1461 12613
048addec 126142001-12-18 Dave Love <fx@gnu.org>
8727d588 12615
048addec
JD
12616 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12617 language/georgian.el.
8727d588 12618
048addec 126192001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
cc63037e 12620
048addec
JD
12621 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12622 lisp/Makefile.in:DONTCOMPILE.
cc63037e 12623
048addec 126242001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
cc63037e 12625
048addec
JD
12626 * xdisp.c (window_box_height): Do not return negative values.
12627 From Gerd Moellmann <gerd@gnu.org>.
cc63037e 12628
048addec 12629 * keyboard.c (head_table): Add missing braces around initializer.
cc63037e 12630
048addec 12631 * term.c (keys): Likewise.
deece6f5 12632
048addec 12633 * xfns.c (x_frame_parms, visual_classes): Likewise.
deece6f5 12634
048addec 126352001-12-17 Sam Steingold <sds@gnu.org>
1b944d9c 12636
048addec
JD
12637 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12638 patch (COMPOSING_P, not COMPOSING).
28ff4293 12639
048addec 126402001-12-17 Richard M. Stallman <rms@gnu.org>
a395ef6a 12641
048addec 12642 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
a395ef6a 12643
048addec
JD
12644 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12645 before calling decode_coding.
9b46de40 12646
048addec 12647 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
9b46de40 12648
048addec
JD
12649 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12650 instead of only for COMPOSITION_DISABLED.
9b46de40 12651
048addec 126522001-12-16 Richard M. Stallman <rms@gnu.org>
aff37336 12653
048addec 12654 * alloc.c (pure_alloc): After overflow, allocate just a small block.
aff37336 12655
048addec 12656 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
b9937f07 12657
048addec
JD
12658 * buffer.h (struct buffer): New field `display_error_modiff'.
12659 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
b9937f07 12660
048addec 12661 * window.c (Frecenter): Clear display_error_modiff field.
2cd23960 12662
048addec
JD
12663 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12664 Call redisplay_window, but not if display_error_modiff field says no.
12665 (redisplay_window_error): New function.
12666 (displayed_buffer): New variable.
12667 (redisplay_internal, redisplay_windows): Call the new functions
12668 instead of redisplay_window directly.
2cd23960 12669
048addec 126702001-12-15 Richard M. Stallman <rms@gnu.org>
2cd23960 12671
048addec 12672 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
2cd23960 12673
048addec 126742001-12-14 Andrew Innes <andrewi@gnu.org>
a4184c1c 12675
048addec 12676 * makefile.w32-in (EMACSLOADPATH): Define.
f9711de4 12677 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
048addec 12678 (bootstrap-temacs): Remove dependency on bootstrap-clean.
a4184c1c 12679
048addec 126802001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
f6fa0866 12681
048addec
JD
12682 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12683 parameter have a numeric value all the time.
f6fa0866 12684
048addec 12685 * w32fns.c (x_report_frame_params): Likewise.
f4ca4b00 12686
048addec 126872001-12-12 Richard M. Stallman <rms@gnu.org>
f4ca4b00 12688
048addec 12689 * fileio.c (Fwrite_region): Doc fix.
f4e25f94 12690
048addec
JD
12691 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12692 (redisplay_internal): Call clear_image_cache only for window terminals.
f4e25f94 12693
048addec 126942001-12-12 Gerd Moellmann <gerd@gnu.org>
91c153e2 12695
048addec
JD
12696 * xdisp.c (move_it_vertically_backward): Change heuristic
12697 for the case that we didn't move far enough initially.
91c153e2 12698
048addec
JD
12699 * window.c (Frecenter): Simplify computation in the case of window
12700 system frames and ARG < 0; use window_box_height.
65b7d3e7 12701
048addec 127022001-12-11 Richard M. Stallman <rms@gnu.org>
65b7d3e7 12703
048addec
JD
12704 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12705 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
6b5f6311 12706
048addec 127072001-12-11 Andrew Innes <andrewi@gnu.org>
6b5f6311 12708
048addec
JD
12709 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12710 arg is negative.
be676094 12711
048addec 127122001-12-11 Richard M. Stallman <rms@gnu.org>
be676094 12713
048addec
JD
12714 * m/hp800.h: Split the __hpux conditional into the parts
12715 that are right for GNU/Linux too and the parts that are not.
12716 Use the former if GNU_LINUX.
12717 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
032a857d 12718
048addec 12719 * s/gnu-linux.h (GNU_LINUX): Defined.
032a857d 12720
048addec 127212001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
032a857d 12722
048addec
JD
12723 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12724 `new style' [w/`doc:' keyword].
032a857d 12725
048addec 127262001-12-10 Jason Rumney <jasonr@gnu.org>
b6270150 12727
048addec
JD
12728 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12729 before using.
b6270150 12730
048addec 127312001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
792e5cbd 12732
048addec
JD
12733 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12734 keyword].
98cbb9fa 12735
048addec 127362001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
98cbb9fa 12737
048addec 12738 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
98cbb9fa 12739
048addec 12740 * s/hpux10.h (srand48): Don't undefine.
98cbb9fa 12741
048addec 127422001-12-09 Jason Rumney <jasonr@gnu.org>
792e5cbd 12743
048addec
JD
12744 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12745 Add comment to explain where the struct came from.
12746 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12747 (add_menu_item): Process pop-up menus first to avoid memory leak.
12748 (add_menu_item, w32_menu_display_help): Use `help' field as
12749 Lisp_Object.
12750 (w32_free_submenu_strings): Only free owner-drawn strings.
fa336b91 12751
048addec 127522001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
fa336b91 12753
048addec 12754 * COPYING: Moved back.
fa336b91 12755
048addec
JD
12756 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12757 Add parentheses around && within ||.
077907d4 12758
048addec 12759 * indent.c (compute_motion): Likewise.
aa2af83a 12760
048addec 12761 * intervals.c (merge_properties_sticky): Likewise.
60a653f1 12762
048addec
JD
12763 * coding.c (setup_coding_system, shrink_encoding_region)
12764 (Fdecode_sjis_char): Likewise.
60a653f1 12765
048addec 127662001-12-07 Andreas Schwab <schwab@suse.de>
60a653f1 12767
048addec
JD
12768 * xdisp.c (display_mode_element): Don't read past end of string if
12769 it ends with '%'.
60a653f1 12770
048addec
JD
12771 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12772 can hold.
60a653f1 12773
048addec
JD
12774 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12775 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12776 type changed to Lisp_Object.
12777 (syms_of_data): DEFVAR_LISP them.
60a653f1 12778
048addec 127792001-12-07 Richard M. Stallman <rms@gnu.org>
60a653f1 12780
048addec
JD
12781 * callproc.c (init_callproc): Set Vdata_directory based on the source
12782 location whenever Emacs was run uninstalled.
60a653f1 12783
048addec 127842001-12-06 Paul Eggert <eggert@twinsun.com>
60a653f1 12785
048addec
JD
12786 * config.in (HAVE_WORKING_VFORK): New #undefs.
12787 * process.c (create_process):
12788 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12789 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12790 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12791 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12792 * m/intel386.h (HAVE_VFORK): Likewise.
12793 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12794 * m/mips.h (HAVE_VFORK): Likewise.
12795 * s/freebsd.h (vfork): Remove #define.
12796 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12797 * s/usg5-4-2.h: Fix comment about vfork.
60a653f1 12798
048addec 127992001-12-06 Richard M. Stallman <rms@gnu.org>
60a653f1 12800
048addec
JD
12801 * s/hpux10.h (random): Add undef.
12802 (HAVE_RANDOM): Define it just once.
60a653f1 12803
048addec 128042001-12-06 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12805
048addec 12806 * eval.c: Undo last change: the standard syntax is not wanted.
60a653f1 12807
048addec 128082001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 12809
048addec
JD
12810 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12811 scroll bars of the frame before deleting the frame itself. If the
12812 frame has a widget, delete the frame with XtDestroyWidget, and do
12813 not call XDestroyWindow before that.
60a653f1 12814
048addec 128152001-12-06 Kim F. Storm <storm@cua.dk>
60a653f1 12816
048addec 12817 * xfns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12818
048addec 12819 * w32fns.c (x_report_frame_params): Return actual fringe widths.
60a653f1 12820
048addec 128212001-12-05 Andrew Innes <andrewi@gnu.org>
60a653f1 12822
048addec
JD
12823 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12824 excessively large.
60a653f1 12825
048addec
JD
12826 * insdel.c (make_gap_larger): New function.
12827 (make_gap_smaller): New function.
12828 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12829 Call make_gap_smaller if arg is negative.
60a653f1 12830
048addec 128312001-12-04 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12832
048addec
JD
12833 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12834 Pass a dummy argument when calling interrupt_signal.
12835 (parse_menu_item): Mark disabled items before checking for empty def.
12836 (read_char_minibuf_menu_prompt): Make safety more visible.
12837 (read_key_sequence): Add a `first_unbound' variable.
12838 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12839 unbound prefix as soon as we can detect it.
60a653f1 12840
048addec
JD
12841 * doc.c (Fsnarf_documentation): Add prototype.
12842 (get_doc_string): Handle negative arguments.
12843 (Fdocumentation): Use AREF and ASIZE.
12844 Move the calls to get_doc_string to a single place.
12845 Don't confuse an interactive-spec for a docstring reference.
12846 (Fdocumentation_property): Take advantage of the fact that
12847 get_doc_string now ignores the sign of the docstring position.
60a653f1 12848
048addec 12849 * eval.c: Use standard syntax for usage in docstrings.
60a653f1 12850
048addec 128512001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12852
a64387ee 12853 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
60a653f1 12854
048addec 128552001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12856
048addec
JD
12857 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12858 constant when the value of `tool_bar_button_relief' is negative.
60a653f1 12859
048addec 128602001-12-02 Richard M. Stallman <rms@gnu.org>
60a653f1 12861
048addec
JD
12862 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12863 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
60a653f1 12864
048addec 12865 * fileio.c (read_non_regular): Delete Fsignal call.
60a653f1 12866
048addec 128672001-12-01 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12868
048addec 12869 * lisp.h (run_hook_list_with_args): Undo last change.
60a653f1 12870
048addec 128712001-12-01 Gerd Moellmann <gerd@gnu.org>
60a653f1 12872
048addec 12873 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
60a653f1 12874
048addec 128752001-12-01 Jason Rumney <jasonr@gnu.org>
60a653f1 12876
f63fd14e 12877 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
60a653f1 12878
048addec
JD
12879 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12880 [!WM_MOUSELEAVE]: Define.
60a653f1 12881
048addec
JD
12882 * w32menu.c (current_popup_menu, get_menu_item_info):
12883 (set_menu_item_info): New vars.
12884 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12885 (w32_menu_show): Set current_popup_menu.
12886 (add_menu_item): Allocate new strings for owner-drawn menu items
12887 and help strings.
12888 Use owner-draw for disabled menu items again.
12889 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12890 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
60a653f1 12891
048addec
JD
12892 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12893 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12894 <WM_EXITMENULOOP>: Free menu strings.
12895 <WM_MOUSELEAVE>: Stop tracking mouse.
12896 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
60a653f1 12897
048addec
JD
12898 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12899 and mouse face.
60a653f1 12900
048addec 129012001-12-01 Kim F. Storm <storm@cua.dk>
60a653f1 12902
048addec
JD
12903 The following changes add left-fringe and right-fringe
12904 frame parameters to adjust fringe widths, or remove one or
12905 both fringes.
60a653f1 12906
048addec
JD
12907 * frame.h (struct frame): Remove trunc_area_pixel_width and
12908 trunc_area_cols fields.
12909 (Qleft_fringe, Qright_fringe): Declare.
12910 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
60a653f1 12911
048addec
JD
12912 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12913 (syms_of_frame): Initialize them.
60a653f1 12914
048addec
JD
12915 * window.c (coordinates_in_window): Handle separate left and right
12916 fringe widths.
60a653f1 12917
048addec
JD
12918 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12919 and fringe_cols fields.
12920 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12921 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12922 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12923 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12924 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12925 (x_compute_fringe_widths): Add prototype.
60a653f1 12926
048addec
JD
12927 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12928 fill fringe evenly with small dashes.
f63fd14e 12929 (x_draw_fringe_bitmap): Clear background if necessary. Align and
048addec
JD
12930 clip the new ZV bitmap to avoid jitter between rows.
12931 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12932 background. Don't draw fringe bitmaps if fringe width is zero.
12933 (x_compute_fringe_widths): New function.
12934 (x_new_font, x_set_window_size_1): Use it.
60a653f1 12935
048addec
JD
12936 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12937 (x_set_frame_parameters): Process `font' parameter before other
12938 parameters as fringe widths depend on it.
12939 (x_set_fringe_width): New function.
12940 (x_figure_window_size): Use x_compute_fringe_widths.
12941 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12942 parameters.
60a653f1 12943
048addec
JD
12944 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12945 (EmacsFrameSetCharSize): Ditto.
60a653f1 12946
048addec
JD
12947 * w32term.h: Merged changes from xterm.h.
12948 * w32term.c: Merged changes from xterm.c.
12949 * w32fns.c: Merged changes from xfns.c.
60a653f1 12950
048addec 129512001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12952
048addec 12953 * COPYING: Removed.
60a653f1 12954
048addec 129552001-11-29 Dave Love <fx@gnu.org>
60a653f1 12956
048addec
JD
12957 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12958 extra extra slot.
12959 (detect_coding_mask): Fix call of detect_coding_iso2022.
60a653f1 12960
048addec 129612001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 12962
048addec
JD
12963 * fileio.c (file-name-coding-system)
12964 (default-file-name-coding-system): Doc fix (links to referenced
12965 variables added).
60a653f1 12966
048addec 129672001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 12968
048addec
JD
12969 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12970 Add dummy uses of gcproN variables.
60a653f1 12971
048addec
JD
12972 * category.c (describe_category, describe_category_1)
12973 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12974 (syms_of_category): Don't defsubr Sdescribe_categories.
60a653f1 12975
048addec 129762001-11-28 Richard M. Stallman <rms@gnu.org>
60a653f1 12977
048addec 12978 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
60a653f1 12979
048addec
JD
12980 * Makefile.in (lispdir): New variable, referring to build dir.
12981 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
60a653f1 12982
048addec 129832001-11-28 Andrew Innes <andrewi@gnu.org>
60a653f1 12984
048addec
JD
12985 * w32menu.c (w32_menu_display_help): Actually add the new argument
12986 OWNER.
60a653f1 12987
048addec 129882001-11-28 Jason Rumney <jasonr@gnu.org>
60a653f1 12989
048addec
JD
12990 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12991 menu items. From David Ponce <dponce@wanadoo.fr>.
12992 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12993 conditionally.
f63fd14e 12994 (w32_menu_display_help): New argument OWNER. Rewritten to store a
048addec 12995 help event in the owner frame's keyboard buffer.
60a653f1 12996
048addec
JD
12997 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12998 (Fx_show_tip): Don't subtract last width from row width.
12999
13000 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13001 (w32_read_socket): Use EQ to compare frames.
60a653f1 13002
048addec 130032001-11-28 Gerd Moellmann <gerd@gnu.org>
60a653f1 13004
048addec
JD
13005 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13006 OVERLAPS_P.
60a653f1 13007
048addec 130082001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13009
048addec
JD
13010 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13011 `gcpro3' and `gcpro4'.
60a653f1 13012
048addec 13013 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
60a653f1 13014
048addec 130152001-11-28 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13016
048addec 13017 * ccl.c: Use AREF and ASIZE.
60a653f1 13018
048addec 130192001-11-27 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13020
048addec
JD
13021 * lisp.h (run_hook_list_with_args): Remove.
13022 (LIST_END_P): Fix call to wrong_type_argument.
13023 (make_fixnum_or_float): Use EMACS_INT rather than int.
60a653f1 13024
048addec 130252001-11-26 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13026
048addec
JD
13027 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13028 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
60a653f1 13029
048addec
JD
13030 * eval.c: Use AREF and ASIZE.
13031 (Ffetch_bytecode): Add the file name to the error message.
60a653f1 13032
048addec
JD
13033 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13034 which match the end of the file-name.
13035 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13036 is not a valid env var, but leave it as is instead.
60a653f1 13037
048addec
JD
13038 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13039 Make nil bindings in char-tables transparent.
13040 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
60a653f1 13041
048addec 130422001-11-26 Richard M. Stallman <rms@gnu.org>
60a653f1 13043
048addec
JD
13044 * textprop.c (set_text_properties_1): Allow START, END in either order.
13045 Do nothing if range is empty.
60a653f1 13046
048addec 13047 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
60a653f1 13048
048addec
JD
13049 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13050 (clean): Not here.
60a653f1 13051
048addec 130522001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13053
048addec
JD
13054 * textprop.c (set_text_properties_1): Clearly mark that the
13055 interval should not be empty.
60a653f1 13056
048addec
JD
13057 * intervals.c (graft_intervals_into_buffer):
13058 Don't call set_text_properties_1 on an empty interval.
60a653f1 13059
048addec 130602001-11-25 Richard M. Stallman <rms@gnu.org>
60a653f1 13061
048addec 13062 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
60a653f1 13063
048addec
JD
13064 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13065 don't lose the data in it.
60a653f1 13066
048addec 130672001-11-25 Juanma Barranquero <lektu@terra.es>
60a653f1 13068
048addec 13069 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
60a653f1 13070
c62aec78 13071 * buffer.c (Fkill_buffer): Likewise.
60a653f1 13072
c62aec78 13073 * print.c (temp_output_buffer_setup): Likewise.
60a653f1 13074
048addec 130752001-11-25 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13076
048addec 13077 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
60a653f1 13078
048addec 130792001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13080
048addec
JD
13081 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13082 Niemitalo <kon@iki.fi>.
60a653f1 13083
048addec 130842001-11-25 Jason Rumney <jasonr@gnu.org>
60a653f1 13085
048addec 13086 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
60a653f1 13087
048addec
JD
13088 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13089 (Fx_show_tip): Block input during frame creation.
13090 (Fx_show_tip, Fx_hide_tip): Enable.
60a653f1 13091
048addec 130922001-11-24 Richard M. Stallman <rms@gnu.org>
60a653f1 13093
048addec
JD
13094 * lread.c (Fload): Detect recursive load error for more than 3
13095 nestings of the same file.
13096 (Vrecursive_load_depth_limit): Variable deleted.
13097 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
60a653f1 13098
048addec 130992001-11-24 Jason Rumney <jasonr@gnu.org>
60a653f1 13100
048addec
JD
13101 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13102 mouse position if either left or top is not specified.
60a653f1 13103
048addec
JD
13104 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13105 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13106 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13107 (my_create_tip_window): Assign tip_window.
13108 (x_create_tip_frame): Use same defaults as X.
13109 (compute_tip_xy): Remove unused variable. Use full screen width.
f63fd14e 13110 (Fx_show_tip): Do not double height. Call ShowWindow directly.
60a653f1 13111
048addec
JD
13112 * w32term.c (x_after_update_window_line): Doc fix.
13113 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13114 frames.
13115 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
60a653f1 13116
048addec
JD
13117 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13118 for all Windowed systems.
60a653f1 13119
048addec 131202001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
60a653f1 13121
048addec
JD
13122 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13123 realized, use the initial screen colors to clear the screen.
60a653f1 13124
048addec 131252001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13126
048addec
JD
13127 * textprop.c (Fset_text_properties): Remove unused variables
13128 `unchanged', `prev_changed', `s' and `len'.
60a653f1 13129
048addec
JD
13130 * search.c (Freplace_match): Remove unused variable `inslen'.
13131
13132 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13133
131342001-11-22 Jason Rumney <jasonr@gnu.org>
13135
13136 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13137 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13138 (my_create_tip_window): New function.
13139 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13140 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13141
131422001-11-20 Jason Rumney <jasonr@gnu.org>
13143
13144 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13145 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13146
13147 * w32fns.c (Vw32_system_coding_system): Remove.
13148 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13149
131502001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13151
13152 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13153 after build_annotations.
13154
13155 * syntax.c (describe_syntax): Add dummy arg.
13156 (describe_syntax_1): Update call to describe_vector.
13157
13158 * category.c (describe_category): Add dummy arg.
13159 (describe_category_1): Update call to describe_vector.
13160
13161 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13162 (describe_command, describe_translation): Add dummy second param.
13163 (describe_map): Call elt_describer with two arguments.
13164 (describe_vector_princ): Add `fun' parameter.
13165 Call it instead of the hardcoded `princ'.
13166 (describe_vector): Add arg `args'.
13167 Pass it as a new second argument to elt_describer.
60a653f1 13168
048addec 13169 * keymap.h (describe_vector): Update prototype.
60a653f1 13170
048addec
JD
13171 * frame.c: Don't include keymap.h any more.
13172 (keys_of_frame): Remove.
60a653f1 13173
048addec 13174 * lisp.h (keys_of_frame): Remove declaration.
60a653f1 13175
048addec 13176 * emacs.c (main): Don't call `keys_of_frame' any more.
60a653f1 13177
048addec 131782001-11-14 Andreas Schwab <schwab@suse.de>
60a653f1 13179
048addec
JD
13180 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13181 if defined, 0 otherwise.
13182 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13183 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
60a653f1 13184
048addec 131852001-11-19 Richard M. Stallman <rms@gnu.org>
60a653f1 13186
048addec 13187 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
60a653f1 13188
048addec 131892001-11-18 Jason Rumney <jasonr@gnu.org>
60a653f1 13190
048addec
JD
13191 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13192 (x_draw_bar_cursor): If the background color of the glyph under
13193 the cursor equals the frame's cursor color, use the glyph's
13194 foreground color for drawing the bar cursor.
13195 (x_after_update_window_line): Clear internal border in different
13196 circumstances.
13197 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13198 (w32_draw_relief_rect): Correct relief by 1 pixel.
13199 (x_set_glyph_string_background_width):
13200 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13201 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13202 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13203 if cursor_in_non_selected_windows is false.
13204 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13205 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13206 Notice if cursor gets overwritten.
13207 (notice_overwritten_cursor): Renamed from
13208 note_overwritten_text_cursor. Rewritten to take glyph widths
13209 into account, and to take X positions as parameters.
13210 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13211 around call to x_draw_glyphs.
13212 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13213 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13214 color to use for image glyph reliefs.
13215 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13216 (glyph_rect): Remove unused variable `area'.
60a653f1 13217
048addec
JD
13218 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13219 some items.
13220 (x_set_internal_border_width): Set frame garbaged when window
13221 doesn't exist yet.
13222 (Fx_create_frame): Accept zero tool_bar_button_relief.
13223 (x_clear_image_1, four_corners_best, image_background)
13224 (image_background_transparent): New functions.
13225 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13226 (gs_format): Add `:background' entry.
13227 (lookup_image): Set IMG's background color if specified.
13228 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13229 when appropriate.
13230 (x_clear_image_1): Reset `background_valid' and
13231 `background_transparent_valid' fields.
13232 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13233 calculating it here. Set IMG's background_transparent field.
13234 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13235 (enum png_keyword_index): Add PNG_BACKGROUND.
13236 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13237 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13238 (enum gif_keyword_index): Add GIF_BACKGROUND.
13239 (enum gs_keyword_index): Add GS_BACKGROUND.
13240 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13241 Pre-calculate image background color where necessary.
13242 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13243 Use display info's n_cbits entry for screen depth.
13244 (Fx_show_tip): Remove unused variables `buffer', `top',
13245 `left', `max_width' and `max_height'.
60a653f1 13246
048addec 13247 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
60a653f1 13248
048addec 132492001-11-18 Gerd Moellmann <gerd@gnu.org>
60a653f1 13250
048addec 13251 * puresize.h (BASE_PURESIZE): Increase to 750000.
60a653f1 13252
048addec 132532001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
60a653f1 13254
048addec 13255 * frame.c (Fframe_live_p): Doc fix.
60a653f1 13256
048addec 132572001-11-18 Richard M. Stallman <rms@gnu.org>
60a653f1 13258
048addec
JD
13259 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13260 (message_dolog_marker3): New static variables hold three markers.
13261 (syms_of_xdisp): Initialize and staticpro them.
13262 (message_dolog): Use message_dolog_marker1..3 instead of
13263 allocating markers each time. Unchain them when done.
60a653f1 13264
048addec 132652001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13266
048addec 13267 * doc.c (Fsnarf_documentation): Doc fix.
60a653f1 13268
048addec 132692001-11-17 Andreas Schwab <schwab@suse.de>
60a653f1 13270
048addec 13271 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
60a653f1 13272
048addec 132732001-11-17 Richard M. Stallman <rms@gnu.org>
60a653f1 13274
048addec 13275 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
60a653f1 13276
048addec 132772001-11-17 Jason Rumney <jasonr@gnu.org>
60a653f1 13278
048addec 13279 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
60a653f1 13280
048addec 132812001-11-17 Gerd Moellmann <gerd@gnu.org>
60a653f1 13282
048addec
JD
13283 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13284 with invalid position.
60a653f1 13285
048addec 132862001-11-16 Richard M. Stallman <rms@gnu.org>
60a653f1 13287
048addec 13288 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
60a653f1 13289
048addec
JD
13290 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13291 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13292 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
60a653f1 13293
048addec 13294 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
60a653f1 13295
048addec 132962001-11-16 Stefan Monnier <monnier@cs.yale.edu>
60a653f1 13297
048addec
JD
13298 * fileio.c (build_annotations): Split off the tail.
13299 (build_annotations_2): New fun. Extracted from build_annotations.
13300 (Fwrite_region): Split the call to build_annotations into two
13301 calls to build_annotations and build_annotations_2.
077907d4 13302
048addec 133032001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
1756e2fb 13304
048addec
JD
13305 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13306 clear_waiting_for_input with argument.
1756e2fb 13307
048addec 13308 * xterm.h (x_update_cursor): Remove duplicated prototype.
06e8f738 13309
048addec 13310 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
06e8f738 13311
048addec 13312 * xterm.c (waiting_for_input): Remove unnecessary declaration.
fa336b91 13313
048addec 13314 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
fa336b91 13315
048addec 133162001-11-16 Stefan Monnier <monnier@cs.yale.edu>
fa336b91 13317
048addec
JD
13318 * fileio.c (choose_write_coding_system): New fun, extracted
13319 from Fwrite_region.
13320 (Fwrite_region): Use it.
fa336b91 13321
048addec
JD
13322 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13323 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13324 (ml_apply, find_handler_clause): Add prototype.
fa336b91 13325
048addec 133262001-11-16 Eli Zaretskii <eliz@gnu.org>
fa336b91 13327
048addec 13328 * config.in: Add #undef HAVE_COFF_H.
fa336b91 13329
048addec
JD
13330 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13331 Required for ISC 4.1.
fa336b91 13332
048addec 133332001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
fa336b91 13334
048addec
JD
13335 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13336 Andrew Wiseman <a.wiseman@btclick.com>.
fa336b91 13337
048addec 133382001-11-16 Kim F. Storm <storm@cua.dk>
fa336b91 13339
048addec
JD
13340 The following changes are made to clean up the various internal
13341 references to the fringes to actually use the term `fringe' for
13342 them. Previously, they were called `flags areas', `bitmap areas',
13343 `left/right side of windows', or implicitly as `flags' or
13344 `bitmaps':
fa336b91 13345
048addec 13346 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
f63fd14e 13347 Comments fixed. Use renamed symbols.
06e8f738 13348
f63fd14e 13349 * dispnew.c: Comment fix. Use renamed symbols.
06e8f738 13350
048addec
JD
13351 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13352 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13353 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
9ce647f4 13354
048addec 13355 * msdos.c: Comment fix.
9ce647f4 13356
048addec 13357 * w32fns.c: Use renamed symbols.
9b784ab8 13358
f63fd14e 13359 * w32term.c: Comment fixes. Use renamed symbols.
048addec
JD
13360 (fringe_bitmap_type): Renamed from bitmap_type.
13361 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13362 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13363 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
9f7e52b4 13364
f63fd14e 13365 * w32term.h: Comment fixes. Use renamed symbols.
048addec
JD
13366 (fringes_extra): Renamed from flags_areas_extra.
13367 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13368 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13369 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13370 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13371 (FRAME_X_LEFT_FRINGE_WIDTH):
13372 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13373 (FRAME_X_RIGHT_FRINGE_WIDTH):
13374 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
9f7e52b4 13375
048addec 13376 * widget.c: Use renamed symbols.
9f7e52b4 13377
f63fd14e 13378 * window.c: Comment fixes. Use renamed symbols.
048addec 13379 (coordinates-in-window-p): Doc fix.
fa336b91 13380
f63fd14e 13381 * xdisp.c: Comment fixes. Use renamed symbols.
34e5d0af 13382
048addec 13383 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
9b784ab8 13384
048addec 13385 * xfns.c: Use renamed symbols.
89512fcd 13386
f63fd14e 13387 * xterm.c: Comment fixes. Use renamed symbols.
048addec
JD
13388 (fringe_bitmap_type): Renamed from bitmap_type.
13389 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13390 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13391 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
89512fcd 13392
f63fd14e 13393 * xterm.h: Comment fixes. Use renamed symbols.
048addec
JD
13394 (fringes_extra): Renamed from flags_areas_extra.
13395 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13396 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13397 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13398 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13399 (FRAME_X_LEFT_FRINGE_WIDTH):
13400 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13401 (FRAME_X_RIGHT_FRINGE_WIDTH):
13402 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13403
134042001-11-15 Jason Rumney <jasonr@gnu.org>
13405
13406 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13407 work for most menu items. From David Ponce
13408 <david.ponce@wanadoo.fr>.
13409
134102001-11-15 Gerd Moellmann <gerd@gnu.org>
13411
13412 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13413 Some x_set_* function expect to be called even if old and new
13414 value are equal.
13415
13416 * xdisp.c (build_desired_tool_bar_string): Accept zero
13417 tool_bar_button_relief.
13418
13419 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13420
13421 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13422
13423 * xterm.c (x_draw_bar_cursor): If the background color of the
13424 glyph under the cursor equals the frame's cursor color, use
13425 the glyph's foreground color for drawing the bar cursor.
13426
13427 * dispnew.c (direct_output_forward_char): Fix character/byte
13428 position comparison.
7d18891d 13429
048addec 134302001-11-15 Miles Bader <miles@gnu.org>
d2936d21 13431
048addec
JD
13432 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13433 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13434 Update arguments to find_field.
13435 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13436 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13437 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13438 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
7d18891d 13439
048addec 134402001-11-14 Richard M. Stallman <rms@gnu.org>
7d18891d 13441
048addec 13442 * editfns.c (Fpropertize): Allow call with 1 arg.
7d18891d 13443
048addec
JD
13444 * dispextern.h (image_background, image_background_transparent):
13445 Conditionalize on HAVE_X_WINDOWS.
7d18891d 13446
048addec 134472001-11-13 Richard M. Stallman <rms@gnu.org>
7d18891d 13448
048addec 13449 * print.c (Fprin1_to_string): Doc fix.
7d18891d 13450
048addec 13451 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
7d18891d 13452
048addec 13453 * floatfns.c (Fceiling, Ffloor): Doc fixes.
7d18891d 13454
048addec 13455 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
7d18891d 13456
048addec 13457 * fileio.c (Ffile_accessible_directory_p): Doc fix.
7d18891d 13458
048addec 13459 * eval.c (syms_of_eval): Doc fix.
7d18891d 13460
048addec 13461 * coding.c (syms_of_coding): Doc fix.
7d18891d 13462
048addec 13463 * doc.c (Fsnarf_documentation): Doc fix.
7d18891d 13464
048addec 13465 * dispnew.c (syms_of_display): Doc fix.
9474c847 13466
048addec 13467 * category.c (Fget_unused_category): Doc fix.
9474c847 13468
048addec 13469 * buffer.c (syms_of_buffer): Doc fixes.
e3059a5d 13470
048addec 134712001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
e3059a5d 13472
048addec 13473 * print.c (prin1, print): Doc fix.
e3059a5d 13474
048addec 134752001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
b3700ae7 13476
048addec
JD
13477 * fontset.h: Remove declarations of variables
13478 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
b3700ae7 13479
048addec
JD
13480 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13481 `Vclip_large_size_font'.
eae936e2 13482
048addec 134832001-11-13 Jason Rumney <jasonr@gnu.org>
4bb962be 13484
048addec 13485 * w32fns.c: Doc fix.
ddb67bdc 13486
048addec 134872001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
3467c402 13488
048addec 13489 * xfaces.c (Fface_attributes_as_vector): Doc fix.
3467c402 13490
048addec 13491 * fns.c: Doc fix.
6e1b91d7 13492
048addec 13493 * emacs.c: Doc fix.
1c1d3d69 13494
048addec 13495 * coding.c: Doc fix.
1c1d3d69 13496
048addec
JD
13497 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13498 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13499 `new style' [w/`doc:' keyword].
b6f4c7ba 13500
048addec 135012001-11-12 Richard M. Stallman <rms@gnu.org>
b6f4c7ba 13502
048addec
JD
13503 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13504 LeaveNotify events. Only FocusIn and FocusOut do that now.
13505 (x_display_and_set_cursor): Do display hollow cursors in active
13506 minibuffer windows when they are not selected.
b6f4c7ba 13507
048addec 135082001-11-12 Jason Rumney <jasonr@gnu.org>
a89f435d 13509
048addec 13510 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
f63fd14e
JB
13511 * w32term.c: Change doc-string comments to `new style'
13512 [w/`doc:' keyword]. Doc fixes.
a89f435d 13513
048addec
JD
13514 * w32fns.c: Don't define max.
13515 (Fx_open_connection): Only execute once.
a4cd0cd7 13516
048addec 135172001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
eafb659a 13518
048addec
JD
13519 * ccl.c: Change macros to use do-while block instead of if-else.
13520 Use braces to follow GNU Coding Standards.
eafb659a 13521
048addec 135222001-11-11 Richard M. Stallman <rms@gnu.org>
a4cd0cd7 13523
048addec 13524 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
a4cd0cd7 13525
048addec 13526 * lread.c (read_escape): Use end_of_file_error for reporting eof.
a4cd0cd7 13527
048addec
JD
13528 * insdel.c (replace_range): Use adjust_markers_for_replace
13529 instead of adjust_markers_for_delete and adjust_markers_for_insert.
a4cd0cd7 13530
048addec 13531 * intervals.h: Declare set_text_properties and set_text_properties_1.
a4cd0cd7 13532
048addec
JD
13533 * textprop.c (set_text_properties_1): New subroutine
13534 broken out of set_text_properties.
13535 (set_text_properties): Use set_text_properties_1.
91823618 13536
048addec
JD
13537 * intervals.c (graft_intervals_into_buffer):
13538 Use set_text_properties_1 to clear out properties.
91823618 13539
048addec
JD
13540 * search.c (Freplace_match): Use replace_range to insert
13541 and delete. Don't request property inheritance from
13542 surrounding text.
86928dfb 13543
048addec 135442001-11-10 Jason Rumney <jasonr@gnu.org>
86928dfb 13545
048addec 13546 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
f63fd14e 13547 vertical fonts. Allow them if face name is explicitly specified.
048addec 13548 Do not give up if we find a font that cannot be converted to an xlfd.
40ef1eda 13549
048addec 135502001-11-10 Gerd Moellmann <gerd@gnu.org>
ab8469eb 13551
048addec
JD
13552 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13553 instead of malloc/free.
a78e0303 13554
048addec 135552001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
40ef1eda 13556
048addec
JD
13557 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13558 Coding Standards.
13559 (Finternal_set_lisp_face_attribute): Likewise.
fabf4a91 13560
048addec 13561 * buffer.c (Fbury_buffer): Likewise.
0c99b139 13562
048addec 13563 * indent.c (current_column_1): Remove unused variable `prev_col'.
0c99b139 13564
048addec
JD
13565 * coding.c (encode_coding): Use precomputed value of `src'.
13566 (encode_coding): Remove unused variable `src_end'.
13567 (code_convert_region): Remove unused variables `count'.
830ddd77 13568
048addec 135692001-11-07 Jason Rumney <jasonr@gnu.org>
830ddd77 13570
048addec
JD
13571 * w32term.c (x_display_and_set_cursor): Do not move system caret
13572 if cursor_glyph is NULL.
55c6d645 13573
048addec 135742001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
55c6d645 13575
048addec 13576 * keymap.c (access_keymap): Fix compilation error.
5de38842 13577
048addec 135782001-11-07 Miles Bader <miles@gnu.org>
7a4564a4 13579
048addec 13580 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
5de38842 13581
048addec 135822001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4fa23df5 13583
048addec
JD
13584 * intervals.c (graft_intervals_into_buffer):
13585 Remove #ifdef'd-out code.
13586 (graft_intervals_into_buffer): Remove unused variable `middle'.
4fa23df5 13587
048addec
JD
13588 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13589 code (eval-current-buffer).
13590 Change doc-string comments to `new style' [w/`doc:' keyword].
7a6a97d7 13591
048addec 135922001-11-06 Richard M. Stallman <rms@gnu.org>
c191d13c 13593
048addec 13594 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
7a6a97d7 13595
048addec 135962001-11-06 Stefan Monnier <monnier@cs.yale.edu>
44dc78e0 13597
048addec 13598 * lread.c (read1): Fix behavior with nested backquoting.
44dc78e0 13599
048addec
JD
13600 * keyboard.c (make_lispy_event): Check integerness and fix
13601 Lisp_Object/int mixup.
17893c65 13602
048addec 136032001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4d994a79 13604
048addec 13605 * fns.c (copy_hash_table): Remove unused variable `v'.
d5360cc7 13606
048addec
JD
13607 * fontset.c (fontset_font_pattern): Remove unused variable
13608 `family_registry'.
d5360cc7 13609
048addec 13610 * indent.c (current_column_1): Remove unused variable `prev_col'.
d5360cc7 13611
048addec 136122001-11-05 Richard M. Stallman <rms@gnu.org>
96238a5a 13613
048addec 13614 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
96238a5a 13615
048addec
JD
13616 * buffer.c (Fkill_buffer): Don't delete auto save file
13617 if buffer is modified.
d9d54213 13618
048addec 136192001-11-05 Andrew Innes <andrewi@gnu.org>
d9d54213 13620
048addec
JD
13621 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13622 CHECK_NUMBER_CDR.
b116830b 13623
048addec 136242001-11-05 Richard M. Stallman <rms@gnu.org>
b116830b 13625
048addec 13626 * unexelf.c (unexec): Minor changes; clean up comments.
3297e2a1 13627
048addec 136282001-11-05 Sam Steingold <sds@gnu.org>
3297e2a1 13629
048addec 13630 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
6fb8339c 13631
048addec 136322001-11-05 Andreas Schwab <schwab@suse.de>
6fb8339c 13633
048addec 13634 * sound.c (sound_perror): Save errno from being clobbered.
7dd73b78 13635
048addec 136362001-11-05 Dale Hagglund <rdh@yottayotta.com>
7dd73b78 13637
048addec
JD
13638 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13639 the program image directly.
982f6c7e 13640
048addec 136412001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d31053f9 13642
048addec 13643 * buffer.h (Fbuffer_local_value): Add prototype.
d31053f9 13644
048addec 136452001-11-04 Richard M. Stallman <rms@gnu.org>
d31053f9 13646
048addec
JD
13647 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13648 and CHECK_BUFFER.
d31053f9 13649
048addec
JD
13650 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13651 (record_char): Likewise.
d31053f9 13652
048addec
JD
13653 * keyboard.c (make_lispy_event): Don't insist a drag event must
13654 move to a different buffer position. Instead, check for moving at
13655 least double_click_fuzz.
982f6c7e 13656
048addec 13657 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
830047fd 13658
048addec 13659 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
b116830b 13660
048addec
JD
13661 * indent.c (current_column_1, Fmove_to_column): Separate the code
13662 for display-table glyphs from the code for buffer text, to fix
13663 bugs in the former.
830047fd 13664
048addec 136652001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
b116830b 13666
048addec
JD
13667 * buffer.c (Fbuffer_local_value): New function.
13668 (syms_of_buffer): Defsubr it.
2df5238c 13669
048addec
JD
13670 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13671 value of `cursor-in-non-selected-windows'.
4e397688 13672
048addec
JD
13673 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13674 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13675 (syms_of_xdisp): Initialize it.
48b0f3ae 13676
048addec 136772001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2df5238c 13678
048addec 13679 * xfns.c (Fx_create_frame): Doc fix.
3ecaf7e5 13680
048addec
JD
13681 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13682 keyword].
3ecaf7e5 13683
048addec
JD
13684 * eval.c (top_level_value, top_level_set): Remove commented and
13685 #ifdef'd-out code.
13686 (Fdefvar): Fix usage in doc-string.
3ecaf7e5 13687
048addec 136882001-11-03 Richard M. Stallman <rms@gnu.org>
3ecaf7e5 13689
048addec 13690 * xfns.c: Include unistd.h, if it exists.
8db2e33b 13691
048addec 13692 * editfns.c: Move the include of ctype.h after unistd.h.
8db2e33b 13693
048addec 13694 * gmalloc.c: Test BROKEN_PROTOTYPES.
aed29b97 13695
048addec 136962001-11-03 Ken Raeburn <raeburn@gnu.org>
aed29b97 13697
048addec
JD
13698 * lisp.h (CHECK_STRING_CAR): New macro.
13699 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13700 treating XCAR and XCDR as lvalues.
13701 (openp): Use CHECK_STRING_CAR.
13702 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
aed29b97 13703
048addec 137042001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
6cb16f95 13705
048addec
JD
13706 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13707 (SIGMASKTYPE): Define.
1b1acc13 13708
048addec 13709 * syssignal.h (sigunblock): Don't define if already defined.
020f9b38 13710
048addec 137112001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
020f9b38 13712
048addec
JD
13713 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13714 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13715 Fix typos in comments.
6cb16f95 13716
048addec
JD
13717 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13718 and #ifdef'd-out code.
13719 Fix and reindent comments.
6cb16f95 13720
048addec 13721 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
6cb16f95 13722
048addec
JD
13723 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13724 argument `i' in macros.
6cb16f95 13725
048addec
JD
13726 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13727 `i' in macros.
7e9d3c2f 13728
048addec
JD
13729 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13730 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13731 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13732 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13733 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13734 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13735 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13736 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13737 in macros.
7e9d3c2f 13738
048addec
JD
13739 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13740 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13741 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13742 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13743 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13744 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13745 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13746 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13747 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13748 (remove unused second argument).
7e9d3c2f 13749
048addec 137502001-11-02 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13751
048addec
JD
13752 * syntax.c (describe_syntax): New wrapper.
13753 (Finternal_describe_syntax_value): Rename from describe_syntax.
13754 Don't insert space at front and \n at the end.
13755 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
e6bff182 13756
048addec
JD
13757 * regex.c (re_wctype): Try to fix some warnings.
13758 (regcomp, regexec): Don't forget the __restrict.
9ba48103 13759
048addec 137602001-11-02 Richard M. Stallman <rms@gnu.org>
9ba48103 13761
048addec 13762 * textprop.c (Fget_char_property): Doc fix.
9ba48103 13763
048addec 137642001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9ba48103 13765
048addec 13766 * process.c (Fstart_process): Add usage to doc-string.
c22e59e1 13767
048addec 13768 * data.c (Fsetq_default): Ditto.
c22e59e1 13769
048addec 13770 * callint.c (Finteractive): Ditto.
9271ed2c 13771
048addec 137722001-11-01 Stefan Monnier <monnier@cs.yale.edu>
e6bff182 13773
048addec
JD
13774 * macros.c: Don't include keymap.h any more.
13775
137762001-11-01 Richard M. Stallman <rms@gnu.org>
13777
13778 * data.c (Fmake_local_variable): Doc fix.
13779
13780 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13781 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
e6bff182 13782
048addec 13783 * keymap.c (Fdescribe_buffer_bindings): Print character property
9271ed2c
RS
13784 bindings along with or instead of the buffer local map.
13785 Make the overriding maps override what they should.
13786
f00691a3 137872001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8b8bd9c6
PJ
13788
13789 * window.c (grow_mini_window): Fix typo in comment.
13790
27188d11
GM
137912001-11-01 Gerd Moellmann <gerd@gnu.org>
13792
7b49b9d2
GM
13793 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13794 (XTset_vertical_scroll_bar): Likewise.
13795
43f7c3ea
GM
13796 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13797 instead of IMAGE_BACKGROUND.
c22e59e1 13798
b350c2e5
GM
13799 * xfns.c (four_corners_best): Reindent.
13800
c22e59e1 13801 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
27188d11
GM
13802 Handle :box so that it is possible to specify sexprs.
13803
bf00d461
EZ
138042001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13805
13806 * s/hpux11.h: New file.
13807
f00691a3 138082001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e10df59 13809
2b209b97
PJ
13810 * emacs.c (USAGE1): Show command line option --no-window-system
13811 instead of --no-windows in usage.
13812 (standard_args): Rename --no-windows to --no-window-system.
13813 (bug_reporting_address): Follow Emacs coding conventions.
13814
9dbc9081
PJ
13815 * eval.c (Fcommandp): Doc fix.
13816 Change doc-string comments to `new style' [w/`doc:' keyword].
13817
4e10df59
PJ
13818 * frame.c (Fframe_live_p): Doc fix.
13819
13820 * buffer.c (selective-display-ellipses): Doc fix.
13821
dd387b25
GM
138222001-10-31 Gerd Moellmann <gerd@gnu.org>
13823
fe957e65
GM
13824 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13825
dd387b25
GM
13826 * xfaces.c (realize_x_face): If C is not a single-byte character,
13827 set the face's colors_copied_bitwise_p instead of the defaulted_p
13828 members which have a different meaning.
13829 (free_face_colors): Do nothing for a face whose colors have been
13830 copied bitwise.
13831
c22e59e1 13832 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
dd387b25 13833
f00691a3 138342001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2e1280f8 13835
687784e8
PJ
13836 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13837 [w/`doc:' keyword].
2e1280f8 13838
b9d9a9b9
GM
138392001-10-31 Gerd Moellmann <gerd@gnu.org>
13840
13841 * fns.c (require_unwind): Return Lisp_Object.
13842
f00691a3 138432001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
48400103 13844
fa1361cb
PJ
13845 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13846 (last-input-char): Revert doc-string to be the same as the
13847 doc-string of `last-input-event'.
13848
6c465a15 13849 * xdisp.c: Fix typos in comments.
48400103 13850
eafa3196
GM
138512001-10-31 Gerd Moellmann <gerd@gnu.org>
13852
13853 * window.c (grow_mini_window): Handle case that the root
13854 window is already smaller than the nominal mininum height.
13855
747d3f2a
SM
138562001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13857
bf9bb76f
SM
13858 * emacs.c (main): Don't call keys_of_macros any more.
13859
13860 * lisp.h (keys_of_macros): Remove.
13861
13862 * macros.c (keys_of_macros): Remove.
13863
747d3f2a
SM
13864 * xfaces.c (Fface_attribute_relative_p): Declare args.
13865
5e905a57
JR
138662001-10-30 Jason Rumney <jasonr@gnu.org>
13867
13868 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13869 (enum_font_cb2): Ignore fonts with vertical orientation.
13870
3a426197
RS
138712001-10-30 Richard M. Stallman <rms@gnu.org>
13872
13873 * keyboard.c (Finput_pending_p): Doc fix.
13874
a742d646
GM
138752001-10-30 Gerd Moellmann <gerd@gnu.org>
13876
259cf6bc
GM
13877 * xterm.c (x_after_update_window_line): Don't run the code
13878 clearing in borders for rows whose visible height is 0.
13879
3f99f948
GM
13880 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13881 resized_p flag is set. If not set, use the much less flickering
13882 method previously used.
13883
13884 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13885
13886 * frame.h (struct frame) <resized_p>: New member.
13887
b4a3be43
GM
13888 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13889 as large as the number of bytes to convert.
747d3f2a 13890
a742d646
GM
13891 * lread.c (to_multibyte): New function.
13892 (read1): Use it.
13893
cacbb9e9
EZ
138942001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13895
13896 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13897
99cb6b2f
GM
138982001-10-30 Gerd Moellmann <gerd@gnu.org>
13899
327f42ee 13900 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
747d3f2a
SM
13901 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13902 if the row's fill_line_p is set and drawing the last glyph with
13903 DRAW_IMAGE_{RAISED,SUNKEN}.
327f42ee 13904
99cb6b2f
GM
13905 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13906
8e8223e2
SM
139072001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13908
13909 * xmenu.c: Include coding.h and charset.h.
13910 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13911 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13912 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13913 Explicitly set wv->help. Use `TRUE' rather than `True'.
13914 (menu_help_callback): Use empty_string.
13915
13916 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13917 (Fx_popup_dialog): Explicitly init f.
13918 (w32_menu_display_help): Use empty_string.
13919
4d083a8f
RS
139202001-10-29 Richard M. Stallman <rms@gnu.org>
13921
b2304472
RS
13922 * fns.c (Frequire): Detect recursive try to require the same
13923 feature 3 or more levels deep, and get error.
13924 (require_unwind): New subroutine.
13925 (require_nesting_list): New variable.
13926 (syms_of_fns): Init and staticpro it.
13927
4d083a8f
RS
13928 * print.c (print_object): Clarify indication of insertion type.
13929
2fe41216
EZ
139302001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13931
90480000
EZ
13932 * coding.c (syms_of_coding): Document that locale-coding-system is
13933 used for decoding input on X.
13934
2fe41216
EZ
13935 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13936
f00691a3 139372001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
74e79967
PJ
13938
13939 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13940 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13941
60ebcfe8
GM
139422001-10-29 Gerd Moellmann <gerd@gnu.org>
13943
9a7bdceb
GM
13944 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13945 use NO_CURSOR if cursor_in_non_selected_windows is false.
13946
3f08fcd2
GM
13947 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13948 the slant attribute if FRAME is t.
13949
0ccfdad2
GM
13950 * xfns.c (x_set_internal_border_width): Set frame garbaged
13951 when X window doesn't exist yet.
13952
ef253080
GM
13953 * xterm.c (x_after_update_window_line): Clear internal border
13954 in different circumstances.
b116830b 13955
60ebcfe8
GM
13956 * xterm.c (XTread_socket) <KeyPress>: Don't use
13957 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13958 <handa@etl.go.jp>.
13959
73d25f9c
EZ
139602001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13961
13962 * m/ibms390.h: New file. From Adam Thornton
13963 <athornton@sinenomine.net>.
13964
cac1daf0
GM
139652001-10-28 Gerd Moellmann <gerd@gnu.org>
13966
053b3256 13967 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
b116830b 13968
cac1daf0
GM
13969 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13970 a loop counter.
13971
f00691a3 139722001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13b1a09c 13973
f9711de4 13974 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
186486eb 13975
4707d2d0
PJ
13976 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13977 keyword].
13978 Fix typos in comments.
b116830b 13979
d883731c
PJ
13980 * emacs.c (bug_reporting_address): New function.
13981 Use it when displaying usage message.
13982
04012254
PJ
13983 * minibuf.c (read_minibuf): Remove unused external declaration of
13984 variable `Qread_only'.
13985
13b1a09c
PJ
13986 * keymap.c (access_keymap): Remove unused variable `charset'.
13987
5bbf4378
MB
139882001-10-28 Miles Bader <miles@gnu.org>
13989
13990 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13991 Remove #ifdef'd-out code.
13992 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13993 (syms_of_xfaces): Initialize them.
13994
1ce1e4ee
JR
139952001-10-27 Jason Rumney <jasonr@gnu.org>
13996
13997 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13998 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13999 position using the system caret.
14000
14001 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14002 (w32_system_caret_height, w32_system_caret_x)
14003 (w32_system_caret_y): New variables for tracking system caret.
14004 (w32_initialize): Initialize them.
c2d53558 14005 (x_display_and_set_cursor): Make system caret follow the active cursor.
1ce1e4ee 14006
c2d53558
SM
14007 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14008 New messages types.
1ce1e4ee
JR
14009
14010 * w32term.c (note_mouse_highlight): Clear old help_echo.
14011
f00691a3 140122001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
4e30ce42 14013
bb4600a4
PJ
14014 * xterm.c: Fix typo in a comment.
14015
7db35a48
PJ
14016 * emacs.c: Fix typos in comments.
14017 Remove unnecessary spaces.
14018 Change doc-string comments to `new style' [w/`doc:' keyword].
14019 (USAGE2): Fix typos in usage string.
14020
a7248e4f
PJ
14021 * xterm.c: Fix typo in a comment.
14022
4e30ce42
PJ
14023 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14024 emacs.c.
14025
62725a92
GM
140262001-10-27 Gerd Moellmann <gerd@gnu.org>
14027
798dbe1f 14028 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
c2d53558 14029 instead of 1/2 line_height in the heuristic for skipping
798dbe1f
GM
14030 farther backward when target_y was not reached.
14031
62725a92
GM
14032 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14033 Display errno only if non-zero.
14034 (sound_warning): New function.
14035 (vox_configure): Don't treat failing to set sample rate as error.
14036 (various places): Improve error messages.
14037
d4e34d24
EZ
140382001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14039
944e6f60
EZ
14040 * fileio.c (Faccess_file): Run the argument filename through
14041 Fexpand_file_name, before using it.
14042
d4e34d24
EZ
14043 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14044 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14045
38d2af0c
GM
140462001-10-26 Gerd Moellmann <gerd@gnu.org>
14047
da80a8d5
GM
14048 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14049
38d2af0c
GM
14050 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14051 Fix clearing in the case of scroll bars on the right.
c2d53558 14052
45de4a6f 140532001-10-26 Juanma Barranquero <lektu@terra.es>
56f508dd
EZ
14054
14055 * w32gui.h (XImage): Add a dummy typedef.
14056
fbd5ceb2
GM
140572001-10-26 Gerd Moellmann <gerd@gnu.org>
14058
c2d53558 14059 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
fbd5ceb2 14060
b23236fb
EZ
140612001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14062
14063 * frame.c (Fframe_parameter): Fix last change.
14064
5d991fc4
EZ
14065 * fileio.c: Revert last change (which removed old commented-out
14066 version of expand-file-name). Add a comment that explains why
14067 this old version should not be removed.
14068
879eadc3
GM
140692001-10-25 Gerd Moellmann <gerd@gnu.org>
14070
75700ff2
GM
14071 * frame.c (Fframe_parameter): Fix a bug whereby some
14072 ``artificial'' frame parameters, like `minibuffer' were not
14073 obtained by calling Fframe_parameters.
14074
dfe92a6a
GM
14075 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14076 cursor differently.
14077
879eadc3
GM
14078 * xdisp.c (move_it_vertically_backward): Compute line height
14079 differently. Add heuristic to try to be more compatible to 20.x.
14080
e1010ebe
SM
140812001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14082
d73a471b
SM
14083 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14084
d6da5a06
GM
14085 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14086 boolean.
e1010ebe 14087
f66bd220
MB
140882001-10-25 Miles Bader <miles@gnu.org>
14089
14090 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14091 BG is a pointer to a structure, not a structure.
14092 (gif_format, png_format): Add missing commas.
14093
d436d538
RS
140942001-10-24 Richard M. Stallman <rms@gnu.org>
14095
14096 * xfaces.c (Fface_attributes_as_vector): New function.
c2d53558 14097 (syms_of_xfaces): Defsubr it.
d436d538 14098
f00691a3 140992001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
075c507b
PJ
14100
14101 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14102 variable `area'.
14103
f00691a3 141042001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
d492b584 14105
c2d53558 14106 * search.c (scan_newline): Remove unused variable `selective_display'.
d492b584 14107
e2a57b34
MB
141082001-10-25 Miles Bader <miles@gnu.org>
14109
14110 * dispextern.h (struct image): Add `background',
14111 `background_valid', and `background_transparent' fields.
14112 (image_background, image_background_transparent): New declarations.
14113 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14114 * xfns.c (image_background, image_background_transparent)
14115 (four_corners_best): New functions.
c2d53558 14116 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
e2a57b34
MB
14117 (gs_format): Add `:background' entry.
14118 (lookup_image): Set IMG's background color if specified.
14119 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14120 when appropriate.
14121 (x_clear_image_1): Reset `background_valid' and
14122 `background_transparent_valid' fields.
14123 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14124 calculating it here. Set IMG's background_transparent field.
14125 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14126 (enum png_keyword_index): Add PNG_BACKGROUND.
14127 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14128 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14129 (enum gif_keyword_index): Add GIF_BACKGROUND.
14130 (enum gs_keyword_index): Add GS_BACKGROUND.
c2d53558 14131 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
e2a57b34
MB
14132 Pre-calculate image background color where necessary.
14133 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14134 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14135 color to use for image glyph reliefs.
14136
b547b6e8
GM
141372001-10-24 Gerd Moellmann <gerd@gnu.org>
14138
d9e3b8c6
GM
14139 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14140 in full-width rows.
c2d53558 14141
b547b6e8
GM
14142 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14143 Fix clearing of area not covered by scroll bar.
14144
f00691a3 141452001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
2beb36f9
PJ
14146
14147 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14148 and `real_start'.
c2d53558 14149 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
2beb36f9
PJ
14150 (glyph_rect): Remove unused variable `area'.
14151
76cb5e06
GM
141522001-10-24 Gerd Moellmann <gerd@gnu.org>
14153
bdbdebff 14154 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
c2d53558
SM
14155
14156 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14157 (row_containing_pos): Take additional argument DY.
14158 Treat rows ending in middle of char differently.
62e33982
GM
14159 (display_line): Handle tabs on window systems differently.
14160
14161 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14162 with additional argument.
14163
14164 * dispextern.h (row_containing_pos): Adjust prototype.
14165
76cb5e06
GM
14166 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14167 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14168 (try_window_id, try_window_reusing_current_matrix)
14169 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
6c465a15 14170 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
76cb5e06 14171
f00691a3 141722001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
996fee11 14173
c9e60620
PJ
14174 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14175 gnuemacs).
14176 (HAVE_BOXES): Fix typo in comment.
14177 (push_menu_pane): Fix typo in comment.
14178
3b552d56
PJ
14179 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14180 of `Qwhen'.
14181 (single_display_prop_string_p): Remove unused local declarations
14182 of `Qwhen' and `Qmargin'.
14183 (string_buffer_position): Remove unused variable `around'.
14184 (store_frame_title): Remove unused variable `width'.
14185
15c565ac
PJ
14186 * window.c: Don't define max.
14187 (coordinates_in_window): Remove unused variable `uy'.
14188
a8818eb9
PJ
14189 * widget.c: Don't define max.
14190
996fee11
PJ
14191 * process.c: Don't define max.
14192 (create_process): Remove unused variable `buffer'.
14193
496e1a5b
GM
141942001-10-23 Gerd Moellmann <gerd@gnu.org>
14195
c2d53558 14196 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
496e1a5b 14197
5905ae8b
EZ
141982001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14199
14200 * xfaces.c (Finternal_set_lisp_face_attribute)
14201 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14202 frame is on a windowed display.
14203
24db49fb
GM
142042001-10-23 Gerd Moellmann <gerd@gnu.org>
14205
c2d53558
SM
14206 * dispnew.c (sync_window_with_frame_matrix_rows):
14207 Fix handling of windows which aren't full-width, fix handling
c51488cd
GM
14208 of marginal areas.
14209
c2d53558 14210 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
24db49fb 14211
f0487f05
EZ
142122001-10-23 Andreas Schwab <schwab@suse.de>
14213
14214 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14215 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14216
f0a48a01
GM
142172001-10-23 Gerd Moellmann <gerd@gnu.org>
14218
c2d53558 14219 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
f0a48a01
GM
14220 REAL_END. Notice if cursor gets overwritten.
14221 (notice_overwritten_cursor): Take X positions as parameters.
14222 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14223 around call to x_draw_glyphs.
14224
f00691a3 142252001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
a50a10a0 14226
fc11dff0
PJ
14227 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14228 instead of C) and usage.
a50a10a0 14229
fc11dff0
PJ
14230 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14231 of C) and usage.
a50a10a0
PJ
14232
14233 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14234 `left', `max_width' and `max_height'.
14235
8738febd
GM
142362001-10-23 Gerd Moellmann <gerd@gnu.org>
14237
14238 * xdisp.c (display_line): For a tab continued to the next line,
14239 set row's ends_in_middle_of_char_p.
14240
653c329b
GM
142412001-10-22 Gerd Moellmann <gerd@gnu.org>
14242
14243 * xdisp.c (display_line): Fix computation of continuation lines
14244 width for TABs.
14245
f00691a3 142462001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
f958c5ac 14247
7ba51063
PJ
14248 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14249 `Qlaplace'.
14250
f958c5ac
PJ
14251 * fileio.c: Remove unused code.
14252
eb360291
MB
142532001-10-22 Miles Bader <miles@gnu.org>
14254
14255 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14256 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14257 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14258
98515cf0
JR
142592001-10-21 Jason Rumney <jasonr@gnu.org>
14260
14261 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14262
93026d88
EZ
142632001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14264
14265 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14266 (Finsert_string): Avoid the multi-line string literals warning.
14267
c9a95b79
MB
142682001-10-22 Miles Bader <miles@gnu.org>
14269
14270 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14271 (Fdocumentation): Don't use it.
14272 (syms_of_doc): Don't initialize it.
14273
14274 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14275 * print.c (Fwith_output_to_temp_buffer): Likewise.
14276 * window.c (Fsave_window_excursion): Likewise.
c2d53558 14277 * editfns.c (Fsave_excursion, Fsave_current_buffer)
c9a95b79 14278 (Fsave_restriction): Likewise.
c2d53558
SM
14279 * eval.c (Frun_hooks, Frun_hook_with_args)
14280 (Frun_hook_with_args_until_failure)
14281 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14282 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14283 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
c9a95b79
MB
14284 (Funwind_protect, Fcondition_case): Likewise.
14285 * coding.c (Ffind_operation_coding_system): Likewise.
14286 * keyboard.c (Ftrack_mouse): Likewise.
14287
a3b10252
MB
142882001-10-21 Miles Bader <miles@gnu.org>
14289
c2d53558 14290 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
a3b10252
MB
14291 (Fmake_hash_table): Add usage: string to doc string.
14292 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
c2d53558 14293 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
a3b10252
MB
14294 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14295 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14296 (Fml_prefix_argument_loop): Likewise.
14297
f00691a3 142982001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
c6f73eec 14299
c2d53558 14300 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
888ebd13 14301
c6f73eec
PJ
14302 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14303 style' [w/`doc:' keyword].
14304
14305 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14306 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14307 comments to `new style' [w/`doc:' keyword].
14308
3cf3436e
JR
143092001-10-21 Jason Rumney <jasonr@gnu.org>
14310
14311 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14312
c169b8f1
JR
14313 * w32term.c (remember_mouse_glyph): New function.
14314 (w32_mouse_position): Use it.
14315 (note_mouse_movement): If the mouse moved off the glyph, remember
14316 its new position.
c2d53558 14317
4fdd691b
JR
14318 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14319 (w32_display_info): Add mouse_face_overlay.
14320
c169b8f1
JR
14321 * w32term.c (notice_overwritten_cursor): Renamed from
14322 note_overwritten_text_cursor. Rewritten to take glyph widths into
14323 account.
14324 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14325 (fast_find_string_pos): New function.
14326 (fast_find_position): Return the correct vpos. Add parameter
14327 STOP. In the final row, stop before glyphs having STOP as object.
14328 Don't consider glyphs that are not from a buffer.
14329 (fast_find_position) [0]: Add a presumably more correct version
14330 for after 21.1.
14331 (expose_window_tree, expose_frame): Don't compute intersections here.
14332 (expose_window): Do it here instead.
14333 (expose_window_tree, expose_window, expose_line): Return 1 when
14334 overwriting mouse-face.
14335 (expose_window): If W is the window currently being updated, mark
14336 the frame garbaged.
14337 (expose_frame): If mouse-face was overwritten, redo it.
14338 (x_use_underline_position_properties): New variable.
14339 (syms_of_xterm): DEFVAR_BOOL it.
14340 (x_draw_glyph_string): Add comment to use it in future.
14341 (x_draw_glyph_string): Restore clipping after drawing box.
14342 Fix a computation of the underline position.
14343 (w32_get_glyph_string_clip_rect): Minor cleanup.
14344 (x_fill_stretch_glyph_string): Remove an assertion.
14345 (x_produce_glyphs): Don't convert multibyte characters
14346 to unibyte characters in unibyte buffers.
14347 (cursor_in_mouse_face_p): New function.
14348 (x_draw_stretch_glyph_string): Use it to choose a different GC
14349 when drawing a cursor within highlighted text. Don't draw
14350 background again if it has already been drawn.
14351 (x_draw_glyph_string_box): Don't draw a full-width
14352 box just because the glyph row's full_width_p flag is set.
14353 (x_draw_glyphs): Fix computation of rightmost x for
14354 full-width rows.
14355 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14356 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
f63fd14e 14357 change bottom shadow accordingly. Some cleanup.
c169b8f1
JR
14358 (x_update_window_end): Handle overwritten mouse face
14359 also for tool bar windows.
14360 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14361 DRAW is DRAW_IMAGE_RAISED.
14362 (clear_mouse_face): Return 1 if text with mouse face was
2c568af5
SM
14363 actually redrawn. Make the function static.
14364 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
c169b8f1
JR
14365 optimize away highlighting if we pass over that same overlay again.
14366 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14367 to detect a case where we have to highlight a different region
14368 despite not having left the currently highlighted region.
14369 Set mouse_face_overlay in the x_display_info. Avoid changing the
14370 mouse pointer shape when show_mouse_face has already done it, or
14371 there is no need. Handle mouse-face and help-echo in strings.
14372 (glyph_rect): New function.
14373 (w32_mouse_position): Use it to raise the threshold for mouse
14374 movement event generation.
14375 (w32_initialize_display_info): Initialize the x_display_info's
14376 mouse_face_overlay.
14377 (w32_set_vertical_scroll_bar): Don't clear a zero height
14378 or width area.
14379 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14380 a widget to zero height.
14381
3cf3436e 14382 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
4fdd691b 14383 Protect unibyte strings created by replacing their multibyte
3cf3436e
JR
14384 equivalents in menu_items.
14385 (w32_menu_show): Don't overwrite an item's name with its key
14386 description in case the description is a multibyte string.
14387 (single_submenu): Some cleanup.
14388
14389 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14390 (postprocess_image): New function.
14391 (lookup_image): Call it for all image types except PostScript.
14392 (x_kill_gs_process): Call postprocess_image.
14393 (tiff_error_handler, tiff_warning_handler): New functions.
14394 (tiff_load): Install them as handlers.
14395 (x_kill_gs_process): Recognize if someone has cleared the image
14396 cache under us.
14397 (valid_image_p): Protect better against invalid image
14398 specifications. Previous code could signal an error.
14399 (Fx_hide_tip, Fshow_tip): Doc fix.
14400 (Fv_max_tooltip_size): New variable.
14401 (syns_of_xfns): DEFVAR_LISP it.
14402 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
f63fd14e 14403 window buffer to *tip* right after creating the frame. Set frame's
3cf3436e
JR
14404 window_width. Use a maximum tooltip size specified by
14405 Vx_max_tooltip_size, if that has valid contents.
14406 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14407 Make sure the tooltip is completely visible.
14408 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14409 (Fx_create_frame): Adjust the frame's height for presence
14410 of the tool bar before calling x_figure_window_size.
14411 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14412 when the window gets smaller.
14413 (x_set_foreground_color): Set frame's cursor_pixel.
14414 (x_set_foreground_color, x_set_background_color): Cleaned up.
14415 (x_set_font): Handle case of x_new_fontset returning the same name
14416 as before, although there was a change in fontsets.
14417
386ca361
MB
144182001-10-21 Miles Bader <miles@gnu.org>
14419
c2d53558 14420 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
386ca361
MB
14421 (Flogxor): Add usage: string to doc string.
14422 * charset.c (Fstring): Likewise.
14423 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14424 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14425
f00691a3 144262001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14ff1ee0 14427
03be2694
PJ
14428 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14429
14430 * alloc.c: Reindent DEFUNs with doc: keywords.
14431
14432 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14433
14ff1ee0
PJ
14434 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14435 keyword].
14436
2f147815 14437See ChangeLog.9 for earlier changes.
6922b018
KH
14438
14439;; Local Variables:
49b3bd82 14440;; coding: iso-2022-7bit
6922b018 14441;; End:
2a34a036 14442
2f147815 14443 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
2a34a036
GM
14444 Copying and distribution of this file, with or without modification,
14445 are permitted provided the copyright notice and this notice are preserved.
ab5796a9
MB
14446
14447;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4