(allocate_misc): Update total_free_markers.
[bpt/emacs.git] / src / ChangeLog
1 2004-06-25 Kim F. Storm <storm@cua.dk>
2
3 * alloc.c (allocate_misc): Update total_free_markers.
4 (free_misc): New function.
5 (safe_alloca_unwind, free_marker): Use it.
6
7 * lisp.h (free_misc): Add prototype.
8
9 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
10
11 2004-06-24 Richard M. Stallman <rms@gnu.org>
12
13 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
14 (syms_of_emacs): Lisp variables deleted.
15
16 2004-06-23 David Kastrup <dak@gnu.org>
17
18 * search.c (Freplace_match): Adjust the match-data more
19 thoroughly when replacing strings in the buffer.
20 search.c (match-data): When INTEGERS is non-nil and the last match
21 was in a buffer, add the buffer as last element to the match data.
22 (Fset_match_data): If an additional element of the match-data is
23 a buffer, restore it to last_thing_searched.
24 (save_search_regs): Save last_thing_searched as part of the match
25 data.
26 (restore_match_data): Restore it again.
27
28 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
29
30 * keymap.c (Ftext_char_description): Doc fix.
31 * doc.c (Fsnarf_documentation): Doc fix.
32
33 2004-06-22 Kim F. Storm <storm@cua.dk>
34
35 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
36
37 * lisp.h (struct Lisp_Save_Value): New member dogc.
38 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
39 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
40 (SAFE_FREE_LISP): New macro.
41
42 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
43 (make_save_value): Init new dogc member.
44 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
45
46 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
47 SAFE_FREE_LISP macros.
48
49 2004-06-22 Kim F. Storm <storm@cua.dk>
50
51 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
52 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
53 in that memory area are unknown to GC. Add comments.
54
55 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
56
57 2004-06-21 Kim F. Storm <storm@cua.dk>
58
59 * lisp.h (MAX_ALLOCA): Define here.
60 (safe_alloca_unwind): Add prototype.
61 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
62
63 * alloc.c (safe_alloca_unwind): New function.
64
65 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
66
67 * charset.c (Fstring): Use SAFE_ALLOCA.
68
69 * coding.c (MAX_ALLOCA): Remove define.
70
71 * data.c (MAX_ALLOCA): Remove define.
72 (Faset): Use SAFE_ALLOCA.
73
74 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
75
76 * fns.c (string_make_multibyte, string_to_multibyte)
77 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
78 (MAX_ALLOCA): Remove define.
79 (Fbase64_encode_region, Fbase64_encode_string)
80 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
81 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
82 memory leak if encoding fails.
83
84 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
85
86 2004-06-21 Eli Zaretskii <eliz@gnu.org>
87
88 * print.c (Fwith_output_to_temp_buffer): Doc fix.
89
90 2004-06-20 Richard M. Stallman <rms@gnu.org>
91
92 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
93
94 * search.c (match_limit): Cleaner err msg when no match data available.
95
96 * window.c (syms_of_window): Doc fix.
97
98 * keyboard.c (command_loop_1): Handle values `only' and `identity'
99 for Vtransient_mark_mode.
100
101 * buffer.c (syms_of_buffer): Doc fix.
102
103 2004-06-21 David Kastrup <dak@gnu.org>
104
105 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
106 and unbinding of `case-fold-search' according to
107 `completion-ignore-case' around calls of string-match and
108 predicates, respectively. Should give satisfactory performance
109 in all relevant cases.
110
111 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
112
113 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
114 clip_x/y_origin.
115
116 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
117
118 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
119
120 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
121 on Mac OSX.
122
123 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
124
125 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
126
127 2004-06-16 Kim F. Storm <storm@cua.dk>
128
129 * dispextern.h (Vimage_types): Remove extern.
130
131 2004-06-16 Miles Bader <miles@gnu.org>
132
133 * image.c (lookup_image_type): Initialize image type if necessary.
134
135 2004-06-15 Kim F. Storm <storm@cua.dk>
136
137 * xdisp.c (try_cursor_movement): Exclude header line from scroll
138 margin at top of window.
139 (try_window_reusing_current_matrix): Calculate proper cursor position
140 after scrolling up with non-zero scroll margin, as the old cursor
141 position corresponds to value of PT before executing this command.
142 (try_window_id): Consider scroll margin at bottom of window too;
143 otherwise we fail to scroll when hl-line-mode is enabled.
144
145 * syntax.c (skip_chars): Only recognize [:class:] when it has the
146 proper format and class is a lower-case word.
147
148 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
149
150 * gtkutil.c (xg_get_image_for_pixmap): New function.
151 (xg_get_gdk_pixmap_and_mask): Removed.
152 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
153 xg_get_gdk_pixmap_and_mask.
154
155 * xterm.h (struct x_display_info): Typo in comment fixed.
156
157 2004-06-14 Juanma Barranquero <lektu@terra.es>
158
159 * dispextern.h (Vimage_types): Make it conditional on
160 HAVE_WINDOW_SYSTEM.
161
162 * image.c (Vimage_types): Move from xdisp.c.
163 (Vimage_type_cache): New variable.
164 (define_image_type): New argument indicating whether an image
165 library was loaded; cache loaded status and return t on success,
166 nil otherwise.
167 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
168 (w32_delayed_load): New function to load an image library from a
169 list of possible filenames.
170 (init_xpm_functions, init_png_functions, init_jpeg_functions)
171 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
172 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
173 argument.
174 (Finit_image_library): New function, extracted from `init_image'.
175 Try to initialize an image library on demand and cache whether we
176 were successful or not.
177 (syms_of_image): Initialize `Vimage_types' and
178 `Vimage_type_cache'. Add recognized image types to Vimage_types.
179 Export `init-image-library'.
180 (init_image): Remove initialization of all image types, except xbm
181 and pbm.
182
183 * xdisp.c (Vimage_types): Delete (moved to image.c).
184
185 2004-06-14 Andreas Schwab <schwab@suse.de>
186
187 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
188 Avoid calling specbind when completion-regexp-list is empty.
189
190 2004-06-13 Richard M. Stallman <rms@gnu.org>
191
192 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
193 (re_wctype, re_iswctype, re_wctype_to_bit):
194 Non-function definitions moved here from regex.c.
195
196 * regex.c (re_wctype, re_iswctype): Function defs longer static.
197 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
198 (re_wctype, re_iswctype, re_wctype_to_bit):
199 Non-function definitions moved to regex.h.
200
201 * window.c (Fselect_window): Doc fix.
202
203 * syntax.c: Include regex.h.
204 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
205 If requested, make a list of classes, then check the scanned
206 chars for membership in them.
207 (in_classes): New function.
208 Doc fix.
209
210 * keyboard.c (cmd_error): Don't call any_kboard_state
211 if inside a recursive edit level.
212
213 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
214
215 * keyboard.c (command_loop): Call any_kboard_state before
216 command_loop_2 when at top level.
217
218 2004-06-13 Andreas Schwab <schwab@suse.de>
219
220 * print.c (print_object): Always use %ld for printing EMACS_INT.
221
222 * keyboard.c (cancel_hourglass_unwind): Return a value.
223 (modify_event_symbol): Always use %ld for printing EMACS_INT.
224 (Fexecute_extended_command): Likewise.
225
226 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
227 avoid clashes.
228 (SYNTAX): Likewise.
229 (SYNTAX_WITH_FLAGS): Likewise.
230 (SYNTAX_MATCH): Likewise.
231
232 * syntax.c (char_quoted): Avoid warning about undefined operation.
233 (find_defun_start): Likewise.
234 (scan_lists): Likewise.
235 (INC_FROM): Likewise.
236 (scan_sexps_forward): Likewise.
237
238 * image.c: Include <ctype.h>.
239
240 * xfaces.c (face_attr_equal_p): Declare parameters.
241
242 2004-06-13 Kenichi Handa <handa@m17n.org>
243
244 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
245
246 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
247
248 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
249
250 2004-06-12 Kenichi Handa <handa@m17n.org>
251
252 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
253 ccl_prog_stack_struct and update it.
254 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
255 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
256 ccl->eof_ic on EOF.
257 (ccl_debug_hook): New function.
258 (struct ccl_prog_stack): New member eof_ic.
259 (ccl_driver): Handle EOF in subrountine call correctly.
260
261 2004-06-11 Kenichi Handa <handa@m17n.org>
262
263 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
264
265 2004-06-11 Kim F. Storm <storm@cua.dk>
266
267 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
268
269 2004-06-11 Juanma Barranquero <lektu@terra.es>
270
271 * keyboard.c (Fposn_at_point): Doc fix.
272
273 2004-06-11 David Kastrup <dak@gnu.org>
274
275 * search.c (match_limit): Don't flag an error if match-data
276 exceeding the allocated search_regs.num_regs gets requested, just
277 return Qnil.
278
279 2004-06-08 Miles Bader <miles@gnu.org>
280
281 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
282
283 2004-06-07 Juanma Barranquero <lektu@terra.es>
284
285 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
286 (Fcurrent_time_string, Fcurrent_time_zone)
287 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
288
289 2004-06-07 Miles Bader <miles@gnu.org>
290
291 * xfaces.c (struct named_merge_point): New type.
292 (push_named_merge_point): New function.
293 (merge_named_face): New function.
294 (merge_face_ref, face_at_buffer_position, face_at_string_position):
295 Use `merge_named_face'.
296 (merge_face_inheritance): Function removed.
297 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
298 Add new `err_msgs' and `named_merge_points' args. Return error
299 status. Only print error messages if ERR_MSGS is true. Don't try to
300 do :inherit attribute validation.
301 (merge_face_heights): Handle `unspecified' in both directions.
302 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
303 Call `merge_face_ref' instead of `merge_face_inheritance'.
304 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
305 (compute_char_face, face_at_buffer_position)
306 (face_at_string_position): Call `merge_face_ref' instead of
307 `merge_face_vector_with_property'.
308
309 2004-06-07 Kenichi Handa <handa@m17n.org>
310
311 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
312 the necessary places.
313
314 2004-06-07 Kim F. Storm <storm@cua.dk>
315
316 * process.c (Fdelete_process): Undo 2004-05-28 change.
317 Instead, call status_notify also for network process.
318 (status_message): Use process instead of status as arg.
319 Give messages "deleted" or "connection broken by remote peer" for
320 an exited network process.
321 (status_notify): Change call to status_message.
322 (read_process_output): Increase readmax to 4096. Do not increase
323 buffer size for datagram channels (default is now large enough).
324
325 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
326
327 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
328 problem due to newly defined variable.
329
330 2004-06-06 Miles Bader <miles@gnu.org>
331
332 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
333 immediately if non-interactive or not initialized.
334
335 2004-06-05 Richard M. Stallman <rms@gnu.org>
336
337 * minibuf.c (Fcompleting_read): Doc fix.
338
339 2004-06-05 Andreas Schwab <schwab@suse.de>
340
341 * macfns.c (x_create_tip_frame): Fix declaration after statement.
342
343 2004-06-05 Juanma Barranquero <lektu@terra.es>
344
345 * keymap.c (Fdescribe_vector): Fix docstring.
346 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
347
348 2004-06-05 Miles Bader <miles@gnu.org>
349
350 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
351 attributes have different values than the default face.
352
353 2004-06-04 Eli Zaretskii <eliz@gnu.org>
354
355 * xfaces.c (x_supports_face_attributes_p): Make this function
356 conditional on HAVE_WINDOW_SYSTEM.
357 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
358 call x_supports_face_attributes_p if it was not compiled in.
359
360 2004-06-04 Miles Bader <miles@gnu.org>
361
362 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
363 from Ftty_supports_face_attributes_p.
364 (x_supports_face_attributes_p): New function.
365 (Ftty_supports_face_attributes_p): Function deleted.
366 (Fdisplay_supports_face_attributes_p): New function.
367 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
368 (face_attr_equal_p): New function.
369 (lface_equal_p): Use it.
370
371 2004-06-03 Juanma Barranquero <lektu@terra.es>
372
373 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
374 (Vw32_color_map): Fix typo in docstring.
375 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
376 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
377 Make argument names match their use in docstring.
378
379 2004-06-02 Juanma Barranquero <lektu@terra.es>
380
381 Work around bugs/problems with MinGW builds of graphics libraries
382 called from MSVC builds of Emacs.
383
384 * image.c (lookup_image): Make pointer to img static.
385 (png_read_from_memory): Disable "global" optimization.
386
387 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
388
389 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
390
391 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
392
393 * macfns.c: Don't include ccl.h.
394 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
395 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
396 TextUtils.h.
397 (Fx_create_frame): Sync with xfns.c. Initialize cursor
398 descriptors.
399 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
400 display height/width.
401 (compute_tip_xy, Vx_max_tooltip_size): Declare.
402 (unwind_create_tip_frame, compute_tip_xy): New functions.
403 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
404 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
405 and last_show_tip_args.
406
407 * macgui.h [!MAC_OSX]: Include Gestalt.h.
408 (Cursor, No_Cursor): New defines.
409 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
410 macro.
411 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
412
413 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
414
415 * macterm.c: Don't include Gestalt.h.
416 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
417 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
418 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
419 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
420 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
421 (construct_mouse_click, XTmouse_position)
422 (x_scroll_bar_report_motion, x_calc_absolute_position)
423 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
424 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
425 (note_mouse_movement): Clear the mouse face and reset the pointer
426 shape when the pointer goes outside the frame without grabbing.
427 (mac_front_window): New function.
428 (mac_window_to_frame): New macro.
429 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
430 (do_window_activate, do_window_deactivate, do_app_resume)
431 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
432 (do_zoom_window, mac_do_receive_drag, XTread_socket)
433 (mac_check_for_quit_char): Use mac_front_window and/or
434 mac_window_to_frame.
435 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
436 scroll-bar click event.
437 (mac_define_frame_cursor): Change the pointer shape.
438 (x_free_frame_resources): Reset tip_window to NULL when it is
439 disposed.
440 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
441 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
442 arrow_cursor.
443 (do_window_update): Don't do anything if the updated window is the
444 tooltip window.
445 (do_mouse_moved): Handle mouse movement events here (previously in
446 XTread_socket). Clear the mouse face if
447 dpyinfo->mouse_face_hidden is set.
448 (do_os_event, do_events): Remove (now in XTread_socket).
449 (XTread_socket): Immediately return if interrupt_input_blocked.
450 Loop until all the events in the queue are processed. Rearrange
451 codes for mouse grabbing. Add tooltip support. Include the
452 contents of do_os_event and do_events. Remove mouse movement
453 handling (now in do_mouse_moved). Add the case where
454 Vmouse_highlight has an integer value.
455 (NewMacWindow): Remove.
456 (make_mac_frame): Do what NewMacWindow previously did. Don't do
457 excess initializations.
458 (make_mac_terminal_frame): Previous initializations in
459 make_mac_frame are moved here.
460 (mac_initialize_display_info): Initialize
461 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
462
463 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
464 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
465
466 2004-05-29 Richard M. Stallman <rms@gnu.org>
467
468 * lisp.h (truncate_undo_list): Update decl.
469
470 * alloc.c (undo_outer_limit): New variable.
471 (syms_of_alloc): Defvar it.
472 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
473
474 * undo.c (truncate_undo_list): New arg LIMITSIZE.
475
476 * alloc.c (lisp_align_malloc): Check for base == 0
477 regardless of HAVE_POSIX_MEMALIGN.
478 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
479
480 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
481
482 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
483 (marker_blocks_pending_free): Remove.
484 (Fgarbage_collect): Sweep after cleaning up undo-lists.
485 Mark the undo lists after claning them up.
486 Don't free block in marker_blocks_pending_free.
487 (mark_buffer): Don't mark undo_list.
488 (gc_sweep): Sweep hash-tables and strings first.
489 Do free marker blocks that are empty.
490
491 2004-05-28 Jim Blandy <jimb@redhat.com>
492
493 * regex.c (print_partial_compiled_pattern): Add missing 'break'
494 after 'case wordend'. For symbeg and symend, print to stderr,
495 like the other cases.
496
497 2004-05-28 Noah Friedman <friedman@splode.com>
498
499 * process.c (Fdelete_process): Do not call remove_process.
500
501 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
502
503 * alloc.c (struct backtrace): Remove.
504 (Fgarbage_collect): Use the new mark_backtrace.
505
506 * eval.c (mark_backtrace): New function.
507
508 * minibuf.c (run_exit_minibuf_hook): New function.
509 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
510 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
511
512 2004-05-27 Kim F. Storm <storm@cua.dk>
513
514 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
515 over display properties, e.g. images, that replace buffer text.
516
517 2004-05-25 Kim F. Storm <storm@cua.dk>
518
519 * alloc.c (marker_blocks_pending_free): New var.
520 (gc_sweep): Store free marker blocks on that list.
521 (Fgarbage_collect): Free them after undo-list cleanup.
522
523 * process.c (wait_reading_process_input): Check connect_wait_mask
524 before actually accepting connection in case it has already been
525 accepted due to recursion.
526
527 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
528
529 * coding.c (Fset_safe_terminal_coding_system_internal):
530 Set suppress_error in safe_terminal_coding, not terminal_coding.
531
532 2004-05-22 Richard M. Stallman <rms@gnu.org>
533
534 * alloc.c (Fmake_string): Doc fix.
535
536 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
537 and the alist pairs too.
538
539 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
540
541 * emacs.c (main): Update copyright year.
542
543 * fileio.c (Fread_file_name): Expand DIR if not absolute.
544
545 * insdel.c (del_range_2, replace_range): Don't write an anchor
546 if the gap is empty.
547
548 * xdisp.c (try_scrolling): If scroll-up-aggressively or
549 scroll-down-aggressively is small but positive, put point
550 near the screen edge.
551
552 2004-05-22 Juanma Barranquero <lektu@terra.es>
553
554 * keymap.c (Fdefine_key): Doc fix.
555
556 2004-05-22 Kim F. Storm <storm@cua.dk>
557
558 * alloc.c (struct backtrace): Add debug_on_exit member.
559 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
560 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
561 the removed cons cells.
562 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
563 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
564 any cons cells pointing to unallocated stings.
565 Do not lisp_free any marker blocks, as there may still be pointers
566 to them from buffer undo lists at this stage of GC.
567
568 * keyboard.c (struct backtrace): Add debug_on_exit member.
569 (Fcommand_execute): Clear it.
570
571 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
572
573 * intervals.c (lookup_char_property): Do not prematurely return nil.
574
575 2004-05-19 Jim Blandy <jimb@redhat.com>
576
577 Add support for new '\_<' and '\_>' regexp operators, matching the
578 beginning and end of symbols.
579
580 * regex.c (enum syntaxcode): Add Ssymbol.
581 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
582 (re_opcode_t): New opcodes `symbeg' and `symend'.
583 (print_partial_compiled_pattern): Print the new opcodes properly.
584 (regex_compile): Parse the new operators.
585 (analyse_first): Skip sym(beg|end) (they match only the empty string).
586 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
587 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
588 (re_match_2_internal): Match symbeg and symend.
589
590 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
591
592 2004-05-19 Kim F. Storm <storm@cua.dk>
593
594 * .gdbinit (xsymbol): Fix last change.
595
596 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
597
598 * .gdbinit (xprintstr): New fun.
599 (xstring, xprintsym): Use it.
600
601 * w32proc.c (create_child): Use INTMASK.
602
603 * alloc.c (Fgarbage_collect): Do all the marking before flushing
604 unmarked elements of the undo list.
605
606 2004-05-18 David Ponce <david@dponce.com>
607
608 * print.c (print): Reset print_depth before to call print_object.
609
610 2004-05-18 Jason Rumney <jasonr@gnu.org>
611
612 * w32console.c: Prefix RIF functions with w32con_ to avoid
613 namespace clash with functions in term.c and w32term.c.
614
615 * w32menu.c (add_menu_item, w32_menu_display_help)
616 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
617
618 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
619
620 2004-05-18 Eli Zaretskii <eliz@gnu.org>
621
622 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
623
624 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
625 with make_number.
626 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
627 with XINT.
628
629 2004-05-18 Kim F. Storm <storm@cua.dk>
630
631 * blockinput.h (INPUT_BLOCKED_P): New macros.
632
633 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
634 (Ftop_level): Unblock input if blocked.
635
636 * buffer.h (GET_OVERLAYS_AT): New macro.
637 * msdos.c (IT_note_mouse_highlight): Use it.
638 * textprop.c (get_char_property_and_overlay): Use it.
639 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
640 * xfaces.c (face_at_buffer_position): Use it.
641
642 * print.c (print_object): Increase buf size.
643
644 2004-05-17 Jason Rumney <jasonr@gnu.org>
645
646 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
647 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
648 Lisp_Object using i member.
649 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
650 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
651 consistently.
652
653 * w32proc.c (create_child): Use make_number instead of masking pid.
654
655 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
656 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
657 Use EQ to compare Lisp_Objects.
658 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
659
660 * w32term.c (w32_num_mouse_buttons): Rename from
661 Vw32_num_mouse_buttons and make it an int.
662
663 * w32.c (init_environment): Use it.
664
665 * w32fns.c (w32_wnd_proc): Likewise.
666
667 * w32proc.c (w32_pipe_read_delay): Rename from
668 Vw32_pipe_read_delay and make it an int.
669
670 * w32.c (_sys_read_ahead): Use it.
671
672 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
673
674 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
675
676 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
677 (key_event): Don't mix Lisp_Object and int.
678
679 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
680
681 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
682 modifiers in language change event.
683
684 2004-05-17 Kim F. Storm <storm@cua.dk>
685
686 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
687 Such objects may be freed markers which still exist on an undo list.
688
689 2004-05-16 Juanma Barranquero <lektu@terra.es>
690
691 * data.c (Fset_default): Make argument names match their use in
692 docstring.
693
694 2004-05-15 Andreas Schwab <schwab@suse.de>
695
696 * emacs.c (gdb_array_mark_flag): Define.
697 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
698
699 2004-05-15 Eli Zaretskii <eliz@gnu.org>
700
701 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
702 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
703 defined for the MS-DOS build.
704
705 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
706
707 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
708
709 2004-05-14 Kenichi Handa <handa@m17n.org>
710
711 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
712
713 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
714
715 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
716 section to frame.c section.
717 (Fxw_display_color_p, Fx_file_dialog): Declare if
718 HAVE_WINDOW_SYSTEM defined.
719
720 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
721
722 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
723
724 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
725 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
726 (XTread_socket): Fix int/Lisp_Object mixup.
727 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
728
729 * macterm.h (struct frame, struct face, struct image)
730 (display_x_get_resource, Fx_display_color_p)
731 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
732 Add prototypes.
733
734 2004-05-14 Kim F. Storm <storm@cua.dk>
735
736 * process.c (wait_reading_process_input): Make reentrant.
737 Make Available and Connecting non-static. Save and restore value
738 of waiting_for_user_input_p.
739
740 2004-05-13 Kim F. Storm <storm@cua.dk>
741
742 * keyboard.c (mark_kboards): Don't mark x and y members
743 that are overloaded in selection request events.
744
745 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
746
747 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
748
749 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
750
751 * window.c (Fdisplay_buffer, Fsplit_window)
752 (split-height-threshold): Doc fix.
753
754 2004-05-13 Juanma Barranquero <lektu@terra.es>
755
756 * xfaces.c (Ftty_supports_face_attributes_p)
757 (Finternal_copy_lisp_face): Fix typo in docstring.
758 (Finternal_get_lisp_face_attribute): Fix docstring.
759
760 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
761
762 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
763
764 2004-05-11 Steven Tamm <steventamm@mac.com>
765
766 * macfns.c (Fx_create_frame): Default to using tool-bar by
767 setting tool-bar-lines to 1 in default-frame-alist.
768
769 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
770
771 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
772 (xpm_get_color_table_v, xpm_make_color_table_h)
773 (xpm_put_color_table_h, xpm_get_color_table_h)
774 (xpm_str_to_color_key, xpm_load_image, xpm_load)
775 (syms_of_image): Support XPM on Carbon Emacs. Does not
776 depend on libXpm, but only supports XPM version 3 without extensions.
777
778 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
779
780 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
781 instead of FRAME_X_P
782
783 2004-05-11 Kim F. Storm <storm@cua.dk>
784
785 * process.c (read_process_output): Grow decoding_buf when needed;
786 this could cause a crash in allocate_string and compact_small_strings.
787
788 2004-04-29 Jim Blandy <jimb@redhat.com>
789
790 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
791 against proper opcode.
792
793 2004-05-10 Juanma Barranquero <lektu@terra.es>
794
795 * process.c (Fstart_process): Fix docstring.
796
797 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
798 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
799 (Fsplit_char, Fchar_charset): Make argument names match their use
800 in docstring.
801
802 2004-05-10 Richard M. Stallman <rms@gnu.org>
803
804 * print.c (print_preprocess): Use being_printed, loop_count and
805 halftail to detect overdeep nesting and cyclic cdr chains.
806
807 2004-05-10 Andreas Schwab <schwab@suse.de>
808
809 * lisp.h: Declare Fmake_symbolic_link.
810
811 * fileio.c (Frename_file): Remove extra argument in call to
812 Fmake_symbolic_link.
813
814 2004-05-10 Kim F. Storm <storm@cua.dk>
815
816 * xdisp.c (calc_line_height_property): Use string position when
817 object is a string.
818
819 2004-05-10 Kenichi Handa <handa@m17n.org>
820
821 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
822 inhibit-modification-hooks to t temporarily before calling
823 Ferase_buffer.
824
825 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
826 inhibit-modification-hooks to t temporarily before calling
827 Ferase_buffer.
828
829 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
830 inhibit-modification-hooks to t temporarily before calling
831 Ferase_buffer.
832
833 * fns.c (count_combining): Delete it.
834 (concat): Don't check combining bytes.
835
836 2004-05-09 Jason Rumney <jasonr@gnu.org>
837
838 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
839 (globals_of_w32fns): Set it.
840
841 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
842
843 * data.c (Fquo): Simplify.
844
845 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
846
847 * data.c (Fquo): If any argument is float, do the computation in
848 floating point.
849
850 2004-05-08 Juanma Barranquero <lektu@terra.es>
851
852 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
853 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
854 Fix spelling of Emacs on docstring.
855 (Fset_process_coding_system, Fprocess_coding_system)
856 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
857 Make argument names match their use in docstring.
858 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
859 Fix docstring.
860
861 * editfns.c (Finsert_buffer_substring): Make argument names match their
862 use in docstring.
863
864 * syntax.c (Fmodify_syntax_entry): Fix docstring.
865
866 2004-05-07 Steven Tamm <steventamm@mac.com>
867
868 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
869 around call to ReceiveEvent to avoid certain crashes.
870
871 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
872
873 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
874 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
875 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
876 Save/restore the current graphics port and device handle when
877 drawing into an offscreen graphics world.
878
879 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
880 (gif_load): Likewise.
881
882 2004-05-07 Juanma Barranquero <lektu@terra.es>
883
884 * window.c (Fset_window_buffer): Fix docstring.
885
886 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
887
888 * emacs.c (main) [VMS]: Fix var ref.
889
890 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
891
892 * data.c (Fsetq_default): Fix docstring.
893
894 2004-05-06 Jason Rumney <jasonr@gnu.org>
895
896 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
897 to avoid name clash.
898
899 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
900
901 * fileio.c (barf_or_query_if_file_exists): Use lstat.
902 (Frename_file): Handle renaming of symlinks across file systems.
903 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
904
905 2004-05-04 Kim F. Storm <storm@cua.dk>
906
907 * xdisp.c (Qtotal): New var.
908 (syms_of_xdisp): Intern and staticpro it.
909 (calc_line_height_property): New arg total. Set it if
910 line-spacing property has format (total . VALUE).
911 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
912 Handle total line-spacing property.
913
914 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
915
916 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
917 "under" scroll bar when size/position changes.
918
919 2004-05-03 Jason Rumney <jasonr@gnu.org>
920
921 * makefile.nt: Remove.
922
923 2004-05-02 Eli Zaretskii <eliz@gnu.org>
924
925 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
926 Avoid compiler warnings.
927
928 * Makefile.in (region-cache.o): Depend on config.h.
929
930 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
931
932 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
933 with continuation lines, too.
934
935 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
936
937 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
938
939 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
940
941 * xdisp.c (calc_line_height_property): YAILOM (yet another
942 int/Lisp_Object mixup).
943
944 2004-05-01 Eli Zaretskii <eliz@gnu.org>
945
946 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
947 undo bad effect of pack(4) in some versions of system headers.
948
949 2004-05-01 Jason Rumney <jasonr@gnu.org>
950
951 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
952
953 2004-04-30 Kim F. Storm <storm@cua.dk>
954
955 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
956 (syms_of_buffer) <cursor-type>: Doc fix.
957
958 * dispextern.h (struct it): Remove member use_default_face.
959 Add members override_ascent, override_descent, override_boff.
960
961 * xdisp.c (init_iterator): Handle line-spacing float value.
962 Initialize override_ascent member.
963 (append_space_for_newline): Reset override_ascent.
964 Remove use_default_face.
965 (calc_line_height_property): New function to calculate value of
966 line-height and line-spacing properties. Look at overlays, too.
967 Set override_ascent, override_descent, override_boff members when
968 using another face than the current face. Float values are now
969 relative to the frame default font, by default; accept a cons
970 of ratio and face name to specify value relative to a specific face.
971 (x_produce_glyphs): Use calc_line_height_property.
972 Use override_ascent etc. when set to handle different face heights.
973 A negative line-spacing property value is interpreted as a total
974 line height, rather than inter-line spacing.
975 (note_mouse_highlight): Allocate room for 40 overlays initially.
976
977 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
978
979 * data.c (Fsubr_name): New fun.
980 (syms_of_data): Defsubr it.
981
982 2004-04-29 Kim F. Storm <storm@cua.dk>
983
984 * xdisp.c (null_glyph_slice): New var.
985 (append_glyph, append_composite_glyph, append_stretch_glyph):
986 Use it to initialize glyph slice.
987
988 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
989
990 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
991 (on_hot_spot_p): Make sure we always return a value.
992 (Flookup_image_map): Remove unused var ix and iy.
993 (note_mode_line_or_margin_highlight): Remove unused var `image'.
994
995 2004-04-27 Eli Zaretskii <eliz@gnu.org>
996
997 * msdos.c (init_environment): If one of the TMP... environment
998 variables is set to a drive letter without a trailing slash,
999 append a slash.
1000
1001 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1002
1003 * editfns.c (lisp_time_argument): Provide externally.
1004
1005 * fileio.c (Fset_file_times): New function.
1006 (syms_of_fileio): Intern and staticpro it.
1007
1008 2004-04-27 Kim F. Storm <storm@cua.dk>
1009
1010 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1011 header line strings.
1012
1013 * dispextern.h (struct it): New member use_default_face.
1014
1015 * xdisp.c (Qline_height): New variable.
1016 (syms_of_xdisp): Intern and staticpro it.
1017 (append_space_for_newline): Partially undo 2004-04-25 change;
1018 add default_face_p arg, and restore callers.
1019 Clear it->use_default_face after use.
1020 (x_produce_glyphs): Set default font for ascii char if
1021 it->use_default_font is set. Change line-spacing property to set
1022 just extra line spacing. Handle new line-height property.
1023
1024 2004-04-26 Andreas Schwab <schwab@suse.de>
1025
1026 * print.c (print_object): Print non-ascii characters in bool
1027 vector representation as octal escapes.
1028
1029 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1030 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1031 bool vectors.
1032 * lread.c (read1): Likewise.
1033 * alloc.c (Fmake_bool_vector): Likewise.
1034 * data.c (Faref, Faset): Likewise.
1035 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1036 (mapcar1): Likewise.
1037
1038 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1039
1040 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1041
1042 2004-04-26 Miles Bader <miles@gnu.org>
1043
1044 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1045
1046 2004-04-26 Juanma Barranquero <lektu@terra.es>
1047
1048 * buffer.c (Fpop_to_buffer): Fix docstring.
1049
1050 2004-04-26 Steven Tamm <steventamm@mac.com>
1051
1052 * lread.c (init_lread): Don't display missing lisp directory
1053 warnings with Carbon Emacs because self-contained bundled Emacs
1054 may be built without correct installation path.
1055
1056 2004-04-25 Kim F. Storm <storm@cua.dk>
1057
1058 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1059
1060 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1061
1062 * xdisp.c (append_space_for_newline): Rename from append_space.
1063 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1064 (x_produce_glyphs): Handle line-spacing property on newline char.
1065 If value is t, adjust ascent and descent to fit current row height.
1066 If value is an integer or float, set extra_line_spacing to integer
1067 value, or to float value x current line height.
1068
1069 2004-04-23 Kenichi Handa <handa@m17n.org>
1070
1071 * fontset.c (Finternal_char_font): If POSITION is nil, return
1072 font for displaying CH with the default face.
1073
1074 2004-04-23 Juanma Barranquero <lektu@terra.es>
1075
1076 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1077
1078 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1079
1080 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1081 Don't make assumptions about the relative place of i and val.
1082 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1083
1084 2004-04-21 Kim F. Storm <storm@cua.dk>
1085
1086 * dispextern.h (struct glyph_slice): New struct.
1087 (struct glyph): New member slice.
1088 (GLYPH_SLICE_EQUAL_P): New macro.
1089 (GLYPH_EQUAL_P): Use it.
1090 (struct glyph_string): New member slice.
1091 (struct it_slice): New struct.
1092 (struct it): New member slice, add member to stack too.
1093 New member constrain_row_ascent_descent_p.
1094 (image_ascent): Add prototype.
1095
1096 * dispnew.c (buffer_posn_from_coords): Return full image width
1097 and height even for image slices (posn is relative to full image).
1098 (marginal_area_string): Adjust x0,y0 for image slice.
1099
1100 * image.c (image_ascent): Add slice arg; calculate ascent for
1101 image slice (or full image).
1102
1103 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1104 (syms_of_keyboard): Defsubr them.
1105
1106 * lisp.h (pos_visible_p): Fix prototype.
1107
1108 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1109 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1110 (x_draw_image_foreground, x_draw_image_relief)
1111 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1112 Draw sliced images.
1113
1114 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1115 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1116 (x_draw_image_foreground, x_draw_image_relief)
1117 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1118 Draw sliced images.
1119
1120 * w32term.h (image_ascent): Remove prototype.
1121
1122 * window.c (Fpos_visible_in_window_p): Return pixel position if
1123 PARTIALLY arg is non-nil. Simplify. Doc fix.
1124 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1125 to return/set vscroll in pixels.
1126
1127 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1128
1129 * xdisp.c (Qslice): New variable.
1130 (syms_of_xdisp): Intern and staticpro it.
1131 (pos_visible_p): Return pixel position in new x and y args.
1132 (init_iterator): Reset it->slice info.
1133 (handle_display_prop): Parse (slice ...) property.
1134 (push_it, pop_it): Save/restore slice info.
1135 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1136 force repositioning of tall row if window is vscrolled, as that
1137 would reset vscroll.
1138 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1139 increasing row height if row is non-empty.
1140 (fill_image_glyph_string): Copy slice info.
1141 (take_vertical_position_into_account): Simplify.
1142 (produce_image_glyph): Handle iterator slice info, setup glyph
1143 slice info. Do not force minimum line height.
1144 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1145 do not increase height (ascent/descent) of non-empty row when
1146 adding normal character glyph; instead reduce glyph ascent/descent
1147 appropriately; if row is higher than current glyph, adjust glyph
1148 descent/ascent to reposition glyph within the existing row.
1149 Likewise, when char is newline, only set ascent/descent if row is
1150 currently empty.
1151 (note_mouse_highlight): Handle hotspots with sliced image.
1152
1153 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1154 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1155 (x_draw_image_foreground, x_draw_image_relief)
1156 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1157 Draw sliced images.
1158
1159 * xterm.h (image_ascent): Remove prototype.
1160
1161 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1162
1163 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1164
1165 2004-04-20 John Paul Wallington <jpw@gnu.org>
1166
1167 * fns.c (Fassoc, Feql): Fix indentation.
1168
1169 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1170
1171 2004-04-19 John Paul Wallington <jpw@gnu.org>
1172
1173 * fns.c (Feql): New function.
1174 (syms_of_fns): Defsubr it.
1175
1176 2004-04-18 Jason Rumney <jasonr@gnu.org>
1177
1178 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1179 after closing the clipboard.
1180
1181 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1182
1183 * buffer.c (Fbuffer_base_buffer): Doc fix.
1184
1185 2004-04-17 Kim F. Storm <storm@cua.dk>
1186
1187 * keymap.c (Fkey_description): Add optional PREFIX arg.
1188 Combine prefix with KEYS to make up the full key sequence to describe.
1189 Correlate meta_prefix_char and following (simple) key to describe
1190 as meta modifier. All callers changed.
1191 (describe_map): Rename arg `keys' to `prefix'. Remove local
1192 `elt_prefix' var. Use Fkey_description with prefix instead of
1193 elt_prefix combined with Fsingle_key_description.
1194 (describe_vector): Declare static. Replace arg `elt_prefix' with
1195 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1196 if !KEYMAP_P. Use Fkey_description with prefix instead of
1197 Fsingle_key_description.
1198
1199 * keymap.h (Fkey_description): Fix prototype.
1200 (describe_vector): Remove prototype.
1201
1202 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1203
1204 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1205 (png_load): Fix calculation of transparent background color on X
1206 and W32 platforms.
1207
1208 2004-04-16 Juanma Barranquero <lektu@terra.es>
1209
1210 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1211 not too large before computing how much to scroll.
1212
1213 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1214
1215 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1216
1217 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1218
1219 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1220 Add hyperlink to Elisp manual to the docstring.
1221
1222 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1223
1224 * callint.c (fix_command): Use XDCR.
1225
1226 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
1227
1228 * window.c (Fget_lru_window): Doc fix.
1229
1230 2004-04-14 Kim F. Storm <storm@cua.dk>
1231
1232 * editfns.c (Fformat): Fix allocation size of precision array.
1233
1234 * dispnew.c (update_window): Only set changed_p if
1235 scrolling_window actually did scroll.
1236 (scrolling_window): Only return 1 if we actually did scroll.
1237
1238 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1239 height to glyph height when cursor row is not fully visible.
1240 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1241 failure in case row is higher than window. Callers changed.
1242 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1243 Try to scroll partially visible, higher-than-window cursor row.
1244 (redisplay_window): Always try to scroll partially visible,
1245 higher-than-window cursor row - both initially and again with
1246 centering_position = 0.
1247 Clear desired matrix before retrying with centering_position = 0.
1248
1249 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1250
1251 * syntax.c (scan_lists): Simplify backward string scan.
1252 Fix off-by-one boundary check for string and comment fences.
1253
1254 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
1255
1256 * sheap.c, unexcw.c: New files.
1257
1258 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1259
1260 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1261 base buffer has been killed. Correct the error message if the
1262 base buffer does not exist.
1263
1264 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
1265
1266 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1267 Cygwin itself. Add support for Xaw3d scrollbars.
1268
1269 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1270
1271 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1272
1273 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1274 before Cygwin unexec.
1275
1276 * Makefile.in: Link changes for Cygwin unexec() support.
1277
1278 2004-04-12 Andreas Schwab <schwab@suse.de>
1279
1280 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1281
1282 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1283
1284 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1285 IGNORE argument equals NAME. Doc fix.
1286
1287 2004-04-11 Masatake YAMATO <jet@gyve.org>
1288
1289 * buffer.c (fix_start_end_in_overlays): Make overlays
1290 empty if they are backwards.
1291
1292 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1293
1294 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1295
1296 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1297
1298 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1299
1300 2004-04-06 Kim F. Storm <storm@cua.dk>
1301
1302 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1303 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1304
1305 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1306 clearing highlight.
1307
1308 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1309
1310 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1311 clearing highlight.
1312
1313 * indent.c (vmotion): Do not reserve one column for continuation
1314 marks on window frames.
1315
1316 2004-04-04 Eli Zaretskii <eliz@gnu.org>
1317
1318 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1319 from GCC.
1320
1321 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * .gdbinit-union: Remove.
1324
1325 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1326 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1327 ($nonvalbits): Remove.
1328 ($valmask): Set it by calling xreload to avoid redundancy.
1329
1330 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1331 (gdb_emacs_intbits): Remove.
1332
1333 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1334
1335 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1336
1337 2004-03-30 Kenichi Handa <handa@m17n.org>
1338
1339 * editfns.c (Fformat): Fix initialization of the array info.
1340
1341 2004-03-30 Kim F. Storm <storm@cua.dk>
1342
1343 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1344 (syms_of_xterm): DEFVAR_BOOL it.
1345 (ignore_next_mouse_click_timeout): New var.
1346 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1347 Use it to filter mouse clicks following focus event.
1348
1349 2004-03-29 David Ponce <david@dponce.com>
1350
1351 * callint.c (Fcall_interactively): Fix last change.
1352
1353 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1354
1355 * eval.c (Fcommandp): Simplify.
1356
1357 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1358 Extend to handle all kinds of functions.
1359
1360 * lisp.h (Finteractive_form): Declare.
1361
1362 * callint.c (Fcall_interactively): Use it.
1363
1364 2004-03-26 Kim F. Storm <storm@cua.dk>
1365
1366 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1367 to catch errors in calc_pixel_width_or_height during redisplay.
1368
1369 2004-03-26 Masatake YAMATO <jet@gyve.org>
1370
1371 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1372
1373 * lisp.h (fix_start_end_in_overlays): Likewise.
1374
1375 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1376
1377 * editfns.c (Ftranspose_regions): Likewise.
1378
1379 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1380
1381 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1382
1383 2004-03-19 Richard M. Stallman <rms@gnu.org>
1384
1385 * s/sol2-6.h: Delete previous change.
1386
1387 2004-03-19 Kim F. Storm <storm@cua.dk>
1388
1389 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1390 to_charpos corresponds to newline in right fringe. Use local
1391 BUFFER_POS_REACHED_P macro.
1392
1393 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1394
1395 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1396 to compile on non-window system.
1397
1398 2004-03-19 Kim F. Storm <storm@cua.dk>
1399
1400 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1401
1402 * image.c (Qcenter): Move to xdisp.c.
1403
1404 * xdisp.c (Qcenter): Declare here.
1405 (syms_of_xdisp): Intern and staticpro it.
1406 (handle_single_display_prop): Allow space display property on all
1407 platforms.
1408 (display_mode_line): Set mode_line_p before displaying line.
1409 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1410 handling. Remove complex cases for fringes and scroll-bars.
1411 Add left, right, and center alignment positions. Add text (area)
1412 width/height. Return width or height for image specs.
1413 (produce_stretch_glyph): Improve handling of :align-to. Is now
1414 relative to left of text area by default, but other base offsets
1415 can be specified -- also for text lines.
1416
1417 * term.c (produce_glyphs): Handle IT_STRETCH.
1418 (produce_stretch_glyph): New function to handle space width and
1419 align-to display properties on non-window systems.
1420
1421 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1422
1423 * fileio.c (Fread_file_name): Set completion-ignore-case for
1424 case-insensitive systems.
1425
1426 2004-03-14 Masatake YAMATO <jet@gyve.org>
1427
1428 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1429 when keymap and cursor are setup.
1430
1431 2004-03-14 Steven Tamm <steventamm@mac.com>
1432
1433 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1434
1435 2004-03-14 Kim F. Storm <storm@cua.dk>
1436
1437 * dispextern.h (x_find_image_file): Add prototype.
1438
1439 * image.c (x_find_image_file): Make extern.
1440
1441 * xfns.c (x_find_image_file): Remove prototype.
1442
1443 2004-03-13 Eli Zaretskii <eliz@gnu.org>
1444
1445 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1446
1447 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1448
1449 2004-03-12 Richard M. Stallman <rms@gnu.org>
1450
1451 * fns.c (internal_equal): New arg PROPS controls comparing
1452 text properties. All callers changed.
1453 (Fequal_including_properties): New function.
1454 (syms_of_fns): defsubr it.
1455
1456 2004-03-12 Kim F. Storm <storm@cua.dk>
1457
1458 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1459
1460 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1461 (image_background, image_background_transparent): Fix prototypes.
1462
1463 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1464
1465 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1466 (x_query_font, x_find_ccl_program, x_set_window_size)
1467 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1468 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1469 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1470
1471 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1472 (x_query_font, x_find_ccl_program, x_set_window_size)
1473 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1474 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1475 (mac_draw_line_to_pixmap): Add prototypes.
1476
1477 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1478
1479 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1480
1481 2004-03-11 Kim F. Storm <storm@cua.dk>
1482
1483 * dispextern.h: Move image related prototypes from xfns.c section
1484 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1485 HAVE_X_WINDOWS.
1486
1487 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1488 Move gtkutil.o to new GTK_OBJ list.
1489 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1490 (GTK_OBJ) [USE_GTK]: New declaration.
1491 (obj): Add $(GTK_OBJ) to list.
1492
1493 2004-03-11 Steven Tamm <steventamm@mac.com>
1494
1495 * image.c [MAC_OSX]: Include sys/stat.h
1496
1497 * macfns.c (syms_of_macfns): Remove definitions of things now
1498 defined in image.c
1499
1500 2004-03-11 Kim F. Storm <storm@cua.dk>
1501
1502 The following changes consolidates the identical/similar image
1503 support code previously found in xfns.c, w32fns.c, and macfns.c
1504 into a new file image.c.
1505
1506 * makefile.w32-in (OBJ1): Add image.o.
1507 ($(BLD)/image.$(O)): Add dependencies.
1508
1509 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1510 (image.o): Add dependencies.
1511
1512 * image.c: New file with consolidated image support code.
1513 (COLOR_TABLE_SUPPORT): New define to control whether
1514 color table support is available (X only).
1515 (Bitmap_Record): Common name for x_bitmap_record,
1516 w32_bitmap_record, and mac_bitmap_record.
1517 (XImagePtr): Common name for pointer to XImage or equivalent.
1518 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1519 to XImagePtr on X+MAC, and to HDC on W32.
1520 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1521 (NO_PIXMAP): Common name for "None" or equivalent.
1522 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1523 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1524 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
1525 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1526 Define with suitable equivalents on W32 and MAC for code sharing.
1527 (XDrawLine): Define on MAC for code sharing.
1528 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1529 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1530 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1531 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1532 (x_reference_bitmap, x_create_bitmap_from_data)
1533 (x_create_bitmap_from_file, x_destroy_bitmap)
1534 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1535 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1536 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1537 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1538 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1539 (define_image_type, lookup_image_type, valid_image_p)
1540 (image_error, enum image_value_type, struct image_keyword)
1541 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1542 (make_image, free_image, prepare_image_for_display, image_ascent)
1543 (four_corners_best, image_background, image_background_transparent)
1544 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1545 (make_image_cache, free_image_cache, clear_image_cache)
1546 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1547 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1548 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1549 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1550 (init_image_func_pointer, image_load_quartz2d)
1551 (struct ct_color, init_color_table, free_color_table)
1552 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1553 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1554 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1555 (x_disable_image, x_build_heuristic_mask)
1556 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1557 (TIFF support, GIF support, Ghostscript support): Consolidate image
1558 code from xfns.c, w32fns.c, and macfns.c.
1559 (syms_of_image): Consolidate image related symbol setup here.
1560 (init_image): Consolidate image related initializations here.
1561
1562 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1563 and init_image. Remove call to init_xfns.
1564
1565 * macterm.h (struct mac_bitmap_record): Add file member.
1566 Not currently used, but simplifies code sharing.
1567
1568 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1569 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1570 (x_reference_bitmap, x_create_bitmap_from_data)
1571 (x_create_bitmap_from_file, x_destroy_bitmap)
1572 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1573 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1574 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1575 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1576 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1577 (define_image_type, lookup_image_type, valid_image_p)
1578 (image_error, enum image_value_type, struct image_keyword)
1579 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1580 (make_image, free_image, prepare_image_for_display, image_ascent)
1581 (four_corners_best, image_background, image_background_transparent)
1582 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1583 (make_image_cache, free_image_cache, clear_image_cache)
1584 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1585 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1586 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1587 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1588 (init_image_func_pointer, image_load_quartz2d)
1589 (struct ct_color, init_color_table, free_color_table)
1590 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1591 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1592 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1593 (x_disable_image, x_build_heuristic_mask)
1594 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1595 (TIFF support, GIF support, Ghostscript support): Merge with image
1596 code from xfns.c and macfns.c into image.c.
1597 (syms_of_xfns): Move image related symbols to image.c.
1598 (init_external_image_libraries, init_xfns): Remove; initialization
1599 moved to init_image in image.c.
1600
1601 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1602 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1603 (x_reference_bitmap, x_create_bitmap_from_data)
1604 (x_create_bitmap_from_file, x_destroy_bitmap)
1605 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1606 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1607 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1608 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1609 (define_image_type, lookup_image_type, valid_image_p)
1610 (image_error, enum image_value_type, struct image_keyword)
1611 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1612 (make_image, free_image, prepare_image_for_display, image_ascent)
1613 (four_corners_best, image_background, image_background_transparent)
1614 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1615 (make_image_cache, free_image_cache, clear_image_cache)
1616 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1617 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1618 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1619 (struct ct_color, init_color_table, free_color_table)
1620 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1621 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1622 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1623 (x_disable_image, x_build_heuristic_mask)
1624 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1625 (TIFF support, GIF support, Ghostscript support): Merge with image
1626 code from xfns.c and macfns.c into image.c.
1627 (syms_of_xfns): Move image related symbols to image.c.
1628 (init_external_image_libraries, init_xfns): Remove; initialization
1629 moved to init_image in image.c.
1630
1631 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1632 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1633 (x_reference_bitmap, x_create_bitmap_from_data)
1634 (x_create_bitmap_from_file, x_destroy_bitmap)
1635 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1636 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1637 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1638 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1639 (define_image_type, lookup_image_type, valid_image_p)
1640 (image_error, enum image_value_type, struct image_keyword)
1641 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1642 (make_image, free_image, prepare_image_for_display, image_ascent)
1643 (four_corners_best, image_background, image_background_transparent)
1644 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1645 (make_image_cache, free_image_cache, clear_image_cache)
1646 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1647 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1648 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1649 (struct ct_color, init_color_table, free_color_table)
1650 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1651 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1652 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1653 (x_disable_image, x_build_heuristic_mask)
1654 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1655 (TIFF support, GIF support, Ghostscript support): Merge with
1656 w32fns.c and macfns.c image code into image.c.
1657 (syms_of_xfns): Move image related symbols to image.c.
1658 (init_xfns): Remove; initialization moved to init_image in image.c.
1659
1660 * lisp.h (syms_of_image, init_image): Add protoypes.
1661 (init_xfns): Remove prototype.
1662
1663 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1664 (x_reference_bitmap, x_create_bitmap_from_data)
1665 (x_create_bitmap_from_file, x_destroy_bitmap)
1666 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1667 (gamma_correct) [MAC_OS]: Add prototype.
1668
1669 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1670 (x_reference_bitmap, x_create_bitmap_from_data)
1671 (x_create_bitmap_from_file, x_destroy_bitmap)
1672 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1673
1674 2004-03-09 Kenichi Handa <handa@etlken2>
1675
1676 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1677 correctly.
1678
1679 2004-03-04 Richard M. Stallman <rms@gnu.org>
1680
1681 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1682
1683 * window.c (Fdisplay_buffer): Doc fix.
1684
1685 * buffer.c (Fpop_to_buffer): Doc fix.
1686
1687 2004-03-03 Kim F. Storm <storm@cua.dk>
1688
1689 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1690
1691 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1692
1693 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1694
1695 2004-03-02 Richard M. Stallman <rms@gnu.org>
1696
1697 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1698
1699 2004-03-02 Kenichi Handa <handa@m17n.org>
1700
1701 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1702
1703 2004-03-02 Kim F. Storm <storm@cua.dk>
1704
1705 * window.h (struct window): New member overlay_arrow_bitmap.
1706
1707 * window.c (make_window): Initialize overlay_arrow_bitmap.
1708
1709 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1710 implement and integrate multiple overlay arrows with redisplay.
1711 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1712 (last_arrow_position, last_arrow_string): Replace by properties.
1713 (Qlast_arrow_position, Qlast_arrow_string)
1714 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1715 (syms_of_xdisp): Intern and staticpro them.
1716 (overlay_arrow_string_or_property, update_overlay_arrows)
1717 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1718 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1719 (redisplay_internal): Use them instead of directly accessing
1720 Voverlay_arrow_position etc. for multiple overlay arrows.
1721 (mark_window_display_accurate): Use update_overlay_arrows.
1722 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1723 (try_window_id): Use overlay_arrows_changed_p.
1724 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1725 (display_line): Use overlay_arrow_at_row to check multiple
1726 overlay arrows, and get relevant overlay-arrow-string and
1727 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
1728 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1729 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1730
1731 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1732 (update_window_fringes): Remove unused code.
1733
1734 2004-03-01 Jason Rumney <jasonr@gnu.org>
1735
1736 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1737
1738 2004-03-01 Juanma Barranquero <lektu@terra.es>
1739
1740 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1741
1742 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1743
1744 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1745
1746 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1747 how many colors can be displayed.
1748
1749 2004-03-01 Kenichi Handa <handa@m17n.org>
1750
1751 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1752 correctly.
1753
1754 2004-02-28 Kim F. Storm <storm@cua.dk>
1755
1756 * dispnew.c (update_window): Update header line also if there are
1757 no other changes in window (move code after set_cursor label).
1758
1759 * lisp.h (mark_window_display_accurate): Remove prototype.
1760
1761 * window.c (window_loop, Fforce_window_update): Force mode line
1762 updates by setting prevent_redisplay_optimizations_p and
1763 update_mode_lines.
1764
1765 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1766
1767 * xfns.c (x_window): Fix indentation.
1768
1769 * xterm.c (x_calc_absolute_position): Call x_real_positions
1770 to get WM window sizes and use those to calculate position.
1771 (x_set_offset): Remove code commented out.
1772
1773 2004-02-28 Miles Bader <miles@gnu.org>
1774
1775 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1776
1777 2004-02-28 Kim F. Storm <storm@cua.dk>
1778
1779 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1780 an event into kbd fifo, but with special handling of quit event;
1781 a quit event is saved for later, and further events are discarded
1782 until the saved quit event has been processed.
1783 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1784 (gen_help_event): Store help event in kbd fifo.
1785 (NREAD_INPUT_EVENTS): Remove.
1786 (read_avail_input): Adapt to new read_socket_hook interface.
1787 Remove allocation and initialization of local input_event buffer,
1788 as read_socket_hook stores events directly in fifo. Allocate and
1789 initialize local hold_quit event to handle postponed quit event
1790 (and store it if set by kbd_buffer_store_event_hold).
1791
1792 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1793 (gen_help_event): Fix prototype.
1794
1795 * macterm.c (XTread_socket): Remove bufp_r and
1796 numcharsp args. Add hold_quit arg.
1797 Rework to use just one, local, inev input_event. Store inev
1798 directly in fifo using kbd_buffer_store_event_hold.
1799
1800 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1801 (read_input_waiting): Adapt to new read_socket_hook interface.
1802 Remove allocation and initialization of local input_event buffer,
1803 as read_socket_hook stores events directly in fifo. Allocate and
1804 initialize local hold_quit event to handle postponed quit event
1805 (and store it if set by kbd_buffer_store_event_hold).
1806
1807 * term.c (read_socket_hook): Fix arg list.
1808
1809 * termhooks.h (read_socket_hook): Fix prototype.
1810
1811 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1812 numcharsp args. Add hold_quit arg.
1813 Rework to use just one, local, inev input_event. Store inev
1814 directly in fifo using kbd_buffer_store_event_hold.
1815
1816 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1817
1818 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
1819 Add hold_quit arg. Rework to use just one, local, inev
1820 input_event. Store inev directly in fifo using
1821 kbd_buffer_store_event_hold. Update count in one place.
1822 Postpone call to gen_help_event until inev is stored; use new
1823 local do_help for this.
1824 Remove local emacs_event in handing of ButtonPress event; just use
1825 inev instead (so no reason to copy it later).
1826
1827 * xsmfns.c (x_session_check_input): Remove numchars arg.
1828
1829 * xterm.c (x_focus_changed, x_detect_focus_change):
1830 Remove numchars arg. Always store event into bufp arg.
1831 Return nothing. Callers changed accordingly.
1832 (glyph_rect): Simplify.
1833 (STORE_KEYSYM_FOR_DEBUG): New macro.
1834 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1835 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1836 (current_hold_quit) [USE_GTK]: Add.
1837 (event_handler_gdk): Adapt to new handle_one_xevent.
1838 (handle_one_xevent): Remove bufp_r and numcharsp args.
1839 Add hold_quit arg. Rework to use just one, local, inev
1840 input_event. Store inev directly in fifo using
1841 kbd_buffer_store_event_hold. Update count in one place.
1842 Postpone call to gen_help_event until inev is stored; use new
1843 local do_help for this.
1844 Simplify handling of keysyms (consolidate common code). Fix bug
1845 where count was updated with nchars instead of nbytes.
1846 Remove local emacs_event in handing of ButtonPress event; just use
1847 inev instead (so no reason to copy it later).
1848 Remove `out' label. Rename label `ret' to `done'; add various
1849 `goto done' to clarify code flow in deeply nested blocks.
1850 (x_dispatch_event): Simplify as handle_one_xevent now calls
1851 kbd_buffer_store_event itself.
1852 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
1853 arg. Call handle_one_xevent with new arglist. Store event from
1854 x_session_check_input in fifo.
1855 [USE_GTK]: Setup current_hold_quit.
1856 Decrement handling_signal before unblocking input.
1857 (x_initialize) [USE_GTK]: Initialize current_count.
1858
1859 * xterm.h (x_session_check_input): Fix prototype.
1860
1861 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1862
1863 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
1864
1865 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1866 macgui.h).
1867
1868 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
1869
1870 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1871 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1872 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1873 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1874 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1875 (Bitmap): Remove typedef.
1876 (Pixmap): Change int to GWorldPtr.
1877
1878 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1879
1880 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1881 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1882 New #define to extract 16-bit depth color components from unsigned
1883 long representation.
1884 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1885 colors used for masks.
1886 (struct mac_display_info): Add color_p. Remove n_cbits.
1887
1888 * macfns.c: Include sys/types.h and sys/stat.h.
1889 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1890 Include QuickTime/QuickTime.h.
1891 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1892 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1893 functions defined in macterm.c.
1894 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1895 (ZPixmap): New #define for compatibility with xfns.c.
1896 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1897 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
1898 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1899 New functions.
1900 (four_corners_best, x_create_x_image_and_pixmap)
1901 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1902 (x_edge_detection, init_color_table, colors_in_color_table)
1903 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1904 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1905 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1906 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1907 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1908 long mixup.
1909 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1910 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1911 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1912 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1913 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1914 (x_alloc_image_color, clear_image_cache, lookup_image)
1915 (x_find_image_file, xbm_read_bitmap_file_data)
1916 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1917 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1918 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1919 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1920 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
1921 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
1922 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1923 #if 0.
1924 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1925 #if 0. Free white_relief.gc and black_relief.gc.
1926 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1927 New functions (from xfns.c).
1928 (Fx_create_frame): Record unwind_create_frame.
1929 (Fxw_display_color_p): Use dpyinfo->color_p.
1930 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1931 dpyinfo->n_cbits.
1932 (Fx_display_color_cells): Use dpyinfo->n_planes;
1933 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1934 (Qheuristic, cross_disabled_images, emboss_matrix)
1935 (laplace_matrix): New variables (from xfns.c).
1936 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1937 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1938 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
1939 (image_background_transparent): New function (from xfns.c).
1940 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1941 (image_load_quicktime): Add declaration.
1942 [MAC_OSX] (image_load_quartz2d): Likewise.
1943 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1944 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
1945 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
1946 (xbm_load_image_from_file, x_laplace_read_row)
1947 (x_laplace_write_row, pbm_read_file): Remove functions.
1948 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1949 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1950 (colors_in_color_table): Sync with xfns.c (although not used).
1951 (lookup_rgb_color): Don't lookup color table. Just do gamma
1952 correction.
1953 (COLOR_INTENSITY): New #define (from xfns.c).
1954 (x_disable_image): New function (from xfns.c).
1955 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1956 (x_build_heuristic_mask): Sync with xfns.c.
1957 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1958 (HAVE_PBM): Remove #ifdef.
1959 (pbm_load): Sync with xfns.c. Set img->width and img->height
1960 before IMAGE_BACKGROUND.
1961 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
1962 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1963 Don't enclose with #if HAVE_PNG.
1964 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
1965 symbol _CGImageCreateWithPNGDataProvider is defined.
1966 Otherwise use image_load_quicktime.
1967 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
1968 [HAVE_PNG] (png_load): Sync with xfns.c.
1969 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1970 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1971 HAVE_JPEG.
1972 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1973 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1974 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1975 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1976 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1977 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1978 HAVE_TIFF.
1979 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1980 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1981 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
1982 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1983 New functions (from xfns.c).
1984 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
1985 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
1986 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1987 Don't enclose with #if HAVE_GIF.
1988 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1989 animated gif. Otherwise use image_load_quicktime.
1990 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1991 gif_DrawText to avoid conflict with QuickdrawText.h.
1992 [HAVE_GIF] (gif_load): Sync with xfns.c.
1993 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1994 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1995 Ghostscript is not supported yet).
1996 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1997 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1998 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1999 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2000 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2001 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2002 HAVE_PNG. Call EnterMovies to support animated gifs.
2003 Call init_image_func_pointer to bind a symbol
2004 _CGImageCreateWithPNGDataProvider if it is defined.
2005
2006 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2007 (x_draw_bar_cursor): Sync declaration with xterm.c.
2008 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2009 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2010 graphics).
2011 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2012 (mac_draw_line_to_pixmap, XCreatePixmap)
2013 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
2014 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2015 New functions.
2016 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2017 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2018 Cast bits to char *.
2019 (reflect_byte): New function (from w32fns.c).
2020 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2021 due to byte alignment.
2022 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2023 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2024 (XSetForeground): Remove static (now used in macfns.c).
2025 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2026 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2027 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2028 (x_draw_glyph_string_box, x_draw_image_foreground)
2029 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2030 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2031 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2032 Sync with xterm.c.
2033 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2034 than the xterm.c version when a strictly horizontal or vertical
2035 line is drawn.
2036 (XTset_terminal_window): Add static.
2037 (x_make_frame_visible): Add UNBLOCK_INPUT.
2038 (x_free_frame_resources): New funcion (from xterm.c).
2039 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2040 occurs in tool bar area.
2041 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2042 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
2043 Initialize image cache.
2044 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2045 Enclose unused functions with #if 0.
2046 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2047 (decode_mac_font_name): New function to apply code conversions
2048 from a mac font name to an XLFD font name according to its script code.
2049 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
2050 font name to a mac font name according to REGISTRY and ENCODING fields.
2051 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2052 whose name starts with `.'.
2053 (init_font_name_table): Use decode_mac_font_name. Add both
2054 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2055 of a font is smJapanese.
2056 (mac_do_list_fonts): New function to list fonts that match a given
2057 pattern.
2058 (x_list_fonts, XLoadQueryFont): Use it.
2059 (XLoadQueryFont): Set rbearing field for each variable width
2060 character to avoid needless redraw.
2061 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2062
2063 2004-02-26 Kim F. Storm <storm@cua.dk>
2064
2065 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2066 as read_socket_hook handler on X aborts if buffer is too small
2067 and W32 handler doesn't always check buffer limit.
2068
2069 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2070 right-fringe similar to a display margin image. Specifically,
2071 the characters having the fringe prop are no longer shown, and
2072 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2073 do this. Set fringe bitmap face_id in it->face_id.
2074 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2075 still realize it->face (i.e. the fringe bitmap face).
2076
2077 2004-02-25 Miles Bader <miles@gnu.org>
2078
2079 * xdisp.c (check_it): Check string/string_pos consistency.
2080 (init_iterator): Initialize string-related fields properly.
2081
2082 2004-02-11 Miles Bader <miles@gnu.org>
2083
2084 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2085
2086 2004-02-10 Miles Bader <miles@gnu.org>
2087
2088 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2089 BLOCK_INPUT can be nested, so it doesn't make much sense.
2090
2091 2004-02-24 Michael Mauger <mmaug@yahoo.com>
2092
2093 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2094 (xbm_read_bitmap_data): Use unsigned char for image data.
2095
2096 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2097
2098 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2099
2100 2004-02-22 Jason Rumney <jasonr@gnu.org>
2101
2102 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2103 correctly over other bitmaps.
2104
2105 2004-02-21 Eli Zaretskii <eliz@gnu.org>
2106
2107 * emacs.c (USAGE1): Split into two halves.
2108 (USAGE2): Second half of the old USAGE1.
2109 (USAGE3): Rename from USAGE2.
2110 (USAGE4): Rename from USAGE3.
2111
2112 2004-02-21 Juri Linkov <juri@jurta.org>
2113
2114 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2115 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2116 --file. Fix -f, -l. Sort options. Untabify.
2117 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2118
2119 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2120
2121 * category.c (Fdefine_category, Fcategory_docstring)
2122 (Fget_unused_category, Fset_category_table)
2123 (Fcategory_set_mnemonics): Doc fixes.
2124
2125 2004-02-20 Kim F. Storm <storm@cua.dk>
2126
2127 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2128 The following changes are relative to the 2004-01-21 revision.
2129 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2130 in one call to read_socket_hook. Value is 8.
2131 (read_avail_input): Separate and rework handling of read_socket_hook
2132 and non-read_socket_hook cases. Use smaller input_event buffer
2133 in read_socket_hook case, and repeat if full buffer is read.
2134 Use new local variable 'discard' to skip input after C-g.
2135 In non-read_socket_hook case, just use a single input_event, and
2136 call kbd_buffer_store_event on the fly for each character.
2137
2138 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2139
2140 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2141 Remove unused `gu' alternative.
2142
2143 2004-02-19 Andreas Schwab <schwab@suse.de>
2144
2145 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2146 warning.
2147
2148 2004-02-18 Kim F. Storm <storm@cua.dk>
2149
2150 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2151 Fix last change.
2152
2153 2004-02-17 Kim F. Storm <storm@cua.dk>
2154
2155 * xdisp.c (fast_find_position): Fix return value of new version;
2156 it was inverted compared to the 21.1 version.
2157 (get_window_cursor_type): Don't look at glyph if NULL.
2158 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2159
2160 * keyboard.c: Rework previous change; it didn't consider that the
2161 buf array was allocated on the stack.
2162 (prev_read): Remove variable.
2163 (read_avail_input_buf): New static event buffer array.
2164 (in_read_avail_input): New static variable to handle re-entrancy.
2165 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2166 Use in_read_avail_input to handle re-entrance; when re-entered,
2167 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2168 Do not initialize read_avail_input_buf in full here; instead assume it
2169 is always cleared on entry. To ensure that, we clear (just) the
2170 entries that were used before we return.
2171 (init_keyboard): Initialize read_avail_input_buf here.
2172
2173 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2174
2175 * cmds.c (Fend_of_line): Doc fix.
2176
2177 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2178
2179 * keyboard.c (prev_read): New static variable.
2180 (read_avail_input): Use it to zero out only those slots in buf[]
2181 that were used last time we were called.
2182
2183 2004-02-16 Eli Zaretskii <eliz@gnu.org>
2184
2185 * Makefile.in (obj): Move fringe.o from here...
2186 (XOBJ, MAC_OBJ): ...to here.
2187
2188 2004-02-16 Stephen Eglen <stephen@gnu.org>
2189
2190 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2191
2192 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2193
2194 * data.c (Fbyteorder):
2195 * fringe.c (Fdefine_fringe_bitmap):
2196 * xdisp.c (handle_single_display_prop):
2197 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2198
2199 2004-02-16 Jason Rumney <jasonr@gnu.org>
2200
2201 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2202
2203 2004-02-15 Steven Tamm <steventamm@mac.com>
2204
2205 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2206 controlling emulation of a three button mouse with option and
2207 command keys.
2208 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2209 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2210
2211 2004-02-15 Kim F. Storm <storm@cua.dk>
2212
2213 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2214
2215 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2216 Perform byte-swapping.
2217
2218 2004-02-14 Kim F. Storm <storm@cua.dk>
2219
2220 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2221 bits from char to short to facilitate wider bitmaps.
2222 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2223 member.
2224
2225 * fringe.c (struct fringe_bitmap): Change member bits from char to
2226 short to facilitate 16 bits wide bitmaps. Modify all standard
2227 bitmaps accordingly.
2228 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2229 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2230 (draw_fringe_bitmap): Ditto.
2231 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2232 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2233 handle up to 16 bits wide bitmaps.
2234 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2235 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2236
2237 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2238 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2239 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2240
2241 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2242 so it is no longer necessary to expand them here.
2243
2244 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2245
2246 2004-02-12 Kim F. Storm <storm@cua.dk>
2247
2248 * window.c (Fwindow_fringes): Doc fix.
2249
2250 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2251
2252 * xselect.c (x_get_foreign_selection): Add new optional parameter
2253 time_stamp.
2254 (Fx_get_selection_internal): Ditto, pass time_stamp to
2255 x_get_foreign_selection.
2256
2257 * data.c (Fbyteorder): New function.
2258
2259 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2260
2261 * atimer.c: Move include stdio.h to same place as in other files.
2262
2263 * region-cache.c: Ditto.
2264
2265 * sysdep.c: Ditto.
2266
2267 * xfaces.c: Ditto.
2268
2269 2004-02-09 Sam Steingold <sds@gnu.org>
2270
2271 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2272
2273 2004-02-09 Kim F. Storm <storm@cua.dk>
2274
2275 * fringe.c: New file. Move original fringe related declarations
2276 and code from dispextern.h and xdisp.c here.
2277 Rework code to support user defined fringe bitmaps, redefining
2278 standard bitmaps, ability to overlay user defined bitmap with
2279 overlay arrow bitmap, and add faces to bitmaps.
2280 (Voverflow_newline_into_fringe): Declare here.
2281 (enum fringe_bitmap_align): New enum.
2282 (..._bits): All bitmaps are now defined without bitswapping; that
2283 is now done in init_fringe_once (if necessary).
2284 (standard_bitmaps): New array with specifications for the
2285 standard fringe bitmaps.
2286 (fringe_faces): New array.
2287 (valid_fringe_bitmap_id_p): New function.
2288 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2289 (draw_fringe_bitmap): New function which draws fringe bitmap,
2290 possibly overlaying bitmap with cursor in right fringe or the
2291 overlay arrow in the left fringe.
2292 (update_window_fringes): Do not handle overlay arrow here.
2293 Compare and copy fringe bitmap faces.
2294 (init_fringe_bitmap): New function.
2295 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2296 define and destroy user defined fringe bitmaps.
2297 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2298 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2299 (syms_of_fringe): New function. Defsubr new DEFUNs.
2300 DEFVAR_LISP Voverflow_newline_into_fringe.
2301 (init_fringe_once, init_fringe): New functions.
2302 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2303
2304 * Makefile.in (obj): Add fringe.o.
2305 (fringe.o): New dependencies.
2306
2307 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2308 bits allocated to hold a fringe number. Increase number of bits
2309 from 4 to 8 to allow user defined fringe bitmaps.
2310 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2311 left_user_fringe_face_id, right_user_fringe_bitmap,
2312 right_user_fringe_face_id.
2313 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2314 Move to new file fringe.c.
2315 (MAX_FRINGE_BITMAPS): Define here.
2316 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2317 and overlay_p. Change member which to int.
2318 (struct redisplay_interface): New members define_fringe_bitmap
2319 and destroy_fringe_bitmap.
2320 (valid_fringe_bitmap_id_p): Add prototype.
2321 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2322
2323 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2324 arrows.
2325 (update_frame): Do flush_display if force_flush_display_p to
2326 ensure display (specifically fringes) are updated in a timely
2327 manner when resizing the frame by dragging the mouse.
2328 (update_window_line): Update row if overlay arrow changed.
2329 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2330 or overlay arrow changed.
2331
2332 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2333 syms_of_fringe, and init_fringe.
2334
2335 * frame.h (struct frame): New member force_flush_display_p.
2336
2337 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2338 Add prototypes.
2339
2340 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2341 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2342 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2343 Use cursor color for displaying cursor in fringe.
2344 (x_redisplay_interface): Add null handlers for
2345 define_fringe_bitmap and destroy_fringe_bitmap functions.
2346
2347 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2348 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2349 for displaying cursor in fringe.
2350 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2351 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2352 (w32_redisplay_interface): Add them to redisplay_interface.
2353 (w32_term_init): Call w32_init_fringe instead of explicitly
2354 defining fringe bitmaps in fringe_bmp array.
2355 (x_delete_display): Call w32_reset_fringes instead of explicitly
2356 destroying fringe bitmaps in fringe_bmp array.
2357
2358 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2359 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2360 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2361 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2362 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2363 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2364 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2365 Move fringe handling vars and code to new file fringe.c.
2366 (handle_display_prop): Handle left-fringe and right-fringe
2367 display properties; store user fringe bitmaps in iterator.
2368 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2369 (clear_garbaged_frames): Set force_flush_display_p if resized.
2370 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2371 (display_line): Handle cursor in fringe at eob.
2372 (display_line): Set row user fringe bitmaps from iterator.
2373
2374 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2375 Use cursor color for displaying cursor in fringe.
2376 (x_redisplay_interface): Add null handlers for
2377 define_fringe_bitmap and destroy_fringe_bitmap functions.
2378
2379 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2380
2381 * macfns.c (Fx_change_window_property): Make doc string and
2382 parameters same as for X version.
2383
2384 * w32fns.c (Fx_change_window_property): Ditto.
2385
2386 2004-02-07 Kim F. Storm <storm@cua.dk>
2387
2388 * xdisp.c (hscroll_window_tree): Position cursor near to right
2389 margin in hscrolled window when jumping to end of line (rather
2390 than centering cursor).
2391
2392 * process.c (wait_reading_process_input): Don't do adaptive read
2393 buffering if waiting for a specific process.
2394
2395 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2396
2397 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2398 (Fread_minibuffer, Feval_minibuffer)
2399 (Fread_string, Fread_no_blanks_input)
2400 (Fcompleting_read): Doc fixes.
2401 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2402 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2403 (read_minibuf): Fix initial comment.
2404 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2405 case-fold-search to the value of completion-ignore-case when
2406 checking completion-regexp-list.
2407 (Fdisplay_completion_list): Make it handle arguments that are
2408 symbols. Doc fix.
2409
2410 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2411
2412 * xterm.h: Add declaration of free_frame_menubar.
2413
2414 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2415 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2416 (Fx_change_window_property): Add declaration of parameters type and
2417 format. Remove unused variable cons.
2418
2419 * xselect.c: Include stdio,h.
2420
2421 2004-02-05 Kenichi Handa <handa@m17n.org>
2422
2423 * fns.c (Fset_char_table_range): Fix previous change.
2424
2425 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2426
2427 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2428
2429 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2430
2431 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2432
2433 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2434 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2435
2436 2004-02-04 Kenichi Handa <handa@m17n.org>
2437
2438 * fns.c (Fset_char_table_range): Handle charsets ascii,
2439 eight-bit-control, and eight-bit-graphic correctly.
2440
2441 2004-02-03 Jason Rumney <jasonr@gnu.org>
2442
2443 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2444
2445 * w32fns.c (x_to_w32_font): Likewise.
2446
2447 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2448
2449 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2450 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2451
2452 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2453 ClientMessages.
2454
2455 * xselect.c: Include termhooks.h and X11/Xproto.h
2456 (x_check_property_data, x_fill_property_data)
2457 (x_property_data_to_lisp, mouse_position_for_drop)
2458 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2459 (Fx_send_client_event): Move here from xfns.c.
2460 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2461
2462 * xfns.c (x-send-client-message): Move to xselect.c
2463 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2464 OUTER_P.
2465 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2466 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2467 if vector_ret_p is true.
2468 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2469
2470 2004-02-02 Eli Zaretskii <eliz@gnu.org>
2471
2472 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2473 basename of FILE relative to it, not FILE itself.
2474
2475 2004-02-02 Kenichi Handa <handa@m17n.org>
2476
2477 * coding.c (coding_restore_composition): Check invalid
2478 composition data more rigidly.
2479
2480 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2481
2482 * fileio.c (Fread_file_name_internal): Correctly handle the case
2483 where insert-default-directory is nil.
2484 (Fread_file_name): Always return an empty string if the user exits
2485 with an empty minibuffer. Adapt the docstring accordingly.
2486 (syms_of_fileio): Adapt the docstring of insert-default-directory
2487 to the change in Fread_file_name.
2488
2489 2004-01-29 Eli Zaretskii <eliz@gnu.org>
2490
2491 * alloca.c [!alloca]: Fix the prototype for xfree.
2492
2493 2004-01-29 Kenichi Handa <handa@m17n.org>
2494
2495 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2496 (string_byte_to_char): Likewise.
2497
2498 2004-01-28 Peter Runestig <peter@runestig.com>
2499
2500 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2501
2502 2004-01-27 Steven Tamm <steventamm@mac.com>
2503
2504 * unexmacosx.c (unexec_copy): Do not copy more than was
2505 requested to prevent overwriting during unexec.
2506
2507 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2508
2509 * process.c (sigchld_handler): Add comment about not calling malloc.
2510
2511 * process.h: Add extern to synch_process_termsig.
2512
2513 2004-01-27 Steven Tamm <steventamm@mac.com>
2514
2515 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2516 Move setting of scroll bars from make_mac_frame to
2517 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
2518
2519 2004-01-26 Richard M. Stallman <rms@gnu.org>
2520
2521 * search.c (Freplace_match): Handle nonexistent
2522 back-references properly.
2523
2524 2004-01-03 Richard M. Stallman <rms@gnu.org>
2525
2526 * window.c (decode_any_window): New function.
2527 (Fwindow_height, Fwindow_width, Fwindow_edges)
2528 (Fwindow_pixel_edges, Fwindow_inside_edges)
2529 (Fwindow_inside_pixel_edges): Use decode_any_window.
2530
2531 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2532
2533 * process.h: synch_process_termsig new variable.
2534
2535 * callproc.c: Define synch_process_termsig.
2536 (Fcall_process): Initiate synch_process_termsig to zero and
2537 check if non-zero and get signal name after subprocess has ended.
2538
2539 * process.c (sigchld_handler): Set synch_process_termsig
2540 if terminated by a signal. synch_process_death setting removed.
2541
2542 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2543
2544 2004-01-26 Andreas Schwab <schwab@suse.de>
2545
2546 * print.c (print_preprocess): Declare size as EMACS_INT to not
2547 lose bits.
2548 (print_object): Likewise.
2549 * alloc.c (Fpurecopy): Likewise.
2550
2551 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2552
2553 * window.c (Fwindow_minibuffer_p): Doc fix.
2554
2555 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2556
2557 * editfns.c (Fformat): Make both passes accept the same set of flags.
2558
2559 2004-01-23 Kenichi Handa <handa@m17n.org>
2560
2561 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2562 one, set buffer to OBJECT temporarily.
2563
2564 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2565
2566 * keyboard.c (kbd_buffer_gcpro): Remove.
2567 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2568 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2569 Don't initialize and/or maintain the variable any more. It was made
2570 redundant by my commit of 2003-06-15.
2571
2572 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2573
2574 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2575
2576 * lisp.h: Add undef DECL_ALIGN.
2577
2578 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2579
2580 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2581 Check interrupt_input_pending explicitly.
2582
2583 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2584
2585 * keyboard.c (handle_async_input): New fun,
2586 extracted from input_available_signal.
2587 (input_available_signal, reinvoke_input_signal): Use it.
2588
2589 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2590
2591 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2592
2593 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2594 manipulation macros for when tags are in the lower bits.
2595 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2596 (DECL_ALIGN): New macro.
2597 (DEFUN): Use it.
2598
2599 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2600
2601 * s/darwin.h (__attribute__): Remove outdated workaround.
2602
2603 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2604
2605 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2606 Don't check range of malloc address.
2607 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2608
2609 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2610
2611 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2612
2613 2004-01-19 Kenichi Handa <handa@m17n.org>
2614
2615 * fontset.c (fontset_font_pattern): Fix previous change.
2616
2617 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2618
2619 * xdisp.c (Voverflow_newline_into_fringe)
2620 (move_it_in_display_line_to, redisplay_internal)
2621 (update_window_fringes, redisplay_window, display_line, window):
2622 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2623 that it compiles without a window-system.
2624 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2625
2626 2004-01-16 Kim F. Storm <storm@cua.dk>
2627
2628 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2629
2630 * buffer.c (init_buffer_once): Set buffer_defaults and
2631 buffer_local_flags for indicate_buffer_boundaries.
2632 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2633 default- variable for it.
2634
2635 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2636 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
2637 New members exact_window_width_line_p and cursor_in_fringe_p for
2638 overflowing newlines into right fringe.
2639 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2640 and indicate_bottom_line_p for buffer boundaries and scrolling.
2641 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2642 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2643 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2644 and HOLLOW_SQUARE_BITMAP.
2645 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2646 Add prototypes.
2647
2648 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2649 instead of related indicator fields.
2650 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2651 (direct_output_for_insert): Handle exact width lines like
2652 contined lines. Call update_window_fringes.
2653 (update_window): Call update_window_fringes.
2654 (scrolling_window): Don't skip desired rows with changed bitmaps.
2655 Check if fringe bitmaps changes when assigning scrolled rows.
2656
2657 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2658 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2659 (move_it_in_display_line_to): Overflow newline into fringe for
2660 rows that are exactly as wide as the window.
2661 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2662 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2663 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2664 (fringe_bitmaps): Add new bitmaps.
2665 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2666 Select proper bitmap for cursor in fringe when appropriate.
2667 Handle alignment of bitmap to top or bottom of row.
2668 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2669 done by update_window_fringes.
2670 (update_window_fringes, draw_window_fringes): New functions.
2671 (redisplay_internal): Call update_window_fringes in case only
2672 cursor row is updated.
2673 (redisplay_window): Call update_window_fringes.
2674 Explicitly call draw_window_fringes if redisplay was done using
2675 the current matrix or the overlay arrow is in the window.
2676 (try_window_reusing_current_matrix): Mark scrolled rows for
2677 fringe update (to update buffer-boundaries / scrolling icons).
2678 (find_last_unchanged_at_beg_row): Handle exact width lines line
2679 continued lines.
2680 (display_line): Overflow newline into fringe for rows that are
2681 exactly as wide as the window. Don't append space for newline
2682 in this case.
2683 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2684 in fringe as if it had been overwritten.
2685 (erase_phys_cursor): Erase cursor bitmap in fringe.
2686 (syms_of_xdisp): Mark show-trailing-whitespace and
2687 void-text-area-pointer as user options.
2688 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
2689
2690 * xterm.c (x_update_window_end): Call draw_window_fringes.
2691 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2692 in row instead of actually drawing fringe bitmaps.
2693 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2694 (x_draw_window_cursor): Draw cursor in fringe.
2695
2696 * w32term.c (x_update_window_end): Call draw_window_fringes.
2697 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2698 in row instead of actually drawing fringe bitmaps.
2699 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2700 (w32_draw_window_cursor): Draw cursor in fringe.
2701
2702 * macterm.c (x_update_window_end): Call draw_window_fringes.
2703 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2704 in row instead of actually drawing fringe bitmaps.
2705 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2706 (mac_draw_window_cursor): Draw cursor in fringe.
2707
2708 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2709
2710 * xterm.c (handle_one_xevent): Don't handle characters that are part
2711 of an old style (XLookupString) compose sequence.
2712
2713 2004-01-15 Kenichi Handa <handa@m17n.org>
2714
2715 * search.c (Freplace_match): Use make_multibyte_string or
2716 make_unibyte_string according to the buffer multibyteness.
2717
2718 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2719
2720 * alloc.c (struct interval_block, struct string_block)
2721 (struct symbol_block, struct marker_block, live_string_p)
2722 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2723 Better preserve alignment for objects in blocks.
2724 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2725
2726 * lread.c (defvar_per_buffer): Remove dead declaration.
2727
2728 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2729 space size.
2730
2731 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2732
2733 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2734 if a key press should pop down. Only pop down if a key is pressed
2735 outside the menu/dialog.
2736 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2737 popup_get_selection.
2738 (create_and_show_dialog): Pass 1 for down_on_keypress to
2739 popup_get_selection.
2740
2741 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2742
2743 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2744 BLOCK/UNBLOCK_INPUT.
2745
2746 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2747
2748 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2749 specified.
2750
2751 2004-01-08 Kenichi Handa <handa@m17n.org>
2752
2753 * editfns.c (Fformat): Fix '&' to '&&'.
2754
2755 2004-01-08 Andreas Schwab <schwab@suse.de>
2756
2757 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2758 size if PSEUDOVECTOR_FLAG is set.
2759
2760 2004-01-07 Kenichi Handa <handa@m17n.org>
2761
2762 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2763
2764 * fontset.c (fontset_ref_via_base): Fix previous change.
2765
2766 2004-01-07 Kim F. Storm <storm@cua.dk>
2767
2768 * process.c (read_process_output): Only activate adaptive
2769 buffering if we read less than 256 bytes at a time.
2770
2771 2004-01-06 Kim F. Storm <storm@cua.dk>
2772
2773 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2774 object and image object. Return glyph width and height.
2775 (mode_line_string, marginal_area_string): Ditto.
2776
2777 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2778 (marginal_area_string): Fix prototypes.
2779
2780 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
2781 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
2782 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2783
2784 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2785 buffer_posn_from_coords, and marginal_area_string functions to
2786 include both string object and image object in the lispy position.
2787 Also add actual glyph width and height to position.
2788 (read_key_sequence): Use real buffer position from mouse
2789 event to find keymap property even when click is in marginal area.
2790
2791 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2792 mode_line_string and marginal_area_string functions to handle
2793 both string object and image object properties.
2794
2795 2004-01-06 Andreas Schwab <schwab@suse.de>
2796
2797 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2798 character.
2799
2800 2004-01-02 Andreas Schwab <schwab@suse.de>
2801
2802 * macterm.c (emacs_options, x_initialized, same_x_server):
2803 Remove unused (and duplicated) definitions.
2804
2805 2004-01-02 Kim F. Storm <storm@cua.dk>
2806
2807 * process.h (struct Lisp_Process): New members for adaptive read
2808 buffering: adaptive_read_buffering, read_output_delay, and
2809 read_output_skip.
2810
2811 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2812 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2813 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2814 (process_output_delay_count, process_output_skip): New vars.
2815 (Vprocess_adaptive_read_buffering): New variable.
2816 (make_process): Initialize adaptive read buffering members.
2817 (Fstart_process): Set adaptive_read_buffering member.
2818 (deactivate_process): Cleanup adaptive read buffering.
2819 (wait_reading_process_input): Temporarily omit delayed
2820 subprocesses from the set of file descriptors to read from;
2821 adjust the select timeout if we skipped any subprocesses.
2822 (read_process_output): Increase adaptive read buffering delay if
2823 we read less than a full buffer; reduce delay when we read a
2824 full buffer.
2825 (send_process): Simplify using local Lisp_Process var.
2826 Reset adaptive read buffering delay after write.
2827 (init_process): Initialize process_output_delay_count and
2828 process_output_skip.
2829 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2830
2831 2004-01-01 Jason Rumney <jasonr@gnu.org>
2832
2833 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
2834
2835 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2836
2837 * print.c (Ferror_message_string): Add hyperlink in the docstring
2838 to the definition of `signal' in the Elisp manual.
2839 * eval.c (Fsignal): Ditto.
2840
2841 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
2842
2843 * fns.c (internal_equal): Return t for two NaN arguments.
2844
2845 2003-12-29 Richard M. Stallman <rms@gnu.org>
2846
2847 * data.c (store_symval_forwarding): Handle setting
2848 default-fill-column, etc., by changing the value in
2849 buffers that use the default.
2850
2851 * minibuf.c (Fset_minibuffer_window): Doc fix.
2852
2853 * fileio.c (choose_write_coding_system): Ignore auto_saving
2854 if using the visited file for auto saves.
2855 (Fwrite_region): Don't update SAVE_MODIFF
2856 if auto-saving in visited file.
2857
2858 2003-12-29 Kenichi Handa <handa@m17n.org>
2859
2860 * dispextern.h (face_font_available_p): Extern it.
2861
2862 * fontset.c (Voverriding_fontspec_alist): New variable.
2863 (lookup_overriding_fontspec): New function.
2864 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
2865 (fontset_font_pattern): Likewise.
2866 (regulalize_fontname): New function.
2867 (Fset_fontset_font): Call regulalize_fontname.
2868 (Fset_overriding_fontspec_internal): New function.
2869 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2870 Defsubr Sset_overriding_fontspec_internal.
2871
2872 * xfaces.c (face_font_available_p): New function.
2873
2874 2003-12-28 Richard M. Stallman <rms@gnu.org>
2875
2876 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2877 or if its name is nil.
2878
2879 * buffer.c (Fkill_buffer): Don't delete auto-save file
2880 if it's the same as the visited file.
2881
2882 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2883
2884 * coding.c (Fcheck_coding_system): Doc fix.
2885
2886 2003-12-28 Kim F. Storm <storm@cua.dk>
2887
2888 * Makefile.in (eval.o): Depend on dispextern.h.
2889
2890 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2891 image glyph using image's ascent.
2892 (mode_line_string): Return image glyph as object clicked on.
2893 Adjust y0 for image glyph using image's ascent.
2894
2895 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2896 (struct glyph): New members, ascent and descent. Used to save
2897 this glyph's ascent and descent, instead of having.
2898 (struct glyph): Declare member face_id using FACE_ID_BITS.
2899 (find_hot_spot): Add prototype.
2900
2901 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2902 (QCmap): Declare extern.
2903 (make_lispy_position): When position is inside image hot-spot,
2904 use hot-spot element's id as posn element.
2905
2906 * lisp.h (IMAGEP): New macro to test for image object type.
2907 (Qimage): Declare extern.
2908
2909 * macfns.c (Qimage): Remove extern (now in lisp.h).
2910 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2911
2912 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2913
2914 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2915 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2916
2917 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2918
2919 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2920
2921 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2922 pointer types.
2923 (Qrelative_width, Qalign_to): Remove unused variables.
2924 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2925 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2926 image maps.
2927 (x_y_to_hpos_vpos): Return glyph relative coordinates through
2928 new dx and dy args.
2929 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2930 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2931 than row's ascent and height, to get sensible height on tall rows.
2932 (build_desired_tool_bar_string): Remove Qimage extern.
2933 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2934 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2935 image glyph is alone on the last line.
2936 (append_glyph, append_composite_glyph, produce_image_glyph)
2937 (append_stretch_glyph): Set glyph's ascent and descent.
2938 (on_hot_spot_p): New function to check if position is inside an
2939 rectangular, circular, or polygon-shaped image hot-spot,
2940 (find_hot_spot): New function to search for image hot-spot.
2941 (Flookup_image_map): New defun to search for image hot-spot.
2942 (define_frame_cursor1): New aux function to determine frame pointer.
2943 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2944 Handle `pointer' text property and :pointer image property to
2945 control frame pointer shape. Detect image hot-spots for pointer
2946 and help_echo properties. Use define_frame_cursor1.
2947 (note_mouse_highlight): Use Vvoid_text_area_pointer.
2948 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
2949 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2950
2951 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2952
2953 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2954 (Qimage): Remove extern (now in lisp.h).
2955 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2956
2957 * xmenu.c (show_help_event): Remove unused code.
2958
2959 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2960 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2961 row's ascent and descent, to get a sensible height on tall rows.
2962
2963 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2964
2965 * minibuf.c (Fcompleting_read): Undo previous change.
2966
2967 2003-12-25 Lars Hansen <larsh@math.ku.dk>
2968
2969 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2970 Arguments GCPRO'ed in call to file name handler.
2971
2972 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2973
2974 * termcap.c (tgetst1): Scan for "%pN"; if all
2975 N are continuous in [1,9], remove all "%pN".
2976
2977 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2978
2979 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2980
2981 * xfaces.c (lface_fully_specified_p): Take into account that
2982 MAC OS always have unspecified stipple.
2983
2984 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2985
2986 * tparam.c (tparam1): Add handling for `%pN', which
2987 means use param N for the next substitution.
2988
2989 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2990
2991 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2992 In case `frame' is nil, consult the selected frame.
2993 (Fcolor_supported_p): Likewise.
2994
2995 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2996
2997 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2998 Doc fixes.
2999
3000 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3001 and an integer. Adapt the introductory comment accordingly.
3002 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3003 Doc fix.
3004 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3005 read_minibuf.
3006 (Fcompleting_read): Delete code moved into read_minibuf.
3007 (Ftest_completion): Make it handle obarrays and hash tables correctly.
3008
3009 2003-12-03 Kenichi Handa <handa@m17n.org>
3010
3011 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3012 encoding sequence.
3013
3014 2003-12-01 Kenichi Handa <handa@m17n.org>
3015
3016 * composite.c (syms_of_composite): Don't make the compostion hash
3017 table week.
3018
3019 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3020
3021 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3022 * textprop.c (Fget_char_property_and_overlay): New function.
3023 (syms_of_textprop): Defsubr it.
3024
3025 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3026
3027 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3028 to compile on terminal configuration.
3029
3030 * fileio.c (Fread_file_name): Check use_file_dialog also before
3031 calling Fx_file_dialog.
3032
3033 * fns.c: use_file_dialog: New variable.
3034 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3035
3036 2003-11-29 Kim F. Storm <storm@cua.dk>
3037
3038 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3039 (syms_of_msdos): Don't intern and staticpro them.
3040
3041 2003-11-27 Kim F. Storm <storm@cua.dk>
3042
3043 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3044 coordinates relative to glyph at posn. If glyph is an image,
3045 return that as object at posn. Callers changed.
3046 (mode_line_string, marginal_area_string): Calculate and return
3047 pixel coordinates relative to glyph. Callers changed.
3048
3049 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3050 (marginal_area_string): Fix prototypes.
3051 (window_box_left_offset, window_box_right_offset): Add prototypes.
3052
3053 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3054 Remove prototypes.
3055
3056 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3057
3058 * keyboard.c (make_lispy_position): Add x and y coordinates
3059 relative to the current glyph as 7th element of position.
3060 If glyph is an image, return it in the object element.
3061 (read_key_sequence): Skip checks for keymap property in cases
3062 where POSN_STRING is not a string (e.g. an image).
3063
3064 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3065 (Vshow_text_cursor_in_void): New variable.
3066 (glyph_to_pixel_coords): Don't use negative hpos.
3067 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3068 (append_stretch_glyph): Change ascent arg to be actual value
3069 in pixels rather than ratio to height. Callers changed.
3070 (calc_pixel_width_or_height): New aux function, implementing
3071 pixel based artihmetic for glyph widths and heights.
3072 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3073 :width, :height, :align-to, and :ascent, thus allowing these to
3074 be specified in pixels as well as multiples of characters.
3075 Don't produce stretch glyphs with zero width or height.
3076 (get_specified_cursor_type): Declare static.
3077 (get_window_cursor_type): Declare static. Add glyph arg to be
3078 able to know when cursor is on an image; always substitute
3079 hollow-box cursor for filled-box cursor on images, to avoid
3080 negative images and flicker when blinking the cursor.
3081 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3082 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3083 than vertical scroll-bar cursor in display margins.
3084 (note_mouse_highlight): Use non-text cursor rather than text
3085 cursor in fringes and over images in the text area.
3086 Use non-text cursor when mouse pointer is outside editable text,
3087 i.e. in the void after end-of-line or end-of-buffer; this was
3088 already done for W32, but is now standard for all systems --
3089 user can toggle show-text-cursor-in-void to get old behaviour.
3090 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3091 Vdisplay_pixels_per_inch.
3092
3093 2003-11-25 Andreas Schwab <schwab@suse.de>
3094
3095 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3096 EMACS_INT to not lose bits.
3097 (Ffillarray): Don't set bits beyond the size of a bool vector.
3098
3099 2003-11-25 Kim F. Storm <storm@cua.dk>
3100
3101 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3102 define this defun on systems that cannot use stderr as lvalue.
3103
3104 2003-11-24 Gerd Moellmann <gerd@gnu.org>
3105
3106 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3107 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3108 ld's default is incompatible with unexec.
3109
3110 2003-11-23 Kim F. Storm <storm@cua.dk>
3111
3112 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3113 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3114 (Fforce_window_update): New defun.
3115 (syms_of_window): Defsubr it.
3116 (Fset_window_margins, Fset_window_fringes): Doc fix.
3117
3118 * print.c (Fredirect_debugging_output): New defun.
3119 (syms_of_print): Defsubr it.
3120
3121 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3122
3123 * fns.c (Fset_char_table_parent): Doc fix.
3124
3125 2003-11-22 Kim F. Storm <storm@cua.dk>
3126
3127 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3128 for glyph clicked on, rather than (unused) pixel positions.
3129 (mode_line_string, marginal_area_string): Change X and Y args to
3130 pointers for returning actual row/column for glyph clicked on.
3131 Simplify and optimize loops.
3132
3133 * dispextern.h (mode_line_string, marginal_area_string):
3134 Update prototypes.
3135
3136 * keyboard.c (make_lispy_position): New function for generating
3137 mouse click positions from frame and pixel coordinates.
3138 Enhanced to return buffer position and actual row/column for
3139 events outside the text area using updated mode_line_string and
3140 marginal_area_string functions.
3141 Return left-fringe and right-fringe clicks as such, rather than
3142 clicks in text area.
3143 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3144 pixel_to_glyph_coords, as we never use the results.
3145 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3146 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3147 Eliminate unused code in WHEEL_EVENT handling.
3148 (make_lispy_movement): Use make_lispy_position.
3149
3150 * window.c (coordinates_in_window): Remove redundant tests.
3151 Fix returned X pixel value for left-margin.
3152
3153 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3154 mode_line_string and marginal_area_string parameters.
3155
3156 2003-11-22 Lars Hansen <larsh@math.ku.dk>
3157
3158 * w32.c (struct the_group, getgrgid): Add.
3159 * mac.c (struct my_group, getgrgid): Add.
3160
3161 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3162
3163 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3164
3165 2003-11-21 Lars Hansen <larsh@math.ku.dk>
3166
3167 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3168 include in call to file name handler. Optionally translate numeric
3169 UID and GID to strings. Update docstring.
3170 (directory_files_internal): Add parameter ID-FORMAT.
3171 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3172 include in call to file name handler and call to
3173 directory_files_internal. Update Docstring.
3174 (Fdirectory_files): Add dummy parameter in call to
3175 directory_files_internal.
3176 * lisp.h (Qinteger): Add.
3177 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3178 (Ffile_attributes): Add parameter.
3179 * data.c (Qinteger): Export.
3180
3181 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3182
3183 * fns.c (Freverse, Fnreverse): Doc fixes.
3184
3185 2003-11-19 Kim F. Storm <storm@cua.dk>
3186
3187 * xdisp.c (init_iterator): Initialize it->start to position
3188 before reseating (in case start position is invisible).
3189 (init_to_row_start): Set it->start to row-start.
3190 (redisplay_window): Accept optional_new_start if start position
3191 is invisible (in which case IT_CHARPOS overshoots PT).
3192 (display_line): Setup row->start from it->start (rather than
3193 it->current which is wrong if first char on line is invisible).
3194 When done, reseat it->start to it->current (= start of next row).
3195 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3196 is only partially visible.
3197
3198 * dispextern.h (struct it): New member start.
3199
3200 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3201
3202 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3203 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3204 of block_index outside of the macro call.
3205 (Fgarbage_collect): Remove null code.
3206
3207 * m/amdx86-64.h: Don't redefine XPNTR.
3208
3209 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3210 of VALMASK.
3211
3212 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3213 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3214 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3215
3216 * lisp.h (VALMASK): Only define for non-union type.
3217 (MARKBIT): Remove.
3218 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3219 (XTYPE): Define unconditionally.
3220 (XSETTYPE): Remove one more remnant.
3221 (EQ): Define differently for the union and non-union cases.
3222 (INTMASK): New bit mask.
3223 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3224 (GC_EQ): Delegate to EQ.
3225
3226 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3227
3228 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3229
3230 * xterm.c (x_window_to_scroll_bar): Move check of display to
3231 where window_id is compared.
3232
3233 2003-11-17 Kim F. Storm <storm@cua.dk>
3234
3235 * dispextern.h (struct it): New member first_vpos.
3236
3237 * xdisp.c (start_display): Set it->first_vpos.
3238 (try_window_id): Use first_vpos to start display in first _text_
3239 line if no reusable lines at start of window with header line.
3240
3241 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3242
3243 * w32fns.c (XPutPixel):
3244 * w32bdf.c (w32_init_bdf_font):
3245 * sunfns.c (sel_read):
3246 * process.c (Fmake_network_process):
3247 * frame.c (store_frame_param):
3248 * fontset.c (Fset_fontset_font):
3249 * emacs.c (shut_down_emacs):
3250 * ccl.c (ccl_driver): Remove period at end of error message.
3251
3252 * config.in: Regenerate.
3253
3254 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3255 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3256 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3257 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3258 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3259
3260 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3261
3262 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3263 (XTmouse_position, handle_one_xevent): Pass Display* to
3264 x_window_to_scroll_bar.
3265 (x_window_to_scroll_bar): Take a Display* argument.
3266 Check that display for frame is equal to Display* argument.
3267 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3268 x_display_info_for_display instead. Use Display in xev instead
3269 of GDK_DISPLAY.
3270 (x_dispatch_event): Call x_display_info_for_display.
3271 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3272 (x_connection_closed): Call xg_display_close for GTK.
3273 (x_term_init): Call xg_display_open for additional displays.
3274 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3275 for GTK.
3276
3277 * xmenu.c (single_menu_item, mouse_position_for_popup)
3278 (x_activate_menubar): Formatting adjustments.
3279
3280 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3281 adjustments.
3282
3283 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3284 (xg_display_close, xg_create_default_cursor)
3285 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3286 handling.
3287 (xg_left_ptr_cursor): Remove.
3288 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3289 cursor here.
3290 (xg_win_to_widget): Take Display* argument, call
3291 gdk_xid_table_lookup_for_display.
3292 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3293 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3294 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3295 in FRAME_X_DISPLAY_INFO.
3296 (xg_get_scroll_id_for_window): Take Display* argument.
3297 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3298 (xg_initialize): Remove xg_left_ptr_cursor.
3299
3300 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3301 Display* argument also. Declare xg_display_open,
3302 xg_display_close, xg_create_default_cursor.
3303
3304 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3305
3306 * xterm.c (x_detect_focus_change): Do not change focus frame for
3307 Enter/LeaveNotify if the current focus frame has explicit focus.
3308
3309 2003-11-14 Kim F. Storm <storm@cua.dk>
3310
3311 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3312 is active and first glyph is only partially visible.
3313
3314 2003-11-13 Kenichi Handa <handa@m17n.org>
3315
3316 * xdisp.c (select_frame_for_redisplay): New function.
3317 (redisplay_internal): Record also selected_frame for
3318 unwind_redisplay. Call select_frame_for_redisplay before
3319 redrawing each frame.
3320 (unwind_redisplay): Argument changed to a cons.
3321
3322 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3323
3324 * fns.c (Fstring_to_multibyte): Doc fix.
3325
3326 2003-11-11 Kenichi Handa <handa@m17n.org>
3327
3328 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3329
3330 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3331
3332 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3333 program specified positions.
3334
3335 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3336
3337 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3338
3339 2003-11-08 Kenichi Handa <handa@m17n.org>
3340
3341 * Makefile.in (lisp): Add kannada.el.
3342 (shortlisp): Likewise.
3343
3344 2003-11-07 Kenichi Handa <handa@m17n.org>
3345
3346 * coding.c (coding_allocate_composition_data):
3347 Reset coding->composing to COMPOSITION_NO.
3348 (coding_restore_composition): Detect invalid composition data.
3349 Give Fstring and Fvector a Lispy integer, not C int.
3350
3351 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3352
3353 * floatfns.c (Flogb): Don't use VALMASK.
3354
3355 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3356 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3357
3358 * lisp.h (XINT): Move the cast to clarify what is going on.
3359 (GCTYPEMASK, XSETTYPE): Remove.
3360 (XGCTYPE): Make it an alias of XTYPE.
3361
3362 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3363
3364 * xterm.c (x_term_init): Fix formatting.
3365
3366 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3367
3368 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3369 and xg_did_tearoff.
3370
3371 * gtkutil.c: Remove variable xg_did_tearoff.
3372 (xg_have_tear_offs): New function.
3373 (tearoff_remove): Just decrease xg_detached_menus.
3374 (tearoff_activate): Increase xg_detached_menus and call
3375 tearoff_remove when tearoff is removed.
3376 (xg_keep_popup): Remove function.
3377 (create_menus): Give add_tearoff_p as argument to recursive
3378 call to create_menus.
3379 (xg_create_widget): Use variables instead of multiple
3380 strcmp. Tell create_menus to create tear off only for
3381 menu bar menus.
3382 (xg_update_menubar): Change title for a detached menu also.
3383 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3384 of deep_p.
3385 (xg_initialize): Initialize xg_detached_menus, remove
3386 initialization of xg_did_tearoff.
3387
3388 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3389 xg_have_tear_offs returns non-zero.
3390 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3391 call to xg_keep_popup.
3392
3393 2003-11-01 Andrew Choi <akochoi@shaw.ca>
3394
3395 * macterm.c (XTread_socket): Handle menubar selection and grow
3396 window only for mouseDown events.
3397
3398 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3399
3400 * xterm.c (x_term_init): For GTK part, increase x_initialized
3401 to check for more than one display. Use error instead of return 0.
3402
3403 2003-10-31 Andrew Choi <akochoi@shaw.ca>
3404
3405 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3406 (copy_dysymtab): Call it.
3407
3408 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3409
3410 * eval.c (Fdefvaralias): Doc fix.
3411
3412 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3413
3414 * data.c (Fsetplist): Doc fix.
3415
3416 2003-10-14 Lute Kamstra <lute@gnu.org>
3417
3418 * window.c (Fset_window_fringes): Clarify docstring.
3419
3420 2003-10-14 Kim F. Storm <storm@cua.dk>
3421
3422 * window.c (Fset_window_margins): Simplify arg checking.
3423
3424 2003-10-13 Richard M. Stallman <rms@gnu.org>
3425
3426 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3427 (print_partial_compiled_pattern): Replace assert with a printout.
3428 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3429
3430 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3431
3432 * window.c (Fset_window_margins): Allow only integers as args.
3433 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3434 Doc fixes.
3435
3436 2003-10-13 Lute Kamstra <lute@gnu.org>
3437
3438 * window.c (Fset_window_fringes): Elaborate docstring.
3439
3440 2003-10-12 Andrew Choi <akochoi@shaw.ca>
3441
3442 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3443
3444 * s/darwin.h (GC_MARK_STACK): Define.
3445
3446 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3447
3448 * window.c (shrink_windows): New function.
3449 (size_window): Call shrink_windows to calculate window sizes when
3450 shrinking frame with more than one window.
3451
3452 2003-10-12 Kim F. Storm <storm@cua.dk>
3453
3454 * xdisp.c (compute_fringe_widths): Doc fix.
3455
3456 2003-10-08 Kenichi Handa <handa@m17n.org>
3457
3458 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3459
3460 2003-10-07 Kenichi Handa <handa@m17n.org>
3461
3462 * coding.c (Qcoding_system_define_form): New variable.
3463 (syms_of_coding): Intern and staticpro it.
3464 (Fcheck_coding_system): Try to autoload the definition of
3465 CODING-SYSTEM.
3466
3467 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3468
3469 * fns.c (Frequire): Doc fix.
3470
3471 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3472
3473 * xfns.c (Fx_send_client_event): New function as a base for
3474 manipulating extended window manager hints.
3475 (Fx_send_client_event): Remove unused variable s.
3476
3477 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3478 that function is removed.
3479
3480 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3481 x/y_pixels_outer_diff.
3482 (x_check_expected_move): Calculate move_offset_left/top.
3483
3484 * xterm.h (struct x_output): New members: move_offset_top/left.
3485
3486 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3487 call x_set_offset directly.
3488
3489 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3490
3491 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3492
3493 * xterm.c (x_delete_display): Free font names and font_encoder
3494 in dpyinfo->font_table.
3495
3496 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3497 Move xfree of font names to x_delete_display.
3498
3499 * xterm.h (struct x_display_info): New member, wm_type.
3500 (struct x_output): New members, expected_top/left and
3501 check_expected_move.
3502
3503 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3504 is received.
3505 (handle_one_xevent): Rename x_check_expected_move from
3506 x_check_fullscreen_move.
3507 (x_set_offset): Only add WM decoration sizes to modified_top/left
3508 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3509 (x_check_expected_move): Rename from x_check_fullscreen_move.
3510 Removed fullscreen specific code. Use check_expected_move,
3511 expected_left/top instead. Also, set wm_type.
3512 (x_term_init): Initialize wm_type to unknown.
3513
3514 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3515 sizes to move_x/y.
3516
3517 2003-10-03 Kenichi Handa <handa@m17n.org>
3518
3519 * macterm.c (x_load_font): Clear all members of FONTP before start
3520 filling them.
3521
3522 2003-10-02 Kenichi Handa <handa@m17n.org>
3523
3524 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3525 before calling find_ccl_program_func. Call find_ccl_program_func
3526 only when fontp->font_encoder is not NULL.
3527
3528 * xterm.c (x_load_font): Clear all members of FONTP before start
3529 filling them.
3530
3531 2003-10-03 John Paul Wallington <jpw@gnu.org>
3532
3533 * keymap.c (map_keymap): Don't abort when binding is a vector.
3534
3535 2003-10-02 Jason Rumney <jasonr@gnu.org>
3536
3537 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3538 Sync dependencies with Makefile.in.
3539 (alloca.o): Remove.
3540
3541 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3542 filling them.
3543
3544 * w32bdf.c (w32_load_bdf_font): Likewise.
3545
3546 2003-09-30 Richard M. Stallman <rms@gnu.org>
3547
3548 * term.c (set_tty_color_mode): Calculate current_mode_spec
3549 regardless of value of VAL.
3550
3551 * intervals.c (graft_intervals_into_buffer):
3552 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3553 Handle over_used when splitting UNDER.
3554
3555 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3556
3557 * regex.c (regex_compile): Free the stack when returning from function.
3558
3559 2003-09-28 Kenichi Handa <handa@m17n.org>
3560
3561 * fontset.c (Finternal_char_font): Change return value to
3562 cons (FONT-NAME . GLYPH-CODE).
3563
3564 2003-09-28 Eli Zaretskii <eliz@gnu.org>
3565
3566 * term.c (tty_setup_colors): Treat any negative argument as -1.
3567
3568 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3569
3570 * process.c (send_process): Delete unused temp_buf.
3571
3572 2003-09-26 Dave Love <fx@gnu.org>
3573
3574 * xterm.c (x_bitmap_mask): Declare.
3575
3576 2003-09-25 Dave Love <fx@gnu.org>
3577
3578 * Makefile.in (fns.o): Depend on md5.h.
3579
3580 2003-09-25 Kim F. Storm <storm@cua.dk>
3581
3582 * window.c (set_window_buffer): Fix redisplay problems when
3583 switching between buffers with different display margin widths.
3584
3585 2003-09-23 Kim F. Storm <storm@cua.dk>
3586
3587 * process.c (set_socket_option): Fix :bindtodevice option.
3588 (Fset_network_process_option): Update process contact list when
3589 setting option succeeds.
3590 (Fmake_network_process): Doc fix.
3591
3592 2003-09-23 Dave Love <fx@gnu.org>
3593
3594 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
3595
3596 2003-09-22 Eli Zaretskii <eliz@gnu.org>
3597
3598 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3599 color mode is an integer number (it could be -1).
3600
3601 2003-09-22 Richard M. Stallman <rms@gnu.org>
3602
3603 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3604 in the case where OVER is longer than UNDER.
3605
3606 2003-09-22 Masatake YAMATO <jet@gyve.org>
3607
3608 * window.c (Fset_window_scroll_bars): Validate the value of
3609 `vertical_type'.
3610
3611 2003-09-21 Kim F. Storm <storm@cua.dk>
3612
3613 * frame.c (Vdefault_frame_scroll_bars): New variable.
3614 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3615 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3616 window-system default scroll bar position.
3617
3618 * window.c (Fwindow_scroll_bars): Doc fix.
3619
3620 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3621
3622 * xterm.c (x_set_offset): Take window manager decorations into account.
3623
3624 2003-09-19 Richard M. Stallman <rms@gnu.org>
3625
3626 * atimer.h: Don't include lisp.h.
3627 (P_): Define it here (as well as elsewhere).
3628
3629 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3630 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3631
3632 * data.c (Fvariable_binding_locus): New function.
3633 (syms_of_data): defsubr it.
3634 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3635
3636 2003-09-18 Dave Love <fx@gnu.org>
3637
3638 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3639
3640 * process.c (Fnetwork_interface_info): Fix type error.
3641 (Fnetwork_interface_list): Doc fix.
3642 (read_process_output, read_process_output): Delete unused var.
3643
3644 2003-09-17 Kim F. Storm <storm@cua.dk>
3645
3646 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3647 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3648 (Fnetwork_interface_info): Check that ifreq struct has required
3649 fields before accessing them; this requires that those fields are
3650 defined as macros, which may be too restrictive on some platforms,
3651 but it is better than failing on other platforms.
3652 (syms_of_process): Only defsubr above fns when included.
3653
3654 2003-09-17 Dave Love <fx@gnu.org>
3655
3656 * unexalpha.c: Don't include varargs.h.
3657
3658 2003-09-17 Kim F. Storm <storm@cua.dk>
3659
3660 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3661 for network process.
3662 (socket_options): Add `:' prefix to option names. Add optbit field.
3663 (set_socket_option): Remove no_error arg and special handling of s < 0.
3664 Return 1<<optbit for known option, 0 for unknown.
3665 Do not interpret 0 as false for boolean option (only nil).
3666 Pass failed option and value to report_file_error.
3667 (Fset_network_process_options): Replace by Fset_network_process_option.
3668 (Fset_network_process_option): New function to set just one option.
3669 (Fmake_network_process): Allow :coding arg to be a cons.
3670 Allow :server arg to be an integer specifying backlog size.
3671 Remove :options arg, and allow options to be specified directly
3672 as :KEY, VALUE pairs. Parse these options before binding socket.
3673 As before, :reuseaddr t is default for a server process, but this
3674 can now be disabled by specifying :reuseaddr nil.
3675 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3676 (init_process): Availability of network options is now checked with
3677 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3678 setup features.
3679 (syms_of_process): Fix defsubr's for the replaced functions.
3680
3681 2003-09-16 Dave Love <fx@gnu.org>
3682
3683 * Makefile.in: Depend on coding.h.
3684
3685 2003-09-14 Kim F. Storm <storm@cua.dk>
3686
3687 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3688 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3689 (syms_of_process): Defsubr them.
3690
3691 * config.in: Regenerate.
3692
3693 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3694
3695 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3696 * m/news-r6.h (XUNMARK): Remove.
3697 * m/mips.h (XUNMARK): Remove.
3698 * m/mips-siemens.h (XUNMARK): Remove.
3699 * m/iris4d.h (XUNMARK): Remove.
3700 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3701
3702 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3703
3704 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3705 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3706 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3707 (XTYPE): Use unsigned right-shift.
3708 (XMARKBIT, XMARK, XUNMARK): Remove.
3709
3710 * alloc.c (init_intervals, init_symbol, init_marker):
3711 Don't preallocate anything.
3712 (Fgarbage_collect, mark_object): Ignore the markbit.
3713
3714 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3715
3716 2003-09-08 Lute Kamstra <lute@gnu.org>
3717
3718 * xdisp.c (pint2hrstr): New function.
3719 (decode_mode_spec): Add `%i' and `%I' specs.
3720 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3721 for `mode-line-format'.
3722
3723 2003-09-07 Andreas Schwab <schwab@suse.de>
3724
3725 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3726 avoid warning.
3727
3728 2003-09-07 Eli Zaretskii <eliz@gnu.org>
3729
3730 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
3731
3732 2003-09-03 Kim F. Storm <storm@cua.dk>
3733
3734 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3735 change (superseded by 2002-08-30 change); the default blink-off
3736 cursor is now again "no cursor".
3737
3738 2003-09-01 Jason Rumney <jasonr@gnu.org>
3739
3740 * makefile.w32-in (alloca.o): Remove.
3741 (coding.o): Depend on intervals.h
3742 (emacs.o, bytecode.o): Depend on window.h
3743
3744 2003-09-01 Dave Love <fx@gnu.org>
3745
3746 * Makefile.in (alloca.o): Remove commands.
3747 (coding.o): Depend on intervals.h composite.h window.h.
3748 (emacs.o): Depend on window.h keyboard.h keymap.h.
3749 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3750 (bytecode.o): Depend on window.h.
3751
3752 2003-08-31 Jason Rumney <jasonr@gnu.org>
3753
3754 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3755 returned even when font_type is unknown.
3756
3757 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3758
3759 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3760
3761 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3762
3763 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3764 *_offset.
3765
3766 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3767 calculate pixel value.
3768
3769 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3770
3771 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3772 Don't tell redisplay display is accurate when it's actually been
3773 paused for pending input.
3774
3775 2003-08-29 Richard M. Stallman <rms@gnu.org>
3776
3777 * dispnew.c (adjust_glyph_matrix): Call window_box
3778 whenever W is nonzero.
3779
3780 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3781 (Fkill_local_variable, Fmake_variable_frame_local)
3782 (Flocal_variable_p, Flocal_variable_if_set_p):
3783 Use indirect_variable to trace thru variable aliases.
3784
3785 * config.in: Updated.
3786
3787 * callint.c (Fcall_interactively): Save and restore
3788 Vthis_command, Vthis_original_command, real_this_command,
3789 and current_kboard->Vlast_command.
3790
3791 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3792
3793 2003-08-29 Gerd Moellmann <gerd@gnu.org>
3794
3795 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3796
3797 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3798
3799 * coding.c (decode_coding_iso2022): Initialize local variable c2.
3800 (decode_coding_sjis_big5): Likewise.
3801
3802 2003-08-27 Jason Rumney <jasonr@gnu.org>
3803
3804 * w32.c (sys_pipe): Protect against file descriptor overflow.
3805
3806 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3807
3808 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3809
3810 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
3811
3812 * xfns.c (Vgtk_version_string): New variable.
3813 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3814
3815 2003-08-24 Eli Zaretskii <eliz@gnu.org>
3816
3817 * term.c (term_init): Remove `const' from buffer_size's declaration.
3818
3819 * Makefile.in (msdos.o): Depend on intervals.h.
3820
3821 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
3822
3823 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3824
3825 * xterm.h (struct x_display_info): New fields: client_leader_window
3826 and Xatom_wm_client_leader.
3827
3828 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3829 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3830
3831 * xsmfns.c (create_client_leader_window): New function.
3832 (x_session_initialize): Call create_client_leader_window, take
3833 dpyinfo as argument.
3834
3835 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3836
3837 * Makefile.in (xsmfns.o): Add more depenedencies.
3838
3839 2003-08-21 Dave Love <fx@gnu.org>
3840
3841 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3842
3843 2003-08-21 Kenichi Handa <handa@m17n.org>
3844
3845 * term.c (term_init): Fix previous change; don't rely on the
3846 length of `buffer' if TERMINFO is defined.
3847
3848 2003-08-20 Dave Love <fx@gnu.org>
3849
3850 * atimer.h: Include lisp.h.
3851
3852 * lisp.h (EMACS_LISP_H): New.
3853 (popup_activated_flag): Don't declare.
3854
3855 * alloca.c: Some merging with gnulib. Change logic and doc
3856 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3857 [DO_BLOCK_INPUT]: Don't include lisp.h.
3858 (xmalloc, xfree): Declare.
3859 (malloc): Don't declare.
3860
3861 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
3862 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3863 atimer.h, blockinput.h.
3864
3865 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3866
3867 * alloca.s: Removed.
3868
3869 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3870
3871 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3872 use -lncurses.
3873
3874 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3875 FreeBSD returns something longer than 2044. Abort if the end of
3876 the buffer is overwritten.
3877
3878 2003-08-19 Miles Bader <miles@gnu.org>
3879
3880 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3881
3882 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3883
3884 * alloc.c (lisp_align_malloc): Check for memory full when
3885 allocating ablocks, which also avoids freeing a pointer into an
3886 ablocks structure.
3887
3888 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3889
3890 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
3891
3892 2003-08-16 Richard M. Stallman <rms@gnu.org>
3893
3894 * editfns.c (Fencode_time): Doc fix.
3895
3896 2003-08-16 David Ponce <david@dponce.com>
3897
3898 * fileio.c (Fwrite_region): Fix conditional expression to issue
3899 the right message.
3900
3901 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3902
3903 * syntax.c (Fforward_word): Argument changed to optional.
3904 Set default value to 1.
3905
3906 2003-08-15 Kenichi Handa <handa@m17n.org>
3907
3908 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3909 what autoscaled.
3910 (best_matching_font): Once we find a better scalable font, set
3911 non_scalable_has_exact_height_p to 1.
3912 (try_font_list): Call try_alternative_families to try any family
3913 with the given registry.
3914
3915 2003-08-09 Andreas Schwab <schwab@suse.de>
3916
3917 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3918
3919 * print.c (print_string): Fix printing of multibyte string with
3920 nontrivial printcharfun.
3921
3922 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3923
3924 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3925
3926 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3927
3928 2003-07-31 Kenichi Handa <handa@m17n.org>
3929
3930 * process.c (read_process_output): Return the actually read bytes
3931 instead of the result of decoding.
3932
3933 2003-07-31 Kenichi Handa <handa@m17n.org>
3934
3935 * xterm.h (struct x_bitmap_record): New member have_mask.
3936
3937 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3938 to 0.
3939 (x_create_bitmap_from_file): Likewise.
3940 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3941 (x_destroy_all_bitmaps): Likewise.
3942 (x_create_bitmap_mask): Set have_mask member to 1.
3943
3944 2003-07-30 Richard M. Stallman <rms@gnu.org>
3945
3946 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3947
3948 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3949
3950 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3951
3952 2003-07-29 Richard M. Stallman <rms@gnu.org>
3953
3954 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3955 Conditionalize XIM code on HAVE_XIM.
3956
3957 * fns.c (Fclear_string): New function.
3958 (syms_of_fns): defsubr it.
3959
3960 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3961
3962 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
3963
3964 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3965
3966 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3967
3968 * buffer.c (delete_all_overlays): New function.
3969 * buffer.h (delete_all_overlays): Declare.
3970 * coding.c (run_pre_post_conversion_on_str):
3971 * print.c (temp_output_buffer_setup):
3972 * fileio.c (Finsert_file_contents):
3973 * minibuf.c (get_minibuffer): Use it.
3974
3975 2003-07-22 Andrew Choi <akochoi@shaw.ca>
3976
3977 * unexmacosx.c (unexec_regions_sort_compare):
3978 (unexec_regions_merge): New functions. Sort and merge unexec
3979 regions before dumping them.
3980
3981 2003-07-22 Dave Love <fx@gnu.org>
3982
3983 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3984
3985 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3986
3987 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3988 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3989 MARKBIT as the gcmarkbit for strings.
3990
3991 2003-07-21 Richard M. Stallman <rms@gnu.org>
3992
3993 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3994
3995 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
3996 (syms_of_fns): Corresponding change.
3997
3998 * alloc.c (syms_of_alloc): Doc fixes.
3999
4000 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4001
4002 * s/netbsd.h: Use -Wl syntax.
4003
4004 2003-07-17 Richard M. Stallman <rms@gnu.org>
4005
4006 * xterm.c (xim_initialize): Redo 6/24 change.
4007
4008 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4009
4010 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4011 (Fswitch_to_buffer): Don't signal an error when switching to the same
4012 buffer in a dedicated window.
4013
4014 * alloc.c: Use bitmaps for cons, as was done for floats.
4015 (init_float, init_cons): Let the normal code allocate the first block.
4016 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4017 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4018 New macros.
4019 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4020 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4021 (live_cons_p): Check the pointer is not past the `conses' array.
4022 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4023 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4024 (survives_gc_p): Use CONS_MARKED_P and simplify.
4025 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4026
4027 2003-07-13 Paul Eggert <eggert@twinsun.com>
4028
4029 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4030 puts it into BSS instead, at least on Solaris 8 and 9.
4031 This is a valid optimization, and it may occur on other platforms,
4032 so Emacs should not assume that initializing a static variable to
4033 zero puts it into data.
4034 * alloc.c (pure, staticvec):
4035 Initialize these arrays to nonzero, so that they're not
4036 put into BSS by that optimization.
4037
4038 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4039
4040 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4041 (lisp_align_malloc): Use posix_memalign is available.
4042 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4043 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4044 for consistency. Update users.
4045
4046 2003-07-13 Richard M. Stallman <rms@gnu.org>
4047
4048 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4049
4050 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4051
4052 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4053 and use the Gtk+ function gtk_window_icon_from_file if available.
4054
4055 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4056 handle mask of bitmaps.
4057 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4058 mask property.
4059 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4060
4061 * xterm.h (xg_set_icon): New function.
4062
4063 2003-07-12 Paul Eggert <eggert@twinsun.com>
4064
4065 * unexelf.c (unexec): Consider a section to precede the .bss
4066 section if its addresses overlap that of .bss.
4067
4068 2003-07-12 Richard M. Stallman <rms@gnu.org>
4069
4070 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4071
4072 * config.in (HAVE_CRTIN): Add #undef.
4073 (INLINE): Really inline only if OPTIMIZE is defined.
4074
4075 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4076 END_FILES_1.
4077 (START_FILES_1, END_FILES_1): New macros (conditional).
4078 (LD_SWITCH_SYSTEM_TEMACS): Define.
4079
4080 * s/openbsd.h: Don't include bsd4-3.h.
4081 (TERMINFO): Define.
4082 (LIBS_TERMCAP): Define.
4083 (LD_SWITCH_SYSTEM): Define (two definitions).
4084
4085 * xfns.c: Include libpng/png.h instead of png.h.
4086
4087 2003-07-11 Andreas Schwab <schwab@suse.de>
4088
4089 * buffer.c (modify_overlay): Update prototype.
4090 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4091 Likewise.
4092
4093 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4094
4095 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4096 (struct interval): Move to intervals.h.
4097 (struct Lisp_Marker): Use EMACS_INT for position info.
4098 (forward_point): Remove prototype of defunct function.
4099 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4100 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4101 (syms_of_textprop, set_text_properties): Remove prototypes that are
4102 already in intervals.h.
4103
4104 * intervals.h (struct interval): Move from lisp.h.
4105 Use EMACS_INT for position and size info.
4106
4107 * coding.c: Include intervals.h for Fset_text_properties.
4108
4109 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4110 position and length information.
4111
4112 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4113
4114 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4115 position and length information.
4116
4117 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4118
4119 Change overlays_after and overlays_before so the overlays themselves
4120 are linked into lists, rather than using cons cells. After all each
4121 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4122 Lisp_Overlay for free and save up one cons cell per overlay (not
4123 to mention one indirection when traversing the list of overlay).
4124
4125 * lisp.h (struct Lisp_Overlay): New field `next'.
4126
4127 * buffer.h (struct buffer): Change overlays_before and overlays_after
4128 from Lisp lists of overlays to pointers to overlays.
4129
4130 * buffer.c (overlay_strings, recenter_overlay_lists):
4131 Fix typo in eassert in last commit.
4132 (unchain_overlay): New function.
4133 (add_overlay_mod_hooklist): Use AREF.
4134 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4135 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4136 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4137 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4138 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4139 Adjust to new type of overlays_(before|after).
4140
4141 * alloc.c (mark_object): Mark the new `next' field of overlays.
4142 (mark_buffer): Manually mark the overlays_(after|before) fields.
4143
4144 * coding.c (run_pre_post_conversion_on_str):
4145 * editfns.c (overlays_around):
4146 * xdisp.c (load_overlay_strings):
4147 * fileio.c (Finsert_file_contents):
4148 * indent.c (current_column):
4149 * insdel.c (signal_before_change, signal_after_change):
4150 * intervals.c (set_point_both):
4151 * print.c (temp_output_buffer_setup): Use new type for
4152 overlays_(before|after).
4153
4154 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4155
4156 * buffer.c (report_overlay_modification): Don't run hooks while
4157 traversing the list of overlays.
4158
4159 * buffer.h (struct buffer): Use an int for overlay_center.
4160 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4161 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4162
4163 * buffer.c (reset_buffer, recenter_overlay_lists)
4164 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4165 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4166 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4167 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4168 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4169
4170 * xdisp.c (fast_find_position): Remove unused var.
4171
4172 * cmds.c (Qexpand_abbrev): New sym.
4173 (syms_of_cmds): Initialize it.
4174 (internal_self_insert): Use it to call expand-abbrev.
4175
4176 2003-07-09 Kim F. Storm <storm@cua.dk>
4177
4178 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4179 was configured with --without-xim.
4180 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4181
4182 2003-07-07 Richard M. Stallman <rms@gnu.org>
4183
4184 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4185
4186 * alloc.c (Fgarbage_collect): Doc fix.
4187
4188 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4189
4190 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4191
4192 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4193
4194 * minibuf.c (read_minibuf): UNGCPRO before returning.
4195 (Ftry_completion, Fall_completions): Doc fix.
4196
4197 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4198 now that `floats' is not the last element of the struct any more.
4199
4200 2003-07-06 Jason Rumney <jasonr@gnu.org>
4201
4202 * w32term.h (ClipboardSequence_Proc): New type.
4203
4204 * w32fns.c (clipboard_sequence_fn): New variable.
4205 (globals_of_w32fns): Initialize it.
4206
4207 * w32select.c (last_clipboard_sequence_number): New variable.
4208 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4209 number if possible.
4210
4211 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4212
4213 * m/amdx86-64.h (MARKBIT):
4214 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4215 MARKBIT and ARRAY_MARK_FLAG any more.
4216
4217 * m/hp800.h (XSETMARKBIT):
4218 * m/sr2k.h (XSETMARKBIT):
4219 * lisp.h (XSETMARKBIT): Remove unused macro.
4220
4221 * lisp.h (mark_object): Change prototype.
4222
4223 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4224 (last_marked): Change accordingly.
4225 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4226 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4227 (mark_buffer): Update calls to mark_object.
4228
4229 * bytecode.c (mark_byte_stack):
4230 * fns.c (sweep_weak_table):
4231 * keyboard.c (mark_kboards): Update calls to mark_object.
4232
4233 2003-07-06 Jason Rumney <jasonr@gnu.org>
4234
4235 * alloc.c (struct ablock): Only include padding when there is some.
4236
4237 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4238
4239 * alloc.c (ALIGN): Add casts to simplify usage.
4240 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4241 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4242 (struct ablock, struct ablocks): New types.
4243 (free_ablock): New global var.
4244 (lisp_align_malloc, lisp_align_free): New functions.
4245 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4246 (struct float_block): Reorder and add gcmarkbits.
4247 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4248 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4249 (init_float, make_float): Use lisp_align_malloc.
4250 (free_float, live_float_p): Don't use `type' any more.
4251 (make_float): Use FLOAT_UNMARK to access to mark bit.
4252 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4253 Use FLOAT_MARKED_P to access the mark bit.
4254 (pure_alloc): Simplify use of ALIGN.
4255 (mark_object): Use FLOAT_MARK to access the mark bit.
4256 (gc_sweep): Use new macros to access the float's mark bit.
4257 (init_alloc_once): Init free_ablock.
4258
4259 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4260
4261 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4262
4263 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4264 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4265 (allocate_buffer): Move.
4266 (string_bytes): Don't mask markbit of `size_byte'.
4267 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4268 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4269 Use the `size' field of buffers (rather than the `name' field) for
4270 the mark bit, as is done for all other vectorlike objects.
4271 Use the new macros to access the mark bit of vectorlike objects.
4272
4273 2003-06-26 Richard M. Stallman <rms@gnu.org>
4274
4275 * puresize.h (BASE_PURESIZE): Increment base size.
4276
4277 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4278
4279 * xterm.c (xim_initialize): Undo previous change.
4280
4281 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4282
4283 * alloc.c (survives_gc_p): Simplify.
4284
4285 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4286
4287 * window.c (Fset_window_dedicated_p): Simplify.
4288 (display_buffer_1): Don't raise the win from which minibuf was entered.
4289 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4290 (Fminibuffer_selected_window): Simplify.
4291
4292 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4293
4294 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4295 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4296
4297 * insdel.c (check_markers, adjust_markers_for_delete)
4298 (adjust_markers_for_insert, adjust_markers_for_replace)
4299 (prepare_to_modify_buffer, RESTORE_VALUE):
4300 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4301 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4302 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4303 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4304 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4305 * editfns.c (save_excursion_restore, transpose_markers):
4306 * window.c (delete_window):
4307 * xdisp.c (message_dolog): Update for new types.
4308
4309 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4310
4311 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4312 (realize_default_face): Use default_face_done_p for the force_p
4313 argument to set_lface_from_font_name. Set default_face_done_p to one.
4314
4315 * frame.c (make_frame): Initialize default_face_done_p.
4316
4317 * frame.h (struct frame): Add default_face_done_p.
4318
4319 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4320 will be defined.
4321
4322 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4323
4324 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4325 Initialize the new field `gcmarkbit'.
4326 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4327 (mark_interval_tree): Don't mark the tree separately from the nodes.
4328 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4329 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4330 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4331
4332 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4333 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4334 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4335 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4336 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4337
4338 2003-06-24 Dave Love <fx@gnu.org>
4339
4340 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4341
4342 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4343 from gnulib.
4344
4345 2003-06-21 Richard M. Stallman <rms@gnu.org>
4346
4347 * fileio.c (Fwrite_region): Alternate messages
4348 for append and partial write.
4349
4350 * keyboard.c (read_key_sequence): When converting upcase fn key to
4351 downcase, update fkey and keytran so `backspace' gets translated.
4352
4353 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4354
4355 * process.c (wait_reading_process_input): Don't signal SIGIO
4356 in batch mode.
4357
4358 2003-06-17 Kenichi Handa <handa@m17n.org>
4359
4360 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4361 composite.h.
4362
4363 * xselect.c: Don't include charset.h, coding.h, composite.h.
4364 (Qforeign_selection): New variable.
4365 (syms_of_xselect): Intern and static it.
4366 (selection_data_to_lisp_data): Return a unibyte string made from
4367 data with `foreign-selection' text property.
4368
4369 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4370
4371 * termhooks.h (EVENT_INIT): New macro.
4372
4373 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4374
4375 * alloc.c (mark_kboards): Move to keyboard.c.
4376
4377 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4378 * xterm.c (x_dispatch_event):
4379 * xmenu.c (find_and_call_menu_selection):
4380 * xdisp.c (handle_tool_bar_click):
4381 * w32menu.c (menubar_selection_callback):
4382 * sysdep.c (kbd_input_ast, read_input_waiting):
4383 * msdos.c (dos_rawgetc):
4384 * macterm.c (mac_check_for_quit_char):
4385 * macmenu.c (menubar_selection_callback):
4386 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4387 data to kbd_buffer_store_event.
4388
4389 2003-06-15 Kim F. Storm <storm@cua.dk>
4390
4391 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4392 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4393
4394 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4395
4396 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4397
4398 2003-06-12 Kenichi Handa <handa@m17n.org>
4399
4400 * fileio.c (Fwrite_region): Save and restore restriction.
4401
4402 2003-06-12 Dave Love <fx@gnu.org>
4403
4404 * alloca.c (alloca): Declare arg as size_t.
4405
4406 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4407 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4408
4409 2003-06-11 Dave Love <fx@gnu.org>
4410
4411 * search.c (shrink_regexp_cache): Use xrealloc.
4412 (syms_of_search): Use xmalloc.
4413
4414 2003-06-10 Kim F. Storm <storm@cua.dk>
4415
4416 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4417 Adjust phys_cursor.x to be relative to window box, rather than
4418 text area before checking -- to ensure cursor is redrawn when
4419 exposing window.
4420 Note: This also fixes a similar (older) bug if display margins
4421 are present.
4422
4423 2003-06-06 Kenichi Handa <handa@m17n.org>
4424
4425 * coding.c (encoding_buffer_size): If coding->type is
4426 coding_type_ccl, double magnification on CRLF encoding.
4427
4428 2003-06-06 Jason Rumney <jasonr@gnu.org>
4429
4430 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4431 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4432
4433 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4434 Mac too.
4435
4436 2003-06-05 Dave Love <fx@gnu.org>
4437
4438 * strftime.c: Merge changes from gnulib.
4439
4440 * mktime.c (__mktime_internal): Merge changes from gnulib
4441 involving year 69 and dst2.
4442
4443 Changes to merge with gnulib version and be consistent with the
4444 autoconf test:
4445
4446 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4447 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4448 [HAVE_LOCALE_H]: Include locale.h.
4449 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4450
4451 2003-06-05 Kim F. Storm <storm@cua.dk>
4452
4453 * window.c (coordinates_in_window): Convert X and Y to window
4454 relative coordinates inside mode-line and header-line parts.
4455 Convert X and Y to margin area relative coordinates inside left
4456 and right display margin parts.
4457
4458 2003-06-05 Jason Rumney <jasonr@gnu.org>
4459
4460 * w32fns.c (add_system_logical_colors_to_map): New function.
4461 (Fx_open_connection): Use it.
4462
4463 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4464
4465 * process.c (allocate_pty): Revert part of the previous patch.
4466 (Faccept_process_output): Simplify.
4467
4468 2003-06-04 Jason Rumney <jasonr@gnu.org>
4469
4470 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4471
4472 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4473 (lispy_mouse_wheel_names): Remove.
4474 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4475 Always define drag_and_drop_syms.
4476
4477 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4478 WHEEL_EVENT events.
4479
4480 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4481
4482 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4483
4484 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4485
4486 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4487
4488 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4489 menu item label.
4490
4491 2003-06-03 Richard M. Stallman <rms@gnu.org>
4492
4493 * window.c (Fwindow_edges): Doc fix.
4494 (Fwindow_pixel_edges, Fwindow_inside_edges)
4495 (Fwindow_inside_pixel_edges): New functions.
4496 (syms_of_window): defsubr them.
4497
4498 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4499 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4500
4501 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4502
4503 * dispnew.c (Fsit_for): Don't lie about the number of args.
4504
4505 2003-06-02 Dave Love <fx@gnu.org>
4506
4507 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4508 (syms_of_callproc) <process-environment>: Doc fix.
4509
4510 * doc.c: Use HAVE_FCNTL_H, not USG5.
4511
4512 * xfaces.c (font_rescale_ratio): Fix for K&R.
4513
4514 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4515
4516 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4517
4518 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4519
4520 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4521 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4522
4523 * xterm.c (Qutf_8): Move to coding.c
4524
4525 * xmenu.c (ENCODE_MENU_STRING): New.
4526 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4527 Use it.
4528
4529 * coding.h (ENCODE_UTF_8): New.
4530 (Qutf_8): Declare.
4531
4532 * coding.c (Qutf_8): New.
4533 (syms_of_coding): Intern it.
4534
4535 * fns.c: Doc fixes.
4536
4537 2003-06-02 Kenichi Handa <handa@m17n.org>
4538
4539 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4540
4541 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4542
4543 * lread.c (openp): Make sure STR is a string.
4544
4545 2003-06-01 David Ponce <david@dponce.com>
4546
4547 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4548 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4549
4550 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4551 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4552 (discard_mouse_events): Discard WHEEL_EVENT events too.
4553 (lispy_wheel_names, wheel_syms): New.
4554 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4555 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4556 defined.
4557 (make_lispy_event): Add WHEEL_EVENT handler.
4558
4559 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4560 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4561 WHEEL_EVENT events.
4562
4563 2003-05-31 John Paul Wallington <jpw@gnu.org>
4564
4565 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4566 timer are in lisp/emacs-lisp.
4567
4568 2003-05-31 Kenichi Handa <handa@m17n.org>
4569
4570 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4571 region when a buffer is changed to unibyte.
4572
4573 * charset.h (VALID_LEADING_CODE_P): New macro.
4574 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4575
4576 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4577 is nonzero, accept multibyte form of eight-bit-control chars.
4578 (decode_composition_emacs_mule): Likewise.
4579 (decode_coding_emacs_mule): Likewise.
4580 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4581 multibyte form of eight-bit-control chars.
4582
4583 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4584 (Finsert_file_contents): If coding-system-for-read is bound to
4585 Qauto_save_coding, use the coding system emacs-mule with special
4586 setting for recovering a file.
4587 (choose_write_coding_system): On auto saving, use the coding
4588 system emacs-mule with special setting for auto saving.
4589 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4590
4591 2003-05-30 Kenichi Handa <handa@m17n.org>
4592
4593 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4594 properly before calling ccl_driver.
4595
4596 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
4597
4598 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4599 nonzero.
4600 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4601 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4602
4603 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4604
4605 * xfaces.c (realize_default_face): Do not abort if lface is
4606 non-existent - reverts change from 2003-05-19.
4607
4608 2003-05-29 Kenichi Handa <handa@m17n.org>
4609
4610 * coding.c (decode_coding_iso2022): Pay attention to the byte
4611 sequence of CTEXT extended segment, and retain those bytes as is.
4612
4613 2003-05-28 Kenichi Handa <handa@m17n.org>
4614
4615 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4616 of CODING_REPLACEMENT_CHARACTER.
4617 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4618 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4619 check this flag on encoding.
4620 (encode_coding_sjis_big5): Check
4621 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4622 (Fset_terminal_coding_system_internal): Set
4623 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4624 instead of setting CODING_FLAG_ISO_SAFE flag in
4625 terminal_coding.flags.
4626
4627 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4628 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4629 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4630
4631 2003-05-28 Richard M. Stallman <rms@gnu.org>
4632
4633 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4634
4635 * eval.c (unbind_to): Move init of this_binding to separate statement.
4636
4637 2003-05-28 Kim F. Storm <storm@cua.dk>
4638
4639 * xdisp.c (expose_window): Fix error in calculation of
4640 window relative coordinates of area to redisplay.
4641
4642 2003-05-27 Jason Rumney <jasonr@gnu.org>
4643
4644 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4645
4646 2003-05-27 David Ponce <david@dponce.com>
4647
4648 Handle W32 mouse wheel events as mouse click events, like in X.
4649
4650 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4651 MOUSE_WHEEL_EVENT anymore.
4652
4653 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4654 Scrolling down/up the mouse wheel is respectively mapped to mouse
4655 button 4 and 5.
4656 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4657 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4658 WM_MOUSEWHEEL events.
4659
4660 2003-05-27 Andreas Schwab <schwab@suse.de>
4661
4662 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4663
4664 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4665 partially visible line.
4666
4667 * alloc.c (Fgarbage_collect): Fix last change.
4668
4669 2003-05-26 John Paul Wallington <jpw@gnu.org>
4670
4671 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4672
4673 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4674
4675 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4676 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4677
4678 * window.h (window_box_text_cols): Declare.
4679
4680 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4681 (x_draw_vertical_border): Remove unused var `f'.
4682
4683 * xfaces.c (build_scalable_font_name): Remove `unused var
4684 pixel_size' warning.
4685
4686 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4687
4688 * unexelf.c (unexec): Remove `unused var n' warning.
4689
4690 * strftime.c (my_strftime_localtime_r): Remove `defined but
4691 unused' warning.
4692
4693 * process.c (allocate_pty): Remove `unused var stb' and
4694 `cp might be used uninitialized' warnings.
4695
4696 * dispnew.c (mode_line_string): Remove unused var `f'.
4697
4698 * coding.c (find_safe_codings): Remove unused var `i'.
4699
4700 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4701
4702 * buffer.c (Fkill_buffer): Remove unused var `list'.
4703
4704 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4705
4706 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4707
4708 * frame.c (make_frame): Condition want_fullscreen with
4709 HAVE_WINDOW_SYSTEM.
4710
4711 2003-05-25 Juanma Barranquero <lektu@terra.es>
4712
4713 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4714 (Fwindow_scroll_bars): Fix typo in docstring.
4715
4716 2003-05-24 Kim F. Storm <storm@cua.dk>
4717
4718 The following changes serve several purposes:
4719
4720 1) Swap the position of fringes and display margins in windows, i.e.
4721 the fringes are now displayed between the margins and the text area
4722 (by default).
4723
4724 2) Allow fringe and scroll bar parameters to be set per-buffer and
4725 per-window (like display margins). Such settings are now stored
4726 in window configurations, preserved when frames are resized, and
4727 copied when windows are split vertically or horizontally.
4728 Several bugs related to display margins have been fixed.
4729
4730 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
4731
4732 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4733 rather than FRAME_WIDTH (FRAME_FONT (f)).
4734
4735 5) Introduce a consistent naming of variables, members and macros
4736 depending on whether their value is measured in pixels or in
4737 canonical columns/lines. Pixel dimensions are named *_width and
4738 *_height, while canonical columns/lines are named *_cols and
4739 *_lines. Pixel positions are named *_x and *_y, while column/line
4740 positions are named *_col and *_line.
4741
4742 6) Consolidate more of the X, W32, and MAC gui code by moving
4743 common data into struct frame, and generalize it for the non-gui
4744 case by using suitable defaults.
4745
4746 7) Cleanup and consolidate the macros controlling frame and window
4747 layout into frame.h and window.h, and generalize the use of the
4748 various window_box_* functions (enhanced to handle the new fringe
4749 position and the per-window fringe and scroll bar settings).
4750
4751 * frame.h (struct frame): Rename members height to text_lines,
4752 width to text_cols, window_height to total_lines, window_width to
4753 total_cols, new_height to new_text_lines, new_width to
4754 new_text_cols. All uses changed.
4755 (struct frame): New members which consolidate common members of
4756 x_output, w32_output, and mac_output structures: left_pos,
4757 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4758 win_gravity, size_hint_flags, border_width, internal_border_width,
4759 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4760 want_fullscreen. All uses changed.
4761 (struct frame): New member column_width contaning the canonical
4762 column width, analogue to line_height. All uses changed.
4763 (struct frame): Rename members scroll_bar_pixel_width to
4764 config_scroll_bar_width, and scroll_bar_cols to
4765 config_scroll_bar_cols. All uses changed.
4766 (struct frame): New member scroll_bar_actual_width which
4767 consolidates and renames the vertical_scroll_bar_extra member of
4768 x_output, w32_output, and mac_output structures. All uses changed.
4769 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4770 from x/w32/macterm.h files. All uses changed. Also change code
4771 which referred to f->output_data...->pixel_height.
4772 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
4773 from x/w32/macterm.h files. All uses changed. Also change code
4774 which referred to f->output_data...->pixel_width.
4775 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4776 Also change code which referred to f->height.
4777 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4778 Also change code which referred to f->width.
4779 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4780 to update new_text_lines and new_text_cols members directly.
4781 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4782 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4783 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4784 FRAME_SCROLL_BAR_COLS. All uses changed.
4785 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4786 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4787 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4788 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4789 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4790 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4791 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4792 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4793 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4794 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4795 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4796 return line_height member (it now has proper value also for
4797 non-window frames).
4798 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4799 return new column_width member (rather than the default font width).
4800 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4801 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4802 from x/w32/macterm.h files. Unconditionally return corresponding
4803 member of frame structure (they now have proper values also for
4804 non-window frames).
4805 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4806 Calculate return value from left and right widths.
4807 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4808 internal_border_width member (has proper value for non-window frame).
4809 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4810 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4811 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4812 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4813 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4814 consolidated from xterm.h, macterm.h, and w32term.h.
4815 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4816 consolidated from xterm.h, macterm.h, and w32term.h.
4817 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4818 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4819 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4820 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4821 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4822 consolidated from x/mac/w32term.h.
4823 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4824 consolidated from x/mac/w32term.h.
4825 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4826 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4827 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4828 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4829
4830 * window.h (struct window): Rename members left to left_col,
4831 top to top_line, height to total_lines, width to total_cols,
4832 left_margin_width to left_margin_cols, right_margin_width to
4833 right_margin_cols, orig_height to orig_total_lines, orig_top to
4834 orig_top_line. All uses changed.
4835 (struct window): New members left_fringe_width, right_fringe_width,
4836 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4837 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4838 New macros primarily used to simplify other macros.
4839 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4840 referred to XINT (w->width).
4841 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4842 referred to XINT (w->height).
4843 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4844 referred to XINT (w->width) * canon_x_unit.
4845 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4846 referred to XINT (w->height) * canon_y_unit.
4847 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4848 referred to XINT (w->left).
4849 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4850 all uses and code that referred to XINT (w->left) + XINT (w->width).
4851 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4852 referred to XINT (w->top).
4853 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4854 referred to XINT (w->top) + XINT (w->height).
4855 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4856 referred to XINT (w->left) * canon_x_unit.
4857 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4858 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4859 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4860 referred to XINT (w->top) * canon_y_unit.
4861 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4862 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4863 (WINDOW_LEFTMOST_P): New macro.
4864 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4865 All uses changed.
4866 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4867 All uses changed.
4868 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4869 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4870 Do not exclude left fringe width.
4871 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4872 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4873 Do not exclude fringe widths.
4874 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4875 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4876 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4877 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4878 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4879 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4880 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4881 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4882 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4883 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4884 New macros. Change code which referenced corresponding
4885 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4886 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4887 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4888 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4889 allow per-window scroll-bar settings.
4890 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4891 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4892 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4893 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4894 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4895 FRAME_SCROLL_BAR_WIDTH.
4896 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
4897 (WINDOW_SCROLL_BAR_AREA_X): New macros.
4898 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4899 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4900 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4901 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4902 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4903 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4904 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4905 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4906 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4907 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4908 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4909 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4910 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4911 (window_from_coordinates): Update prototype.
4912 (Fset_window_buffer): Update EXFUN.
4913 (set_window_buffer): Update prototype.
4914
4915 * dispextern.h (struct glyph_matrix): Rename members window_left_x
4916 to window_left_col, window_top_y to window_top_line. All uses
4917 changed.
4918 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4919 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4920 internal_border_width is now set to 0 for non-window frames.
4921 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4922 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4923 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4924 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4925 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4926 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4927 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4928 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4929 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
4930 Move to window.h and renamed [see window.h changes].
4931 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4932 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
4933 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4934 Use WINDOW_TOTAL_LINES.
4935 (frame_update_line_height): Remove prototype.
4936
4937 * buffer.h (struct buffer): Rename members measured in columns:
4938 left_margin_width to left_margin_cols, right_margin_width to
4939 right_margin_cols. All uses changed.
4940 New members left_fringe_width, right_fringe_width,
4941 fringes_outside_margins for per-buffer fringe settings.
4942 New members scroll_bar_width and vertical_scroll_bar_type for
4943 per-buffer scroll bar settings.
4944
4945 * buffer.c (init_buffer_once): Set buffer_defaults and
4946 buffer_local_flags for new buffer-local variables
4947 left_fringe_width, right_fringe_width, fringes_outside_margins,
4948 scroll_bar_width, and vertical_scroll_bar_type.
4949 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4950 default-* variables for them.
4951
4952 * dispnew.c: Make (many) trivial substitutions for renamed and
4953 new macros in dispextern.h, frame.h and window.h.
4954 (mode_line_string): No need to adjust width for mode lines, as it
4955 is already adjusted by the caller.
4956 (marginal_area_string): Handle fringes inside/outside margins.
4957
4958 * frame.c: Make (many) trivial substitutions for renamed and
4959 new macros in dispextern.h, frame.h and window.h.
4960 (make_frame): Initialize left_fringe_width, right_fringe_width,
4961 fringe_cols, scroll_bar_actual_width, border_width,
4962 internal_border_width, column_width, line_height, x_pixels_diff,
4963 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4964 members with values suitable for a non-window frames.
4965
4966 * gtkutil.c: Make (many) trivial substitutions for renamed and
4967 new macros in dispextern.h, frame.h and window.h.
4968
4969 * indent.c: Make (few) trivial substitutions for renamed and
4970 new macros in dispextern.h, frame.h and window.h.
4971
4972 * keyboard.c: Make (many) trivial substitutions for renamed and
4973 new macros in dispextern.h, frame.h and window.h.
4974 (make_lispy_event): Use window positions returned from
4975 window_from_coordinates when constructing the lisp event for
4976 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4977 (incorrect) values locally.
4978 (make_lispy_movement): Use window positions returned from
4979 window_from_coordinates when constructing the lisp event, rather
4980 than calculating (incorrect) values locally.
4981
4982 * scroll.c: Make (some) trivial substitutions for renamed and
4983 new macros in dispextern.h, frame.h and window.h.
4984
4985 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4986 scroll-bars.
4987
4988 * sysdep.c: Make (few) trivial substitutions for renamed and
4989 new macros in dispextern.h, frame.h and window.h.
4990
4991 * term.c: Make (some) trivial substitutions for renamed and
4992 new macros in dispextern.h, frame.h and window.h.
4993
4994 * widget.c: Make (few) trivial substitutions for renamed and
4995 new macros in dispextern.h, frame.h and window.h.
4996
4997 * window.c: Make (many) trivial substitutions for renamed and
4998 new macros in dispextern.h, frame.h and window.h.
4999 (make_window): Initialize new members
5000 left_margin_cols, right_margin_cols, left_fringe_width,
5001 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5002 and vertical_scroll_bar_type.
5003 (coordinates_in_window): Adapted to new fringe/margin positions
5004 and per-window fringes and scroll-bars.
5005 Fix bug related to incorrectly adjusting coordinates by
5006 frame's internal_border_width (the effect normally negible since
5007 the internal_border_width is typically 0 or 1 pixel, but very
5008 noticeable for an internal_border_width of e.g. 25 pixels).
5009 Upon successful return (other than ON_NOTHING), the coordinates
5010 are now always properly converted to window relative for the
5011 given display element.
5012 (window_from_coordinates): Add new parameters wx and wy to
5013 return the window relative x and y position in the returned
5014 window and part. A null arg means, don't return the position.
5015 All callers changed.
5016 (adjust_window_margins): New function which may reduce the width
5017 of the display margins if a window's text area is too small after
5018 resizing or splitting windows.
5019 (size_window): Fix bug that did not account for display margin
5020 widths when checking the minimum width of a window; use
5021 adjust_window_margins.
5022 (set_window_buffer): Call Fset_window_fringes and
5023 Fset_window_scroll_bars to setup per-window elements.
5024 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5025 existing display margin, fringe widths, and scroll bar settings
5026 (e.g. after splitting a window or resizing the frame).
5027 All callers changed.
5028 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5029 (Fsplit_window): Duplicate original window's display margin,
5030 fringe, and scroll-bar settings; then call Fset_window_buffer with
5031 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5032 window to only preserve the display margins in one of the windows.
5033 When splitting horizontally, call adjust_window_margins on both
5034 windows to ensure that the text area of the new windows is non too
5035 narrow. This fixes a bug which could cause Emacs to trap if the
5036 width of the split window was less than the width of the display
5037 margins.
5038 (window_box_text_cols): Renamed from window_internal_width.
5039 All uses changed. Adapt to per-window fringes and scroll bars.
5040 Fix bug that caused vertical separator to be subtracted also on
5041 window frames. Fix another bug that did not reduce the returned
5042 value by the columns used for display margins.
5043 (window_scroll_line_based): Fix bug related to scrolling too much
5044 when display margins are present (implicitly fixed by the fix to
5045 window_box_text_cols).
5046 (scroll_left, scroll_right): Fix bug related to scrolling too far
5047 by default when display margins are present (implicitly fixed by
5048 the fix to window_box_text_cols).
5049 (struct saved_window): Rename members left to left_col, top to
5050 top_line, width to total_cols, height to total_lines, orig_top to
5051 orig_top_line, orig_height to orig_total_lines. All uses changed.
5052 New members left_margin_cols, right_margin_cols,
5053 left_fringe_width, right_fringe_width, fringes_outside_margins,
5054 scroll_bar_width, and vertical_scroll_bar_type for saving
5055 per-window display elements.
5056 (Fset_window_configuration): Restore display margins, fringes,
5057 and scroll bar settings. This fixes a bug which caused display
5058 margins to be discarded when saving and restoring a window
5059 configuration.
5060 (save_window_save): Save display margins, fringes, and scroll bar
5061 settings. This fixes a bug which caused display margins to be
5062 discarded when saving and restoring a window configuration.
5063 (Fset_window_margins): Do nothing if display margins are not
5064 really changed. Otherwise, call adjust_window_margins to ensure
5065 the text area doesn't get too narrow. This fixes a bug which
5066 could cause Emacs to trap if setting display margins wider than
5067 the width of the window.
5068 (Fset_window_fringes): New defun to allow user to specifically set
5069 this window's fringe widths and position vs. display margins.
5070 (Fwindow_fringes): New defun to return window's actual fringe
5071 settings.
5072 (Fset_window_scroll_bars): New defun to allow user to specifically
5073 set this window's scroll bar width and position.
5074 (Fwindow_scroll_bars): New defun to return window's actual scroll
5075 bar settings.
5076 (compare_window_configurations): Also compare display margins,
5077 fringes, and scroll bar settings.
5078 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5079
5080 * xdisp.c: Make (many) trivial substitutions for renamed and
5081 new macros in dispextern.h, frame.h and window.h.
5082 (window_box_width): Adapt to per-window fringes and scroll bars,
5083 and new fringe vs. display margin position. Note that returned
5084 value is no longer guaranteed to be a whole multiple of the frame
5085 column width, since per-window fringes may now be any width.
5086 (window_box_left_offset): New function like window_box_left, but
5087 value is relative to left border of window (rather than frame).
5088 (window_box_right_offset): New function like window_box_right,
5089 but value is relative to left border of window.
5090 (window_box_left): Adapt to per-window fringes and scroll bars,
5091 and new fringe vs. display margin position. Simplify by using
5092 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5093 (window_box): Allow null args for unnecessary return values;
5094 change/simplify relevant callers.
5095 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
5096 and new fringe vs. display margin position.
5097 Use window_box_left_offset and window_box_right_offset
5098 (get_glyph_string_clip_rect): Adapt to per-window fringes and
5099 scroll bars, and new fringe vs. display margin position.
5100 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
5101 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5102 fringe vs. display margin position.
5103 (hscroll_window_tree): Use window_box_width instead of window_box.
5104 (redisplay_window): Adapt to per-window scroll bars.
5105 (draw_glyphs): Rework to handle per-window fringes and scroll
5106 bars, and new fringe vs. display margin position.
5107 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
5108 (x_clear_end_of_line): Adapt to per-window fringes and scroll
5109 bars, and new fringe vs. display margin position. Fix bug which
5110 increased total width of full_width rows by width of scroll bars
5111 although window's total width already includes that.
5112 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5113 (expose_area): Simplify using window_box_left_offset.
5114 (x_draw_vertical_border): Handle per-window scroll bar settings,
5115 mixing windows with left, right and no scroll bars.
5116
5117 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5118 where it's used in x_list_fonts (for clarity).
5119 (frame_update_line_height): Remove unused function; functionality
5120 is now done directly when setting the default font in x_set_font.
5121
5122 * xfns.c: Make (many) trivial substitutions for renamed and
5123 new macros in dispextern.h, frame.h and window.h.
5124
5125 * xmenu.c: Make (some) trivial substitutions for renamed and
5126 new macros in dispextern.h, frame.h and window.h.
5127
5128 * xterm.h (struct x_output): Move members left_pos, top_pos,
5129 border_width, pixel_height, pixel_width, line_height,
5130 internal_border_width, vertical_scroll_bar_extra,
5131 left_fringe_width, right_fringe_width, fringe_cols,
5132 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5133 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5134 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5135 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5136 (PIXEL_WIDTH, PIXEL_HEIGHT)
5137 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5138 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5139 frame.h and renamed [see frame.h changes].
5140 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5141 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5142 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5143 and renamed [see frame.h changes].
5144
5145 * xterm.c: Make (several) trivial substitutions for renamed and
5146 new macros in dispextern.h, frame.h and window.h.
5147 (x_draw_glyph_string_box): Adapt to per-window fringes and
5148 scroll-bars.
5149 (scroll_run): Adapt to new fringe position.
5150 (glyph_rect): Use window coordinates returned from
5151 window_from_coordinates rather than frame_to_window_pixel_xy.
5152 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5153 scroll-bars.
5154 (handle_one_xevent): Simplify a USE_GTK conditional.
5155 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5156 (fringes are now inside margins, i.e. always in the clipping area).
5157 All callers changed.
5158 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5159 directly, then call compute_fringe_widths. Don't call
5160 frame_update_line_height.
5161
5162 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5163 border_width, pixel_height, pixel_width, line_height,
5164 internal_border_width, vertical_scroll_bar_extra,
5165 left_fringe_width, right_fringe_width, fringe_cols,
5166 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5167 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5168 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5169 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5170 (PIXEL_WIDTH, PIXEL_HEIGHT)
5171 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5172 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5173 frame.h and renamed [see frame.h changes].
5174 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5175 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5176 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5177 and renamed [see frame.h changes].
5178
5179 * w32term.c: Make (several) trivial substitutions for renamed and
5180 new macros in dispextern.h, frame.h and window.h.
5181 (x_draw_glyph_string_box): Adapt to per-window fringes and
5182 scroll-bars.
5183 (glyph_rect): Use window coordinates returned from
5184 window_from_coordinates rather than frame_to_window_pixel_xy.
5185 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5186 scroll-bars.
5187 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5188 (fringes are now inside margins, i.e. always in the clipping area).
5189 All callers changed.
5190 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5191 directly, then call compute_fringe_widths. Don't call
5192 frame_update_line_height.
5193
5194 * w32console.c: Make (few) trivial substitutions for renamed and
5195 new macros in dispextern.h, frame.h and window.h.
5196
5197 * w32fns.c: Make (many) trivial substitutions for renamed and
5198 new macros in dispextern.h, frame.h and window.h.
5199
5200 * w32menu.c: Make (few) trivial substitutions for renamed and
5201 new macros in dispextern.h, frame.h and window.h.
5202
5203 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5204 border_width, pixel_height, pixel_width, line_height,
5205 internal_border_width, vertical_scroll_bar_extra,
5206 left_fringe_width, right_fringe_width, fringe_cols,
5207 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5208 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5209 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5210 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5211 (PIXEL_WIDTH, PIXEL_HEIGHT)
5212 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5213 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5214 frame.h and renamed [see frame.h changes].
5215 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5216 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5217 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5218 and renamed [see frame.h changes].
5219
5220 * macterm.c: Make (several) trivial substitutions for renamed and
5221 new macros in dispextern.h, frame.h and window.h.
5222 (x_draw_glyph_string_box): Adapt to per-window fringes and
5223 scroll-bars.
5224 (glyph_rect): Use window coordinates returned from
5225 window_from_coordinates rather than frame_to_window_pixel_xy.
5226 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5227 scroll-bars.
5228 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5229 (fringes are now inside margins, i.e. always in the clipping area).
5230 All callers changed.
5231 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5232 directly, then call compute_fringe_widths. Don't call
5233 frame_update_line_height.
5234
5235 * macfns.c: Make (several) trivial substitutions for renamed and
5236 new macros in dispextern.h, frame.h and window.h.
5237 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5238
5239 * macmenu.c: Make (few) trivial substitutions for renamed and
5240 new macros in dispextern.h, frame.h and window.h.
5241
5242 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5243 and line_height, and use corresponding new members in struct
5244 frame. All uses changed.
5245 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5246 superseeded by corresponding macros in frame.h.
5247
5248 * msdos.c: Make (several) trivial substitutions for renamed and
5249 new macros in dispextern.h, frame.h and window.h.
5250 (IT_note_mouse_highlight): Use updated window coordinates returned
5251 by window_from_coordinates, rather than adjusting them locally.
5252 (internal_terminal_init): No need to initialize line_height here;
5253 it now defaults to 1.
5254
5255 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5256
5257 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5258 dropping `down' events.
5259
5260 2003-05-24 Andreas Schwab <schwab@suse.de>
5261
5262 * coding.c (find_safe_codings): Fix last change.
5263
5264 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5265
5266 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5267
5268 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5269
5270 * xdisp.c (display_mode_element): Increase max depth.
5271 Simplify the error handling code. Use a different error string
5272 for the case where we hit the depth limit.
5273
5274 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5275
5276 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5277
5278 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5279
5280 * intervals.c (get_local_map): Don't get char-property of previous
5281 point any more: get_pos_property already does it and better.
5282
5283 2003-05-21 Dave Love <fx@gnu.org>
5284
5285 [Merged from unicode branch.]
5286
5287 * xfns.c (x_window, x_window): Use use_xim.
5288
5289 * xterm.c (use_xim): Initialize.
5290 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5291 (x_term_init): Maybe set use_xim.
5292
5293 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5294
5295 2003-05-21 Jason Rumney <jasonr@gnu.org>
5296
5297 * unexw32.c (_start): Remove _fmode initialization.
5298
5299 * emacs.c (main) [WINDOWSNT]: Move it here.
5300
5301 2003-05-20 Dave Love <fx@gnu.org>
5302
5303 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5304
5305 2003-05-19 Richard M. Stallman <rms@gnu.org>
5306
5307 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5308 as value for QCfont attribute.
5309 (realize_default_face): lface should already exist; crash if not.
5310 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5311
5312 * frame.c (Fignore_event): Doc fix.
5313
5314 2003-05-19 Kenichi Handa <handa@m17n.org>
5315
5316 * coding.c (decode_coding_string): Handle post-read-conversion
5317 even if the coding doesn't require decoding.
5318
5319 2003-05-18 Richard M. Stallman <rms@gnu.org>
5320
5321 * callproc.c (Fcall_process_region): Doc fix.
5322
5323 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5324
5325 * lread.c (Fload): Print a message if package is obsolete.
5326
5327 * window.c (Fselect_window): Add optional `norecord' arg.
5328 (select_window_1): Fold into Fselect_window.
5329 (select_window_norecord): New function.
5330 (temp_output_buffer_show): Use it. Preserve current buffer.
5331
5332 * window.h (Fselect_window): Update declaration.
5333
5334 * window.c (delete_window, Fother_window, Fset_window_configuration):
5335 * minibuf.c (read_minibuf):
5336 * macterm.c (x_new_focus_frame):
5337 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5338 * callint.c (Fcall_interactively):
5339 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5340
5341 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5342
5343 2003-05-17 David Kastrup <dak@gnu.org>
5344
5345 * process.c (read_process_output): Back out change from 2003-03-09.
5346
5347 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5348
5349 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5350
5351 * textprop.c (text_property_stickiness): New arg `buffer'.
5352
5353 * intervals.h (text_property_stickiness): New arg `buffer'.
5354 (get_pos_property): Declare.
5355
5356 * intervals.c (get_local_map): Use get_pos_property, to obey
5357 stickiness and empty overlays.
5358 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5359 (merge_properties, intervals_equal, merge_properties_sticky):
5360 Use XCAR, XCDR.
5361 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5362
5363 2003-05-17 Richard M. Stallman <rms@gnu.org>
5364
5365 * minibuf.c (read_minibuf): If buffer is empty, record the default
5366 in the history.
5367 (Fminibuffer_complete_word): When deleting the overlap, take account
5368 of its real position.
5369
5370 * fns.c (map_char_table): Fix previous change.
5371
5372 * syntax.c (find_defun_start):
5373 When open_paren_in_column_0_is_defun_start,
5374 return beginning of buffer.
5375
5376 * lisp.h (map_char_table): Declare added arg.
5377
5378 * fns.c (map_char_table): New arg TABLE gets the master table.
5379 All calls changed.
5380 Process default and inheritance, resorting to Faref if necessary.
5381
5382 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5383 (Faccessible_keymaps): Pass new arg to map_char_table.
5384
5385 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5386
5387 * casetab.c (set_case_table): Pass new arg to map_char_table.
5388
5389 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5390
5391 * lisp.h (specbinding_func): New typedef.
5392 (struct specbinding): Use specbinding_func, to put the `volatile'
5393 in the right place.
5394
5395 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5396 to avoid GCC warning.
5397
5398 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5399
5400 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5401
5402 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5403
5404 * keyboard.c (apply_modifiers): Don't fill the other cache.
5405
5406 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5407
5408 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5409
5410 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5411 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5412 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5413 (Fset_window_configuration, Fcurrent_window_configuration)
5414 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5415 (Fpos_visible_in_window_p, mark_window_cursors_off)
5416 (window_internal_height, window_internal_width, Frecenter)
5417 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5418 (replace_buffer_in_all_windows, init_window_once, init_window)
5419 (syms_of_window, keys_of_window): Move from lisp.h.
5420 * lisp.h: Move window.c declarations to window.h.
5421
5422 * bytecode.c: Include window.h.
5423 * emacs.c: Include window.h.
5424
5425 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5426 (keyremap): Add `parent' field.
5427 (keyremap_step): Use it. Remove `parent' argument.
5428 (read_key_sequence): Setup and use the new `parent' field.
5429
5430 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5431
5432 * keyboard.c (adjust_point_for_property): Ensure termination.
5433
5434 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5435
5436 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5437 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5438 duplicated handling of function-key-map and key-translation-map
5439 in read_key_sequence.
5440 (read_key_sequence): Use them.
5441
5442 * keyboard.c (adjust_point_for_property): Try harder to move point
5443 to the non-sticky end of an invisible property.
5444
5445 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5446 property intangible as well.
5447
5448 2003-05-10 Andreas Schwab <schwab@suse.de>
5449
5450 * xmenu.c (single_menu_item): Change last parameter to void* to
5451 avoid warning.
5452
5453 2003-05-09 Richard M. Stallman <rms@gnu.org>
5454
5455 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5456 Bind Qinhibit_modification_hooks to t so there will be no GC.
5457 Rename local `tem' to `save_deactivate_mark'.
5458
5459 * eval.c (specpdl_ptr): Declare volatile.
5460 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5461 before doing the work of unbinding it.
5462
5463 * lisp.h (struct specbinding): Declare elements volatile.
5464 (specpdl_ptr): Declare volatile.
5465
5466 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5467
5468 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5469 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5470
5471 2003-05-08 Dave Love <fx@gnu.org>
5472
5473 * coding.c (Vlast_coding_system_used): Doc fix.
5474
5475 2003-05-07 Jason Rumney <jasonr@gnu.org>
5476
5477 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5478 when system does not support them.
5479
5480 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5481
5482 * fileio.c (Qwrite_region_annotate_functions): New var.
5483 (build_annotations): Use it to process the global part of the hook.
5484 (syms_of_fileio): Init and staticpro it.
5485
5486 * keyboard.c (safe_run_hooks_error): Display a message instead of
5487 silently ignoring the error.
5488
5489 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5490
5491 * keyboard.c (input_available_signal): Mark static.
5492 (menu_bar_items): Use map_keymap.
5493 (menu_bar_one_keymap): Remove.
5494 (menu_bar_item): Adjust arglist (for use in map_keymap).
5495 Properly hide a second binding when not both are keymaps.
5496
5497 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5498 (single_keymap_panes): Use it and map_keymap.
5499 (single_menu_item): Use skp as well.
5500
5501 * keymap.h (map_keymap_function_t): New type.
5502 (map_keymap): Declare.
5503
5504 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5505 (map_keymap_call, Fmap_keymap): New functions.
5506 (syms_of_keymap): Defsubr map-keymap.
5507
5508 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5509
5510 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5511 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5512 ..._with_mnemonic functions for menu items.
5513
5514 2003-05-01 Kenichi Handa <handa@m17n.org>
5515
5516 * coding.c (coding_system_accept_latin_extra_p): Delete this
5517 function.
5518 (find_safe_codings): Pay attention to
5519 the property tranlsation-table-for-encode of each codings.
5520 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5521
5522 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5523
5524 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5525
5526 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5527
5528 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5529
5530 * lisp.h (CHECK): Wrap args in parenthesis.
5531 (specbind): Fix doc: symbol = Qnil is not supported any more.
5532
5533 * bytecode.c (Fbyte_code) <unwind-protect>:
5534 Use Fprogn rather than 0 and Qnil.
5535
5536 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5537 `double', and `triple' modifiers as well.
5538
5539 2003-04-30 Richard M. Stallman <rms@gnu.org>
5540
5541 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5542
5543 * alloc.c (abort_on_gc): New variable.
5544 (Fgarbage_collect): Abort if abort_on_gc is set.
5545
5546 * lisp.h (abort_on_gc): Add decl.
5547
5548 * eval.c (Fsignal): Clear abort_on_gc.
5549
5550 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
5551 Reinit FORMAT_START and END before second scan.
5552
5553 * xdisp.c (move_it_vertically_backward): Do the final big else
5554 even if nlines is 0.
5555
5556 * xdisp.c (redisplay_internal): Finish the per-frame loop
5557 even if redisplay is suspended by input.
5558
5559 2003-04-24 Andrew Choi <akochoi@shaw.ca>
5560
5561 * macterm.c (x_list_fonts): Return all fonts that match if
5562 maxnames = -1.
5563
5564 2003-04-25 Kenichi Handa <handa@m17n.org>
5565
5566 * syntax.c (skip_chars): Fix previous change.
5567
5568 2003-04-24 Kenichi Handa <handa@m17n.org>
5569
5570 * syntax.c (skip_chars): Make the code faster by using the common
5571 technique of *p, *stop, and *endp.
5572
5573 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5574
5575 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
5576 tool_bar_items so GTK tool bar expose callback does not access items
5577 being updated.
5578
5579 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5580
5581 * eval.c (Fapply): Undo last change and add a comment about why.
5582
5583 2003-04-18 Miles Bader <miles@gnu.org>
5584
5585 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5586 pickier PARSE_MULTIBYTE_SEQ.
5587
5588 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5589
5590 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5591 Use XCDR, XCAR, CONSP.
5592 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5593 (Fapply): Remove unnecessary GCPRO.
5594
5595 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5596
5597 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5598
5599 * buffer.h: Don't hardcode BEG==1.
5600
5601 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5602
5603 2003-04-16 Richard M. Stallman <rms@gnu.org>
5604
5605 * xdisp.c (try_window, try_window_reusing_current_matrix):
5606 When at end of window, set window_end_pos to Z-ZV.
5607
5608 * buffer.c (Foverlay_recenter): Doc fix.
5609
5610 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5611
5612 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5613
5614 2003-04-14 Andrew Choi <akochoi@shaw.ca>
5615
5616 * macterm.c (mac_check_for_quit_char): Don't check more often than
5617 once a second.
5618
5619 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5620
5621 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5622 specially, so that they can't hide an implicit switch-frame event.
5623 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5624 (head_table): Use switch-frame as event_kind for select-window.
5625 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5626
5627 * editfns.c (Fformat): Lisp_Object/int mixup.
5628 (format2): Remove unused var numargs.
5629
5630 2003-04-11 Kenichi Handa <handa@m17n.org>
5631
5632 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
5633 (Qafter_insert_file_set_coding): New variable.
5634 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5635 for after-insert-file-adjust-coding-function.
5636 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5637 instead of Vafter_insert_file_adjust_coding_function.
5638
5639 2003-04-11 Kenichi Handa <handa@m17n.org>
5640
5641 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5642
5643 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5644 string. Callers changed.
5645
5646 2003-04-10 Kenichi Handa <handa@m17n.org>
5647
5648 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
5649 (syms_of_fileio): Declare it as a lisp variable.
5650 (Finsert_file_contents):
5651 Call Vafter_insert_file_adjust_coding_function before calling
5652 decode-format.
5653
5654 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5655
5656 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5657 get GtkAdjustment as widget now is a GtkRange.
5658
5659 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5660 GtkRange to avoid memory leak.
5661
5662 2003-04-09 Kenichi Handa <handa@m17n.org>
5663
5664 * xfaces.c (Vface_font_rescale_alist): New variable.
5665 (struct font_name): New member rescale_ratio.
5666 (font_rescale_ratio): New function.
5667 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
5668 (better_font_p): On comparing point sized, pay attention to
5669 recale_ratio member of fonts.
5670 (build_scalable_font_name): Reflect font->rescale_ratio in the
5671 font name.
5672 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
5673
5674 * lread.c (read1): Before calling index, check if the 2nd
5675 arguemnt is in ASCII range.
5676
5677 2003-04-08 Richard M. Stallman <rms@gnu.org>
5678
5679 * fileio.c (Ffile_symlink_p): Doc fix.
5680
5681 * editfns.c (Fformat): Translate positions of text properties
5682 in the format string to apply them to the result.
5683
5684 * fileio.c (Finsert_file_contents): Doc fix.
5685 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5686
5687 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
5688
5689 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5690
5691 2003-04-08 Steven Tamm <steventamm@mac.com>
5692
5693 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5694 that self-contained application finds libexec files.
5695
5696 2003-04-08 Kenichi Handa <handa@m17n.org>
5697
5698 * coding.c (code_convert_region_unwind):
5699 Set Vlast_coding_system_used to the argument.
5700 (code_convert_region): If post-read-conversion function changed
5701 the value of last-coding-sytem, keep the new value in
5702 coding->symbol so that it won't be overridden.
5703 (run_pre_post_conversion_on_str): Likewise.
5704 (coding_system_accept_latin_extra_p): New function.
5705 (find_safe_codings): Pay attention to characters registered in
5706 latin-extra-code-table.
5707
5708 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5709
5710 * Makefile.in (md5.o): Add missing dependency info.
5711
5712 2003-04-06 Richard M. Stallman <rms@gnu.org>
5713
5714 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5715
5716 * marker.c (verify_bytepos): New function.
5717
5718 * intervals.c (set_intervals_multibyte_1): When becoming
5719 multibyte, adjust right and left child sizes to a whole set of
5720 characters. If an interval gets zero total-length, delete it.
5721 If an interval consists of just its children, delete one of them.
5722
5723 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5724 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
5725
5726 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5727 All calls deleted.
5728 (lisp_malloc): Do the work here directly.
5729
5730 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5731
5732 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5733 char tables.
5734
5735 2003-04-04 Kenichi Handa <handa@m17n.org>
5736
5737 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5738 destructively change "%S" to "%s".
5739
5740 2003-04-03 Miles Bader <miles@gnu.org>
5741
5742 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5743 always set.
5744
5745 2003-04-01 Dave Love <fx@gnu.org>
5746
5747 * xfns.c (xpm_lookup_color): Grok "opaque".
5748
5749 2003-03-31 Andrew Choi <akochoi@shaw.ca>
5750
5751 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5752 parent window ID.
5753
5754 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5755
5756 * macterm.h (struct mac_output): Define x_pixels_diff and
5757 y_pixels_diff.
5758
5759 2003-03-31 Juanma Barranquero <lektu@terra.es>
5760
5761 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5762 blockinput.h and files included from it.
5763
5764 2003-03-31 Kim F. Storm <storm@cua.dk>
5765
5766 The following changes consolidates the common code related to
5767 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5768 files into frame.c.
5769
5770 * frame.c: Include blockinput.h.
5771 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5772 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5773 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5774 related vars here.
5775 (struct frame_parm_table, frame_parms): New table for describing
5776 frame parameters and their associated Q-variable.
5777 The order of the parameters corresponds to the sequence of the
5778 frame_parm_handlers table in redisplay_interface.
5779 (x_fullscreen_move, x_set_frame_parameters)
5780 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5781 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5782 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5783 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5784 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5785 Generic functions for processing of frame parameters.
5786 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5787 (display_x_get_resource, x_get_resource_string): Functions for
5788 generic access to X resources.
5789 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5790 (x_default_parameter, Fx_parse_geometry): Functions for generic
5791 access to frame parameters.
5792 (x_figure_window_size): Generic calculation of frame size.
5793 Fixed to add space needed for tool bar. Also setup size_hint_flags.
5794 (syms_of_frame): Intern and staticpro frame parameter variables.
5795 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5796 Defsubr Sx_get_resource and Sx_parse_geometry.
5797
5798 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5799 parameter related vars defined in frame.c.
5800 (EMACS_CLASS): Define here.
5801 (enum FULLSCREEN_*): Define here.
5802 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5803 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5804 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5805 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5806 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5807 (x_set_visibility, x_set_autoraise, x_set_autolower)
5808 (x_set_unsplittable, x_set_vertical_scroll_bars)
5809 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5810 (x_figure_window_size): Add prototypes.
5811
5812 * dispextern.h (frame_parm_handler): New typedef.
5813 (struct redisplay_interface): New member frame_parm_handlers.
5814 (enum resource_types): Move declaration here.
5815 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5816 (x_default_parameter): Add prototypes.
5817
5818 * window.c: Remove extern decl for frame parameter vars.
5819 (change_window_heights): New generic function;
5820 replaces x_change_window_heights. All users changed.
5821
5822 * window.h (change_window_heights): Add prototype.
5823
5824 * xfaces.c: Remove extern decl for frame parameter vars.
5825
5826 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5827 (struct w32_display_info): Fix type of xrdb member.
5828 (enum FULLSCREEN_*): Remove.
5829 Remove prototypes for generic functions (in frame.h).
5830
5831 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5832 parameters now defined in frame.h and frame.c.
5833 (Vx_resource_name): Remove. Use generic var.
5834 (enum x_frame_parms): Remove (bogus, unused enum).
5835 (check_x_display_info): Make non-static (for frame.c).
5836 (struct x_frame_parm_table, x_frame_parms): Remove.
5837 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5838 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5839 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5840 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5841 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5842 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5843 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5844 Remove. Use generic functions instead.
5845 (enum resource_types): Remove.
5846 (x_set_scroll_bar_default_width): New global function (for frame.c).
5847 (Fx_create_frame): Depend on x_figure_window_size to add space for
5848 toolbar and setup size_hint_flags.
5849 (x_frame_parm_handlers): New table for redisplay_interface.
5850 (syms_of_xfns): Don't intern/staticpro removed vars.
5851
5852 * xterm.c: Remove unnecessary extern declarations.
5853 (x_fullscreen_adjust): Remove. Use generic instead.
5854 (x_redisplay_interface): Add x_frame_parm_handlers member.
5855
5856 * w32gui.h (XrmDatabase): New (dummy) typedef.
5857
5858 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5859 (struct w32_display_info): Fix type of xrdb member.
5860 (enum FULLSCREEN_*): Remove.
5861 (x_fullscreen_adjust): Remove prototype.
5862
5863 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5864 parameters now defined in frame.h and frame.c.
5865 (Vx_resource_name): Remove. Use generic var.
5866 (enum x_frame_parms): Remove (bogus, unused enum).
5867 (check_x_display_info): Make non-static (for frame.c).
5868 (struct x_frame_parm_table, x_frame_parms): Remove.
5869 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5870 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5871 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5872 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5873 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5874 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5875 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5876 Remove. Use generic functions instead.
5877 (enum resource_types): Remove.
5878 (x_set_scroll_bar_default_width): New global function (for frame.c).
5879 (Fx_create_frame): Depend on x_figure_window_size to add space for
5880 toolbar and setup size_hint_flags.
5881 (w32_frame_parm_handlers): New table for redisplay_interface.
5882 (syms_of_w32fns): Don't intern/staticpro removed vars.
5883
5884 * w32term.c: Remove unnecessary extern declarations.
5885 (x_fullscreen_adjust): Remove. Use generic instead.
5886 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5887
5888 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5889
5890 * macgui.h (XrmDatabase): New (dummy) typedef.
5891
5892 * macterm.h (EMACS_CLASS): Remove.
5893 (struct mac_display_info): Add xrdb member.
5894 (struct mac_output): Add want_fullscreen member.
5895
5896 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5897 parameters now defined in frame.h and frame.c.
5898 (Vx_resource_name): Remove. Use generic var.
5899 (check_x_display_info): Make non-static (for frame.c).
5900 (struct x_frame_parm_table, x_frame_parms): Remove.
5901 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5902 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5903 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5904 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5905 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5906 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5907 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5908 Remove. Use generic functions instead.
5909 (enum resource_types): Remove.
5910 (x_set_scroll_bar_default_width): New global function (for frame.c).
5911 (mac_frame_parm_handlers): New table for redisplay_interface.
5912 (syms_of_macfns): Don't intern/staticpro removed vars.
5913
5914 * macterm.c: Remove unnecessary extern declarations.
5915 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5916
5917 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5918 included from it (atimer.h and systime.h).
5919
5920 2003-03-30 Andreas Schwab <schwab@suse.de>
5921
5922 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5923 parameters for shift_glyphs_for_insert.
5924
5925 * macterm.c (x_redisplay_interface): Add missing entry for
5926 draw_vertical_window_border.
5927
5928 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5929
5930 * fileio.c (Fexpand_file_name): In the no-handler case, after
5931 expanding, look again for a handler and invoke it. This is needed
5932 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5933 expansion produces "/user@host:/bar/../baz" which needs to be
5934 expanded again for the finame result "/user@host:/baz".
5935
5936 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5937
5938 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5939 of area to be redrawn for better performance.
5940
5941 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5942
5943 * xterm.c (take_vertical_position_into_account): Remove.
5944 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5945 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5946 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5947 (x_set_toolkit_scroll_bar_thumb): Simplify.
5948 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5949 (XTread_socket): Remove unused var.
5950 (x_make_frame_invisible): Replace goto with else.
5951
5952 * xdisp.c (set_vertical_scroll_bar): New fun.
5953 (redisplay_window): Use it.
5954
5955 2003-03-26 Richard M. Stallman <rms@gnu.org>
5956
5957 * xdisp.c (update_tool_bar): Recompute tool bar if
5958 update_mode_lines is set. Set w->update_mode_line
5959 only if the tool bar contents actually change.
5960 (update_menu_bar): Undo previous change.
5961
5962 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5963
5964 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5965 (xg_frame_set_char_size): Calculate scroll bar width before frame
5966 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5967 (xg_separator_p): Check for all documented separator types.
5968 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5969 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5970
5971 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5972 so tool bar gets updated.
5973
5974 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5975
5976 * data.c (store_symval_forwarding): Re-instate part of the code
5977 that was deleted with too much enthusiasm.
5978
5979 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5980
5981 * data.c (store_symval_forwarding): Delete special read-only
5982 hack for type == -1, since we now use ->constant instead.
5983 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5984
5985 * buffer.c (overlays_in): Declare static.
5986 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5987 `constant' field rather than the variable's `type' field.
5988
5989 2003-03-24 Andrew Choi <akochoi@shaw.ca>
5990
5991 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5992
5993 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5994
5995 * fns.c [MAC_OSX]: Do not redefine vector.
5996
5997 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5998
5999 * macgui.h: Remove definition of No_Cursor.
6000
6001 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
6002
6003 * xdisp.c: Define No_Cursor.
6004 (x_write_glyphs, notice_overwritten_cursor)
6005 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6006 (note_mouse_highlight): Remove Mac-specific code.
6007 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
6008
6009 2003-03-24 John Paul Wallington <jpw@gnu.org>
6010
6011 * xdisp.c (redisplay_window): If mini window's buffer is not
6012 empty, then redisplay it like other windows.
6013
6014 2003-03-23 Kim F. Storm <storm@cua.dk>
6015
6016 * w32term.c (w32_draw_window_cursor): Fix last change.
6017
6018 2003-03-23 Kenichi Handa <handa@m17n.org>
6019
6020 * alloc.c (make_string_from_bytes, make_specified_string):
6021 Add `const' for the arg CONTENTS.
6022
6023 * lisp.h (make_string_from_bytes, make_specified_string):
6024 Prototypes adjusted.
6025
6026 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6027
6028 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
6029
6030 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6031 (XG_SB_RANGE): New define.
6032
6033 * gtkutil.c (xg_fixed_handle_expose): New function.
6034 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6035 expose events.
6036 (xg_update_scrollbar_pos): Take two more arguments, left and width
6037 of scroll bar including borders.
6038 Clear left and right part outside scroll bar separately as some
6039 themes have bars that are not an even number of pixels.
6040 Don't set reallocate_redraws, don't call
6041 gdk_window_process_all_updates.
6042 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6043 so no need to change it. Calculate size and value with XG_SB_RANGE.
6044
6045 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6046 Pass left and width of scroll bar including borders to
6047 xg_update_scrollbar_pos.
6048
6049 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6050
6051 * Makefile.in: Make sure space precedes end-of-line backslashes.
6052
6053 2003-03-22 Kim F. Storm <storm@cua.dk>
6054
6055 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6056 Add generic versions here. Remove system specific versions
6057 defined elsewhere.
6058
6059 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6060 Add prototypes.
6061
6062 * xterm.h (STORE_NATIVE_RECT): New macro.
6063
6064 2003-03-21 Kim F. Storm <storm@cua.dk>
6065
6066 * xdisp.c (get_glyph_string_clip_rect):
6067 Use FRAME_INTERNAL_BORDER_WIDTH.
6068
6069 * dispextern.h (struct redisplay_interface): Add active_p
6070 argument to draw_window_cursor member. All uses changed.
6071
6072 2003-03-21 Kim F. Storm <storm@cua.dk>
6073
6074 The following changes consolidate code related to writing and
6075 inserting glyphs, exposing frame, the tool bar, the mouse face,
6076 the output cursor, and help echo from xterm.c, w32term.c and
6077 macterm.c into xdisp.c. It also generalizes the use of the
6078 window_part enum instead of using numeric values throughout.
6079
6080 * xdisp.c: Consolidate gui-independent code here.
6081 Include keymap.h.
6082 (Qhelp_echo): Import.
6083 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6084 (help_echo_string, help_echo_window, help_echo_object)
6085 (previous_help_echo_string, help_echo_pos): Declare here.
6086 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6087 (estimate_mode_line_height): Define here. Handle windowing
6088 systems directly (without using estimate_mode_line_height_hook).
6089 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6090 (update_window_cursor, update_cursor_in_window_tree)
6091 (fast_find_position, fast_find_string_pos)
6092 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6093 (expose_area, expose_line, expose_overlaps, expose_window)
6094 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6095 declared static as they are only used locally in xdisp.c.
6096 (draw_glyphs): Rename from x_draw_glyphs and make static.
6097 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6098 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6099 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
6100 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
6101 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6102 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6103 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6104 (note_mouse_highlight, x_clear_window_mouse_face)
6105 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6106 (x_intersect_rectangles): New generic functions for use by xdisp.c
6107 and GUI front-ends.
6108 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6109 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6110
6111 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6112 (NativeRectangle): Generic typedef for rectangle type.
6113 (enum window_part): Move here from window.c.
6114 (struct redisplay_interface): New members flush_display_optional,
6115 define_frame_cursor, clear_frame_area, draw_window_cursor,
6116 draw_vertical_window_border, shift_glyphs_for_insert.
6117 Rename member clear_mouse_face to clear_window_mouse_face.
6118 (estimate_mode_line_height_hook): Remove hook.
6119 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6120 (tool_bar_item_info): Remove prototype.
6121 (help_echo_string, help_echo_window, help_echo_object)
6122 (previous_help_echo_string, help_echo_pos)
6123 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6124 (x_stretch_cursor_p, output_cursor): Declare extern.
6125 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6126 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6127 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6128 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6129 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6130 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6131 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6132 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6133 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6134 Add prototypes.
6135 (mode_line_string, marginal_area_string): Fix prototypes.
6136
6137 * window.c (enum window_part): Move to dispextern.h.
6138 (coordinates_in_window): Use enum window_part member names
6139 instead of numbers to describe return value.
6140 (struct check_window_data): Change part member to window_part.
6141 (check_window_containing): Return window_part unaltered.
6142 (window_from_coordinates): Change part arg from int to enum
6143 window_part. Allow part arg to be null. All users changed.
6144
6145 * window.h (window_from_coordinates): Fix prototype.
6146
6147 * term.c (estimate_mode_line_height): Move to xdisp.c.
6148
6149 * keyboard.c (make_lispy_event): Use enum window_part.
6150
6151 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6152 window_part instead of int in arg list. Users changed.
6153
6154 * xterm.h (No_Cursor): Declare as None for X.
6155 (struct mac_output): Replace member cross_cursor by hand_cursor.
6156
6157 * xterm.c: Remove consolidated defines and code.
6158 (BETWEEN): Remove unused macro.
6159 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6160 (x_define_frame_cursor, x_clear_frame_area)
6161 (x_draw_window_cursor): New X-specific functions for RIF.
6162 (x_redisplay_interface): Add new members.
6163
6164 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6165
6166 * w32term.h (struct w32_output): Remove cross_cursor member.
6167
6168 * w32term.c: Remove consolidated defines and code.
6169 (BETWEEN): Remove unused macro.
6170 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6171 (w32_define_frame_cursor, w32_clear_frame_area)
6172 (w32_draw_window_cursor): New W32-specific functions for RIF.
6173 (w32_redisplay_interface): Add new members.
6174
6175 * w32gui.h (No_Cursor): Define as 0 for W32.
6176 (XRectangle): Add X compatible rectangle type.
6177 (NativeRectangle): Declare as RECT for W32.
6178 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6179
6180 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6181
6182 * w32console.c: Remove consolidated defines and code.
6183
6184 * msdos.h (Display_Info): Add generic typedef.
6185
6186 * msdos.c: Remove consolidated defines and code.
6187 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6188
6189 * macterm.h (struct mac_output): Replace member cross_cursor by
6190 hand_cursor.
6191 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6192
6193 * macterm.c: Remove consolidated defines and code.
6194 (BETWEEN): Remove unused macro.
6195 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6196 (mac_define_frame_cursor, mac_clear_frame_area)
6197 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6198 (x_redisplay_interface): Add new members.
6199
6200 * macgui.h (No_Cursor): Define as 0 for Mac.
6201 (XRectangle): Add X compatible rectangle type.
6202 (NativeRectangle): Declare as Rect for Mac.
6203 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6204
6205 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6206 (x_set_cursor_color): Use x_display_and_set_cursor.
6207
6208 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6209 included from it. Add dependency on keymap.h.
6210
6211 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6212
6213 2003-03-21 Kenichi Handa <handa@m17n.org>
6214
6215 * fileio.c (Fexpand_file_name): Fix previous change.
6216
6217 2003-03-19 Kenichi Handa <handa@m17n.org>
6218
6219 * fileio.c (Ffile_name_directory): Reconstruct file name by
6220 make_specified_string.
6221 (Ffile_name_nondirectory, Ffile_name_as_directory)
6222 (Fdirectory_file_name, Fexpand_file_name)
6223 (Fsubstitute_in_file_name): Likewise.
6224 (Fread_file_name): Compare decoded homedir with DIR and
6225 DEFAULT_FILENAME.
6226
6227 * alloc.c (make_specified_string): If NCHARS is negative, count
6228 the number of characters.
6229
6230 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6231
6232 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6233 all widgets.
6234
6235 * gtkutil.h: Removed xg_ignore_next_thumb.
6236
6237 2003-03-18 Kenichi Handa <handa@m17n.org>
6238
6239 * coding.c (Vchar_coding_system_table): Remove this variable.
6240 (Vcoding_system_safe_chars): New variable.
6241 (intersection): Remove this function.
6242 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6243 all codings in SAFE_CODINGS.
6244 (Ffind_coding_systems_region_internal): Adjust for the change of
6245 find_safe_codings. Get generic coding systems from
6246 Vcoding_system_safe_chars.
6247 (Fdefine_coding_system_internal): New function.
6248 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6249 Initialize and staticpro Vcoding_system_safe_chars.
6250
6251 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6252
6253 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6254 equal old values before updating.
6255
6256 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6257
6258 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6259
6260 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6261
6262 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6263 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6264 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6265 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6266 (xg_create_scroll_bar): Pass bar to button event callback.
6267 (xg_find_top_left_in_fixed): New function.
6268 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6269 whole scroll bar area. Get old position with
6270 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6271 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6272 dragging is in progress. Calculate whole as for Motif.
6273 Remove code that saved last values. Call gtk_range functions to
6274 set scroll bar sizes.
6275
6276 * gtkutil.h: Removed xg_ignore_next_thumb.
6277
6278 2003-03-17 Juanma Barranquero <lektu@terra.es>
6279
6280 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6281 and files included from it.
6282
6283 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6284
6285 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6286 multiple occurrences of the same keymap under different prefixes.
6287 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6288
6289 2003-03-16 Jason Rumney <jasonr@gnu.org>
6290
6291 * w32gui.h: Use HDC for Display.
6292
6293 * w32term.c (w32_encode_char): Prevent double-byte chars from
6294 crashing Emacs.
6295
6296 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6297 as binary.
6298
6299 2003-03-16 Juanma Barranquero <lektu@terra.es>
6300
6301 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6302
6303 2003-03-16 Kim F. Storm <storm@cua.dk>
6304
6305 The following changes consolidate some of the gui-independent
6306 parts of the processing and drawing of "glyph strings" from
6307 xterm.c, w32term.c, and macterm.c into xdisp.c.
6308
6309 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6310 21 bits (this reduces number of faces from 4M to 2M).
6311 Replace W32 specific w32_font_type member (2 bits) by generic
6312 font_type member (3 bits) for portability.
6313 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6314 (enum draw_glyphs_face): Define here.
6315 (struct glyph_string): Define here. Merge W32 and X versions.
6316 (struct redisplay_interface): New members per_char_metric,
6317 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6318 (VCENTER_BASELINE_OFFSET): Define here.
6319 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6320 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6321
6322 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6323 (dump_glyph_string): Moved here.
6324 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6325 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6326 (fill_composite_glyph_string, fill_glyph_string)
6327 (fill_image_glyph_string, fill_stretch_glyph_string)
6328 (left_overwritten, left_overwriting, right_overwritten)
6329 (right_overwriting, get_char_face_and_encoding)
6330 (set_glyph_string_background_width, compute_overhangs_and_x)
6331 (append_glyph, append_composite_glyph, produce_image_glyph)
6332 (take_vertical_position_into_account, append_stretch_glyph)
6333 (produce_stretch_glyph): New generic functions (based on X version).
6334 Call platform specific functions through rif.
6335 (INIT_GLYPH_STRING): New macro, hides W32 details.
6336 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6337 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6338 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6339 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6340 (notice_overwritten_cursor):
6341 Generic functions exported to platform modules. Users changed.
6342
6343 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6344 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6345 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6346 New macros for consolidated code.
6347
6348 * xterm.c: Remove consolidated defines and code.
6349 (x_per_char_metric, x_encode_char)
6350 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6351 (x_redisplay_interface): Add new members.
6352
6353 * w32gui.h (Display): Add dummy typedef for consolidation.
6354 (XChar2b): Define alias for wchar_t for consolidation.
6355 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6356
6357 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6358 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6359 New macros for consolidation.
6360
6361 * w32term.c: Remove consolidated defines and code.
6362 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6363 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6364 (w32_per_char_metric): Change font_type arg to int for RIF.
6365 (w32_encode_char): Return int according to RIF requirements.
6366 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6367 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6368 x_get_glyph_overhangs.
6369 (w32_redisplay_interface): Add new members.
6370
6371 * macgui.h (XChar2b): Move typedef here for consolidation.
6372 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6373
6374 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6375 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6376 consolidation.
6377
6378 * macterm.c: Remove consolidated defines and code.
6379 (mac_per_char_metric): New function for RIF.
6380 (mac_encode_char): Adapt to new RIF requirements.
6381 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6382 (x_redisplay_interface): Add new members.
6383
6384 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6385
6386 * keymap.c (Vmenu_events): New var.
6387 (syms_of_keymap): Initialize it.
6388 (where_is_internal): Check more carefully what is a menu event.
6389
6390 2003-03-14 Richard M. Stallman <rms@gnu.org>
6391
6392 * lread.c (read1): After #!, exit loop on eof.
6393
6394 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6395
6396 * gtkutil.h: Add declaration for xg_frame_cleared.
6397
6398 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6399
6400 * gtkutil.c (struct xg_last_sb_pos): New structure.
6401 (handle_fixed_child): New function.
6402 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6403 and force a redraw on them.
6404 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6405 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6406 so we can avoid unneeded redraws.
6407 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6408 and force a redraw on the scroll bar.
6409 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6410 if xg_last_sb_pos shows the positions are up to date.
6411 (xg_frame_cleared): New function.
6412
6413 2003-03-13 Kenichi Handa <handa@m17n.org>
6414
6415 * coding.c (Fdetect_coding_region): Fix docstring.
6416 (Fdetect_coding_string): Fix docstring.
6417
6418 2003-03-13 Andreas Schwab <schwab@suse.de>
6419
6420 * gtkutil.c: Add prototype for create_menus.
6421
6422 * data.c (long_to_cons): Fix type of top.
6423
6424 * xselect.c (selection_data_to_lisp_data): Use int instead of
6425 long for an integer of size 4.
6426
6427 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6428 (xg_tool_bar_help_callback): Likewise.
6429
6430 2003-03-12 Andreas Schwab <schwab@suse.de>
6431
6432 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6433
6434 2003-03-12 Kim F. Storm <storm@cua.dk>
6435
6436 The following changes consolidate the fringe handling from
6437 xterm.c, w32term.c, and macterm.c into xdisp.c.
6438
6439 * xdisp.c: Consolidate fringe handling code here.
6440 (left_bits, right_bits, continued_bits, continuation_bits)
6441 (ov_bits, zv_bits): Define fringe bitmaps.
6442 (fringe_bitmaps): New array holding fringe bitmaps.
6443 (draw_fringe_bitmap): Draw a specific bitmap; call display
6444 specific drawing routine via rif->draw_fringe_bitmap.
6445 (draw_row_fringe_bitmaps): Generic replacement for
6446 x_draw_row_fringe_bitmaps; all callers changed.
6447 (compute_fringe_widths): Generic replacement for
6448 x_compute_fringe_widths; all callers changed.
6449
6450 * dispextern.h (enum fringe_bitmap_type): Define here.
6451 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6452 (fringe_bitmaps): Declare extern.
6453 (struct redisplay_interface): New member draw_fringe_bitmap.
6454 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6455
6456 * xterm.c: Remove generic fringe code.
6457 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6458 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6459
6460 * w32term.c: Remove generic fringe code.
6461 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6462 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6463
6464 * macterm.c: Remove generic fringe code.
6465 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6466 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6467
6468 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6469
6470 * print.c (Fprin1_to_string): Return unibyte string if possible.
6471
6472 2003-03-09 David Kastrup <dak@gnu.org>
6473
6474 * process.c (read_process_output): We have allocated enough space
6475 for readmax and carryover, so actually use the alloted space.
6476
6477 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6478
6479 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6480 toolkit scrollbar click.
6481
6482 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6483 for USE_GTK.
6484 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6485 also.
6486 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6487 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6488
6489 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6490
6491 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6492 (xg_tool_bar_item_expose_callback): New function.
6493 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6494 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6495 on the tool bar widget.
6496 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6497 to expose on the tool bar item widgets.
6498
6499 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6500
6501 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6502 struct image* when deciding to update (struct image* may have been
6503 deleted from the image cache).
6504
6505 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6506 the event isn't for a frame (i.e. for dialogs).
6507
6508 2003-03-07 Kenichi Handa <handa@m17n.org>
6509
6510 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6511 composition components reaches the limit, terminate composing.
6512 (COMPOSITION_OK): New macro.
6513 (detect_coding_iso2022): Use it if an escape sequence for
6514 composition is found.
6515 (coding_restore_composition): Adjust the number of composition
6516 components if it is not sane.
6517
6518 2003-03-06 Juanma Barranquero <lektu@terra.es>
6519
6520 * w32term.h (struct w32_display_info): Add xrdb member to support
6521 passing resources via -xrm on Windows.
6522
6523 * w32term.c (w32_make_rdb): New function.
6524 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6525 struct. Delete leftover code.
6526
6527 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6528 for resources passed on the command line.
6529
6530 * w32reg.c (w32_get_rdb_resource): New function.
6531 (x_get_string_resource): Use it, so resources passed with -xrm
6532 supercede the ones in the registry.
6533
6534 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6535
6536 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6537 instead of x_top_window_to_frame.
6538
6539 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6540
6541 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6542 when restarting Emacs.
6543
6544 2003-03-03 Richard M. Stallman <rms@gnu.org>
6545
6546 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6547 to run kill-buffer-query-functions.
6548 (Qkill_buffer_query_functions): New var.
6549 (syms_of_buffer): Init and staticpro it.
6550
6551 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6552
6553 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6554
6555 2003-02-25 Kim F. Storm <storm@cua.dk>
6556
6557 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6558 If centering point failed to make whole line visible and vscroll
6559 is non-zero, disable vscroll and try centering point again.
6560
6561 * lread.c (read1): Accept `single space' syntax like (? x).
6562
6563 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6564
6565 * keyboard.c (cancel_hourglass_unwind): Surround with
6566 #ifdef HAVE_X_WINDOWS
6567
6568 2003-02-25 Kenichi Handa <handa@m17n.org>
6569
6570 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6571 process only when "subprocesses" is defined.
6572
6573 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6574
6575 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6576
6577 2003-02-24 Juanma Barranquero <lektu@terra.es>
6578
6579 * callint.c (fix_command): Declare as static void and move before
6580 Fcall_interactively.
6581
6582 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6583 (syms_of_xdisp): Don't initialize Qwhen.
6584
6585 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6586
6587 * keyboard.c (cancel_hourglass_unwind): New function.
6588 (command_loop_1): Cancel hourglass with unwind-protect.
6589
6590 2003-02-23 Richard M. Stallman <rms@gnu.org>
6591
6592 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6593 Detect (when ... (region-beginning)) etc.
6594 (Fcall_interactively): Call fix_command.
6595 (Qif, Qwhen): New variables.
6596 (syms_of_callint): Init and staticpro them.
6597
6598 * regex.c (print_partial_compiled_pattern): Output to stderr.
6599
6600 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6601
6602 * dired.c (directory_files_internal): Don't expand directory.
6603 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6604 instead. From Lars Hansen <larsh@math.ku.dk>.
6605
6606 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6607
6608 * fns.c (string_to_multibyte): Remove unused var i.
6609 (Flanginfo): Fix int/Lisp_Object mixup.
6610 (void_call2): New fun.
6611 (Fmap_char_table): Use it in place of call2.
6612
6613 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6614
6615 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6616
6617 * keymap.c (copy_keymap_1): Make it static.
6618
6619 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6620
6621 2003-02-22 David Ponce <david@dponce.com>
6622
6623 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6624
6625 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6626
6627 * process.h: Removed subtty field from struct Lisp_Process.
6628
6629 * process.c (create_process): Remove setting of subtty.
6630 (emacs_get_tty_pgrp): New function.
6631 (Fprocess_running_child_p, process_send_signal):
6632 Call emacs_get_tty_pgrp instead of ioctl.
6633 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6634
6635 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6636
6637 * keymap.c (Fdefine_key): Doc fix.
6638
6639 2003-02-21 Juanma Barranquero <lektu@terra.es>
6640
6641 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6642
6643 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6644 POLLING_PROBLEM_IN_SELECT.
6645
6646 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6647 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6648
6649 * s/hpux10-20.h: New file.
6650
6651 * process.c (wait_reading_process_input):
6652 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
6653
6654 2003-02-20 Kenichi Handa <handa@m17n.org>
6655
6656 * fontset.c (check_fontset_name): If NAME is nil, return the
6657 default fontset.
6658 (override_font_info): New function.
6659 (Fset_fontset_font): Document that NAME nil means the default fontset.
6660 (Ffontset_info): If FONTSET is not the default fontset, merge
6661 FONTSET onto the copy of the default fontset, and work on that
6662 copy. Document that NAME nil means the default fontset.
6663 (Ffontset_font): Document that NAME nil means the default fontset.
6664
6665 * process.c (setup_process_coding_systems): If the process's
6666 in/out descriptor is -1, do nothing.
6667
6668 2003-02-19 Andreas Schwab <schwab@suse.de>
6669
6670 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6671 Add prototypes.
6672
6673 2003-02-19 Kenichi Handa <handa@m17n.org>
6674
6675 * xfaces.c (try_alternative_families): Try all scalable fonts if
6676 Vscalable_fonts_allowed is not Qt.
6677
6678 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6679
6680 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6681
6682 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6683
6684 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6685 names.
6686
6687 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
6688 (sorted_font_list): Move allocation of struct font_name to
6689 x_face_list_fonts.
6690 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6691 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6692
6693 2003-02-18 Kim F. Storm <storm@cua.dk>
6694
6695 * lread.c (read1): Fix last change.
6696 "`" is not always special. Allow "?" after a character constant.
6697
6698 2003-02-18 Andrew Choi <akochoi@shaw.ca>
6699
6700 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6701
6702 2003-02-18 Andreas Schwab <schwab@suse.de>
6703
6704 * window.c (window_scroll_pixel_based): Move outside a
6705 multi-glyph character before setting new window start.
6706
6707 * xdisp.c (in_display_vector_p): New function.
6708 * dispextern.h (in_display_vector_p): Declare.
6709
6710 2003-02-18 Kim F. Storm <storm@cua.dk>
6711
6712 * lread.c (read1): Fix and relax read syntax.
6713 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6714 Only recognize "," after dotted-pair dot if inside backquote.
6715 Never include "`" or "," (inside backquote) in a symbol.
6716 Allow dotted-pair dot after a character constant.
6717 Allow "`" and "," (inside backquote) after a character constant.
6718
6719 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6720
6721 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6722 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6723 icons. Set name of tool bar to emacs-toolbar.
6724 (update_frame_tool_bar): Connect expose event to
6725 xg_tool_bar_expose_callback.
6726
6727 2003-02-17 Richard M. Stallman <rms@gnu.org>
6728
6729 * keyboard.c (this_command_key_count_reset): New variable.
6730 Initiatize to 0 where this_command_key_count is set.
6731 (read_char): Save and restore this_command_key_count_reset
6732 around input method code.
6733 (read_char): If this_command_key_count_reset, echo reread commands.
6734 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6735
6736 2003-02-17 Kenichi Handa <handa@m17n.org>
6737
6738 * fns.c (string_to_multibyte): Always return a multibyte string.
6739
6740 2003-02-16 Jason Rumney <jasonr@gnu.org>
6741
6742 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6743 Negative max_fonts parameter means list all.
6744
6745 2003-02-14 Dave Love <fx@gnu.org>
6746
6747 * fns.c (Flanginfo): Doc fix.
6748
6749 2003-02-13 Kim F. Storm <storm@cua.dk>
6750
6751 * lread.c (read_escape): Interpret \s as a SPACE character, except
6752 for \s-X in a character constant which still is the super modifier.
6753 (read1): Signal an `invalid read syntax' error if a character
6754 constant is immediately followed by a digit or symbol character.
6755
6756 * search.c (Fmatch_data): Doc fix. Explicitly state that
6757 match-data is undefined if last search failed.
6758
6759 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6760 All uses changed.
6761
6762 2003-02-12 Juanma Barranquero <lektu@terra.es>
6763
6764 * eval.c (Fdefmacro): Fix typo.
6765
6766 2003-02-12 Kim F. Storm <storm@cua.dk>
6767
6768 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6769 macro is a string, convert meta modifiers in string when copying
6770 the string into a vector.
6771
6772 2003-02-11 Kim F. Storm <storm@cua.dk>
6773
6774 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6775
6776 2003-02-11 Kenichi Handa <handa@m17n.org>
6777
6778 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6779
6780 2003-02-10 Kim F. Storm <storm@cua.dk>
6781
6782 * process.c: Doc fixes.
6783 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6784
6785 2003-02-10 Kenichi Handa <handa@m17n.org>
6786
6787 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6788
6789 * process.c (QCfilter_multibyte): New variable.
6790 (setup_process_coding_systems): New function.
6791 (Fset_process_buffer, Fset_process_filter):
6792 Call setup_process_coding_systems.
6793 (Fstart_process): Initialize the member `filter_multibyte' of
6794 struct Lisp_Process.
6795 (create_process): Call setup_process_coding_systems.
6796 (Fmake_network_process): New keyward `:filter-multibyte'.
6797 Initialize the member `filter_multibyte' of struct Lisp_Process.
6798 Call setup_process_coding_systems.
6799 (server_accept_connection): Call setup_process_coding_systems.
6800 (read_process_output): If the process has a filter, decide the
6801 multibyteness of a string to given to the filter by
6802 `filter_multibyte' member of the process. If the process doesn't
6803 have a filter and the result of conversion is unibyte, use
6804 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6805 multibyte form.
6806 (Fset_process_coding_system): Call setup_process_coding_systems.
6807 (Fset_process_filter_multibyte): New function.
6808 (Fprocess_filter_multibyte_p): New function.
6809 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6810 Defsubr Sset_process_filter_multibyte and
6811 Sprocess_filter_multibyte_p.
6812
6813 * process.h (struct Lisp_Process): New member filter_multibyte.
6814
6815 * lisp.h (setup_process_coding_systems): Add prototype.
6816
6817 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6818 process, update coding systems for the process.
6819
6820 2003-02-09 Kenichi Handa <handa@m17n.org>
6821
6822 * fns.c (string_to_multibyte): New function.
6823 (Fstring_to_multibyte): New function.
6824 (syms_of_fns): Defsubr it.
6825
6826 2003-02-08 Andreas Schwab <schwab@suse.de>
6827
6828 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6829 instead of the substitution.
6830
6831 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6832
6833 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6834
6835 * xmenu.c (menu_position_func): Adjust menu popup position so that
6836 the menu is fully visible.
6837
6838 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6839
6840 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
6841 (x_make_frame_invisible, x_wm_set_icon_position):
6842 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
6843
6844 * xfns.c (x_set_name, x_set_title): Ditto.
6845
6846 2003-02-04 Richard M. Stallman <rms@gnu.org>
6847
6848 * keyboard.c (echo_now): Update before_command_echo_length.
6849 (Freset_this_command_lengths): Reset this_command_key_count etc.
6850 immediately rather than arranging to do it later.
6851 (before_command_key_count_1, before_command_echo_length_1)
6852 (before_command_restore_flag): Vars deleted.
6853 (add_command_key): Don't handle before_command_restore_flag.
6854 (read_char, record_menu_key): Don't update before_command_key_count or
6855 before_command_echo_length.
6856 (read_char): Don't handle before_command_restore_flag.
6857
6858 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6859 in direct-output clauses if it wouldn't be called in the ordinary case.
6860
6861 2003-02-04 Kim F. Storm <storm@cua.dk>
6862
6863 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6864
6865 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6866
6867 * gtkutil.c (remove_from_container): Copying list is not needed.
6868 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6869 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6870 on list returned from gtk_container_get_children to avoid memory leak.
6871
6872 2003-02-01 Jason Rumney <jasonr@gnu.org>
6873
6874 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6875 local malloc.
6876 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6877 definitions in xpm.h.
6878 (init_xpm_functions): New function.
6879 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
6880 (init_external_image_libraries): Try to load libXpm.dll.
6881
6882 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6883 timestamp.
6884
6885 2003-01-31 Dave Love <fx@gnu.org>
6886
6887 * syntax.c (Fskip_chars_forward)
6888 (open-paren-in-column-0-is-defun-start): Doc fix.
6889
6890 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6891
6892 * fileio.c: Support // at start of name for Cygwin (just added proper
6893 preprocessor tests).
6894
6895 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6896
6897 * Makefile.in: Use @EXEEXT@ for Cygwin.
6898
6899 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6900
6901 * s/cygwin.h: Added for Cygwin port.
6902
6903 2003-01-31 Juanma Barranquero <lektu@terra.es>
6904
6905 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6906 when including gif_lib.h.
6907 (init_gif_functions, init_tiff_functions): New functions.
6908 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6909 Windows. Disable color table lookups. Call library functions
6910 through pointers determined at runtime.
6911 (init_external_image_libraries): Try to load libungif.dll and
6912 libtiff.dll.
6913
6914 2003-01-31 Kenichi Handa <handa@m17n.org>
6915
6916 * xdisp.c (SKIP_GLYPHS): New macro.
6917 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
6918
6919 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6920
6921 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
6922
6923 2003-01-30 Dave Love <fx@gnu.org>
6924
6925 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6926 (Fgarbage_collect): Use them.
6927 (init_alloc, syms_of_alloc): Set them up.
6928
6929 2003-01-30 Juanma Barranquero <lektu@terra.es>
6930
6931 * w32fns.c (init_external_image_libraries): Add missing operator.
6932
6933 2003-01-29 Jason Rumney <jasonr@gnu.org>
6934
6935 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6936 an alternative name for jpeg.dll.
6937
6938 2003-01-29 Kenichi Handa <handa@m17n.org>
6939
6940 * xdisp.c (set_cursor_from_row): Pay attention to string display
6941 properties.
6942
6943 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6944
6945 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6946 <escape>.
6947 (keycode_to_xkeysym_table): Reformat and add more comments.
6948 (XTread_socket): Drop special case for backspace.
6949
6950 2003-01-28 Andrew Choi <akochoi@shaw.ca>
6951
6952 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6953 values in old-style RGB specs.
6954
6955 2003-01-27 Juanma Barranquero <lektu@terra.es>
6956
6957 * w32fns.c (init_external_image_libraries): Try alternate names for the
6958 jpeg dll.
6959
6960 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6961
6962 * gtkutil.c (create_dialog, xg_separator_p)
6963 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6964 before calling strcmp or strlen.
6965
6966 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6967
6968 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6969 and handle image load failure.
6970
6971 2003-01-26 Jason Rumney <jasonr@gnu.org>
6972
6973 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6974 New functions.
6975 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6976 Disable color table lookups. Call jpeg library functions
6977 through pointers determined at runtime.
6978 (init_external_image_libraries): Try to load jpeg.dll.
6979
6980 2003-01-25 Richard M. Stallman <rms@gnu.org>
6981
6982 * lisp.h: Declare format2 instead of format1.
6983
6984 * fileio.c (barf_or_query_if_file_exists):
6985 Call format2 instead of format1.
6986
6987 * editfns.c (format2): New function, replaces format1
6988 but takes exactly two Lisp Objects as format args.
6989
6990 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6991
6992 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6993
6994 * xterm.h: Change to return value of x_dispatch_event to int.
6995
6996 * xterm.c (x_filter_event): New function.
6997 (event_handler_gdk, XTread_socket): Call x_filter_event.
6998 (x_dispatch_event): Change to return value of finish.
6999 (event_handler_gdk): Use return value from x_dispatch_event.
7000
7001 * xfns.c (x_window): Call create_frame_xic for GTK version to
7002 initialize input methods.
7003
7004 * gtkutil.h: Add (void) prototypes.
7005
7006 * gtkutil.c (create_menus): Remove code that puts the help menu to
7007 the right.
7008
7009 2003-01-25 Jason Rumney <jasonr@gnu.org>
7010
7011 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7012 [HAVE_PNG]: Sync with xfns.c version.
7013 (png_load): Adjust colors for Windows. Use Windows
7014 bitmaps. Disable color table lookups.
7015 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7016 (init_png_functions): New function.
7017 (png_read_from_memory, png_load): Call png library functions
7018 through pointers determined at runtime.
7019 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7020 (init_external_image_libraries): New function.
7021 (init_xfns): Call it.
7022
7023 2003-01-24 Andreas Schwab <schwab@suse.de>
7024
7025 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7026
7027 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7028
7029 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7030 of static initializer.
7031
7032 2003-01-24 Dave Love <fx@gnu.org>
7033
7034 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7035 architectures.
7036
7037 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7038 Use __alignof__.
7039
7040 2003-01-24 Kenichi Handa <handa@m17n.org>
7041
7042 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
7043 It it is nonzero, don't pretend that an invisible area doesn't exist.
7044 (command_loop_1): Call adjust_point_for_property with proper
7045 second arg.
7046
7047 2003-01-22 Jason Rumney <jasonr@gnu.org>
7048
7049 Sync changes with xterm.c and xfns.c.
7050
7051 * w32term.c (x_draw_glyph_string_foreground)
7052 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7053
7054 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7055 phys_cursor's hpos is overwritten. This is still not completely
7056 correct, as it doesn't really make sense to use hpos at all to
7057 get the cursor glyph (as that is relative to the width of the
7058 characters on the line, which may have changed during the update).
7059
7060 * w32term.c (notice_overwritten_cursor): Handle the special case
7061 of the cursor being in the first blank non-text line at the
7062 end of a window.
7063
7064 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7065 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7066 Compute from the x position returned by x_draw_glyphs.
7067
7068 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7069 except for NO_CURSOR and system caret, to make phys_cursor_width
7070 contain what its name suggests.
7071 (notice_overwritten_cursor): Consider the cursor image erased if
7072 the output area intersects the cursor image in y-direction.
7073
7074 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7075 note_mode_line_highlight and extend.
7076
7077 * w32term.c (last_window): New variable.
7078 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7079 (note_mouse_movement): Remove reimplemented code in #if 0.
7080
7081 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7082 not update_mode_lines, and always set it to 1.
7083
7084 2003-01-21 Jason Rumney <jasonr@gnu.org>
7085
7086 * w32fns.c (IDC_HAND): Define it if system headers don't.
7087
7088 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7089
7090 * w32term.h (struct w32_output): New member hand_cursor.
7091 (WM_EMACS_SETCURSOR): New message definition.
7092
7093 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7094 function w32_define_cursor.
7095 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7096 position, change member name output_data.x to output_data.w32 and
7097 add function w32_define_cursor.
7098 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7099 and change member name output_data.x to output_data.w32.
7100 (w32_initialize_display_info):
7101 Setup dpyinfo->vertical_scroll_bar_cursor.
7102
7103 * w32fns.c (Vx_hand_shape): New variable.
7104 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7105 WM_EMACS_SETCURSOR.
7106 (x-create-frame): Setup Cursor types.
7107
7108 2003-01-21 David Ponce <david@dponce.com>
7109
7110 * w32term.c (w32_encode_char): For DIM=1 charset, set
7111 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
7112 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7113 2002-09-30.)
7114 (w32_draw_relief_rect): Declare all args.
7115 (w32_define_cursor): New.
7116
7117 * w32fns.c (w32_load_cursor): New function.
7118 (w32_init_class): Use it.
7119 (x_put_x_image): Declare all args.
7120
7121 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7122
7123 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7124
7125 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7126
7127 * gtkutil.c: Must include stdio.h before termhooks.h
7128
7129 2003-01-21 Dave Love <fx@gnu.org>
7130
7131 * alloc.c (Fgc_status): Print zombie list.
7132 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7133 Fix assignment of zombies.
7134 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7135 Don't take car of non-cons.
7136
7137 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7138
7139 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7140
7141 2003-01-20 David Ponce <david@dponce.com>
7142
7143 * w32menu.c (digest_single_submenu): Declare all args.
7144
7145 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7146 changes in xmenu.c:
7147
7148 (parse_single_submenu): Use individual keymap's prompt
7149 string as pane name, if there is one.
7150 (set_frame_menubar): Save menu_items_n_panes from each call to
7151 parse_single_submenu and use it when calling digest_single_submenu.
7152
7153 2003-01-20 Steven Tamm <steventamm@mac.com>
7154
7155 * macterm.c (XTread_socket): Checks for valid, visible window
7156 before sending a scroll-wheel event.
7157
7158 2003-01-20 Richard M. Stallman <rms@gnu.org>
7159
7160 * xdisp.c (redisplay_window): If mini window's buffer is not
7161 a minibuffer, then redisplay it like other windows.
7162
7163 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7164
7165 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7166 external tool bar before setting tool bar height.
7167
7168 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7169
7170 * xterm.c (handle_one_xevent): Surround popup_activated
7171 with #ifdef:s for non-toolkit version.
7172
7173 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7174 (gtkutil.o): New file.
7175 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7176 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7177
7178 * gtkutil.c: New file for GTK version.
7179
7180 * gtkutil.h: New file for GTK version.
7181
7182 * xterm.h: Add xt_or_gtk_widget.
7183 Include gtk files for USE_GTK.
7184 (struct x_output): Add toolbar_height.
7185 (struct x_output): Add GTK widgets and Gdk size_hints.
7186 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7187 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7188 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7189
7190 * xterm.c: Include gtkutil.h for USE_GTK.
7191 Declare extern void free_frame_menubar for USE_GTK.
7192 (note_mouse_highlight): Check popup_activated for USE_GTK.
7193 (xt_action_hook): Don't compile if USE_GTK.
7194 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7195 (xg_scroll_callback): New function.
7196 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7197 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7198 for USE_GTK.
7199 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7200 xg_show_scroll_bar for USE_GTK.
7201 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7202 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7203 (event_handler_gdk): New function for USE_GTK.
7204 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7205 (handle_one_xevent): Make sure widget is mapped before
7206 calling x_real_positions for USE_GTK.
7207 (XTread_socket): Add GTK event loop for USE_GTK.
7208 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7209 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7210 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7211 (x_iconify_frame): Add code for USE_GTK.
7212 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7213 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7214 is in gtkutil.c.
7215 (x_term_init): Add initialization for GTK.
7216 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7217
7218 * xmenu.c: Include gtkutil.h for USE_GTK.
7219 (Fx_popup_menu): Use current position if x and y is NIL.
7220 (single_menu_item, single_menu_item, Fx_popup_dialog):
7221 Check for USE_GTK.
7222 (popup_widget_loop): New function for USE_GTK.
7223 (x_activate_menubar): Add code for USE_GTK.
7224 (popup_activate_callback, popup_deactivate_callback)
7225 (menu_highlight_callback, menubar_selection_callback):
7226 Add USE_GTK versions.
7227 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7228 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7229 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7230 is in gtkutil.c.
7231 (popup_selection_callback): New version for USE_GTK.
7232 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7233 one USE_X_TOOLKIT version.
7234 (xmenu_show): Call create_and_show_popup_menu.
7235 (dialog_selection_callback): New version for USE_GTK.
7236 (create_and_show_dialog): New fuction, one USE_GTK version and
7237 one USE_X_TOOLKIT version.
7238 (xdialog_show): Call create_and_show_dialog.
7239
7240 * xfns.c: Include gtkutil for USE_GTK.
7241 (x_window_to_frame, x_any_window_to_frame)
7242 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7243 (x_top_window_to_frame): Add code for USE_GTK.
7244 (x_set_background_color): Call xg_set_background_color for GTK.
7245 (x_set_menu_bar_lines): Check for USE_GTK.
7246 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7247 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7248 (x_window): Call xg_create_frame_widgets for USE_GTK.
7249 (Fx_create_frame): Check for USE_GTK
7250 (Fx_file_dialog): New implementation for USE_GTK.
7251
7252 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7253 (update_menu_bar): Add check for USE_GTK.
7254 (update_tool_bar): Add check for USE_GTK and external tool bar.
7255 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7256 (redisplay_internal): Add check for USE_GTK and popup_activated.
7257 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7258 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7259 (display_menu_bar): Add check for USE_GTK
7260
7261 * lisp.h: Declare Vx_resource_name extern.
7262
7263 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7264 for USE_GTK.
7265 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7266
7267 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7268 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7269 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7270
7271 * fileio.c (Fread_file_name): Add check for USE_GTK.
7272
7273 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7274 Add check for USE_GTK.
7275
7276 * config.in: Added HAVE_GTK
7277
7278 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7279
7280 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7281
7282 * charset.h (Funibyte_char_to_multibyte): Export.
7283
7284 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7285
7286 * xmenu.c (mouse_position_for_popup): New function.
7287 (Fx_popup_menu): Call mouse_position_for_popup for X and
7288 mouse_position_hook for others.
7289
7290 2003-01-17 Kim F. Storm <storm@cua.dk>
7291
7292 * editfns.c (Finsert): Mention `string-make-multibyte' and
7293 `string-as-multibyte' in doc string.
7294
7295 2003-01-17 Kenichi Handa <handa@m17n.org>
7296
7297 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7298
7299 * editfns.c (Fformat): Convert an unibyte char argument that is
7300 formatted by "%c" to multibyte if the total result must be a
7301 multibyte string.
7302
7303 2003-01-16 Kim F. Storm <storm@cua.dk>
7304
7305 * process.c (set-process-filter): Document unibyte/multibyte-ness
7306 of string argument.
7307
7308 2003-01-16 Kenichi Handa <handa@m17n.org>
7309
7310 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7311
7312 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7313 (re_search_2): Likewise.
7314
7315 2003-01-15 Kenichi Handa <handa@m17n.org>
7316
7317 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7318 buffer is unibyte.
7319
7320 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7321
7322 * fns.c (Fsubstring): Clarify doc string.
7323
7324 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7325 (Fprevious_char_property_change)
7326 (Fnext_single_char_property_change)
7327 (Fprevious_single_char_property_change, Fnext_property_change)
7328 (Fnext_single_property_change, Fprevious_property_change)
7329 (Fprevious_single_property_change, Fadd_text_properties)
7330 (Fput_text_property, Fset_text_properties)
7331 (Fremove_text_properties, Fremove_list_of_text_properties)
7332 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7333
7334 2003-01-14 Kim F. Storm <storm@cua.dk>
7335
7336 * process.h (struct Lisp_Process): New member plist replaces old
7337 member private_vars. All uses changed.
7338
7339 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7340 (QCplist): Rename from QCvars. Change all uses.
7341 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7342 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7343 (syms_of_process): Intern, staticpro, defsubr these.
7344 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7345
7346 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7347
7348 * m/delta.h: Remove (obsolete).
7349
7350 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7351
7352 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7353 behaviour in front of symlinks.
7354 (Fdelete_file): Raise an error on directories.
7355
7356 2003-01-13 Dave Love <fx@gnu.org>
7357
7358 * fns.c (Freverse): Use QUIT.
7359
7360 2003-01-13 Richard M. Stallman <rms@gnu.org>
7361
7362 * minibuf.c (minibuffer_completion_contents):
7363 Error if point is inside prompt.
7364
7365 * keyboard.c (command_loop_1): Don't redisplay directly
7366 if there's a post-command-hook.
7367
7368 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7369 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7370
7371 2003-01-12 Kim F. Storm <storm@cua.dk>
7372
7373 * process.h (struct Lisp_Process): New member private_vars.
7374
7375 * process.c (QCvars): New variable.
7376 (syms_of_process): Intern and staticpro it.
7377 (Fset_process_contact): Removed function.
7378 (Fprocess_variable, Fset_process_variable): New functions.
7379 (syms_of_process): Defsubr them.
7380 (Fstart_process): Initialize private_vars plist to nil.
7381 (Fmake_network_process): New arg :vars to setup the private
7382 variables for new network process.
7383 (server_accept_connection): Copy server's private variables to
7384 client process.
7385
7386 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7387 crashes). Code rewritten and simplified. Now directly aligns the
7388 pointer and recalculates pure_bytes_used, rather than aligning the
7389 size and adjusting the pointer.
7390
7391 2003-01-11 Kim F. Storm <storm@cua.dk>
7392
7393 * process.c (Fset_process_contact): New function.
7394 (syms_of_process): defsubr it.
7395 (make-network-process): Update doc.
7396
7397 2003-01-10 Andreas Schwab <schwab@suse.de>
7398
7399 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7400 Reported by Berthold Gunreben <b.gunreben@web.de>.
7401
7402 2003-01-10 Dave Love <fx@gnu.org>
7403
7404 * composite.c (syms_of_composite): Make composition_hash_table weak.
7405
7406 2003-01-09 Kim F. Storm <storm@cua.dk>
7407
7408 * process.c (Fmake_network_process): Convert new port number
7409 to host byte order for `:service t' case. From Mario Lang.
7410
7411 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7412
7413 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7414 instead of XtAppProcessEvent.
7415
7416 * xterm.c (handle_one_xevent): New function.
7417 (x_dispatch_event): New function.
7418 (XTread_socket): Call handle_one_xevent.
7419
7420 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7421
7422 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7423 call XQueryPointer to get coordinates.
7424 (popup_get_selection): Do not set popup_activated_flag to zero,
7425 let popup_deactivate_callback do that. Needed for Motif.
7426 Call x_dispatch_event instead of XtDispatchEvent.
7427 (xmenu_show): Calculate root coordinate from frame top/left position.
7428
7429 2003-01-08 Kim F. Storm <storm@cua.dk>
7430
7431 * process.c (server_accept_connection): Fix recording of new
7432 connection's local address in :local property of contact info.
7433 (Fmake_network_process): Record local network address for new
7434 client processes in :local property of contact info.
7435 (format-network-address): Add arg OMIT-PORT. Change callers.
7436
7437 2003-01-07 Dave Love <fx@gnu.org>
7438
7439 * Makefile.in (fns.o): Depend on coding.h.
7440
7441 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
7442
7443 * minibuf.c (Fread_variable): Doc fix.
7444
7445 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7446 use the same test as for custom-variable-p.
7447
7448 2003-01-05 Richard M. Stallman <rms@gnu.org>
7449
7450 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7451 Count LAST_LINE_MISFIT in scroll margin for end of window.
7452 Move label too_near_end before setting SCROLL_MARGIN_POS.
7453 Set LAST_LINE_MISFIT before jumping there.
7454
7455 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7456 scroll_conservatively case. If scrolling that much doesn't change
7457 STARTP, move it down one line.
7458
7459 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7460 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7461
7462 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7463 selected frame.
7464
7465 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7466 (syms_of_keymap): staticpro them.
7467 (Fapropos_internal): Initialize them and clear them out.
7468 Don't GCPRO them.
7469
7470 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7471 Doc fixes.
7472
7473 * lisp.h: New misc type Lisp_Save_Value.
7474 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7475 (XSAVE_VALUE): New macro.
7476 (struct Lisp_Save_Value): New data type.
7477 (union Lisp_Misc): Add u_save_value alternative.
7478 (make_save_value): Declared.
7479
7480 * alloc.c (make_save_value): New function.
7481
7482 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7483 (x_catch_errors_unwind): Call XSync.
7484
7485 2003-01-01 Richard M. Stallman <rms@gnu.org>
7486
7487 * window.c (window_scroll_pixel_based): Partially undo last change.
7488
7489 * keyboard.c (command_loop_1): Call adjust_point_for_property
7490 in direct action cases for Qforward_char and Qbackward_char.
7491 Set already_adjusted so it won't be done twice.
7492
7493 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7494
7495 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7496 type definition of size_t.
7497
7498 2003-01-02 Steven Tamm <steventamm@mac.com>
7499
7500 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7501 distinguish Carbon GUI builds from X11 builds on darwin.
7502
7503 2002-12-30 Steven Tamm <steventamm@mac.com>
7504
7505 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7506 to default to t.
7507
7508 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7509
7510 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7511
7512 2002-12-28 Steven Tamm <steventamm@mac.com>
7513
7514 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7515 allow building in a different directory than source. Uses some
7516 GNU Make extensions, but there is no other make on Mac OS X.
7517
7518 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
7519
7520 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7521 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7522 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7523 (Fstring_to_number): Mention the returned value in the doc strings.
7524
7525 2002-12-23 Richard M. Stallman <rms@gnu.org>
7526
7527 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7528 <scroll-down-aggressively>: Doc fix.
7529
7530 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7531 string as pane name, if there is one.
7532 (set_frame_menubar): Save menu_items_n_panes from each call to
7533 parse_single_submenu and use it when calling digest_single_submenu.
7534
7535 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7536 Don't try to make last line fully visible if it is past end of window.
7537
7538 2002-12-22 Steven Tamm <steventamm@mac.com>
7539
7540 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7541 (mac_menu_show): Add support for hierarchical popup menus.
7542 (add_menu_item): Remove indentation support.
7543 (fill_submenu, fill_menu): Create hierarchical menus
7544 instead of using indentation.
7545
7546 2002-12-22 Richard M. Stallman <rms@gnu.org>
7547
7548 * xdisp.c (try_cursor_movement): Don't call try_window here.
7549 (redisplay_window): Never redisplay minibuffer when inactive.
7550
7551 * window.c (select_window_1): Undo 9/21 change.
7552
7553 2002-12-22 Steven Tamm <steventamm@mac.com>
7554
7555 * macterm.c (XTread_socket): Call KeyTranslate for control and
7556 meta to deal correctly shifted non-alpha characters, like C-S-5
7557 being treated like C-%. Does not look for shift key to deal
7558 with masking off control-key with mac-reverse-ctrl-meta.
7559
7560 2002-12-21 Richard M. Stallman <rms@gnu.org>
7561
7562 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7563 If it is non-nil, run timers. Use an unwind-protect to requeue
7564 the events that were read ahead.
7565 (popup_get_selection_unwind): New subroutine.
7566 (popup_get_selection_queue): File-scope variable now holds that queue.
7567 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7568 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7569 Use an unwind-protect to pop down the dialog box.
7570 (xdialog_show_unwind): New subroutine implements that.
7571
7572 * xdisp.c (row_containing_pos): Change exit test using last_y.
7573 (try_window_id): Abort if row_containing_pos returns null.
7574
7575 * lread.c (load_error_handler): New function.
7576 (Fload): Handle errors in Fsubstitute_in_file_name.
7577 Don't expect Fsignal to return.
7578
7579 * eval.c: Errors and throws work right with interrupt blocking.
7580 (struct catchtag): New elt interrupt_input_blocked.
7581 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7582 (internal_catch, Fcondition_case, internal_condition_case)
7583 (internal_condition_case_1, internal_condition_case_2): Save it.
7584 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
7585
7586 * editfns.c (Fformat): Add parens.
7587
7588 * dired.c (file_name_completion): Fix that change.
7589 Delete special quit-handling code; just use QUIT.
7590
7591 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
7592
7593 * dired.c (file_name_completion): Close directory on error
7594 just as in directory_files_internal.
7595
7596 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
7597
7598 * window.c (Fset_window_configuration): Set old_point to correct
7599 value when new_current_buffer == current_buffer.
7600
7601 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
7602
7603 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7604 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7605 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7606
7607 These changes were in part based upon suggestions made by Peter
7608 'Luna' Runestig [peter@runestig.com].
7609
7610 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7611 g_b_init_get_token_information, g_b_init_lookup_account_sid,
7612 g_b_init_get_sid_identifier_authority ): Add several static
7613 global variables.
7614
7615 * w32.c (globals_of_w32): New function. Used to initialize those
7616 global variables that must always be initialized on startup even
7617 when the global variable initialized is non zero. Its primary
7618 purpose at this time is to set the global variables
7619 g_b_init_is_windows_9x, g_b_init_open_process_token,
7620 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7621 g_b_init_get_sid_identifier_authority to 0 on startup.
7622 Called from main.
7623
7624 * w32.c (is_windows_9x): Perform initialization only if
7625 g_b_init_is_windows_9x is equal to 0. On initialization set
7626 g_b_init_is_windows_9x equal to 1.
7627
7628 * w32.c (open_process_token): Perform initialization only if
7629 g_b_init_open_process_token is equal to 0. On initialization set
7630 g_b_init_open_process_token equal to 1.
7631
7632 * w32.c (get_token_information): Perform initialization only if
7633 g_b_init_get_token_information is equal to 0. On initialization
7634 set g_b_init_get_token_information equal to 1.
7635
7636 * w32.c (lookup_account_sid): Perform initialization only if
7637 g_b_init_lookup_account_sid is equal to 0. On initialization
7638 set g_b_init_lookup_account_sid equal to 1.
7639
7640 * w32.c (get_sid_identifier_authority): Perform initialization
7641 only if g_b_init_get_sid_identifier_authority is equal to 0.
7642 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
7643
7644 * w32fns.c (globals_of_w32fns): New function. Used to initialize
7645 those global variables that must always be initialized on startup
7646 even when the global variable initialized is non zero.
7647 Its primary purpose at this time is to initialize the global variable
7648 track_mouse_event_fn.
7649
7650 * w32fns.c (w32_wnd_proc): Remove initialization of
7651 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
7652
7653 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
7654
7655 * w32menu.c (globals_of_w32menu): New function. Used to
7656 initialize those global variables that must always be initialized
7657 on startup even when the global variable initialized is non zero.
7658 Its primary purpose at this time is to initialize the global
7659 variables get_menu_item_info and set_menu_item_info.
7660
7661 * w32menu.c (initialize_frame_menubar): Remove initialization of
7662 get_menu_item_info and set_menu_item_info.
7663
7664 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
7665
7666 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7667 Declare them.
7668
7669 * emacs.c (main): Call globals_of_w32 prior to calling
7670 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7671 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7672 is defined.
7673
7674 * w32term.c (x_update_window_begin): Fix Windows API error
7675 detected by BoundsChecker. Test to determine if
7676 w32_system_caret_hwnd is NULL prior to attempting to use
7677 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
7678
7679 * w32term.c (x_update_window_end): Fix Windows API error
7680 detected by BoundsChecker. Test to determine if
7681 w32_system_caret_hwnd is NULL prior to attempting to use
7682 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
7683
7684 2002-12-17 Kenichi Handa <handa@m17n.org>
7685
7686 * coding.c (coding_system_require_warning): New variable.
7687 (syms_of_coding): DEFVAR it.
7688
7689 * coding.h (coding_system_require_warning): Extern it.
7690
7691 * fileio.c (choose_write_coding_system): Even if
7692 Vcoding_system_for_write is non-nil, if
7693 coding_system_require_warning is nonzero, call
7694 Vselect_safe_coding_system_function.
7695
7696 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
7697
7698 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7699 (lisp): Add font-core.
7700
7701 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
7702
7703 * textprop.c (text_read_only): New arg `propval'.
7704 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7705 (verify_interval_modification): Use text_read_only's new arg.
7706
7707 2002-12-13 Kenichi Handa <handa@m17n.org>
7708
7709 * coding.c (Funencodable_char_position): Set pend correctly.
7710
7711 2002-12-12 Jason Rumney <jasonr@gnu.org>
7712
7713 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7714 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7715 Be more careful about when help_events are generated.
7716
7717 2002-12-12 Steven Tamm <steventamm@mac.com>
7718
7719 * macterm.c (mac_check_for_quit_char): Correctly set the
7720 modifiers of the event to 0.
7721 * mac.c (sys_select): Duplicate rfds before calling select to
7722 ensure that rfds survive the while loop.
7723
7724 2002-12-11 Kim F. Storm <storm@cua.dk>
7725
7726 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7727 row_containing_pos returned NULL.
7728
7729 2002-12-10 Steven Tamm <steventamm@mac.com>
7730
7731 * mac.c (sys_read): Fix sys_read to not call select if IO is
7732 non-blocking.
7733 (sys_select): Fix sys_select to not use a timeout larger than
7734 the one given.
7735
7736 2002-12-10 Juanma Barranquero <lektu@terra.es>
7737
7738 * editfns.c (Fformat): Use alloca, not _alloca.
7739
7740 2002-12-09 Richard M. Stallman <rms@gnu.org>
7741
7742 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7743 as the last thing.
7744
7745 2002-12-09 Dave Love <fx@gnu.org>
7746
7747 * s/sol2-8.h: Removed. (Not necessary.)
7748
7749 2002-12-09 Matthew Swift <swift@alum.mit.edu>
7750
7751 * editfns.c (Fformat): Handle precision in string conversion
7752 specifiers like libc functions do (ie, print at most that many
7753 characters).
7754
7755 2002-12-08 Richard M. Stallman <rms@gnu.org>
7756
7757 * xdisp.c (row_containing_pos): Check more carefully
7758 whether charpos is really in the row before returning it.
7759
7760 2002-12-07 Steven Tamm <steventamm@mac.com>
7761
7762 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
7763
7764 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7765 each stack frame. This may change as it could be time consuming.
7766
7767 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7768 (init_quit_char_handler, mac_determine_quit_char_modifiers)
7769 (mac_initialize): Add code to check for pressing of quit_char
7770 in the OS event queue.
7771
7772 * mac.c (sys_select): Call mac_check_for_quit_char every second
7773 while blocking on select.
7774
7775 * mac.c (sys_read): Use sys_select to test for input first
7776 before calling read, to allow C-g to break.
7777
7778 2002-12-07 Richard M. Stallman <rms@gnu.org>
7779
7780 * minibuf.c (Fcompleting_read): Doc fix.
7781
7782 * lread.c (syms_of_lread) <load-history>: Doc fix.
7783
7784 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
7785
7786 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7787 autoload.
7788
7789 * data.c (Fdefalias): Record in load-history redefining an autoload.
7790
7791 * alloca.c: Undo ifdef change accidentally made on 12-04.
7792
7793 2002-12-06 Francesco Potorti` <pot@gnu.org>
7794
7795 * xfns.c (png_load): Avoid double gamma correction for PNG images.
7796
7797 2002-12-04 Richard M. Stallman <rms@gnu.org>
7798
7799 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
7800
7801 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
7802
7803 * alloca.c: Don't use #error.
7804
7805 2002-12-03 Dave Love <fx@gnu.org>
7806
7807 * buffer.c (Qucs_set_table_for_input): New.
7808 (Fget_buffer_create): Use it.
7809 (Qset_buffer_major_mode_hook): Deleted.
7810 (Fset_buffer_major_mode): Revert previous change.
7811 (init_buffer_once): Intern ucs-set-table-for-input.
7812 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7813 Add &Qucs_set_table_for_input.
7814
7815 2002-12-03 Andreas Schwab <schwab@suse.de>
7816
7817 * callint.c (Fcall_interactively): Use next_event only if less
7818 than key_count.
7819
7820 2002-12-02 Andrew Choi <akochoi@shaw.ca>
7821
7822 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7823 names to 255 characters.
7824
7825 * macterm.c (XTread_socket): If all frames have been collapsed,
7826 expand the first one before handling drag-and-drop events.
7827
7828 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7829 which is detected by autoconf.
7830
7831 2002-12-01 Steven Tamm <steventamm@mac.com>
7832
7833 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7834 offset in two hints table to allow prebinding to be redone and
7835 allow the executable to be stripped.
7836
7837 2002-11-29 Dave Love <fx@gnu.org>
7838
7839 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7840 already provided.
7841
7842 2002-11-29 Richard M. Stallman <rms@gnu.org>
7843
7844 * xdisp.c (start_display): Check more intelligently for
7845 whether the line is continued.
7846 (move_it_vertically_backward): Clear it->continuation_lines_width.
7847
7848 2002-11-28 Dave Love <fx@gnu.org>
7849
7850 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7851 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
7852
7853 2002-11-27 Steven Tamm <steventamm@mac.com>
7854
7855 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7856 more descriptive error output from lread.c:Fload upon most require
7857 cycles during boostrapping.
7858
7859 2002-11-27 Jason Rumney <jasonr@gnu.org>
7860
7861 * fileio.c (Finsert_file_contents): Give a more appropriate error
7862 for files bigger than 2Gb when off_t is 32 bit.
7863
7864 * dired.c (Ffile_attributes): Don't return negative file sizes for
7865 files bigger than 2Gb when off_t is 32 bit.
7866
7867 2002-11-27 Dave Love <fx@gnu.org>
7868
7869 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7870
7871 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7872 Test GETPGRP_VOID instead.
7873 [BSD_TERMIOS]: Remove definitions (never used).
7874
7875 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7876 Don't define.
7877 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7878
7879 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
7880
7881 2002-11-25 Jason Rumney <jasonr@gnu.org>
7882
7883 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7884 supported.
7885
7886 2002-11-25 Dave Love <fx@gnu.org>
7887
7888 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
7889
7890 * Makefile.in (TEMACS_LDFLAGS): Update last change.
7891
7892 2002-11-25 Andreas Schwab <schwab@suse.de>
7893
7894 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
7895
7896 2002-11-24 Steven Tamm <steventamm@mac.com>
7897
7898 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7899 determine the size of pointers alloced in unexed space instead
7900 of using possibly invalid emacs_zone pointers. This fixes the
7901 binary incompatibility problems caused by updates to libSystem.B.
7902
7903 2002-11-24 Richard M. Stallman <rms@gnu.org>
7904
7905 * search.c (Fstring_match): Doc fix.
7906
7907 * callint.c (Fcall_interactively): If a command fails because
7908 `*' detects a read-only buffer, but RECORD_FLAG is set,
7909 record it anyway if the args don't actually do tty input.
7910
7911 2002-11-22 Dave Love <fx@gnu.org>
7912
7913 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
7914
7915 * keyboard.c (interrupt_signal): Provide forward declaration.
7916 (kbd_buffer_store_event): Don't declare interrupt_signal.
7917
7918 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
7919
7920 2002-11-21 Richard M. Stallman <rms@gnu.org>
7921
7922 * eval.c (interactive_p): Skip any number of bytecode
7923 and special form frames, in any order.
7924
7925 2002-11-20 Jason Rumney <jasonr@gnu.org>
7926
7927 * w32fns.c (convert_mono_to_color_image): New function.
7928 (xbm_load, xbm_load_image): Use it when foreground or background
7929 is explicitly set.
7930
7931 2002-11-19 Dave Love <fx@gnu.org>
7932
7933 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
7934
7935 2002-11-18 Jason Rumney <jasonr@gnu.org>
7936
7937 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7938 (XPutPixel): Swap blue and red.
7939 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7940 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7941 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7942 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
7943
7944 2002-11-18 Dave Love <fx@gnu.org>
7945
7946 * m/orion105.h (HAVE_ALLOCA): Don't define.
7947
7948 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
7949
7950 * m/intel386.h: Don't include alloca.h or define alloca.
7951
7952 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7953 malloc, realloc, calloc.
7954
7955 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7956 (bcmp): Don't define.
7957
7958 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
7959
7960 * m/amdahl.h: Don't define LIB_STANDARD.
7961
7962 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
7963
7964 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
7965
7966 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7967 Don't include alloca.h.
7968
7969 * s/aix3-2.h (HAVE_FSYNC): Don't define.
7970
7971 * regex.c (_GNU_SOURCE): Don't define.
7972
7973 * process.c (_GNU_SOURCE): Don't define.
7974
7975 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
7976
7977 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
7978
7979 * s/sol2-8.h: Include sol2-6.h.
7980
7981 2002-11-18 Miles Bader <miles@gnu.org>
7982
7983 * dispextern.h (struct face): Add `overstrike' field.
7984 * xterm.c (x_draw_glyph_string_foreground)
7985 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7986 * xfaces.c (load_face_font): Set `face->overstrike' based on
7987 result from choose_face_font.
7988 (best_matching_font, choose_face_font): Add `needs_overstrike'
7989 argument, and use it to return whether overstriking is desirable
7990 for this face/font combo.
7991 (set_font_frame_param: Pass new argument to choose_face_font.
7992
7993 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
7994
7995 This change is my fix for the following entry in etc/PROBLEMS:
7996 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7997 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7998
7999 * w32.c: Added wrapper functions around the win32 API functions
8000 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8001 GetSidIdentifierAuthority. These wrapper functions serve two
8002 purposes:
8003 1. They ensure that the wrapped function can never be called
8004 when Emacs is running on an operating system on which they are
8005 not supported (Microsoft Windows 95 / 98 / ME).
8006 2. They call the wrapped functions via function pointers rather
8007 than calling them directly. This avoids taking advantage of the
8008 undocumented fact that although these functions are not supported
8009 in the 9x branch of Microsoft Windows, the functions do exist in
8010 the version of advapi32.dll that is found in the 9x branch of
8011 Microsoft Windows.
8012
8013 * w32.c (init_user_info): Replace the calls to the win32 API
8014 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8015 and GetSidIdentifierAuthority with calls to the newly added
8016 wrapper functions.
8017
8018 * w32.h: Added extern declarations for the following functions:
8019 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8020 syms_of_w32menu, and void syms_of_fontset.
8021
8022 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
8023 function pointer track_mouse_event_fn in the handler for the
8024 WM_SETFOCUS message.
8025
8026 * w32menu.c (initialize_frame_menubar): Add code to
8027 reinitialize the function pointers set_menu_item_info and
8028 get_menu_item_info.
8029
8030 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8031
8032 * sound.c: Added a partial implementation of play-sound-internal
8033 for Microsoft Windows. Added various #ifdef / #else / #endif
8034 code blocks to separate the code that will compile under
8035 Microsoft Windows from the code that is specific to Gnu/Linux.
8036 Moved several blocks of code around to make this separation of code
8037 into Windows compatible and Gnu/Linux compatible code blocks easier.
8038
8039 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8040
8041 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8042 added support for play-sound-internal under Windows would be
8043 included in the build of Emacs.
8044
8045 2002-11-16 Jason Rumney <jasonr@gnu.org>
8046
8047 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
8048
8049 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
8050
8051 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
8052
8053 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8054 (adjust_point_for_property): Move out of display and invisible even if
8055 we were already inside before (in case a property was added while
8056 we weren't looking). Be more careful when handling invisible props.
8057 Skip invisible text as if it really wasn't there at all.
8058
8059 2002-11-15 Jason Rumney <jasonr@gnu.org>
8060
8061 * w32term.c (x_draw_image_foreground)
8062 (w32_draw_image_foreground_1): Use standard copy and invert
8063 operations to draw images.
8064
8065 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8066 depth of 1.
8067 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8068 (XPutPixel): Don't invert bits here.
8069
8070 2002-11-15 Jason Rumney <jasonr@gnu.org>
8071
8072 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8073 (w32_draw_image_foreground_1): Handle image masks.
8074 (x_draw_image_glyph_string): Don't BitBlt transparently.
8075
8076 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8077 (x_from_xcolors): Adjust RGB values for W32.
8078 (image_background, image_background_transparent)
8079 (postprocess_image, x_to_xcolors, x_disable_image)
8080 (x_build_heuristic_mask): Adapt for W32 and enable.
8081 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8082 (xbm_load): Remove unused variable.
8083
8084 2002-11-14 Richard M. Stallman <rms@gnu.org>
8085
8086 * buffer.c (syms_of_buffer): Doc fix.
8087
8088 2002-11-14 Dave Love <fx@gnu.org>
8089
8090 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
8091
8092 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8093 * xmenu.c (unuse_menu_items, digest_single_submenu):
8094 * xfns.c (x_put_x_image):
8095 * xdisp.c (message2_nolog, set_message):
8096 * undo.c (record_point):
8097 * terminfo.c (tparam):
8098 * syntax.c (scan_sexps_forward):
8099 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8100 * composite.c (update_compositions):
8101 * cm.c (calccost, cmgoto):
8102 * charset.c (c_string_width): Declare all args (per C99).
8103
8104 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
8105
8106 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8107 Don't declare.
8108
8109 * emacs.c (main) [!VMS]: Avoid third arg.
8110
8111 * fns.c (Fcopy_sequence): Doc fix.
8112 (Fmap_char_table): Cast `call2'.
8113
8114 2002-11-14 Francesco Potorti` <pot@gnu.org>
8115
8116 * s/sol2-8.h: New file.
8117
8118 2002-11-14 Kim F. Storm <storm@cua.dk>
8119
8120 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8121 dependency on `risky-local-variable' and the :propertize form.
8122
8123 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8124
8125 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8126
8127 * syntax.c (scan_sexps_forward): Undo last patch.
8128 Use a more obvious fix: check eob before updating the syntax table.
8129
8130 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8131
8132 * syntax.c (scan_sexps_forward): Update syntax table before reading
8133 a char rather than after so we don't update the table past eob.
8134
8135 2002-11-09 Dave Love <fx@gnu.org>
8136
8137 * buffer.c (Fset_buffer_major_mode): Fix last change.
8138
8139 * regex.c (regexec): Fix pmatch declaration.
8140
8141 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8142
8143 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8144 to self-inserting characters.
8145 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8146
8147 * coding.c (Vtranslation_table_for_input): New.
8148 (syms_of_coding): DEFVAR it.
8149
8150 2002-11-08 Juanma Barranquero <lektu@terra.es>
8151
8152 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8153 window.
8154
8155 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8156
8157 * process.c (Fformat_network_address): Remove unused locals p,
8158 cp, and i.
8159
8160 2002-11-06 Dave Love <fx@gnu.org>
8161
8162 * buffer.c (Qset_buffer_major_mode_hook): New.
8163 (Fset_buffer_major_mode): Use it.
8164
8165 2002-11-06 Richard M. Stallman <rms@gnu.org>
8166
8167 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8168 and stop_polling.
8169
8170 * process.c (wait_reading_process_input):
8171 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8172 Avoid initialization for auto Lisp_Object var.
8173
8174 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8175
8176 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8177
8178 2002-11-05 Richard M. Stallman <rms@gnu.org>
8179
8180 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8181
8182 * callint.c (Fcall_interactively): New local filter_specs.
8183 (Fcall_interactively): Check for progn as well as let.
8184 Add a gcpro.
8185 (Qprogn): New variable.
8186 (syms_of_callint): Staticpro and init Qprogn.
8187
8188 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8189
8190 * lread.c (Feval_buffer): Doc fix.
8191
8192 2002-11-04 Dave Love <fx@gnu.org>
8193
8194 * keyboard.c (read_char): Always translate iff
8195 Vkeyboard_translate_table is a char table and c is valid.
8196
8197 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8198 and fix C types.
8199
8200 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8201
8202 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8203
8204 * editfns.c (get_pos_property): Don't hardcode Qfield.
8205
8206 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8207 overlays. Also handle `invisible' prop.
8208
8209 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8210
8211 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8212 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8213
8214 2002-11-01 Andreas Schwab <schwab@suse.de>
8215
8216 * editfns.c (Fmessage): Revert last change to properly handle %%.
8217
8218 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8219
8220 * xmenu.c (unuse_menu_items): New fun.
8221 (menu_items_inuse): New var.
8222 (syms_of_xmenu): Initialize it.
8223 (init_menu_items): Use it to detect re-entrance.
8224 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8225 (Fx_popup_menu): Remove spurious XSETFRAME.
8226
8227 * editfns.c (find_field): Make an exception for nil fields.
8228
8229 2002-11-01 Dave Love <fx@gnu.org>
8230
8231 * m/gec63.h: Deleted.
8232
8233 2002-10-31 Dave Love <fx@gnu.org>
8234
8235 * xterm.c (XTread_socket): Fix last change.
8236 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8237
8238 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8239
8240 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8241
8242 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8243
8244 * editfns.c (overlays_around, get_pos_property): New funs.
8245 (find_field): Use them.
8246 Also be careful not to modify POS before its last use.
8247 (Fmessage): Don't Fformat if there's nothing to format.
8248
8249 2002-10-30 Dave Love <fx@gnu.org>
8250
8251 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8252 [HAVE_PTY_H]; Include pty.h.
8253
8254 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8255
8256 * xterm.c (Qeql): Declare.
8257 (Vx_keysym_table): New.
8258 (syms_of_xterm): Initialize it.
8259 (XTread_socket): Use it. Deal with ASCII keysyms.
8260 (XSetIMValues) [HAVE_X11R6]: Prototype.
8261
8262 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8263 (lispy_kana_keys): Comment out.
8264 (make_lispy_event) [XK_kana_A]: Comment out.
8265 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8266 Fix sprintf call.
8267
8268 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8269 regexp.h change).
8270 (TERMINFO, LIBS_TERMCAP): Define.
8271
8272 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8273 (bcmp): Define conditional on HAVE_BCMP.
8274 (NO_SIOCTL_H): Don't define.
8275 (TIOCSIGSEND): Don't make conditional on IRIX6.
8276
8277 * s/sol2-5.h: Don't include strings.h.
8278 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8279
8280 * s/irix6-0.h (IRIX6): Don't define.
8281 (bcopy, bcmp, bzero): Don't undef.
8282
8283 * s/irix6-5.h: Don't include strings.h.
8284 (IRIX6): Don't define.
8285 (bcopy, bcmp, bzero): Don't undef.
8286
8287 * syntax.c (Fforward_comment): Doc fix.
8288
8289 2002-10-29 Kim F. Storm <storm@cua.dk>
8290
8291 * process.c (Fsignal_process): Allow PROCESS to be specified by
8292 name in addition to pid (as integer or string).
8293
8294 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8295
8296 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8297 environments.
8298
8299 2002-10-27 Kim F. Storm <storm@cua.dk>
8300
8301 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8302
8303 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8304
8305 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8306
8307 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8308
8309 2002-10-26 Richard M. Stallman <rms@gnu.org>
8310
8311 * editfns.c (Fformat): Detect invalid format letters for floats.
8312
8313 2002-10-25 Kenichi Handa <handa@m17n.org>
8314
8315 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8316 (x_set_title): Likewise.
8317
8318 2002-10-25 Juanma Barranquero <lektu@terra.es>
8319
8320 * macgui.h:
8321 * w32gui.h: Remove definition of XColor.
8322
8323 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8324
8325 2002-10-24 Kim F. Storm <storm@cua.dk>
8326
8327 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8328 Callers changed (supply dummy arg).
8329
8330 * lisp.h (get_window_cursor_type): Update prototype.
8331
8332 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8333 get_window_cursor_type to track system caret.
8334
8335 2002-10-24 Kim F. Storm <storm@cua.dk>
8336
8337 * process.c (Fformat_network_address): New function.
8338 (syms_of_process): Defsubr it.
8339 (list_processes_1): Use it to format :local/:remote address if
8340 service/host is not set; before Emacs would crash in that case.
8341 (Fmake_network_process): Don't use Ffind_operation_coding_system
8342 to setup coding system if host or service is not set.
8343
8344 2002-10-23 Juanma Barranquero <lektu@terra.es>
8345
8346 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8347
8348 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8349 COLORREF.
8350
8351 * macgui.h:
8352 * w32gui.h: Add definition of XColor.
8353
8354 * macfns.c:
8355 * w32fns.c:
8356 * xfaces.c: Remove definition of XColor.
8357
8358 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8359
8360 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8361
8362 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8363 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8364 window if it is dedicated.
8365 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8366 (Vspecial_display_function): Update docstring.
8367
8368 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8369 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8370 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8371
8372 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8373
8374 * casefiddle.c (casify_region): Don't treat a prefix char as part
8375 of a word when at the beginning.
8376
8377 2002-10-17 Juanma Barranquero <lektu@terra.es>
8378
8379 * lread.c (syms_of_lread): Fix typos.
8380
8381 2002-10-17 Dave Love <fx@gnu.org>
8382
8383 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8384
8385 2002-10-16 Richard M. Stallman <rms@gnu.org>
8386
8387 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8388
8389 2002-10-14 Juanma Barranquero <lektu@terra.es>
8390
8391 * w16select.c (syms_of_win16select): Fix docstring for
8392 `selection-coding-system'.
8393
8394 * w32select.c (syms_of_w32select): Likewise.
8395
8396 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8397
8398 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8399 a backslash-quoted char.
8400 (scan_lists, scan_sexps_forward): Pacify the compiler.
8401
8402 2002-10-13 Richard M. Stallman <rms@gnu.org>
8403
8404 * window.c (window_scroll): Set immediate_quit.
8405
8406 * print.c (print): When backquote form is the car of a list,
8407 output in old style. Use old_backquote_output to output all
8408 comma forms inside it in old style too.
8409
8410 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8411
8412 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
8413
8414 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8415 batch mode).
8416
8417 * lread.c (Fload): Doc fix (load-suffixes).
8418
8419 2002-10-10 Steven Tamm <steventamm@mac.com>
8420
8421 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8422 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8423 Also switch the default to Qnil from Qt.
8424
8425 2002-10-08 Kenichi Handa <handa@m17n.org>
8426
8427 * coding.c (code_convert_region): When we need more GAP for
8428 conversion, pay attention to the case that coding->produced is not
8429 greater than coding->consumed.
8430
8431 2002-10-07 Richard M. Stallman <rms@gnu.org>
8432
8433 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8434
8435 2002-10-06 Andrew Choi <akochoi@shaw.ca>
8436
8437 * macmenu.c (mac_menu_show): Add j to count menu items; match
8438 menu_item_selection to it to find selected item.
8439
8440 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8441
8442 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8443 cases. The correct fix is to pass ReparentNotify to Xt.
8444 The shell widget interprets ConfigureNotify differently depending
8445 on if it has been reparented or not.
8446
8447 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
8448
8449 * editfns.c (Fformat_time_string): Doc fix.
8450
8451 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8452
8453 * fns.c (Flength): Doc fix.
8454
8455 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8456
8457 * keyboard.c (keyremap): New struct.
8458 (read_key_sequence): Use it: globally replace keytran_foo with
8459 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8460 keytran_next and fkey_next to just `next'.
8461
8462 2002-10-04 Steven Tamm <steventamm@mac.com>
8463
8464 * macterm.c (keycode_to_xkeysym_table): Change return to be
8465 treated like an X keysym.
8466
8467 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8468
8469 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8470 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8471 This is to also handle x/y changes that occur because of a resize.
8472
8473 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8474
8475 * frame.c (Vdelete_frame_functions): New variable.
8476 (syms_of_frame): Initialize and defvar it.
8477 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8478 it when frame's `tooltip' parameter is non-nil.
8479
8480 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8481
8482 * w32fns.c (x_create_tip_frame): Likewise.
8483
8484 * macfns.c (x_create_tip_frame): Likewise.
8485
8486 2002-09-30 Kenichi Handa <handa@m17n.org>
8487
8488 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8489 -1 before calling ccl_driver.
8490
8491 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8492 Only when it is non-nil, handle composition sequence.
8493 (setup_coding_system) <0>: Don't force composition handling.
8494
8495 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8496
8497 2002-09-29 Richard M. Stallman <rms@gnu.org>
8498
8499 * search.c (Freplace_match): Adjust match data for the substitution
8500 just made in the buffer.
8501
8502 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8503 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8504
8505 2002-09-27 Richard M. Stallman <rms@gnu.org>
8506
8507 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8508 (read_char): Use them. Do all exits thru the end of the function.
8509
8510 2002-09-27 Kenichi Handa <handa@etl.go.jp>
8511
8512 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8513 is nil.
8514
8515 2002-09-26 Richard M. Stallman <rms@gnu.org>
8516
8517 * regex.h (__restrict_arr): Don't define if already defined.
8518
8519 * coding.c (run_pre_post_conversion_on_str):
8520 Save and restore Vdeactivate_mark.
8521
8522 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8523
8524 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8525
8526 2002-09-26 Kenichi Handa <handa@etl.go.jp>
8527
8528 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8529 nonzero, try face's family at first. Otherwise try FAMILY at first.
8530 (choose_face_font): If C is a single byte char or latin-1, call
8531 try_font_list with PREFER_FACE_FAMILY 1.
8532
8533 2002-09-21 Richard M. Stallman <rms@gnu.org>
8534
8535 * window.c (select_window_1): Don't select frame.
8536 Set frame's selected window only when frame itself is selected.
8537 (Fselect_window): Doc fix.
8538
8539 2002-09-18 Kim F. Storm <storm@cua.dk>
8540
8541 * process.c (make-network-process): Doc fix (there is no
8542 network-server-log-function hook).
8543
8544 2002-09-18 Richard M. Stallman <rms@gnu.org>
8545
8546 * print.c (print): Clear out the unused parts of Vprint_number_table.
8547 (syms_of_print): Doc fix for `print-number-table'.
8548
8549 * unexelf.c (unexec): Undo previous change.
8550
8551 2002-09-17 Andreas Schwab <schwab@suse.de>
8552
8553 * m/alpha.h [LINUX]: Don't define DATA_START.
8554
8555 2002-09-16 Dave Love <fx@gnu.org>
8556
8557 * unexelf.c (unexec): Deal with .got, reinstating change from
8558 25-08-1999.
8559
8560 2002-09-13 Richard M. Stallman <rms@gnu.org>
8561
8562 * s/sol2-6.h (UNEXEC): Comment out definition.
8563
8564 * unexsol.c (unexec): Don't downcase first letter of error msg.
8565
8566 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8567
8568 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
8569
8570 * unexsol.c: Include buffer.h, charset.h, coding.h.
8571
8572 2002-09-11 Richard M. Stallman <rms@gnu.org>
8573
8574 * unexsol.c: Don't use report_file_error; do it by hand
8575 using dlerror.
8576
8577 * process.c (wait_reading_process_input, both versions):
8578 Before calling turn_on_atimers, call stop_polling.
8579
8580 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8581
8582 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8583 we go to too_near_end, call clear_glyph_matrix.
8584 (redisplay_window): After make_cursor_line_fully_visible,
8585 call clear_glyph_matrix and bypass `goto done'.
8586
8587 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8588 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8589
8590 2002-09-10 Richard M. Stallman <rms@gnu.org>
8591
8592 * fileio.c (Fdo_auto_save): Catch error making directory.
8593 Only call push_message if we need to.
8594 At the same time, make an unwind-protect to pop it.
8595 Rename local message_p to old_message_p.
8596 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8597 (do_auto_save_unwind): Don't call pop_message.
8598
8599 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8600
8601 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8602
8603 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8604
8605 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8606
8607 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8608
8609 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8610 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8611 (re_match_2_internal): Be more careful with infinite loops.
8612
8613 2002-09-10 Kim F. Storm <storm@cua.dk>
8614
8615 * macros.c (end_kbd_macro): New function.
8616 (Fend_kbd_macro): Use it.
8617
8618 * macros.h (end_kbd_macro): Declare extern.
8619
8620 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8621 end and save it instead of discarding it.
8622
8623 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
8624
8625 * s/sol2-6.h: Fix typo. Add comment.
8626
8627 2002-09-09 Richard M. Stallman <rms@gnu.org>
8628
8629 * regex.c (regnum_t): Use signed int, not unsigned int.
8630
8631 * s/sol2-6.h: New file.
8632
8633 * s/sol2-5.h (UNEXEC): Definition deleted.
8634
8635 2002-09-08 Kim F. Storm <storm@cua.dk>
8636
8637 * macros.c (executing_macro_index): Change type to EMACS_INT.
8638 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8639
8640 * macros.h (executing_macro_index): Change type to EMACS_INT.
8641
8642 2002-09-06 Richard M. Stallman <rms@gnu.org>
8643
8644 * casetab.c (set_case_table): Make canon table point to eqv table.
8645
8646 2002-09-06 Juanma Barranquero <lektu@terra.es>
8647
8648 * coding.c (syms_of_coding): Fix spacing.
8649
8650 * composite.c (Fcompose_region_internal)
8651 (Fcompose_string_internal): Likewise.
8652
8653 * data.c (Flsh): Likewise.
8654
8655 * fontset.c (Fset_fontset_font): Likewise.
8656
8657 * macfns.c (Fx_server_max_request_size): Likewise.
8658
8659 * w16select.c (syms_of_win16select): Likewise.
8660
8661 * w32select.c (syms_of_w32select): Likewise.
8662
8663 * xselect.c (syms_of_xselect): Likewise.
8664
8665 2002-09-05 Richard M. Stallman <rms@gnu.org>
8666
8667 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8668 call EXTEND_RANGE_TABLE and return a proper value.
8669 (set_image_of_range): Don't call set_image_of_range_1
8670 if no TRANSLATE or if range includes all of Latin-1.
8671 Only call it for the Latin-1 part of the range.
8672 For other cases, make two separate ranges,
8673 one for the original specified characters and one for
8674 their case-conversions.
8675
8676 2002-09-04 Richard M. Stallman <rms@gnu.org>
8677
8678 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8679
8680 * window.c (displayed_window_lines): Correct for one-off bug
8681 in HEIGHT on non-window displays.
8682
8683 * regex.c (set_image_of_range_1): New function.
8684 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8685 Return a value to indicate running out of memory.
8686 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8687 (extend_range_table_work_area): New subroutine.
8688 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8689 Different calling conventions, and used from set_image_of_range{,_1}.
8690 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8691
8692 2002-09-04 Juanma Barranquero <lektu@terra.es>
8693
8694 * makefile.w32-in: All dependencies updated.
8695
8696 2002-09-01 Richard M. Stallman <rms@gnu.org>
8697
8698 * unexsol.c: New file.
8699
8700 * xfns.c (Qbox): Declare external, don't define.
8701
8702 * xdisp.c (redisplay_window) <force-start case>:
8703 If point is on semi-visible last line, reposition
8704 it at previous line.
8705
8706 * alloc.c (display_malloc_warning): Use display-warning.
8707 (malloc_warning_1): Function deleted.
8708
8709 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8710
8711 * lread.c (read1): Handle #! by skipping the line.
8712
8713 2002-08-31 Richard M. Stallman <rms@gnu.org>
8714
8715 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8716 Don't include LDFLAGS.
8717 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8718
8719 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8720
8721 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8722 member of x_display_info unless we compile for some window system.
8723
8724 2002-08-31 Kim F. Storm <storm@cua.dk>
8725
8726 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8727 (get_window_cursor_type): Don't use them.
8728 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8729
8730 2002-08-30 Kenichi Handa <handa@etl.go.jp>
8731
8732 * xdisp.c (get_next_display_element): Fix previous change.
8733
8734 2002-08-30 Andrew Choi <akochoi@shaw.ca>
8735
8736 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8737 (expose_window): Use it to fix the display of overlapping
8738 rows (merge code from xterm.c).
8739
8740 * macfns.c (Qbox): Add extern declaration.
8741
8742 2002-08-30 Juanma Barranquero <lektu@terra.es>
8743
8744 * w32fns.c (Qbox): Make extern.
8745 (syms_of_w32fns): Remove initialization of Qbox.
8746
8747 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8748
8749 * xfns.c (Fx_open_connection): Fix error message.
8750
8751 2002-08-30 Kim F. Storm <storm@cua.dk>
8752
8753 The following changes consolidates the handling of the cursor
8754 type in xdisp.c, moving duplicate code and functionality from
8755 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8756
8757 * frame.h (enum text_cursor_kinds): Consolidated here.
8758 Added DEFAULT_CURSOR value.
8759 (struct frame) <desired_cursor, cursor_width>
8760 <blink_off_cursor, blink_off_cursor_width>: New fields.
8761 Consolidated from output_x, output_w32 and output_mac structs.
8762 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8763 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8764
8765 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8766 Variables consolidated here.
8767 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8768 (Vcursor_in_non_selected_windows): Renamed from
8769 cursor_in_non_selected_windows and changed to Lisp_Object.
8770 (syms_of_xdisp): Define and staticpro new and moved variables.
8771 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8772 consolidated here. Recognize Qhollow setting.
8773 (set_frame_cursor_types): New function to set frame cursor types
8774 based on the frame parameters.
8775 (get_window_cursor_type): New function to calculate new cursor
8776 type and width for the specified window. Based on duplicated
8777 code consolidated here.
8778 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8779 check buffer-local alternate-cursor-type and blink-cursor-alist
8780 before using built-in blink off methods.
8781
8782 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8783
8784 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8785 (get_specified_cursor_type, get_window_cursor_type)
8786 (set_frame_cursor_types): Added prototypes.
8787
8788 * macfns.c (x_specified_cursor_type): Removed.
8789 (x_set_cursor_type): Use set_frame_cursor_types.
8790 (Qbar, Qbox): Removed.
8791 (syms_of_macfns): Don't intern or staticpro them.
8792
8793 * macterm.c (x_specified_cursor_type): Remove prototype.
8794 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8795 (x_display_and_set_cursor): Use get_window_cursor_type.
8796 Remove unused local variables cursor_non_selected, active_cursor.
8797 Redraw cursor if hbar cursor width changes.
8798 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8799
8800 * macterm.h (enum text_cursor_kinds): Removed.
8801 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8802 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8803 (FRAME_DESIRED_CURSOR): Macro removed.
8804
8805 * w32fns.c (Vblink_cursor_alist): Removed.
8806 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8807 (syms_of_w32fns): Don't intern, staticpro, or define them.
8808 (x_specified_cursor_type): Removed.
8809 (x_set_cursor_type): Use set_frame_cursor_types.
8810
8811 * w32term.c (x_specified_cursor_type): Remove prototype.
8812 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8813 (x_display_and_set_cursor): Use get_window_cursor_type.
8814 Remove unused local variables cursor_off_state.
8815 Redraw cursor if hbar cursor width changes.
8816 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8817
8818 * w32term.h (enum text_cursor_kinds): Removed.
8819 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8820 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8821 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8822 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8823 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8824 w32_highlight_frame.
8825
8826 * xfns.c (Vblink_cursor_alist): Removed.
8827 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8828 (syms_of_xfns): Don't intern, staticpro, or define them.
8829 (x_specified_cursor_type): Removed.
8830 (x_set_cursor_type): Use set_frame_cursor_types.
8831
8832 * xterm.c (x_specified_cursor_type): Remove prototype.
8833 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8834 (x_display_and_set_cursor): Use get_window_cursor_type.
8835 Remove unused local variables cursor_off_state.
8836 Redraw cursor if hbar cursor width changes.
8837
8838 * xterm.h (enum text_cursor_kinds): Removed.
8839 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8840 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8841 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8842 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8843 (x_specified_cursor_type): Remove prototype.
8844
8845 2002-08-28 Richard M. Stallman <rms@gnu.org>
8846
8847 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8848 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8849 (Vblink_cursor_alist): New variable.
8850 (syms_of_w32fns): Initialize and defvar it.
8851 (x_specified_cursor_type): Recognize Qbox for filled box.
8852 Exceptions are hollow boxes.
8853 (Qbox, Qhollow): New variables.
8854 (syms_of_w32fns): Initialize and staticpro them.
8855
8856 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8857 New macros.
8858 (struct w32_output): New fields blink_off_cursor,
8859 blink_off_cursor_width.
8860 (FRAME_CURSOR_WIDTH): New macro.
8861
8862 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8863 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8864
8865 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8866 for bar cursor.
8867
8868 * w32term.c (expose_overlaps): New function.
8869 (expose_window): Use it to fix the display of overlapping rows.
8870
8871 2002-08-28 Simon Josefsson <jas@extundo.com>
8872
8873 * xfns.c (Fx_open_connection): Improve help when X connection
8874 fails, xhost is insecure and xauth is better.
8875
8876 2002-08-28 Juanma Barranquero <lektu@terra.es>
8877
8878 * makefile.w32-in: Add missing dependencies on w32term.h and
8879 composite.h.
8880
8881 * emacs.c (USAGE1): Add missing newline.
8882
8883 2002-08-27 Andrew Choi <akochoi@shaw.ca>
8884
8885 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8886
8887 2002-08-27 Richard M. Stallman <rms@gnu.org>
8888
8889 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8890 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8891 (Vblink_cursor_alist): New variable.
8892 (syms_of_xfns): Initialize and defvar it.
8893 (x_specified_cursor_type): Recognize Qbox for filled box.
8894 Exceptions are hollow boxes.
8895 (Qbox, Qhollow): New variables.
8896 (syms_of_xfns): Initialize and staticpro them.
8897
8898 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8899 New macros.
8900 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8901
8902 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8903 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8904
8905 * emacs.c (main): Handle --script.
8906 (USAGE1): Mention --script.
8907 (standard_args): Define sort order for --script.
8908
8909 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8910
8911 * xdisp.c (redisplay_updating_p): Variable removed.
8912 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8913 New variables.
8914 (init_iterator): Don't free realized faces if
8915 inhibit_free_realized_faces is set.
8916 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8917 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8918 initialize Qinhibit_free_realized_faces.
8919
8920 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8921 when iterator is adding glyphs to a glyph matrix.
8922
8923 2002-08-27 Kenichi Handa <handa@etl.go.jp>
8924
8925 * xdisp.c (get_next_display_element): In unibyte case, don't use
8926 octal form for such eight-bit characters that can be converted to
8927 multibyte char.
8928
8929 2002-08-26 Kim F. Storm <storm@cua.dk>
8930
8931 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8932 and background colors. From Joe Buehler (tiny change).
8933
8934 2002-08-26 Miles Bader <miles@gnu.org>
8935
8936 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8937
8938 2002-08-25 Andrew Choi <akochoi@shaw.ca>
8939
8940 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8941 defined instead of MAC_OSX.
8942
8943 * s/darwin.h (select): Define select to sys_select only if
8944 HAVE_CARBON is defined.
8945 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8946 (DONT_REOPEN_PTY): #def it.
8947
8948 * macterm.c (XTread_socket): Remove code to call
8949 SendEventToEventTarget for keys with command modifiers when
8950 mac_command_key_is_meta is nil.
8951
8952 2002-08-24 Andreas Schwab <schwab@suse.de>
8953
8954 * eval.c (Fdefvar): Fix last change.
8955
8956 2002-08-23 Richard M. Stallman <rms@gnu.org>
8957
8958 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8959 Record variables in load history as (defvar . VAR).
8960 (Fdefvar): Don't record in load history if no initial value.
8961 (Qdefvar): New variable.
8962 (syms_of_eval): Init and staticpro it.
8963
8964 * lread.c (syms_of_lread): Doc fix.
8965 (build_load_history): Use Fmember to see if a definition
8966 is already in the Vload_history element.
8967
8968 * process.c (Fstart_process): Remove /: from program name.
8969
8970 * emacs.c (decode_env_path): Don't add /: if file name handler
8971 has a `safe-magic' property.
8972
8973 * callproc.c (Fcall_process): Remove /: from program name.
8974
8975 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8976
8977 * regex.c (PATFETCH): Remove the translating fetch.
8978 (PATFETCH_RAW): Rename to PATFETCH.
8979 (set_image_of_range): New fun.
8980 (SET_RANGE_TABLE_WORK_AREA): Use it.
8981 (regex_compile): Don't translate the pattern chars so eagerly.
8982 Only do it when inserting an `exactn' bytecode or when handling
8983 a char-range.
8984 (mutually_exclusive_p): Avoid empty statement.
8985
8986 2002-08-22 Kim F. Storm <storm@cua.dk>
8987
8988 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8989 end up on a partially visible line; this reverts a specific part
8990 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8991 display error which has been reported several times now.
8992 However it introduces the problem that changes was supposed to fix.
8993 See my comments in the source if you want to debug this further.
8994
8995 2002-08-20 Kenichi Handa <handa@etl.go.jp>
8996
8997 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8998
8999 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9000
9001 * msdos.c (croak): Add `void' to definition.
9002
9003 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
9004 Don't define them, they are defined in msdos.c.
9005
9006 * mem-limits.h [MSDOS]: Declare etext.
9007
9008 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9009 `const' since CORRECT_DIR_SEPS modifies its target.
9010
9011 2002-08-19 Kim F. Storm <storm@cua.dk>
9012
9013 * keyboard.c (Fclear_this_command_keys): Add optional arg
9014 KEEP-RECORD to avoid clearing lossage when we just want to clear
9015 the current key sequence (kmacro needs this).
9016
9017 2002-08-19 Kenichi Handa <handa@localhost>
9018
9019 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9020
9021 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9022 cons, return Qnil.
9023
9024 2002-08-17 Richard M. Stallman <rms@gnu.org>
9025
9026 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9027
9028 * sysdep.c [!VMS]: Include sys/files.h.
9029
9030 * editfns.c (save_restriction_restore): Defend from unchained marker.
9031
9032 * buffer.c (overlays_at): Handle extending vec uniformly.
9033 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9034
9035 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9036
9037 * mac.c (init_mac_osx_environment): New function.
9038
9039 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9040
9041 2002-08-14 Kim F. Storm <storm@cua.dk>
9042
9043 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9044 executing macro before appending to it (when used from Lisp).
9045 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9046 which is called prior to each iteration of macro (for kmacro.el).
9047 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9048
9049 * lisp.h (Fexecute_kbd_macro): Update prototype.
9050
9051 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9052
9053 2002-08-14 Kenichi Handa <handa@etl.go.jp>
9054
9055 * xselect.c (QUTF8_STRING): New variable.
9056 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9057 (x_atom_to_symbol): Likewise.
9058 (x_get_local_selection): New argument local_request. If it is
9059 nonzero, call handler_fn with the second arg nil.
9060 (x_handle_selection_request): Call x_get_local_selection with
9061 local_request 0.
9062 (lisp_data_to_selection_data): Don't encode the string here.
9063 (Fx_get_selection_internal): Call x_get_local_selection with
9064 local_request 1.
9065 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9066
9067 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9068
9069 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9070
9071 2002-08-13 Richard M. Stallman <rms@gnu.org>
9072
9073 * minibuf.c (Fminibufferp): New function.
9074 (syms_of_minibuf): Defsubr it.
9075 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9076
9077 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9078
9079 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9080
9081 2002-08-12 Richard M. Stallman <rms@gnu.org>
9082
9083 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9084 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9085 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9086 already.
9087
9088 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9089
9090 2002-08-11 Andrew Choi <akochoi@shaw.ca>
9091
9092 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9093 (Vmac_pass_command_to_system): New variable.
9094 (Vmac_pass_control_to_system): New variable.
9095 (do_mouse_moved): Check wp with is_emacs_window.
9096 (XTread_socket): Check window_ptr with is_emacs_window.
9097 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9098 events back to Mac Toolbox for processing, depending on values of
9099 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9100 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9101 Vmac_pass_control_to_system.
9102
9103 2002-08-10 Kenichi Handa <handa@etl.go.jp>
9104
9105 * coding.c (unencodable_char_position): New function.
9106 (Funencodable_char_position): New function.
9107 (syms_of_coding): Defsubr Funencodable_char_position.
9108
9109 2002-08-10 Andrew Choi <akochoi@shaw.ca>
9110
9111 * mac.c (sys_select) [MAC_OSX]: New function.
9112
9113 * macterm.c (MakeMeTheFrontProcess): New function.
9114 (mac_initialize): Call MakeMeTheFrontProcess.
9115
9116 * s/darwin.h: Define select to sys_select.
9117
9118 2002-08-09 Richard M. Stallman <rms@gnu.org>
9119
9120 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9121
9122 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9123
9124 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9125 end of the buffer.
9126
9127 2002-08-08 Ken Raeburn <raeburn@mit.edu>
9128
9129 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9130
9131 * puresize.h (BASE_PURESIZE): Increase to 910000.
9132
9133 2002-08-08 Kenichi Handa <handa@etl.go.jp>
9134
9135 * coding.c (Ffind_operation_coding_system): For write-region, if
9136 VISIT is a filename, make it the target.
9137
9138 2002-08-07 Richard M. Stallman <rms@gnu.org>
9139
9140 * alloc.c (mark_object): Detect long lists for debugging.
9141 (mark_object_loop_halt): New variable.
9142
9143 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9144
9145 * data.c (Fmake_variable_frame_local): Doc fix.
9146
9147 2002-08-01 David Ponce <david@dponce.com>
9148
9149 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9150 (malloc_widget_value, free_widget_value)
9151 (w32_free_submenu_strings): Use them.
9152
9153 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9154 (push_menu_pane, push_menu_item, single_keymap_panes)
9155 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9156 (single_submenu, set_frame_menubar)
9157 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9158
9159 (Fx_popup_menu): Don't show pop up menu until preceding one is
9160 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9161
9162 * w32menu.c: Changes adapted from xmenu.c
9163 (set_frame_menubar): First parse all submenus,
9164 then make widget_value trees from them.
9165 Don't allocate any widget_value objects
9166 until we are done with the parsing.
9167 (parse_single_submenu): New function.
9168 (digest_single_submenu): New function.
9169 (single_submenu): Function deleted, replaced by those two.
9170
9171 2002-08-04 Andrew Choi <akochoi@shaw.ca>
9172
9173 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9174 returns a valid window pointer before proceeding for keyDown and
9175 autoKey events.
9176
9177 2002-08-03 Andrew Choi <akochoi@shaw.ca>
9178
9179 * macterm.c (USE_CARBON_EVENTS): New macro.
9180 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9181 (x_iconify_frame): Call CollapseWindow.
9182 (Vmac_reverse_ctrl_meta): New variable.
9183 (Vmac_wheel_button_is_mouse_2): New variable.
9184 (init_mac_drag_n_drop): New function.
9185 (mac_do_receive_drag): New function.
9186 (mac_handle_service_event): New function.
9187 (init_service_handler): New function.
9188 (mac_to_emacs_modifiers): New function.
9189 (mac_event_to_emacs_modifiers): New function.
9190 (mac_get_mouse_btn): New function.
9191 (mac_convert_event_ref): New function.
9192 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9193 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9194 mac_get_mouse_btn.
9195 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9196
9197 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9198 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9199 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9200 TOOL_BAR_EVENT for MAC_OS as well.
9201 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9202 as for WINDOWS_NT.
9203 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9204
9205 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9206
9207 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9208
9209 * xdisp.c (forward_to_next_line_start): Fix a condition that
9210 lead to a newline being skipped.
9211
9212 2002-08-02 Andrew Choi <akochoi@shaw.ca>
9213
9214 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9215
9216 2002-08-01 Richard M. Stallman <rms@gnu.org>
9217
9218 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9219
9220 2002-07-31 Andrew Choi <akochoi@shaw.ca>
9221
9222 * macfns.c: #undef init_process before #define-ing it.
9223
9224 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9225 HAVE_CARBON is defined.
9226
9227 2002-07-31 Richard M. Stallman <rms@gnu.org>
9228
9229 * xmenu.c (set_frame_menubar): First parse all submenus,
9230 then make widget_value trees from them.
9231 Don't allocate any widget_value objects
9232 until we are done with the parsing.
9233 (parse_single_submenu): New function.
9234 (digest_single_submenu): New function.
9235 (single_submenu): Function deleted, replaced by those two.
9236
9237 2002-07-30 Juanma Barranquero <lektu@terra.es>
9238
9239 * w32proc.c (syms_of_ntproc): Fix docstring of
9240 `w32-get-true-file-attributes'.
9241
9242 2002-07-28 Richard M. Stallman <rms@gnu.org>
9243
9244 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9245 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9246
9247 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9248
9249 * keyboard.c (make_lispy_event):
9250 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9251 Explicitly clear up_modifier in event->modifiers.
9252
9253 2002-07-27 Richard M. Stallman <rms@gnu.org>
9254
9255 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9256
9257 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9258 for bar cursor.
9259
9260 2002-07-26 Kenichi Handa <handa@etl.go.jp>
9261
9262 * coding.c (detect_coding_iso2022): While checking a byte sequence
9263 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9264 it in the normal loop.
9265
9266 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9267
9268 * xterm.c (expose_overlaps): New function.
9269 (expose_window): Use it to fix the display of overlapping rows.
9270
9271 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9272
9273 2002-07-23 Ken Raeburn <raeburn@gnu.org>
9274
9275 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9276 since it only depends on XUINT.
9277
9278 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9279 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9280 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9281 Macros deleted.
9282
9283 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9284 its value over other approaches.
9285 * sysdep.c (start_of_data): Don't define the function if a macro
9286 form has been defined.
9287
9288 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9289
9290 * xdisp.c (redisplay_updating_p): New variable.
9291 (init_iterator): Don't free realized faces when
9292 redisplay_updating_p is set.
9293 (redisplay_internal): Set redisplay_updating_p while updating
9294 the display.
9295
9296 2002-07-23 Richard M. Stallman <rms@gnu.org>
9297
9298 * editfns.c (Fmessage): Treat "" like nil.
9299
9300 2002-07-23 Kenichi Handa <handa@etl.go.jp>
9301
9302 * xdisp.c (face_before_or_after_it_pos):
9303 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9304
9305 2002-07-22 Juanma Barranquero <lektu@terra.es>
9306
9307 * callproc.c (init_callproc) [DOS_NT]:
9308 Initialize Vshared_game_score_directory to nil.
9309 (syms_of_callproc) [DOS_NT]: Likewise.
9310
9311 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9312
9313 * xdisp.c (display_line): Replace an abort with xassert.
9314
9315 2002-07-21 Richard M. Stallman <rms@gnu.org>
9316
9317 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9318 and END_UNCHANGED when setting buffer_unchanged_p.
9319 Use current_matrix_up_to_date_p to decide whether to use
9320 try_cursor_movement.
9321
9322 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9323
9324 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9325
9326 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9327 Set to nil if dir does not exist.
9328 (syms_of_callproc): Init unconditionally and simply.
9329
9330 * buffer.c (Fbuffer_list): Doc fix.
9331
9332 2002-07-21 Ken Raeburn <raeburn@gnu.org>
9333
9334 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9335
9336 * buffer.c (mmap_realloc): When shrinking, make sure number of
9337 pages to unmap is rounded towards zero.
9338
9339 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9340 (XSETINT): Deleted.
9341
9342 * m/att3b.h (XINT): Don't define.
9343 (VALBITS, VALMASK, XTYPE): Deleted.
9344 (DATA_SEG_BITS): Define.
9345 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9346 ARRAY_MARK_FLAG): Deleted.
9347 (DATA_SEG_BITS): Define.
9348 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9349 (DATA_SEG_BITS): Define.
9350
9351 2002-07-20 Richard M. Stallman <rms@gnu.org>
9352
9353 * print.c (print_error_message): New args CONTEXT and CALLER.
9354 Calls changed.
9355
9356 * lisp.h (print_error_message): Declare new args.
9357
9358 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9359 and CONTEXT to print_error_message, don't print them here.
9360 For a Quit, don't use Vsignaling_function.
9361 Call message_log_maybe_newline.
9362
9363 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9364
9365 2002-07-20 Kim F. Storm <storm@cua.dk>
9366
9367 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9368
9369 2002-07-19 Ken Raeburn <raeburn@gnu.org>
9370
9371 * bytecode.c (struct byte_stack): Pointers into byte string now
9372 point to const.
9373 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9374 const.
9375 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9376 * coding.c (encode_eol, detect_coding, detect_eol):
9377 (decode_coding, encode_coding, detect_coding_system):
9378 Source strings now treated as const.
9379 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9380 modify Lisp string contents.
9381 * coding.h (decode_coding, encode_coding, detect_coding,
9382 detect_eol): Declarations updated.
9383 * composite.c (compose_chars_in_text): Treat Lisp string contents
9384 as const.
9385 * dispnew.c (safe_bcopy): Source pointer now points to const.
9386 * lisp.h (STRING_COPYIN): New macro.
9387 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9388 (internal_with_output_to_temp_buffer): Declarations updated.
9389 * print.c (temp_output_buffer_setup):
9390 (internal_with_output_to_temp_buffer): Buffer name argument is now
9391 pointer to const.
9392 * sound.c (struct sound_device): Function pointer field "write"
9393 buffer argument now points to const.
9394 (vox_write): Buffer argument points to const.
9395 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9396 contents as const.
9397 * sysdep.c (emacs_write): Buffer pointer now const.
9398 * term.c (encode_terminal_code): Buffer pointer now const.
9399 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9400 (x_face_list_fonts, x_update_menu_appearance):
9401 (hash_string_case_insensitive): Treat Lisp string contents as const.
9402
9403 2002-07-19 Juanma Barranquero <lektu@terra.es>
9404
9405 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9406
9407 * fileio.c (syms_of_fileio): Likewise.
9408 (Ffile_name_as_directory): Fix argument name in docstring.
9409 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9410
9411 2002-07-18 Richard M. Stallman <rms@gnu.org>
9412
9413 * data.c (Fdefalias): Doc fix.
9414
9415 2002-07-17 Dave Love <fx@gnu.org>
9416
9417 * intervals.h (text_property_stickiness): Use P_.
9418
9419 * ccl.c: Remove `emacs' conditionals.
9420 (ccl_backtrace_table): Fix size spec.
9421 (ccl_driver): Fix type errors.
9422
9423 2002-07-16 Ken Raeburn <raeburn@gnu.org>
9424
9425 * alloc.c (xstrdup, make_string, make_unibyte_string)
9426 (make_multibyte_string, build_string): String pointer args now
9427 point to const.
9428 * charset.c (find_charset_in_text, c_string_width):
9429 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9430 * fileio.c (report_file_error):
9431 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9432 (count_combining_before, count_combining_after, insert_1_both):
9433 (insert, insert_and_inherit, insert_string):
9434 (insert_before_markers, insert_before_markers_and_inherit):
9435 * lread.c (intern, oblookup, hash_string):
9436 * minibuf.c (temp_echo_area_glyphs):
9437 * search.c (fast_c_string_match_ignore_case):
9438 * sysdep.c (emacs_open, set_file_times):
9439 * xfaces.c (xstricmp):
9440 * xdisp.c (store_frame_title, string_char_and_length):
9441 (message_dolog, message2, message2_nolog, set_message): Likewise.
9442 (set_message_1): Cast message string argument to const pointer.
9443 * editfns.c (general_insert_function): Insertion function now
9444 takes pointer to const for input data.
9445 * charset.h (find_charset_in_text, c_string_width):
9446 (parse_str_as_multibyte): Declarations updated.
9447 * dispextern.h (xstricmp): Declaration updated.
9448 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9449 (count_size_as_multibyte, count_combining_before):
9450 (count_combining_after, insert_1, insert_1_both, message_dolog):
9451 (insert, insert_and_inherit, insert_before_markers)
9452 (insert_before_markers_and_inherit, set_message, message2):
9453 (message2_dolog, build_string, make_string, make_unibyte_string):
9454 (make_multibyte_string, intern, oblookup, report_file_error):
9455 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9456 (emacs_open, xstrdup): Declarations updated.
9457 * systime.h (set_file_times): Declaration updated.
9458
9459 * charset.c (find_charset_in_text, lisp_string_width): Use const
9460 for pointer to lisp string data.
9461 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9462 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9463 * coding.c (Ffind_coding_systems_region_interval):
9464 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9465 (Fmake_directory_internal, Fdelete_directory):
9466 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9467 * fontset.c (font_family_registry, fs_query_fontset):
9468 (list_fontsets):
9469 * frame.c (Fframe_parameter):
9470 * keyboard.c (cmd_error_internal):
9471 * keymap.c (Fdescribe_buffer_bindings):
9472 * lread.c (complete_filename_p, openp):
9473 * minibuf.c (Fminibuffer_complete_word):
9474 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9475 (face_before_or_after_it_pos, next_element_from_string):
9476 (get_overlay_arrow_glyph_row, display_mode_element):
9477 (decode_mode_spec_coding):
9478 * xterm.c (same_x_server): Likewise.
9479
9480 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9481 settings of non-existent fields.
9482
9483 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9484 copy a lisp value.
9485
9486 * lread.c (Fintern_soft): Use string macros instead of
9487 Lisp_String fields.
9488 * keyboard.c (echo_char, parse_modifiers_uncached):
9489 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9490 * textprop.c (validate_interval_range, interval_of): Likewise.
9491
9492 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9493
9494 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9495 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9496 XSTRING()->size_byte.
9497
9498 * lisp.h (SDATA, SREF): Produce rvalue.
9499 (SSET): New macro.
9500 * alloc.c (make_event_array): Use SSET for storing into a string.
9501 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9502 a string.
9503 * casefiddle.c (casify_object): Use SSET.
9504 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9505 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9506 address of string contents.
9507 * data.c (Faref): Use SDATA.
9508 (Faset): Use SDATA, SSET.
9509 * dired.c (directory_files_internal): Use SSET.
9510 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9511 (Fread_file_name): Use SREF, SSET.
9512 * fns.c (concat): Use SSET.
9513 (concat, Fdelete): Use SDATA.
9514 * insdel.c (insert_from_string_1): Use SDATA.
9515 * keyboard.c (Fevent_convert_list): Use SREF.
9516 * lread.c (Fload): Use SDATA, SSET.
9517 * macfns.c (validate_x_resource_name): Use SSET.
9518 * process.c (status_message): Use SSET.
9519 * search.c (wordify): Use SDATA.
9520 (Freplace_match): Use SREF.
9521 * w32fns.c (validate_x_resource_name): Use SSET.
9522 * xfns.c (validate_x_resource_name): Use SSET.
9523 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9524
9525 2002-07-16 Richard M. Stallman <rms@gnu.org>
9526
9527 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9528
9529 * xdisp.c (reconsider_clip_changes):
9530 Don't test prevent_redisplay_optimizations_p.
9531 (redisplay_internal): Test prevent_redisplay_optimizations_p
9532 along with clip_changed in some cases.
9533 (try_window_id): Likewise.
9534 (redisplay_window): New local var buffer_unchanged_p.
9535
9536 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9537
9538 * process.c (create_process): Test USG_SUBTTY_WORKS.
9539 (process_send_signal): Clean up handling of GID.
9540 Detect errors in ioctls meant to set GID.
9541
9542 * window.c (temp_output_buffer_show):
9543 Don't set prevent_redisplay_optimizations_p.
9544
9545 2002-07-15 Juanma Barranquero <lektu@terra.es>
9546
9547 * eval.c (Fdefvaralias): Add docstring argument.
9548
9549 2002-07-15 Ken Raeburn <raeburn@gnu.org>
9550
9551 * lisp.h (STRING_INTERVALS): Produce rvalue.
9552 (STRING_SET_INTERVALS): New macro.
9553 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9554 * fns.c (Fstring_as_multibyte): Likewise.
9555 * intervals.c (balance_possible_root_interval, delete_interval)
9556 (create_root_interval, copy_intervals_to_string): Likewise.
9557 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9558 instead of 0.
9559
9560 2002-07-14 Ken Raeburn <raeburn@gnu.org>
9561
9562 * lisp.h (STRING_SET_CHARS): New macro.
9563 (SCHARS, SBYTES): Produce rvalues.
9564 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9565 * fns.c (concat): Likewise.
9566 * lread.c (read_vector): Likewise.
9567
9568 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9569 (STRING_SET_UNIBYTE): New macro.
9570 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9571 length of -1) changed to use STRING_SET_UNIBYTE.
9572 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9573 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9574 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9575 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9576 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9577 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9578 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9579 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9580 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9581 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9582 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9583 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9584 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9585 unchanged for now.
9586
9587 2002-07-13 Kim F. Storm <storm@cua.dk>
9588
9589 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9590
9591 2002-07-12 Richard M. Stallman <rms@gnu.org>
9592
9593 * fileio.c (Fwrite_region): Doc fix.
9594
9595 * print.c (print_error_message): Don't handle Vsignaling_function here.
9596
9597 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9598 (command_loop_1): Avoid certain actions after memory-full error.
9599
9600 * eval.c (Fsignal): Don't call cancel_hourglass.
9601 For a memory-full error, don't call Vsignal_hook_function
9602 and don't set Vsignaling_function.
9603
9604 * process.c (process_send_signal): Add abort call.
9605
9606 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
9607
9608 * keymap.c (Fkey_binding): Fix typo.
9609
9610 2002-07-11 Richard M. Stallman <rms@gnu.org>
9611
9612 * alloc.c (Vmemory_full): New variable.
9613 (Vmemory_signal_data): Renamed from memory_signal_data.
9614 Uses changed.
9615 (syms_of_alloc): Defvar them.
9616 (memory_full, buffer_memory_full): Set Vmemory_full.
9617
9618 * lisp.h (Vmemory_full): Add declaration.
9619 (current_column, indented_beyond_p): Change declaration.
9620
9621 * indent.c (last_known_column): Declare as double, not float.
9622 (current_column, current_column_1, string_display_width)
9623 (position_indentation): Return `double'.
9624 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9625
9626 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9627 (back_to_previous_visible_line_start)
9628 (reseat_at_next_visible_line_start, next_element_from_buffer):
9629 Use `double', not `float', when calling indented_beyond_p.
9630
9631 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9632
9633 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9634
9635 2002-07-11 Juanma Barranquero <lektu@terra.es>
9636
9637 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
9638 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9639 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9640 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9641 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9642 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
9643
9644 2002-07-10 Juanma Barranquero <lektu@terra.es>
9645
9646 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9647 All callers changed.
9648
9649 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9650
9651 * data.c (Fdefalias): Add an optional `docstring' argument.
9652 (set_internal, Fsetq_default): Use XCAR/XCDR.
9653
9654 * composite.c (HASH_VALUE, HASH_KEY):
9655 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9656
9657 2002-07-09 Kenichi Handa <handa@etl.go.jp>
9658
9659 * callproc.c (Fcall_process): Fix previous change.
9660
9661 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9662
9663 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9664 Add support for hash-tables.
9665 (Ftry_completion): Return t even if the string appears multiple times.
9666
9667 * fns.c (Fnconc): Use XCDR.
9668 (Fprovide): Use CONSP and XCDR.
9669 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9670 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9671 (Fmake_hash_table): Accept `:size nil'.
9672 (Fmakehash): Delete: moved to subr.el.
9673 (syms_of_fns): Don't defsubr makehash.
9674
9675 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9676 (HASH_TABLE_SIZE): Move from fns.c.
9677
9678 2002-07-07 Richard M. Stallman <rms@gnu.org>
9679
9680 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9681 Instead just return 0 when there is something to be done.
9682 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9683 retry scrolling as if cursor were off the bottom.
9684 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9685 return CURSOR_MOVEMENT_MUST_SCROLL.
9686 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9687 go to try_to_scroll.
9688
9689 * buffer.c (Fbuffer_local_value): Store current value into its binding
9690 so we get the up-to-date value for the binding that is loaded.
9691
9692 * eval.c (Fdefmacro): Doc fix.
9693
9694 2002-07-05 Dave Love <fx@gnu.org>
9695
9696 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9697 correctly.
9698
9699 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9700 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9701 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9702 CCL_LookupCharConstTbl.
9703 (syms_of_ccl): Defvar translation-hash-table-vector.
9704
9705 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9706
9707 * xdisp.c: Remove unused variable `face'.
9708
9709 2002-07-04 Juanma Barranquero <lektu@terra.es>
9710
9711 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9712 obsolescence information.
9713
9714 2002-07-03 Andrew Choi <akochoi@shaw.ca>
9715
9716 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9717 pattern. Search cache first.
9718 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9719 for Japanese font.
9720 (XLoadQueryFont): Use it.
9721
9722 2002-07-02 Richard M. Stallman <rms@gnu.org>
9723
9724 * keymap.c (Fdefine_key): Doc fix.
9725
9726 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9727
9728 2002-07-02 Juanma Barranquero <lektu@terra.es>
9729
9730 * keymap.c (syms_of_keymap): Fix typo.
9731
9732 2002-07-01 Andrew Choi <akochoi@shaw.ca>
9733
9734 * s/darwin.h: Define POSIX_SIGNALS.
9735
9736 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9737 and FSRefMakePath to convert FSSpec returned with Apple Event to
9738 Posix pathname.
9739 (mac_initialize) [TARGET_API_MAC_CARBON]:
9740 Call init_required_apple_events and disable the `Quit' menu item
9741 provided automatically by the Carbon Toolbox.
9742
9743 2002-07-01 Dave Love <fx@gnu.org>
9744
9745 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9746 for K&R.
9747
9748 * xterm.c: Fix prototype for K&R.
9749
9750 * term.c (costs_set): Declare static, non-initialized for pcc.
9751
9752 2002-07-01 Richard M. Stallman <rms@gnu.org>
9753
9754 * keyboard.c (timer_last_idleness_start_time): New variable.
9755 (timer_start_idle): Set that.
9756 (read_key_sequence): Use that to reset timer_idleness_start_time
9757 to previous value.
9758
9759 * window.c (Frecenter): With arg, set optional_new_start.
9760
9761 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9762
9763 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9764 buffer for completion.
9765
9766 2002-06-29 Ken Raeburn <raeburn@gnu.org>
9767
9768 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9769
9770 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9771
9772 * keyboard.c (readable_filtered_events): New function that filters
9773 FOCUS_IN_EVENT depending on parameter.
9774 (readable_events): Calls readable_filtered_events, not filtering
9775 FOCUS_IN_EVENT.
9776 (get_filtered_input_pending): New function, filtering parameter passed
9777 to readable_filtered_events.
9778 (get_input_pending): Calls get_filtered_input_pending, not filtering
9779 FOCUS_IN_EVENT.
9780 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9781 FOCUS_IN_EVENT.
9782
9783 * xterm.h (struct x_output): Add focus_state.
9784
9785 * xterm.c (x_focus_changed): New function.
9786 (x_detect_focus_change): New function.
9787 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9788 EnterNotify and LeaveNotify to track X focus changes.
9789
9790 2002-06-28 Andreas Schwab <schwab@suse.de>
9791
9792 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9793
9794 2002-06-27 Kim F. Storm <storm@cua.dk>
9795
9796 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9797 (mode_line_string_face_prop): New variables.
9798 (store_mode_line_string): New function.
9799 (display_mode_element): Use store_mode_line_string to
9800 add mode-line string elements to mode_line_string_list
9801 when mode_line_string_list is non-nil.
9802 (Fformat_mode_line): Now returns propertized string by
9803 default. New arg NO-PROPS to ignore properties.
9804 (decode_mode_spec): Only add two dashes for %- in propertized
9805 mode-line string.
9806 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9807
9808 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9809
9810 * minibuf.c (minibuffer_completion_contents): Add return type.
9811
9812 2002-06-27 Juanma Barranquero <lektu@terra.es>
9813
9814 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9815
9816 2002-06-26 Juanma Barranquero <lektu@terra.es>
9817
9818 * fileio.c (read_file_name_cleanup): Add missing return.
9819
9820 2002-06-26 Richard M. Stallman <rms@gnu.org>
9821
9822 * window.c (Frecenter): Don't set force_start flag.
9823
9824 * minibuf.c (do_completion, Fminibuffer_complete_word)
9825 (Fminibuffer_completion_help): Complete just the text before point.
9826 (minibuffer_completion_contents): New function.
9827
9828 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9829
9830 * frame.c (frames_bury_buffer): Function deleted.
9831
9832 2002-06-25 Miles Bader <miles@gnu.org>
9833
9834 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9835 the end of callint_message, allow for a terminating '\0'.
9836
9837 2002-06-24 Juanma Barranquero <lektu@terra.es>
9838
9839 * w32select.c: Include composite.h
9840
9841 * w16select.c: Likewise.
9842
9843 2002-06-24 Kenichi Handa <handa@etl.go.jp>
9844
9845 * callproc.c (Fcall_process): If code detection is necessary,
9846 call detect_coding directly here.
9847
9848 * coding.c (detect_eol): Preserve coding->cmp_data.
9849
9850 * w16select.c (Fw16_get_clipboard_data):
9851 * w32fns.c (w32_to_x_font):
9852 * w32select.c (Fw32_get_clipboard_data):
9853 * xselect.c (selection_data_to_lisp_data):
9854 * xterm.c (XTread_socket): Disable composition handling.
9855
9856 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9857
9858 * print.c (temp_output_buffer_setup): Kill all local variables.
9859
9860 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9861
9862 * lread.c (Fread): Remove redundant and imprecise declaration.
9863
9864 * xfns.c (check_x_display_info): Use check_x_frame.
9865
9866 * .gdbinit (xprintsym): Use the new `xname' field.
9867 (xsymbol): Use it.
9868
9869 2002-06-22 Jason Rumney <jasonr@gnu.org>
9870
9871 * w32fns.c (file_dialog_callback): New function.
9872 (Fx_file_dialog): Allow selecting directories as well as files.
9873
9874 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9875
9876 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
9877 OpenBSD. Add support for mipseb-*-netbsd* machines.
9878
9879 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9880
9881 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9882 black and white before scrolling. Restore frame background and
9883 foreground color after scrolling.
9884 (do_window_update): Call XClearWindow before calling expose_frame.
9885 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9886 FRAME_FOREGROUND_PIXEL of frame.
9887
9888 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9889 test Mac command key as <ALT> key.
9890
9891 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9892
9893 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9894
9895 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9896 Lookup keys in function-key-map immediately so that key-translation-map
9897 can be applied earlier.
9898 Remove function_key_possible and key_translation_possible, replaced
9899 by checking `keytran_start < t'.
9900
9901 * .gdbinit (xsymbol): Use the new `xname' field.
9902
9903 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9904
9905 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9906 test Mac command key as <ALT> key.
9907
9908 * mac.c (do_applescript): Call initialize_applescript if necessary
9909 when first called. Dispose of result_desc only when there is no error.
9910 (Fdo_applescript): Use %d format specifier instead of %ld.
9911
9912 2002-06-16 Andrew Choi <akochoi@shaw.ca>
9913
9914 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9915 of FrontWindow for cases keyDown and autoKey.
9916
9917 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9918 Vdefault_fontset to Monaco with mac-roman coding.
9919
9920 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9921 init_process before and after inclusion of Carbon/Carbon.h, resp.
9922
9923 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9924 cursor_gc.
9925 (add_font_name_table_entry): New function.
9926 (init_font_name_table): Use add_font_name_table_entry; add italic,
9927 bold, and bold-italic entries for truetype fonts.
9928
9929 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9930 for Mac too.
9931 (try_font_list) [MAC_OS]: If no font matches given registry, try
9932 fonts with any registry matching face_family.
9933 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9934
9935 * s/darwin.h: If autoconf detects the Ncurses library, define
9936 LIBS_TERMCAP to -lncurses to use it.
9937
9938 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9939
9940 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9941
9942 2002-06-15 Richard M. Stallman <rms@gnu.org>
9943
9944 * window.c (Fset_window_configuration): Explicitly preserve
9945 the point value that new_current_buffer had at the start.
9946
9947 2002-06-14 Juanma Barranquero <lektu@terra.es>
9948
9949 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9950 Fix typos.
9951
9952 2002-06-14 Kim F. Storm <storm@cua.dk>
9953
9954 * insdel.c (insert_1_both, insert_from_string_1)
9955 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9956 insert happened in the end_unchanged region. Otherwise, the
9957 redisplay may be confused and duplicate the last line in the
9958 buffer [seen after save-buffer when require-final-newline==t].
9959
9960 2002-06-13 Jason Rumney <jasonr@gnu.org>
9961
9962 * w32.c (init_environment): Remove EMACSLOCKDIR.
9963 (stat): Swap _S_IFDIR and _S_IFREG.
9964
9965 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9966
9967 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9968 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9969 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9970 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9971 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9972 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9973 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9974 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9975 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9976 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9977 SELECTION_REQUEST_EVENT, selection_clear_event to
9978 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9979 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9980 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9981 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9982 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9983 no_event to NO_EVENT.
9984
9985 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9986
9987 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9988
9989 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9990
9991 * intervals.c (textget): Don't forget to `return'.
9992 (lookup_char_property): Use XCAR/XCDR.
9993
9994 2002-06-12 Juanma Barranquero <lektu@terra.es>
9995
9996 * xdisp.c (Fformat_mode_line): Fix typo.
9997
9998 2002-06-12 Kim F. Storm <storm@cua.dk>
9999
10000 * xdisp.c (Fformat_mode_line): New function.
10001 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10002 (store_frame_title_char, store_frame_title): Use unconditionally.
10003 (init_xdisp): Defsubr Fformat_mode_line.
10004 Initialize frame_title_buf etc. unconditionally.
10005
10006 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10007
10008 * keyboard.c (read_key_sequence):
10009 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10010 things through those maps after downcasing events.
10011 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10012 applies after function-key-map.
10013 Make sure that keytran can be done in the middle in the sequence.
10014 Be careful not to throw away events past the one we downcase.
10015
10016 * lread.c (read_integer): Remove unused var `tem'.
10017 (read1): Fix int/Lisp_Object mixup.
10018
10019 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10020
10021 2002-06-11 Richard M. Stallman <rms@gnu.org>
10022
10023 * keyboard.c (readable_events): Ignore any number of
10024 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10025
10026 2002-06-09 Miles Bader <miles@gnu.org>
10027
10028 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10029 (parse_rgb_list, tty_lookup_color): New functions.
10030 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10031 (color_distance, Fcolor_distance): New functions.
10032 (TTY_SAME_COLOR_THRESHOLD): New macro.
10033 (Qtty_color_standard_values): New variable.
10034 (syms_of_xfaces): Initialize new vars & functions.
10035
10036 2002-06-08 Colin Walters <walters@verbum.org>
10037
10038 * textprop.c (Vchar_property_alias_alist): New variable.
10039 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10040
10041 * intervals.c (lookup_char_property): New function for looking up
10042 overlay and text properties, created from textget.
10043 (textget): Use it.
10044
10045 * intervals.h (lookup_char_property): Declare.
10046 (Vchar_property_alias_alist): Declare.
10047
10048 * buffer.c (Foverlay_get): Use lookup_char_property.
10049
10050 2002-06-07 Sam Steingold <sds@gnu.org>
10051
10052 * xselect.c (lisp_data_to_selection_data): Fix last change:
10053 *data_ret is not a Lisp string, while unibyte_string is.
10054
10055 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10056
10057 * xselect.c (lisp_data_to_selection_data): Fix last change:
10058 set size_ret.
10059
10060 2002-06-07 Andreas Schwab <schwab@suse.de>
10061
10062 * m/amdx86-64.h: New file.
10063
10064 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10065
10066 * fns.c (Fstring_make_unibyte): Doc fix.
10067
10068 * xselect.c (lisp_data_to_selection_data): If the requested type
10069 is STRING, call string_make_unibyte to encode the selected text
10070 as a string.
10071
10072 * window.c (Fset_window_hscroll): Doc fix.
10073
10074 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10075
10076 * fileio.c (choose_write_coding_system):
10077 Call select-safe-coding-system properly.
10078
10079 2002-06-03 Richard M. Stallman <rms@gnu.org>
10080
10081 * xdisp.c (message_with_string): Error if STRING is not a string.
10082
10083 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10084
10085 * fileio.c (choose_write_coding_system): Pass FILE arg to
10086 Vselect_safe_coding_system_function.
10087
10088 2002-06-03 Ken Raeburn <raeburn@gnu.org>
10089
10090 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10091
10092 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10093
10094 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10095 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10096 * keymap.c (describe_command): Likewise.
10097 * minibuf.c (read_minibuf): Likewise.
10098
10099 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10100 Cast `current_column' return value to int.
10101 (back_to_previous_visible_line_start)
10102 (reseat_at_next_visible_line_start, next_element_from_buffer):
10103 Cast `indented_beyond_p' 3rd arg to float.
10104
10105 * indent.c (last_known_column): Now a float.
10106 (current_column_1, position_indentation, current_column)
10107 (string_display_width): Return float.
10108 (Fcurrent_column): Cast `current_column' return value to int.
10109 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10110 (indented_beyond_p): Third arg now a float.
10111 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10112
10113 * lisp.h (current_column): Now returns float.
10114 (indented_beyond_p): 3rd arg now a float.
10115
10116 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10117
10118 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10119 is Qcompound_text_with_extensions.
10120
10121 * xselect.c (lisp_data_to_selection_data): Always set selection
10122 type as string if x_encode_text returns streingp non-NULL.
10123
10124 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10125
10126 2002-05-30 Richard M. Stallman <rms@gnu.org>
10127
10128 * window.c (Fset_window_configuration): Correct the handling
10129 of point in current buffer, to work with multiple windows.
10130
10131 2002-05-29 Colin Walters <walters@verbum.org>
10132
10133 * lread.c (Fread_from_string): Don't depend on order of evaluation
10134 for C function parameters.
10135
10136 2002-05-28 Richard M. Stallman <rms@gnu.org>
10137
10138 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10139 way for blinked-off state and for a nonselected window.
10140
10141 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10142 instead, see if the new start pos is at beginning of line.
10143
10144 * fileio.c (Fwrite_region): If START is a string, don't
10145 make any annotations.
10146
10147 * eval.c (syms_of_eval): Doc fix.
10148
10149 2002-05-28 Colin Walters <walters@debian.org>
10150
10151 * emacs.c (USAGE1): Add --no-splash.
10152 (standard_args): Ditto.
10153
10154 2002-05-28 Colin Walters <walters@gnu.org>
10155
10156 * lread.c (readchar_count): New variable.
10157 (readchar): Increment it.
10158 (unreadchar): Decrement it.
10159 (read_multibyte): Decrement it.
10160 (Vread_with_symbol_positions): New variable.
10161 (Vread_symbol_positions_list): New variable.
10162 (read_internal_start): New function, created from Fread and
10163 Fread_from_string. Handle Vread_symbol_positions_list and
10164 Vread_with_symbol_positions.
10165 (readevalloop, Fread, Fread_from_string): Use it.
10166 (read1): Use readchar_count to add symbol positions to
10167 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10168 (syms_of_lread): DEFVAR_LISP and initialize them.
10169
10170 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10171 (substitute_object_recurse, substitute_object_in_subtree)
10172 (substitute_in_interval): Prototype.
10173 (read_multibyte): Return c if it's less than zero.
10174
10175 2002-05-28 Kim F. Storm <storm@cua.dk>
10176
10177 * fileio.c (Fread_file_name_internal): Added brute-force
10178 speed up for using predicate file-directory-p.
10179
10180 2002-05-28 Kim F. Storm <storm@cua.dk>
10181
10182 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10183 New variables.
10184 (syms_of_fileio): DEFVAR_LISP them.
10185 (read_file_name_cleanup): New unwind function.
10186 (Fread_file_name_internal): Only return completions satifying
10187 Vread_file_name_predicate. Temporarily unwind protect and rebind
10188 default-directory while checking completions against the predicate.
10189 (Fread_file_name): Added PREDICATE argument. Specbind it to
10190 Vread_file_name_predicate during completion.
10191 Call Vread_file_name_function to read the file name if non-nil.
10192
10193 * lisp.h (Fread_file_name): Now has 6 args.
10194
10195 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10196 predicate for Fread_file_name when reading directory name.
10197 Supply Qnil for predicate in other calls to Fread_file_name.
10198
10199 2002-05-26 Miles Bader <miles@gnu.org>
10200
10201 * term.c (tty_capable_p): New function.
10202 * dispextern.h (tty_capable_p): New function declaration.
10203 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10204 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10205
10206 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10207
10208 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10209 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10210 (Vwrite_region_annotate_functions): Docstring fix.
10211
10212 2002-05-23 Kim F. Storm <storm@cua.dk>
10213
10214 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10215 phys_cursor's hpos is overwritten. This is still not completely
10216 correct, as it doesn't really make sense to use hpos at all to
10217 get the cursor glyph (as that is relative to the width of the
10218 characters on the line, which may have changed during the update).
10219
10220 2002-05-22 Jason Rumney <jasonr@gnu.org>
10221
10222 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10223 Lisp_Object.
10224 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10225 Use modified enumfont_t struct.
10226
10227 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10228
10229 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10230 Handle the `hbar' cursor type.
10231 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10232
10233 * w32fns.c (Qhbar): New variable.
10234 (x_specified_cursor_type): Use it.
10235
10236 2002-05-21 Ken Raeburn <raeburn@gnu.org>
10237
10238 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10239 now, when the address is needed.
10240
10241 2002-05-21 Colin Walters <walters@gnu.org>
10242
10243 * Makefile.in (shortlisp): Add font-core.el.
10244
10245 2002-05-20 Richard M. Stallman <rms@gnu.org>
10246
10247 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10248
10249 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10250 equivalent key bindings here.
10251
10252 2002-05-20 Ken Raeburn <raeburn@gnu.org>
10253
10254 Change symbol structure to contain a lisp object for the symbol
10255 name:
10256 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10257 object field named "xname".
10258 (SYMBOL_NAME): New macro.
10259 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10260 name field.
10261 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10262 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10263 instead of name field.
10264 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10265 SYMBOL_NAME instead of XSYMBOL and name field.
10266 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10267 instead of XSYMBOL and name field.
10268 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10269 and SYMBOL_NAME instead of XSYMBOL and name field.
10270 * coding.c (Fread_coding_system, code_convert_region1)
10271 (code_convert_string1, code_convert_string_norecord)
10272 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10273 XSYMBOL and name field.
10274 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10275 (Fmake_variable_buffer_local, Fmake_local_variable)
10276 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10277 of XSYMBOL and name field.
10278 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10279 XSYMBOL and name field.
10280 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10281 instead of XSYMBOL and name field.
10282 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10283 XSYMBOL and name field.
10284 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10285 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10286 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10287 instead of XSYMBOL and name field.
10288 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10289 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10290 (parse_solitary_modifier, Fexecute_extended_command):
10291 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10292 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10293 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10294 of XSYMBOL and name field.
10295 (describe_command, describe_translation): Use SYMBOL_NAME and
10296 assignment instead of XSYMBOL and name field and XSETSTRING.
10297 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10298 instead of XSYMBOL and name field.
10299 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10300 name field and XSETSTRING.
10301 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10302 of XSYMBOL and name field.
10303 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10304 assignment instead of XSYMBOL and name field and XSETSTRING.
10305 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10306 XSTRING instead of XSYMBOL and name field.
10307 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10308 and XSTRING instead of XSYMBOL and name field.
10309 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10310 and XSTRING instead of XSYMBOL and name field.
10311 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10312 XSTRING instead of XSYMBOL and name field.
10313 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10314 of XSYMBOL and name field.
10315 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10316 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10317
10318 2002-05-19 Ken Raeburn <raeburn@gnu.org>
10319
10320 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10321 and XCDR real rvalues in most configurations.
10322
10323 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10324 Don't take the address of the cdr part of a cons cell; instead, track
10325 the parent cell and call XSETCDR, or set the variable for the head
10326 of the list if we haven't started down the list yet.
10327
10328 2002-05-19 Richard M. Stallman <rms@gnu.org>
10329
10330 * doc.c (reread_doc_file): Don't ask for confirmation.
10331
10332 2002-05-18 Jason Rumney <jasonr@gnu.org>
10333
10334 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10335 (xbm_load_image): Use it.
10336 (xbm_load): Ditto.
10337 (xbm_read_bitmap_data): Reverted to xfns.c version.
10338 From David Ponce <david@dponce.com>.
10339
10340 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10341
10342 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10343 2.02 and later.
10344
10345 2002-05-16 Juanma Barranquero <lektu@terra.es>
10346
10347 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10348
10349 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10350
10351 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10352 meaningful test.
10353 (read_char_minibuf_menu_prompt): Fix typo.
10354
10355 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10356
10357 * eval.c (Fcommandp): Doc fix.
10358
10359 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10360
10361 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10362 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10363 (Fset_keymap_parent): Gcpro a bit more.
10364 (access_keymap): Gcpro around meta_map call and around the main loop.
10365 (get_keyelt): Gcpro when following indirect references.
10366 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10367 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10368 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10369 Remove useless ad-hoc remap code.
10370
10371 2002-05-13 Richard M. Stallman <rms@gnu.org>
10372
10373 * search.c (search_buffer): Give up boyer moore search if inverse
10374 translation change charset_base.
10375
10376 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10377
10378 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10379 characters is carried over from the previous block of text, adjust
10380 coding->produced to account for the extra character.
10381
10382 2002-05-11 Andreas Schwab <schwab@suse.de>
10383
10384 * coding.c (intersection): Keep the elements of the returned list
10385 in the same order as in the first list.
10386
10387 2002-05-11 Kim F. Storm <storm@cua.dk>
10388
10389 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10390 only update cmm_size if realloc actually succeeds.
10391 Testing with initial size of 2 elements revealed that using
10392 realloc on GNU/Linux would cause a random trap in xmalloc
10393 later on, so I rewrote the code to use malloc/bcopy/free instead
10394 of realloc.
10395
10396 2002-05-10 Jason Rumney <jasonr@gnu.org>
10397
10398 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10399
10400 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10401
10402 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10403 parens, to ensure correct evaluation order.
10404
10405 2002-05-10 Kim F. Storm <storm@cua.dk>
10406
10407 * keymap.c (Vemulation_mode_map_alists): New variable.
10408 (syms_of_keymap): DEFVAR_LISP it.
10409 (current_minor_maps): Process keymap alists in that list before
10410 minor-mode-overriding-map-alist and minor-mode-map-alist.
10411
10412 2002-05-09 Richard M. Stallman <rms@gnu.org>
10413
10414 * search.c (Freplace_match): Doc fix.
10415
10416 2002-05-09 Kim F. Storm <storm@cua.dk>
10417
10418 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10419 Enlarge cursor rectangle drawn around image with non-zero relief.
10420
10421 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10422 Enlarge cursor rectangle drawn around image with non-zero relief.
10423
10424 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10425 Enlarge cursor rectangle drawn around image with non-zero relief.
10426
10427 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10428
10429 * xselect.c (lisp_data_to_selection_data): Don't set selection
10430 type if comes from the Lisp object's car. If the selection
10431 contains a pure ASCII text, always return QSTRING as its type.
10432
10433 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10434
10435 * mac.c (mac-cut-function): Doc fix.
10436
10437 2002-05-05 Richard M. Stallman <rms@gnu.org>
10438
10439 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10440
10441 2002-05-04 Jason Rumney <jasonr@gnu.org>
10442
10443 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10444 for event-click-count.
10445
10446 * process.c (init_process): Only add server subfeature if we can
10447 use non-blocking I/O.
10448
10449 2002-05-04 Andrew Choi <akochoi@shaw.ca>
10450
10451 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10452 repeatedly.
10453
10454 2002-05-03 Jason Rumney <jasonr@gnu.org>
10455
10456 * process.c (Fmake_network_process): Only support server sockets
10457 when we can make them non-blocking.
10458
10459 * s/ms-w32.h (HAVE_SELECT): Define.
10460
10461 * w32.h (FILE_NDELAY): New flag.
10462
10463 * w32.c (sys_getpeername, fcntl): New functions.
10464 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10465
10466 * w32proc.c: include sys/file.h.
10467
10468 2002-05-03 Colin Walters <walters@verbum.org>
10469
10470 * callproc.c (Vgame_score_directory): Renamed to
10471 Vshared_game_score_directory.
10472
10473 2002-04-30 Richard M. Stallman <rms@gnu.org>
10474
10475 * s/gnu.h [emacs]: Include stdio.h.
10476 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10477
10478 * eval.c (do_autoload): Error if called while preparing to dump.
10479
10480 * fns.c (Frequire): Error if need to load while preparing to dump.
10481
10482 2002-04-28 Colin Walters <walters@verbum.org>
10483
10484 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10485 Default to "~/.emacs.d/games".
10486
10487 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10488
10489 * lread.c (openp): Change arg exec_only to predicate.
10490 (build_load_history): Use XCAR/XCDR.
10491 (Flocate_file_internal): New fun.
10492 (syms_of_lread): Defsubr it.
10493 (Fload): Update call to openp.
10494
10495 * lisp.h (openp): Update prototype.
10496
10497 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10498 * w32proc.c (sys_spawnve):
10499 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10500 * w32.c (check_windows_init_file):
10501 * sound.c (Fplay_sound_internal):
10502 * process.c (Fstart_process):
10503 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10504 * mac.c (run_mac_command):
10505 * emacs.c (init_cmdargs):
10506 * callproc.c (Fcall_process): Update call to openp.
10507
10508 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10509
10510 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10511
10512 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10513
10514 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10515 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10516
10517 2002-04-28 Richard M. Stallman <rms@gnu.org>
10518
10519 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10520
10521 * eval.c (Fcommandp): New arg for_call_interactively.
10522 * lisp.h (Fcommandp): Declare new arg.
10523
10524 2002-04-28 Jason Rumney <jasonr@gnu.org>
10525
10526 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10527
10528 * w32.c (stat, fstat): Use file index information to generate
10529 inodes for directories where available.
10530
10531 2002-04-26 Andrew Choi <akochoi@shaw.ca>
10532
10533 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10534 [HAVE_CARBON]: Include Mac object files.
10535
10536 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10537 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10538 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10539 MAC_OSX, and MAC_OS instead of macintosh.
10540
10541 * editfns.c [MAC_OS8]: Include stdio.h.
10542
10543 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10544
10545 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10546 Apple Monaco.
10547
10548 * process.c: Declare QCfamily and QCfilter as extern.
10549 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10550 calling select.
10551
10552 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10553
10554 * tparam.c [MAC_OSX]: Don't define BC and UP.
10555
10556 * config.in [HAVE_CARBON]: Add.
10557
10558 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10559 Move here from mac/src and mac/inc.
10560
10561 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10562
10563 2002-04-26 Gerd Moellmann <gerd@gnu.org>
10564
10565 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10566 Compute phys_cursor_width from the x position returned
10567 by x_draw_glyhs, which is cheaper.
10568 (x_display_and_set_cursor): Compute the buffer-local value
10569 of `cursor-in-non-selected-windows' only when needed.
10570
10571 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10572
10573 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10574 cursor on a stretch glyph has a width that depends on
10575 x_stretch_cursor_p.
10576
10577 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10578
10579 * abbrev.c (abbrev-start-location): Doc fix.
10580
10581 * indent.c (Fvertical_motion): Fix last change.
10582
10583 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10584
10585 * indent.c (Fvertical_motion): Move to the start of the line
10586 containing PT before moving up or down.
10587
10588 2002-04-24 Gerd Moellmann <gerd@gnu.org>
10589
10590 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10591 case of writing a whole row, more or less analogous to the case of
10592 writing only parts of a row.
10593
10594 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10595 0 for NO_CURSOR.
10596
10597 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10598
10599 2002-04-23 Colin Walters <walters@verbum.org>
10600
10601 * buffer.c (syms_of_buffer): Doc fix.
10602
10603 2002-04-23 Gerd Moellmann <gerd@gnu.org>
10604
10605 * xterm.c (notice_overwritten_cursor): Handle the special case
10606 of the cursor being in the first blank non-text line at the
10607 end of a window.
10608
10609 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10610 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10611 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10612 bar cursors only, to make phys_cursor_width contain what its name
10613 suggests.
10614 (notice_overwritten_cursor): Consider the cursor image erased if
10615 the output area intersects the cursor image in y-direction.
10616
10617 2002-04-23 Simon Marshall <simon@gnu.org>
10618
10619 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10620 to XC_hand2.
10621
10622 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10623
10624 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10625
10626 2002-04-22 Kim F. Storm <storm@cua.dk>
10627
10628 * textprop.c (remove_properties): Fixed trap for malformed plist.
10629
10630 2002-04-22 Richard M. Stallman <rms@gnu.org>
10631
10632 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10633
10634 * window.c (make_window): Initialize height_fixed_p,
10635 last_cursor_off_p, and p->cursor_off_p slots.
10636
10637 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10638
10639 * fns.c (use-dialog-box): Doc fix.
10640
10641 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10642
10643 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10644 variables `row', `i' and `area'.
10645 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10646 toolkit library.
10647
10648 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10649
10650 * xfaces.c (clear_font_table): Don't free the default font of
10651 a frame even if it's on another display.
10652 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10653 that could be Qt.
10654
10655 2002-04-19 Juanma Barranquero <lektu@terra.es>
10656
10657 * indent.c (Fmove_to_column): Remove unused local variable
10658 `next_boundary_byte'.
10659 (current_column_1): Likewise.
10660
10661 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10662
10663 * msdos.c (Qhbar): New variable.
10664 (syms_of_msdos): Intern and staticpro it.
10665 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10666 cursor type.
10667
10668 2002-04-19 Dave Lambert <dlambert@acm.org>
10669
10670 Theses change implement an underscore-like (`hbar') cursor.
10671
10672 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10673
10674 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10675 Handle the `hbar' cursor type.
10676 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10677
10678 * xfns.c (Qhbar): New variable.
10679 (syms_of_xfns): Intern and staticpro it.
10680 (x_specified_cursor_type): Handle `hbar' cursor.
10681
10682 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10683 not defined.
10684
10685 2002-04-18 Richard M. Stallman <rms@gnu.org>
10686
10687 * textprop.c (remove_properties): New arg LIST allows scanning
10688 either a list or a plist.
10689 (interval_has_some_properties_list): New function, like
10690 interval_has_some_properties using list instead of plist.
10691 All callers changed.
10692 (Fremove_list_of_text_properties): New function.
10693 (syms_of_textprop): Defsubr it.
10694
10695 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10696
10697 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10698
10699 2002-04-17 Juanma Barranquero <lektu@terra.es>
10700
10701 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10702
10703 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10704
10705 * window.c (coordinates_in_window): Don't report on margin area
10706 if its width is zero.
10707
10708 2002-04-16 Jason Rumney <jasonr@gnu.org>
10709
10710 * w32fns.c (Fx_file_dialog): Decode file name before using.
10711
10712 * w32term.c (construct_drag_n_drop): Likewise.
10713
10714 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10715
10716 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10717 store load-history in pure space.
10718
10719 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10720
10721 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10722
10723 * xterm.c (Qlatin_1, Qutf_8): New vars.
10724 (syms_of_xterm): Initialize them.
10725 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10726 decoding the output of X*LookupString.
10727 Always use latin-1 to decode the output of XLookupString.
10728 Try Xutf8LookupString if XmbLookupString failed.
10729
10730 * region-cache.c (new_region_cache): Use BEG.
10731
10732 2002-04-16 Gerd Moellmann <gerd@gnu.org>
10733
10734 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10735 configuration files.
10736 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10737 returns 0.
10738
10739 2002-04-15 Andreas Schwab <schwab@suse.de>
10740
10741 * config.in: Regenerated using autoheader.
10742
10743 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10744 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10745 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10746 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10747 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10748 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10749 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10750 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10751 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10752 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10753 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10754 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10755 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10756 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10757 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10758 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10759 STACK_DIRECTION, now set by autoconf.
10760
10761 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10762
10763 * dispnew.c (marginal_area_string): Sort arguments.
10764
10765 * dispextern.h (marginal_area_string): Add prototype.
10766
10767 2002-04-13 Richard M. Stallman <rms@gnu.org>
10768
10769 * fileio.c (Finsert_file_contents):
10770 Don't call temp_output_buffer_setup--do just part, by hand.
10771
10772 * coding.c (run_pre_post_conversion_on_str):
10773 Don't call temp_output_buffer_setup--do just part, by hand.
10774
10775 * keyboard.c (command_loop_1): Don't call start_hourglass
10776 or cancel_hourglass when executing a macro.
10777
10778 * marker.c (count_markers): New function.
10779
10780 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10781 grow without limit. Move recently used elements to the front.
10782
10783 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10784
10785 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10786
10787 2002-04-12 Gerd Moellmann <gerd@gnu.org>
10788
10789 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10790 rows marginal areas.
10791 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10792 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10793
10794 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10795
10796 2002-04-12 Dave Love <fx@gnu.org>
10797
10798 * dispnew.c (marginal_area_string): New.
10799
10800 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10801 (Qleft_margin, Qright_margin): Declare.
10802 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10803
10804 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10805 note_mode_line_highlight and extended.
10806
10807 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10808 (make_lispy_event): Deal with mouse events in margins.
10809
10810 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10811
10812 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10813
10814 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10815 than deactivating the mark if tmm is set to `lambda'.
10816 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10817 Use a single event for HELP_EVENT.
10818 (Fexecute_extended_command): Save last_point_position.
10819
10820 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10821
10822 * lisp.h (Fpropertize): Add prototype.
10823
10824 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10825
10826 2002-04-10 Colin Walters <walters@verbum.org>
10827
10828 * config.in: Add HAVE_SHARED_GAME_DIR.
10829
10830 * callproc.c: (Vgame_score_directory): New variable.
10831 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10832
10833 2002-04-10 Richard M. Stallman <rms@gnu.org>
10834
10835 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10836
10837 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10838
10839 * minibuf.c (read_minibuf): Use empty_string.
10840 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10841 Short-circuit the search as soon as it "failed".
10842 (Fall_completions): Allow lambda forms and lists of strings for alist.
10843 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10844 when require_match is nil.
10845 (Ftest_completion): Rename from `test_completion' and export to elisp.
10846 Call the predicate also when alist is a list.
10847 Obey Vcompletion_regexp_list.
10848 (do_completion, Fminibuffer_complete_and_exit): Use it.
10849 (Fassoc_string): Rename from `assoc_for_completion'.
10850 Allow list of strings as well and export to elisp.
10851
10852 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10853
10854 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10855
10856 2002-04-08 Juanma Barranquero <lektu@terra.es>
10857
10858 * w32.c (sys_accept): Don't hide variable `s'.
10859
10860 2002-04-05 Gerd Moellmann <gerd@gnu.org>
10861
10862 * callint.c (Fcall_interactively): Use INTEGERP instead of
10863 NUMBERP for checking Vhistory_length.
10864
10865 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10866
10867 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10868 Doc fix to reflect it.
10869
10870 2002-04-04 Richard M. Stallman <rms@gnu.org>
10871
10872 * xdisp.c (display_mode_element): New arg RISKY.
10873 Disregard text props found or specified within a variable
10874 that isn't marked risky-local-variable.
10875 (Qrisky_local_variable): New variable.
10876 (syms_of_xdisp): Init and staticpro it.
10877
10878 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10879
10880 * undo.c (record_point): New fun.
10881 (record_delete, record_insert): Use it.
10882
10883 2002-04-03 Juanma Barranquero <lektu@terra.es>
10884
10885 * doc.c (Fdocumentation): Add missing parentheses.
10886 (Fdocumentation_property): Likewise.
10887
10888 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10889
10890 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10891 data is 0, just return nil.
10892
10893 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10894
10895 * msdos.c (syms_of_msdos): Fix last change with
10896 mouse_autoselect_window.
10897
10898 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10899
10900 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10901 mouse_autoselect_window.
10902
10903 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10904
10905 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10906 with system-specific keysyms. Use it also for unknown function keys.
10907
10908 * doc.c (reread_doc_file): Return whether reload was attempted.
10909 (Fdocumentation, Fdocumentation_property): Don't try to reload
10910 if the doc is 0 and only ask once.
10911
10912 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10913
10914 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10915
10916 * keyboard.c (read_char): If the event was Qselect_window,
10917 restore timer_idleness_start_time to its previous value.
10918
10919 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10920
10921 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10922
10923 * region-cache.c (new_region_cache): Use BEG.
10924
10925 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10926 Use BEG and BEG_BYTE.
10927
10928 * doc.c (get_doc_string): Return nil if the location is wrong.
10929 (reread_doc_file): New fun.
10930 (Fdocumentation, Fdocumentation_property):
10931 Call it if get_doc_string fails.
10932 (Fsnarf_documentation): Make it work for a dumped Emacs.
10933
10934 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10935 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10936
10937 * charset.c (Fstring): Allow 0 arguments.
10938
10939 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10940
10941 * process.c (DATAGRAM_CONN_P, list_processes_1)
10942 (Fprocess_datagram_address, Fset_process_datagram_address)
10943 (Fset_network_process_options, server_accept_connection):
10944 Fix some int/Lisp_Object confusions (thank you union types).
10945
10946 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10947
10948 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10949
10950 * w32term.c: Likewise.
10951 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10952
10953 * keyboard.c (Qselect_window): New symbol.
10954 (head_table): Use it.
10955 (keys_of_keyboard): Bound select-window event to handle-select-window.
10956 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10957
10958 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10959 (last_window): New variable.
10960 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10961 (note_mouse_movement): Remove reimplemented code in #if 0.
10962 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10963 Emacs windows.
10964
10965 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10966
10967 2002-03-31 Gerd Moellmann <gerd@gnu.org>
10968
10969 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10970 Callers changed.
10971
10972 2002-03-30 Richard M. Stallman <rms@gnu.org>
10973
10974 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10975 loop whenever it stops making progress.
10976
10977 * widget.c (set_frame_size): Don't call change_frame_size.
10978
10979 2002-03-30 Gerd Moellmann <gerd@gnu.org>
10980
10981 * dispnew.c (direct_output_for_insert):
10982 Call mark_window_display_accurate.
10983
10984 2002-03-29 Jason Rumney <jasonr@gnu.org>
10985
10986 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10987
10988 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10989
10990 * Makefile.in (lread.o): Depend on coding.h.
10991
10992 * lread.c (openp, Fload): Encode the file name before passing it
10993 to `stat', `access', and `emacs_open'.
10994 (openp): GCPRO the encoded file name. Don't recompute Lisp
10995 strings unnecessarily.
10996
10997 2002-03-29 Kim F. Storm <storm@cua.dk>
10998
10999 * fns.c (Flax_plist_put): Doc fix.
11000
11001 2002-03-28 Miles Bader <miles@gnu.org>
11002
11003 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11004
11005 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11006
11007 * process.c (set-network-process-options): Add usage.
11008 (make-network-process): Doc fix.
11009
11010 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11011
11012 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11013
11014 2002-03-26 Richard M. Stallman <rms@gnu.org>
11015
11016 * fns.c (Fsubstring_no_properties): New function.
11017 (Flax_plist_get, Flax_plist_put): New functions.
11018 (syms_of_fns): defsubr them.
11019
11020 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11021 don't test or alter w->update_mode_line.
11022
11023 * window.c (Fdisplay_buffer): Doc fix.
11024
11025 2002-03-24 Richard M. Stallman <rms@gnu.org>
11026
11027 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11028
11029 2002-03-24 Gerd Moellmann <gerd@gnu.org>
11030
11031 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11032 (Fdefmacro): Handle `(declare ...)'.
11033 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11034 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11035
11036 2002-03-24 Jason Rumney <jasonr@gnu.org>
11037
11038 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11039 (xbm_file_p): Add prototypes.
11040 (xbm_format, xbm_image_p): Sync with xfns.c.
11041 (reflect_byte): New function.
11042 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11043 (xbm_load_image): Create bitmaps with a depth of 1.
11044 (init_xfns): Enable XBM images.
11045
11046 2002-03-23 Jason Rumney <jasonr@gnu.org>
11047
11048 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11049 correctly. Do not pass up_modifier to keyboard buffer.
11050
11051 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11052
11053 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11054
11055 * Makefile.in (bootstrapclean): New target.
11056 (bootstrap-temacs, bootstrap-doc): Remove.
11057 (bootstrap-emacs): Use a bog-standard `temacs'.
11058 Don't bother to build a DOC file.
11059
11060 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11061
11062 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11063 in temacs even if !CANNOT_DUMP.
11064 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11065
11066 * alloc.c (check_pure_size): Only output a warning.
11067
11068 2002-03-22 Jason Rumney <jasonr@gnu.org>
11069
11070 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11071 supported.
11072
11073 * w32term.c (zv_bits): Declare as short, for word alignment.
11074 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11075 (syms_of_w32term): Define x-use-underline-position-properties.
11076
11077 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11078 (clear_image_cache): Block input, fix logic, clear matrices in
11079 all frames that share this cache.
11080
11081 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11082
11083 * emacs.c (main): Update the Copyright year in the blurb printed
11084 by "emacs --version".
11085
11086 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11087
11088 * xterm.c (XTread_socket): If XK_ISO_Lock and
11089 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11090 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11091
11092 2002-03-21 Kim F. Storm <storm@cua.dk>
11093
11094 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11095 menu-bar bindings in keymap and local-map properties _are_ used.
11096 But try keymap property first in accordance with 2002-01-03 patch.
11097 Added comment describing why this is not always reliable.
11098 (tool_bar_items): Ditto for tool-bar.
11099
11100 2002-03-21 Jason Rumney <jasonr@gnu.org>
11101
11102 * w32fns.c (x_clear_image_1): Disable color table code.
11103
11104 2002-03-21 Kim F. Storm <storm@cua.dk>
11105
11106 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11107 removed the wrong version of the DEFUN macro; fixed it.
11108
11109 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11110 Fmember rather than Fmemq).
11111 (Fprovide): Check that subfeatures is a list.
11112
11113 * process.c (QCfeature, QCdatagram): Removed variables.
11114 (QCtype, Qdatagram): New variables.
11115 (network_process_featurep): Removed function.
11116 (Fmake_network_process): Removed :feature check.
11117 Use :type 'datagram instead of :datagram t to create a datagram
11118 socket. This allows us to add other connection types (e.g. raw
11119 sockets) later in a consistent manner.
11120 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11121 supported subfeatures for feature make-network-process.
11122 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11123 Intern and staticpro QCtype and Qdatagram.
11124 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11125
11126 * xfns.c: (QCtype): Remove duplicate declaration and
11127 initialization (is now declared in process.c).
11128
11129 * w32fns.c: (QCtype): Remove duplicate declaration and
11130 initialization (is now declared in process.c).
11131
11132 2002-03-21 Richard M. Stallman <rms@gnu.org>
11133
11134 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11135 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11136 when jumping to `fail' to avoid undoing reg changes in the
11137 last iteration of the loop.
11138 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11139
11140 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11141 Depend on process.h.
11142
11143 2002-03-20 Jason Rumney <jasonr@gnu.org>
11144
11145 Most of the following changes are still conditional on HAVE_IMAGES
11146 which is not set by default on Windows.
11147
11148 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11149
11150 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11151 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11152 (four_corners_best, x_clear_image_1, x_clear_image)
11153 (x_alloc_image_color, postprocess_image)
11154 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11155 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11156 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11157
11158 * w32gui.h (struct XImage): Define.
11159
11160 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11161 extract mouse co-ordinates.
11162
11163 2002-03-20 Jason Rumney <jasonr@gnu.org>
11164
11165 * w32.c (init_winsock): Dynamically load new server and UDP
11166 socket functions.
11167 (socket_to_fd): New function.
11168 (sys_socket): Use it.
11169 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11170 (sys_recvfrom, sys_sendto): New wrapper functions.
11171
11172 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11173 and initialization.
11174
11175 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11176
11177 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11178
11179 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11180 Don't use "sun" as a variable, it's a predefined constant on Sun
11181 machines.
11182
11183 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11184
11185 * bytecode.c (Fbyte_code): Revert last change.
11186
11187 2002-03-19 Kim F. Storm <storm@cua.dk>
11188
11189 * makefile.w32-in (LIBS): Add $(WSOCK32).
11190 From David Ponce <dponce@voila.fr>.
11191
11192 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11193
11194 * process.c (wait_reading_process_input): Move variables `pname'
11195 and `pnamelen' down where they are used.
11196
11197 * bytecode.c (Fbyte_code): Discard unused computed value to
11198 prevent gcc warning.
11199
11200 * lisp.h (Fplist_member): Add prototype.
11201
11202 2002-03-18 Kim F. Storm <storm@cua.dk>
11203
11204 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11205 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11206
11207 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11208 Remove explicit GNU_LINUX settings for datagram support.
11209
11210 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11211
11212 * process.c (Fmake_network_process): Remove unused variable `sa'.
11213 Doc fix. Add usage:.
11214 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11215
11216 2002-03-17 Richard M. Stallman <rms@gnu.org>
11217
11218 * xdisp.c (cursor_type_changed): New variable.
11219 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11220 Clear it when clearing windows_or_buffers_changed.
11221 (try_cursor_movement, redisplay_window, try_window_id)
11222 (try_window_reusing_current_matrix): Test cursor_type_changed
11223 along with windows_or_buffers_changed.
11224
11225 * window.h (cursor_type_changed): New variable.
11226
11227 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11228 not update_mode_lines, and always set it to 1.
11229
11230 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11231 if no frames needed redrawing.
11232
11233 2002-03-17 Kim F. Storm <storm@cua.dk>
11234
11235 The following changes add support for network server processes,
11236 datagram connections, and local (unix) sockets.
11237
11238 * process.h (struct Lisp_Process): New member log.
11239 Doc fix: Member command used to indicate stopped network process.
11240 Doc fix: Member childp contains plist for network process.
11241 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11242
11243 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11244 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11245 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11246 New variables.
11247 (NETCONN1_P): New macro.
11248 (DATAGRAM_SOCKETS): New conditional symbol.
11249 (datagram_address): New array.
11250 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11251 (status_message): Use concat3.
11252 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11253 for a stopped network process.
11254 (Fset_process_buffer): Update contact plist for network process.
11255 (Fset_process_filter): Ditto. Don't enable input for stopped
11256 network processes. Server must listen, even if filter is t.
11257 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11258 New functions.
11259 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11260 (Fprocess_contact): Added KEY argument. Handle datagrams.
11261 (list_processes_1): Optionally show only processes with the query
11262 on exit flag set. Dynamically adjust column widths. Omit tty
11263 column if not needed. Report stopped network processes.
11264 Identify server and datagram network processes.
11265 (Flist_processes): New optional arg `query-only'.
11266 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11267 (conv_lisp_to_sockaddr, set_socket_options)
11268 (network_process_featurep, unwind_request_sigio): New helper functions.
11269 (Fprocess_datagram_address, Fset_process_datagram_address):
11270 (Fset_network_process_options): New lisp functions.
11271 (Fopen_network_stream): Removed. Now defined in simple.el.
11272 (Fmake_network_process): New lisp function. Code is based on previous
11273 Fopen_network_stream, but heavily reworked with new property list based
11274 argument list, support for datagrams, server processes, and local
11275 sockets in addition to old client-only functionality.
11276 (server_accept_connection): New function.
11277 (wait_reading_process_input): Use it to handle incoming connects.
11278 Do not enable input on a new connection if process is stopped.
11279 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11280 (send_process): Handle datagram sockets.
11281 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11282 network process is indicated by setting command field to t .
11283 (Fprocess_send_eof): No-op if datagram connection.
11284 (Fstatus_notify): Don't read input for a stream server socket or a
11285 stopped network process.
11286 (init_process): Initialize datagram_address array.
11287 (syms_of_process): Intern and staticpro new variables, defsubr new
11288 functions.
11289
11290 2002-03-16 Jason Rumney <jasonr@gnu.org>
11291
11292 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11293 startup case.
11294
11295 2002-03-16 Richard M. Stallman <rms@gnu.org>
11296
11297 * xdisp.c (redisplay_internal, redisplay_windows):
11298 Use list_of_error to call internal_condition_case_1.
11299 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11300 so as to catch all errors with no possibility of debugger redisplay.
11301 (list_of_error): New variable.
11302 (syms_of_xdisp): Init and staticpro it.
11303
11304 * print.c (print_object): Delete `\ ' from printed rep of frame.
11305
11306 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11307
11308 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11309 until its implementation is fixed.
11310
11311 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11312
11313 * xfns.c (png_load): Remove unused variable `gamma_str'.
11314
11315 2002-03-14 Richard M. Stallman <rms@gnu.org>
11316
11317 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11318
11319 2002-03-14 Miles Bader <miles@gnu.org>
11320
11321 * intervals.c (adjust_for_invis_intang): New function.
11322 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11323 work for dealing with invisible+intangible regions. Do so before
11324 and after both forward and backward movements, to handle both
11325 front-sticky and rear-sticky cases.
11326 * textprop.c (text_property_stickiness): Function moved here from
11327 `editfns.c'.
11328 * intervals.h (text_property_stickiness): New declaration.
11329 * editfns.c (char_property_eq): Function removed.
11330 (text_property_stickiness): Function moved to `textprop.c'.
11331
11332 2002-03-13 Jason Rumney <jasonr@gnu.org>
11333
11334 * config.in: Add STRFTIME_NO_POSIX2.
11335
11336 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11337 and %OX when underlying strftime does not.
11338
11339 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11340
11341 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11342 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11343 line) to avoid annoying flicker.
11344 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11345 (XTread_socket): Mark it static.
11346
11347 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11348
11349 2002-03-13 Kim F. Storm <storm@cua.dk>
11350
11351 * puresize.h (BASE_PURESIZE): Increase to 775000.
11352
11353 2002-03-12 Juanma Barranquero <lektu@terra.es>
11354
11355 * editfns.c (syms_of_editfns): Fix typo.
11356
11357 2002-03-12 Gerd Moellmann <gerd@gnu.org>
11358
11359 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11360 Include termopt.h for interrupt_input.
11361
11362 2002-03-11 Andreas Schwab <schwab@suse.de>
11363
11364 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11365
11366 2002-03-11 Gerd Moellmann <gerd@gnu.org>
11367
11368 * xterm.c (note_mouse_movement): Put code for
11369 x_autoselect_window_p in #if 0.
11370
11371 * lread.c (Fload): Don't assume that message_with_string uses the
11372 string it is given like a C string.
11373
11374 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11375
11376 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11377
11378 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11379 x_session_have_connection.
11380 (x_initialize): Add call to x_session_initialize.
11381
11382 * termhooks.h (enum event_kind): Add save_session_event.
11383
11384 * keyboard.c: Add Emacs event save_session_event.
11385
11386 * emacs.c (main): Add call to syms_of_xsmfns.
11387
11388 * lisp.h: Declare syms_of_xsmfns as extern.
11389
11390 * config.in: Add HAVE_X_SM.
11391
11392 * Makefile.in (LIBXT): Add -lSM -lICE
11393 if HAVE_X_SM and not USE_X_TOOLKIT.
11394 (XOBJ): New file xsmfns.c added.
11395
11396 * xsmfns.c: New file for X session management.
11397
11398 2002-03-09 Jason Rumney <jasonr@gnu.org>
11399
11400 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11401 read-only when setting modified time.
11402
11403 2002-03-08 Gerd Moellmann <gerd@gnu.org>
11404
11405 * xdisp.c (move_it_vertically_backward): At the end of the function,
11406 when moving forward by lines, treat terminal frames specially.
11407
11408 * keyboard.c (echo_char): Make sure to add a separator between
11409 keys even if echo_dash hasn't been called.
11410
11411 * xdisp.c: Use new string macros.
11412 (update_echo_area): Pass number of bytes to message3 instead of
11413 number of chars.
11414 (set_message_1): Don't access a string's size_byte directly.
11415 (decode_mode_spec_coding): Use number of bytes of eoltype string
11416 instead number of chars.
11417
11418 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11419
11420 2002-03-08 Juanma Barranquero <lektu@terra.es>
11421
11422 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11423 24-bit.
11424
11425 2002-03-06 Jason Rumney <jasonr@gnu.org>
11426
11427 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11428
11429 2002-03-06 Gerd Moellmann <gerd@gnu.org>
11430
11431 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11432 (cancel_echoing, echo_length, echo_truncate): Changed to
11433 work with new kboard definition.
11434 (echo_now): Use message3_nolog instead of message2_nolog.
11435
11436 * alloc.c (mark_kboards): Mark echo_string.
11437
11438 * keyboard.h (ECHOBUFSIZE): Removed.
11439 (struct kboard): Member echoptr removed, member echobuf renamed
11440 to echo_string.
11441
11442 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11443 message3 instead of message2 to display the message using STRING's
11444 text properties.
11445
11446 2002-03-05 Andreas Schwab <schwab@suse.de>
11447
11448 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11449
11450 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11451
11452 * frame.c (default-frame-alist): Explain that setting it doesn't
11453 affect existing frames.
11454
11455 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11456
11457 * indent.c (skip_invisible): Fix my brain fart.
11458
11459 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11460
11461 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11462
11463 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11464 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11465 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11466 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11467 and variables to use EMACS_INT instead of just int.
11468
11469 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11470
11471 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11472
11473 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11474 environment, pass it down with corrected value.
11475
11476 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11477
11478 * lread.c (read_filtered_event): Do not call start_hourglass
11479 before returning.
11480
11481 2002-03-04 Juanma Barranquero <lektu@terra.es>
11482
11483 * w32term.c (x_display_and_set_cursor): Fix typo.
11484
11485 2002-03-03 Richard M. Stallman <rms@gnu.org>
11486
11487 * fileio.c (Fmake_temp_name): Doc fix.
11488
11489 2002-03-03 Gary Wong <gtw@gnu.org>
11490
11491 * termcap.c [!emacs]: Replace ospeed for building standalone
11492 libtermcap, for binary compatibility.
11493
11494 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11495
11496 2002-03-03 Richard M. Stallman <rms@gnu.org>
11497
11498 * xrdb.c (file_p): Rename arg `path' to `filename'.
11499
11500 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11501 only if it is an integer.
11502
11503 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11504 If png_get_sRGB gives an answer, call png_set_gamma
11505 using the default image gamma value.
11506
11507 * lread.c (read1): When reading from a file, default string to
11508 multibyte only if it has some multibyte characters.
11509
11510 * print.c (print_object): Output multibyte chars 128...255
11511 using \x even if ! print_escape_multibyte.
11512
11513 * xdisp.c (display_mode_element): Move the places where
11514 bytepos, charpos, this, and lisp_string are set.
11515 Use lisp_string to set bytepos.
11516
11517 * xdisp.c (redisplay_internal):
11518 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11519
11520 * xdisp.c (display_mode_element): Merge properties specified with
11521 :propertize onto those that come with the string.
11522
11523 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11524
11525 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11526 automatic-hscrolling. Users changed.
11527 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11528 Users changed.
11529 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11530
11531 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11532
11533 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11534
11535 2002-03-02 Kim F. Storm <storm@cua.dk>
11536
11537 * window.c (Fminibuffer_selected_window): New function.
11538 (syms_of_window): Defsubr it.
11539
11540 2002-03-01 Kim F. Storm <storm@cua.dk>
11541
11542 * window.h (struct window): New member phys_cursor_width.
11543
11544 * window.c (make_window, replace_window): Init phys_cursor_width.
11545
11546 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11547 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11548
11549 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11550 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11551
11552 * lisp.h (GCPRO6): New macro.
11553
11554 * process.c (Fopen_network_stream): Use GCPRO6.
11555
11556 2002-03-01 Kim F. Storm <storm@cua.dk>
11557
11558 * process.c (Qconnect, Qfailed): New variables.
11559 (syms_of_process): Intern and staticpro them.
11560 (Fprocess_status): Document connect and failed return values.
11561 [NON_BLOCKING_CONNECT]: New conditional.
11562 (connect_wait_mask, num_pending_connects): New variables.
11563 (status_message): Convert Qfailed status.
11564 (Fopen_network_stream): Added support for non-blocking connect.
11565 New optional args: filter, sentinel, non_blocking. Doc updated.
11566 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11567 (deactivate_process): Handle pending non-blocking connect.
11568 (wait_reading_process_input): Poll for status of non-blocking
11569 connects. Exec sentinel directly when connect succeeds.
11570 (status_notify): Don't read process output if not yet connected.
11571
11572 2002-02-28 Kim F. Storm <storm@cua.dk>
11573
11574 * window.c: (minibuf_selected_window): Renamed from
11575 Vminibuf_selected_window. Users changed.
11576 (syms_of_window): Staticpro it.
11577
11578 2002-02-26 Kim F. Storm <storm@cua.dk>
11579
11580 The following changes add a new Vminibuf_selected_window variable
11581 which is similar to Vminibuf_scroll_window, but which is only set
11582 on entry to the minibuffer (from a non-minibuffer window):
11583
11584 * window.c: (Vminibuf_selected_window): New variable.
11585 (struct save_window_data): New member minibuf_selected_window.
11586 (Fset_window_configuration): Restore Vminibuf_selected_window.
11587 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11588 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11589 (compare_window_configurations): Compare minibuf_selected_window.
11590
11591 * window.h: (Vminibuf_selected_window): Declare extern.
11592
11593 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11594 entry to minibuffer or on entry from a non-minibuffer window.
11595
11596 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11597 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11598
11599 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11600 instead of Vminibuf_scroll_window when deciding in which window
11601 the region should be highlighted. Consequently, the region remains
11602 highlighteded even when a completion buffer is also displayed.
11603
11604 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11605
11606 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11607
11608 * xselect.c (Qcompound_text_with_extensions): Renamed from
11609 Qcompound_text_no_extensions.
11610 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11611
11612 2002-02-26 Juanma Barranquero <lektu@terra.es>
11613
11614 * w32proc.c (syms_of_ntproc): Doc fix.
11615
11616 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11617
11618 * intervals.h: Include "dispextern.h" unconditionally.
11619
11620 2002-02-24 Jason Rumney <jasonr@gnu.org>
11621
11622 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11623 and disp-table.elc.
11624 (lisp): Add emacs-lisp/backquote.elc.
11625
11626 2002-02-24 Kim F. Storm <storm@cua.dk>
11627
11628 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11629 The validation of the event type was too strict as it didn't
11630 allow string events; buffer names are used in bindings for
11631 menu-bar-select-buffer (see `menu-bar-update-buffers').
11632
11633 2002-02-23 Kim F. Storm <storm@cua.dk>
11634
11635 The following changes rework my patch of 2002-02-06 which
11636 added command remapping by entering the commands directly into
11637 the keymaps. Now, command remapping uses an explicit `remap'
11638 prefix in the keymaps, i.e. [remap COMMAND].
11639
11640 * keymap.c (Qremap, remap_command_vector): New variables.
11641 (is_command_symbol): Removed function.
11642 (Fdefine_key): No longer accept a symbol for KEY.
11643 Added validation of [remap COMMAND] argument for KEY.
11644 The DEF is no longer required to be a symbol when remapping a command.
11645 (Fremap_command): New function to remap command through keymaps.
11646 (Flookup_key): Perform command remapping initiated by
11647 Fremap_command directly for speed.
11648 (Fkey_binding): Use Fremap_command for command remapping.
11649 (where_is_internal): Handle new command remapping representation.
11650 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11651 staticpro them. Defsubr Fremap_command.
11652
11653 * keymap.h (Fremap_command): Declare extern.
11654 (is_command_symbol): Remove extern.
11655
11656 * keyboard.c (command_loop_1): Use Fremap_command for command
11657 remapping; now try command remapping for all symbols.
11658
11659 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11660
11661 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11662
11663 2002-02-23 Jason Rumney <jasonr@gnu.org>
11664
11665 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11666 on the string before encoding it.
11667 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11668 after decoding it.
11669
11670 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11671
11672 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11673
11674 * w32term.c (enter_timestamp): Remove unused static variable to
11675 prevent warning.
11676
11677 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11678
11679 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11680
11681 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11682
11683 * xselect.c (selection_data_to_lisp_data): Fix last change.
11684
11685 2002-02-22 Jason Rumney <jasonr@gnu.org>
11686
11687 * w32term.h (struct w32_output): New member menu_command_in_progress.
11688
11689 * w32menu.c (menubar_selection_callback): Free the menu and
11690 clear the menu_command_in_progress flag.
11691
11692 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11693 (menu_free_timer): New variable.
11694 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11695 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11696 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11697 menu command is in progress.
11698 <WM_COMMAND>: Set the menu_command_in_progress flag.
11699 Kill any menu_free_timer that is running.
11700
11701 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11702 Call ExtTextOutA rather than ExtTextOut.
11703
11704 2002-02-22 Eli Zaretskii <eliz@gnu.org>
11705
11706 * puresize.h (BASE_PURESIZE): Increase to 755000.
11707
11708 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11709
11710 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11711 on the string before encoding it.
11712 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11713 after decoding it.
11714
11715 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11716
11717 Support for ICCCM Extended Segments in X selections:
11718
11719 * xselect.c <Qcompound_text_no_extensions>: New variable.
11720 (syms_of_xselect): Intern and staticpro it.
11721 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11722 selection text.
11723 (lisp_data_to_selection_data): If next-selection-coding-system is
11724 compound-text-no-extensions, set the type of selection to be
11725 compound-text.
11726
11727 * xterm.h (x_encode_text): Update prototype.
11728
11729 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11730 callers changed. If SELECTIONP is non-zero, run the
11731 pre-write-conversion function before encoding the selection text.
11732
11733 2002-02-21 Kim F. Storm <storm@cua.dk>
11734
11735 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11736
11737 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11738 Correct composing of language-change event.
11739
11740 2002-02-20 Kim F. Storm <storm@cua.dk>
11741
11742 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11743 bindings at PT when building menu (the menu is not updated often
11744 enough for this to work reliable).
11745 (tool_bar_items): Likewise.
11746 (current_active_maps): Removed unused (and buggy) function.
11747
11748 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11749
11750 * xfns.c (gif_load): Use correct width and height for GIF images.
11751
11752 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11753
11754 * floatfns.c (Fatan): Accept an optional second arg and call
11755 atan2 if passed 2 args.
11756
11757 2002-02-18 Jason Rumney <jasonr@gnu.org>
11758
11759 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11760
11761 2002-02-17 Jason Rumney <jasonr@gnu.org>
11762
11763 * w32term.c (x_autoselect_window_p): New variable.
11764 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11765 (note_mouse_movement): Use it.
11766
11767 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11768
11769 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11770
11771 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11772 New variables.
11773 (syms_of_w32fns): Intern and staticpro them.
11774 (x_frame_parms) <"fullscreen">: New parameter.
11775 (x_fullscreen_move, x_set_fullscreen): New functions.
11776 (x_set_frame_parameters): Support Qfullscreen.
11777 (x_real_positions): Save x/y_pixels_diff frame params.
11778 (x_figure_window_size): Support full-screen frames.
11779 (Fx_create_frame): Default the fullscreen parameter.
11780
11781 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11782 (x_fullscreen_adjust): New functions.
11783 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11784 fullscreen. Call x_check_fullscreen_move, and set the
11785 want_fullscreen member of output_data.w32
11786 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11787
11788 * w32term.h: New enum for FULLSCREEN_* constants.
11789 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11790 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11791 (x-fullscreen-adjust): New prototype.
11792
11793 2002-02-17 Kim F. Storm <storm@cua.dk>
11794
11795 * frame.c: (Vmouse_highlight): New variable.
11796 (syms_of_frame): DEFVAR_LISP it.
11797
11798 * frame.h: (Vmouse_highlight): Declare extern.
11799
11800 * xterm.h (struct x_display_info): Add mouse_face_hidden.
11801
11802 * xterm.c (disable_mouse_highlight): Removed variable.
11803 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11804 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11805 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11806 and on after keyboard input.
11807 (x_term_init): Initialize mouse_face_hidden.
11808
11809 * msdos.h (struct display_info): Add mouse_face_hidden.
11810
11811 * msdos.c (disable_mouse_highlight): Removed variable.
11812 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11813 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11814 (internal_terminal_init): Initialize mouse_face_hidden.
11815 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11816 and on after keyboard input.
11817
11818 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
11819
11820 * w32term.c (disable_mouse_highlight): Removed variable.
11821 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11822 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11823 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11824 and on after keyboard input.
11825 (w32_initialize_display_info): Initialize mouse_face_hidden.
11826
11827 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
11828
11829 * msdos.c (last_mouse_window): New variable.
11830 (dos_rawgetc): Fix last change--if the mouse is in the same window
11831 as recorded in last_mouse_window, don't select this window.
11832
11833 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
11834
11835 * msdos.c (x_autoselect_window_p): New variable.
11836 (syms_of_msdos): Defvar it.
11837 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11838 which the last mouse movement occured, unless it is already selected.
11839
11840 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11841 New variables.
11842 (syms_of_xdisp): DEVFAR them.
11843 (hscroll_window_tree): Use automatic_hscroll_margin and
11844 Vautomatic_hscroll_step to compute the amount of window scrolling.
11845
11846 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11847
11848 * xterm.c (x-autoselect-window): New variable.
11849 (note_mouse_movement): Use it.
11850
11851 * keyboard.c: Do not include "systime.h" twice.
11852
11853 2002-02-15 Andreas Schwab <schwab@suse.de>
11854
11855 * puresize.h (BASE_PURESIZE): Increase to 9/5.
11856
11857 * alloc.c (NSTATICS): Increase to 1280.
11858
11859 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
11860
11861 * alloc.c (NSTATICS): Bump to 1026.
11862
11863 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11864 (Vx_super_keysym): New variables.
11865 (syms_of_xterm): DEFVAR_LISP them.
11866 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11867 variables to determine which keys to use for the various modifiers.
11868
11869 2002-02-13 Kim F. Storm <storm@cua.dk>
11870
11871 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11872 (mode_line_in_non_selected_windows): New variable.
11873 (syms_of_window): DEFVAR_BOOL it.
11874
11875 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11876 Use mode_line_in_non_selected_windows.
11877 (mode_line_in_non_selected_windows): Declare extern.
11878 (Vmode_line_in_non_selected_windows): Removed extern.
11879
11880 2002-02-13 Richard M. Stallman <rms@gnu.org>
11881
11882 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11883 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11884 (Fclear_this_command_keys): Doc fixes.
11885
11886 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11887 (update_face_from_frame_parameter): Increment face_change_count
11888 and windows_or_buffers_changed to force redisplay using changed faces.
11889
11890 * xdisp.c (QCpropertize): New variable.
11891 (mode_line_proptrans_alist): New variable.
11892 (display_mode_element): New arg PROPS; all calls changed.
11893 Implement this, for strings.
11894 Handle literal output of strings by sharing the
11895 main-line code for strings, using local var `literal'.
11896 Handle :propertize feature.
11897 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11898 mode_line_proptrans_alist.
11899
11900 2002-02-11 Kim F. Storm <storm@cua.dk>
11901
11902 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11903 (syms_of_window): DEFVAR_LISP it.
11904
11905 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11906 (CURRENT_MODE_LINE_FACE_ID): Use it.
11907 (Vmode_line_in_non_selected_windows): Declare extern.
11908
11909 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11910 to get mode line face.
11911
11912 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
11913
11914 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11915 variables; cus-start.el doesn't need them anymore.
11916
11917 2002-02-09 Kim F. Storm <storm@cua.dk>
11918
11919 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11920 reduction. This fixes a display problem where stray newlines were
11921 inserted in the window (corrected by C-l). Clarified code (IMHO).
11922
11923 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
11924
11925 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
11926
11927 * xdisp.c (display_mode_lines): Fix last change.
11928
11929 2002-02-09 Jason Rumney <jasonr@gnu.org>
11930
11931 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11932 match each other.
11933 (w32_load_system_font): Prevent Cleartype fonts from loading.
11934 (Fx_show_tip): Ensure tip frames are above other topmost windows.
11935
11936 2002-02-09 Kim F. Storm <storm@cua.dk>
11937
11938 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11939 (CURRENT_MODE_LINE_HEIGHT): Use it.
11940 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
11941
11942 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11943 (pos_visible_p, handle_face_prop): Likewise.
11944 (display_mode_lines): Likewise, but for the real selected window.
11945 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
11946
11947 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11948 in non-selected windows.
11949 (realize_basic_faces): Realize it.
11950 (syms_of_term): Intern and staticpro it.
11951
11952 2002-02-08 Kim F. Storm <storm@cua.dk>
11953
11954 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11955 Changed mail addresses to emacs-devel@gnu.org.
11956
11957 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
11958
11959 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11960 ~user, and there's no such user, don't discard everything before ~user.
11961
11962 * floatfns.c (Fround): Doc fix.
11963
11964 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11965
11966 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
11967
11968 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
11969
11970 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
11971
11972 2002-02-07 Kim F. Storm <storm@cua.dk>
11973
11974 * keymap.c (where_is_internal): Only check whether definition is
11975 remapped if it fulfills is_command_symbol.
11976
11977 2002-02-07 Andreas Schwab <schwab@suse.de>
11978
11979 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
11980
11981 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
11982
11983 2002-02-06 Kim F. Storm <storm@cua.dk>
11984
11985 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11986 defining command remapping. Doc updated.
11987 (Flookup_key): Remap command through keymap if KEY is a symbol.
11988 (is_command_symbol): New function.
11989 (Fkey_binding): Use it. New optional argument NO-REMAP.
11990 Doc updated. Callers changed. Perform command remapping via
11991 recursive call unless that arg is non-nil.
11992 (where_is_internal): New argument no_remap. Callers changed.
11993 Call recursively to find original key bindings for a remapped
11994 comand unless that arg is non-nil.
11995 (Fwhere_is_internal): New optional argument NO-REMAP.
11996 Doc updated. Callers changed. Pass arg to where_is_internal.
11997
11998 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11999 (is_command_symbol): Added prototype.
12000
12001 * keyboard.c (Vthis_original_command): New variable.
12002 (syms_of_keyboard): DEFVAR_LISP it.
12003 (command_loop_1): Set it, and perform command remapping.
12004
12005 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12006
12007 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
12008
12009 2002-02-06 Jason Rumney <jasonr@gnu.org>
12010
12011 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
12012
12013 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
12014
12015 * charset.c (get_charset_id): Use if-else instead of ?:.
12016
12017 2002-02-06 Richard M. Stallman <rms@gnu.org>
12018
12019 * filelock.c (S_ISLNK): Define if not defined.
12020
12021 2002-02-03 Richard M. Stallman <rms@gnu.org>
12022
12023 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
12024
12025 * lread.c (read1): Redesign strategy for force_multibyte and
12026 force_singlebyte. Now is_multibyte records whether read_buffer
12027 is multibyte. Encountering any multibyte character makes it so.
12028
12029 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
12030
12031 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12032 with the same sequence, map that sequence to f10 rather than f0.
12033
12034 2002-02-03 Andreas Schwab <schwab@suse.de>
12035
12036 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12037 latter never being defined on GNU/Linux.
12038
12039 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12040
12041 * xfaces.c (realize_default_face): Don't set the weight and slant of
12042 the default face to Qnormal, unless these attributes are unspecified.
12043
12044 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12045
12046 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12047 Call cancel_hourglass unconditionally.
12048
12049 * eval.c (Fsignal): Remove duplicated declaration of
12050 the variable `display_hourglass_p'.
12051
12052 2002-01-31 Richard M. Stallman <rms@gnu.org>
12053
12054 * editfns.c (region_limit): Nicer error message.
12055
12056 * coding.c (decode_composition_emacs_mule):
12057 Give up if NCOMPONENT gets too large to index `component'.
12058
12059 * callint.c (check_mark): New arg to specify clearer error message.
12060 Callers changed.
12061
12062 2002-01-27 Richard M. Stallman <rms@gnu.org>
12063
12064 * minibuf.c (Fcompleting_read): Doc fix.
12065
12066 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12067
12068 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12069 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12070 Fix doc-strings.
12071
12072 2002-01-26 Richard M. Stallman <rms@gnu.org>
12073
12074 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
12075
12076 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12077 and scroll_up_aggressively.
12078
12079 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12080
12081 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
12082
12083 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
12084
12085 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12086 (Fprevious_property_change, Fprevious_single_property_change):
12087 Stay within the narrowed-buffer boundaries.
12088
12089 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
12090
12091 * term.c (Ftty_display_color_cells): New function.
12092 (syms_of_term): Defsubr it.
12093 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12094 argument name to DISPLAY. Doc fix.
12095
12096 * dispextern.h: Add prototype for set_tty_color_mode and
12097 tty_setup_colors.
12098
12099 2002-01-24 Jason Rumney <jasonr@gnu.org>
12100
12101 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12102 If region left to draw is not what was expected, mark the frame as
12103 garbaged.
12104
12105 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12106 Combine the regions returned by BeginPaint and GetUpdateRect.
12107
12108 2002-01-23 Jason Rumney <jasonr@gnu.org>
12109
12110 * w32term.c (x_update_window_begin): Only hide caret if
12111 w32_use_visible_system_caret is set.
12112 (x_update_window_end): Only show caret if
12113 w32_use_visible_system_caret is set.
12114 (syms_of_w32term): Handle SystemParametersInfo call failing.
12115
12116 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12117
12118 2002-01-22 Richard M. Stallman <rms@gnu.org>
12119
12120 * unexelf.c (unexec): Define n so as to cause compilation error
12121 for the code where people have often written n instead of nn.
12122
12123 * .gdbinit (hookpost-run): Defined.
12124
12125 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12126
12127 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12128
12129 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12130
12131 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12132 if fullscreen is being set.
12133
12134 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12135
12136 * minibuf.c (Fminibuffer_contents)
12137 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12138 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12139
12140 2002-01-21 Richard M. Stallman <rms@gnu.org>
12141
12142 * window.c (check_frame_size): Fix minimum height calculation.
12143
12144 2002-01-20 Ken Raeburn <raeburn@gnu.org>
12145
12146 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12147 height before comparison.
12148 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12149
12150 2002-01-20 Jason Rumney <jasonr@gnu.org>
12151
12152 * w32term.c (w32_system_caret_width): Remove.
12153 (w32_use_visible_system_caret): New user flag.
12154 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12155 Windows reports a screen reader running.
12156 (x_update_window_begin): Hide the system caret.
12157 (x_update_window_end): Show the system caret.
12158 (x_display_and_set_cursor): Don't draw a cursor when
12159 w32_use_visible_system_caret is set. Do not adjust width.
12160
12161 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12162 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12163 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12164 the user requests it. Use system default width when creating.
12165 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12166
12167 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12168 New window messages.
12169
12170 2002-01-20 Richard M. Stallman <rms@gnu.org>
12171
12172 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12173
12174 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12175
12176 * doprnt.c (doprnt1): Fix typos in error call.
12177
12178 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12179
12180 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12181
12182 2002-01-20 Jason Rumney <jasonr@gnu.org>
12183
12184 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12185 that Windows returns. If a double check fails, try to guess how
12186 ExtTextOut is going to act.
12187
12188 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12189 in place of stricmp.
12190 (w32_list_synthesized_fonts): Removed.
12191 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12192 (struct enumfont_t): New element; list.
12193 (enum_font_cb2): List all style and charset variations of a font.
12194 (Fw32_select_font): New optional argument; include_proportional.
12195 Exclude vertical fonts. Exclude proportional fonts unless
12196 include_proportional is non-nil.
12197 (w32_enable_synthesized_fonts): Change to a boolean.
12198 (Fw32_send_sys_command): Doc fix.
12199
12200 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12201
12202 * dispnew.c (update_frame): Move the variable `tem' to the block
12203 where it is used.
12204
12205 2002-01-19 Jason Rumney <jasonr@gnu.org>
12206
12207 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12208 call to face-set-after-frame-default.
12209
12210 2002-01-18 Richard M. Stallman <rms@gnu.org>
12211
12212 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12213 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12214
12215 2002-01-17 Richard M. Stallman <rms@gnu.org>
12216
12217 * window.c (enlarge_window): When exceeding size of parent,
12218 directly delete all the siblings instead of trying to resize it.
12219
12220 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12221
12222 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12223
12224 2002-01-16 Henrik Enberg <henrik@enberg.org>
12225
12226 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12227
12228 2002-01-16 Kim F. Storm <storm@cua.dk>
12229
12230 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12231 is invisible. This can happen if cursor is on top line of a
12232 window, and we switch to a buffer with a header line.
12233
12234 * w32term.c (x_erase_phys_cursor): Ditto.
12235
12236 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12237
12238 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12239 `dont_resize' only when used.
12240
12241 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12242
12243 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12244
12245 * xdisp.c (display_mode_element): When computing charpos, depend
12246 on multibyteness of elt, not the text in field.
12247
12248 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12249
12250 * buffer.c (Fkill_all_local_variables):
12251 Increment `update_mode_lines' only once.
12252
12253 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12254
12255 * lisp.h (adjust_after_replace_noundo)
12256 (Fupdate_coding_systems_internal): Add prototypes.
12257
12258 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12259
12260 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12261
12262 Support for the --color command-line argument and tty-color-mode
12263 frame parameter:
12264
12265 * term.c (tty_default_color_capabilities, tty_setup_colors)
12266 (set_tty_color_mode): New functions.
12267 (term_init): Call tty_default_color_capabilities.
12268 (Qtty_color_mode_alist): New variable.
12269 (syms_of_term): Intern and staticpro it.
12270
12271 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12272 frames.
12273 (do_switch_frame): For termcap frames, switch the tty
12274 color mode as specified by the frame's parameters.
12275 (Qtty_color_mode): New variable.
12276 (syms_of_frame): Intern and staticpro it.
12277
12278 * emacs.c (USAGE2): Add the --color option.
12279 (standard_args): Ditto.
12280
12281 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12282
12283 * xterm.h (struct x_output): New members want_fullscreen,
12284 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12285 y_pixels_outer_diff.
12286 New enum for FULLSCREEN_* constants.
12287 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12288 is NULL.
12289 (x_fullscreen_adjust): Add prototype.
12290
12291 * emacs.c (USAGE2): Add the new full-screen arguments.
12292 (standard_args): Ditto.
12293
12294 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12295 New variables.
12296 (syms_of_xfns): Intern and staticpro them.
12297 (x_frame_parms) <"fullscreen">: New parameter.
12298 (x_fullscreen_move, x_set_fullscreen): New functions.
12299 (x_set_frame_parameters): Support for Qfullscreen.
12300 (x_real_positions): More accurate computation of the frame position.
12301 (x_figure_window_size): Support full-screen frames.
12302 (Fx_create_frame): Default the fullscreen parameter.
12303
12304 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12305 (XTread_socket) <Expose>: Call x_check_fullscreen.
12306 <ConfigureNotify>: Don't resize to fullscreen.
12307 Call x_check_fullscreen_move, and set the want_fullscreen member of
12308 output_data.x.
12309
12310 2002-01-13 Jason Rumney <jasonr@gnu.org>
12311
12312 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12313 for mice with more than 3 buttons.
12314
12315 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12316 (w32_read_socket): Handle new "XBUTTON" messages.
12317
12318 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12319 (syms_of_w32fns): DEFVAR_BOOL it.
12320 (w32_wnd_proc): Handle new "XBUTTON" messages.
12321
12322 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12323
12324 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12325
12326 2002-01-13 Andreas Schwab <schwab@suse.de>
12327
12328 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12329
12330 2002-01-12 Andreas Schwab <schwab@suse.de>
12331
12332 * .gdbinit (xbuffer): Remove address operator since data is now a
12333 pointer.
12334
12335 2002-01-11 Richard M. Stallman <rms@gnu.org>
12336
12337 * insdel.c (adjust_after_replace_noundo): New function.
12338
12339 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12340
12341 2002-01-09 Jason Rumney <jasonr@gnu.org>
12342
12343 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12344 when checking for multiple frames.
12345
12346 2002-01-08 Richard M. Stallman <rms@gnu.org>
12347
12348 * window.c (delete_window): Rewrite the code for changing the
12349 selected window to handle the case where WINDOW is not a leaf.
12350
12351 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12352
12353 * process.c (send_process): Set src_multibyte to 1 after the call
12354 top setup_coding_system, not before the call.
12355
12356 2002-01-07 Jason Rumney <jasonr@gnu.org>
12357
12358 * xmenu.c (set_frame_menubar, xmenu_show):
12359 (xdialog_show): Initialize wv->help to Qnil.
12360
12361 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12362 (w32_dialog_show): Initialize wv->help to Qnil.
12363
12364 2002-01-06 Jason Rumney <jasonr@gnu.org>
12365
12366 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12367
12368 * w32menu.c (w32_menu_display_help): Revert last change.
12369
12370 * xmenu.c (menu_highlight_callback): Revert last change.
12371
12372 2002-01-06 Andreas Schwab <schwab@suse.de>
12373
12374 * insdel.c (make_gap_larger): Make sure buffer size does not
12375 overflow range of int.
12376
12377 2002-01-05 Jason Rumney <jasonr@gnu.org>
12378
12379 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12380 OVERLAPS_P.
12381
12382 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12383
12384 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12385 to the left or to the right of the pointer, put it against
12386 the left screen edge.
12387 (x_frame_parms): Add missing braces around initializer.
12388
12389 * w32term.c (x_setup_relief_colors): Don't compute an image's
12390 background color if it doesn't have a Pixmap.
12391 (notice_overwritten_cursor): Don't depend on
12392 output_cursor and updated_area. Compare pixel coordinates with
12393 window's cursor pixel coordinates.
12394 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12395 Call notice_overwritten_cursor with new arg list.
12396 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12397 unconditionally.
12398 (x_draw_image_relief): Use predefined macro instead of
12399 constant when the value of `tool_bar_button_relief' is negative.
12400
12401 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12402
12403 2002-01-04 Richard M. Stallman <rms@gnu.org>
12404
12405 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12406
12407 2002-01-03 Richard M. Stallman <rms@gnu.org>
12408
12409 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12410 (Fkey_binding): Try the `keymap' property map first.
12411 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12412 minor mode bindings.
12413
12414 2002-01-03 Kim F. Storm <storm@cua.dk>
12415
12416 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12417
12418 2002-01-02 Richard M. Stallman <rms@gnu.org>
12419
12420 * keyboard.c (read_key_sequence): Handle the keymap property
12421 before minor mode maps.
12422
12423 * editfns.c (Fformat): Update thissize from field_width
12424 based on the actual width, in the string case.
12425
12426 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12427
12428 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12429 when used as truth value to prevent gcc warnings.
12430
12431 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12432 * w32proc.c: Include <config.h>.
12433
12434 2002-01-01 Andreas Schwab <schwab@suse.de>
12435
12436 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12437 not EMACS_INT, to make them compatible with DEFVAR_INT.
12438 * lisp.h (max_specpdl_size): Adjust declaration.
12439
12440 2002-01-01 Richard M. Stallman <rms@gnu.org>
12441
12442 * print.c (print_object): Test print_escape_nonascii only for
12443 unibyte strings.
12444 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12445 when outputting to a multibyte buffer.
12446
12447 2001-12-29 Richard M. Stallman <rms@gnu.org>
12448
12449 * print.c (print_object): In multibyte string, use hex escapes.
12450 Use octal only for unibyte strings.
12451 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12452
12453 * lread.c (read_escape): New arg BYTEREP for reporting whether
12454 escape forces unibyte or multibyte.
12455 (read1): When reading a string, take note of that info.
12456
12457 2001-12-29 Ken Raeburn <raeburn@gnu.org>
12458
12459 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12460 comparison to test lisp value returned by Fget.
12461
12462 2001-12-29 Richard M. Stallman <rms@gnu.org>
12463
12464 * lisp.h (max_specpdl_size): Add declaration.
12465
12466 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12467
12468 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12469 Handle modifier bits. Correct typo in error message.
12470
12471 2001-12-28 Richard M. Stallman <rms@gnu.org>
12472
12473 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12474 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12475 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12476 Update calls to Fdefine_abbrev.
12477 (write_abbrev): Update for changed data format.
12478 Don't list "system" abbrevs.
12479 (Fexpand_abbrev): Update use count with new data format.
12480 (describe_abbrev): Update for changed data format.
12481 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12482
12483 * config.in (HAVE_MBSINIT): Add #undef.
12484
12485 * strftime.c (mbsinit): Define as no-op if not available.
12486
12487 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12488 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12489
12490 * keymap.c (Flookup_key): Error message if key has wrong data type.
12491 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12492 (exclude_key): New variable.
12493
12494 2001-12-28 Gerd Moellmann <gerd@gnu.org>
12495
12496 * xterm.c (x_setup_relief_colors): Don't compute an image's
12497 background color if it doesn't have a Pixmap.
12498
12499 * xterm.c (notice_overwritten_cursor): Don't depend on
12500 output_cursor and updated_area. Compare pixel coordinates with
12501 window's cursor pixel coordinates.
12502 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12503 Call notice_overwritten_cursor with new arg list.
12504 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12505 unconditionally.
12506
12507 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12508 height of the cursor line to the amount to scroll.
12509
12510 2001-12-27 Richard M. Stallman <rms@gnu.org>
12511
12512 * intervals.c (set_point_both): The position after an invisible,
12513 intangible character is not an acceptable stopping point.
12514
12515 2001-12-27 Ken Raeburn <raeburn@gnu.org>
12516
12517 * window.c (enlarge_window): In new preserve_before code, convert
12518 CURBEG from lisp object to integer before doing arithmetic.
12519
12520 2001-12-27 Richard M. Stallman <rms@gnu.org>
12521
12522 * bytecode.c (Fbyte_code): Undo previous change.
12523
12524 2001-12-26 Kim F. Storm <storm@cua.dk>
12525
12526 * keyboard.c (record_char): Ignore duplicate help-echo events only
12527 separated by mouse-movement. When tracking mouse, only record
12528 first and last mouse-movement event in same window.
12529 Don't record mouse-movement events in keyboard macros.
12530
12531 2001-12-25 Richard M. Stallman <rms@gnu.org>
12532
12533 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12534 (Fenlarge_window): New arg PRESERVE_BEFORE.
12535
12536 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12537 instead of Fstring_as_unibyte.
12538
12539 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12540
12541 The following changes remove mocklisp support:
12542
12543 * mocklisp.h, mocklisp.c: Files removed.
12544
12545 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12546 `Qmocklisp' and `Qmocklisp_arguments'.
12547 Remove prototype of syms_of_mocklisp.
12548
12549 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
12550
12551 * callint.c: Do not include mocklisp.h.
12552 (Fcall_interactively): Do not test for mocklisp case.
12553
12554 * eval.c: Remove variables `Qmocklisp_arguments',
12555 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12556 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12557 Do not test for mocklisp case.
12558 (Fwhile): Remove unused variable `tem'.
12559 (syms_of_eval): Remove variable `moclisp-arguments'.
12560
12561 * data.c (wrong_type_argument): Remove mocklisp case.
12562
12563 * doc.c (Fdocumentation): Remove mocklisp case.
12564
12565 * emacs.c (main): Do not call syms_of_mocklisp.
12566
12567 2001-12-21 Richard M. Stallman <rms@gnu.org>
12568
12569 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12570 to the left or to the right of the pointer, put it against
12571 the left screen edge.
12572
12573 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
12574
12575 * Makefile.in (distclean): Remove .gdbinit if we are building
12576 outside the source tree.
12577
12578 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
12579
12580 * w32.c (emacs_root_dir): New function.
12581
12582 * msdos.c (emacs_root_dir): New function.
12583
12584 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12585 of the current drive as the fallback for default_directory.
12586
12587 * dired.c (file_name_completion): Run the elements of
12588 completion-ignored-extensions through ENCODE_FILE.
12589
12590 * lisp.h (scmp): Remove prototype, since it's now a static
12591 function private to dired.c.
12592
12593 2001-12-18 Richard M. Stallman <rms@gnu.org>
12594
12595 * dired.c (scmp): Function moved from minibuf.c.
12596 Delete multibyte handling--used only on encoded strings.
12597
12598 * minibuf.c (scmp): Function moved to dired.c.
12599
12600 * fns.c (merge): Add QUIT call.
12601
12602 2001-12-18 Dave Love <fx@gnu.org>
12603
12604 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12605 language/georgian.el.
12606
12607 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
12608
12609 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12610 lisp/Makefile.in:DONTCOMPILE.
12611
12612 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12613
12614 * xdisp.c (window_box_height): Do not return negative values.
12615 From Gerd Moellmann <gerd@gnu.org>.
12616
12617 * keyboard.c (head_table): Add missing braces around initializer.
12618
12619 * term.c (keys): Likewise.
12620
12621 * xfns.c (x_frame_parms, visual_classes): Likewise.
12622
12623 2001-12-17 Sam Steingold <sds@gnu.org>
12624
12625 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12626 patch (COMPOSING_P, not COMPOSING).
12627
12628 2001-12-17 Richard M. Stallman <rms@gnu.org>
12629
12630 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
12631
12632 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12633 before calling decode_coding.
12634
12635 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
12636
12637 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12638 instead of only for COMPOSITION_DISABLED.
12639
12640 2001-12-16 Richard M. Stallman <rms@gnu.org>
12641
12642 * alloc.c (pure_alloc): After overflow, allocate just a small block.
12643
12644 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
12645
12646 * buffer.h (struct buffer): New field `display_error_modiff'.
12647 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
12648
12649 * window.c (Frecenter): Clear display_error_modiff field.
12650
12651 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12652 Call redisplay_window, but not if display_error_modiff field says no.
12653 (redisplay_window_error): New function.
12654 (displayed_buffer): New variable.
12655 (redisplay_internal, redisplay_windows): Call the new functions
12656 instead of redisplay_window directly.
12657
12658 2001-12-15 Richard M. Stallman <rms@gnu.org>
12659
12660 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
12661
12662 2001-12-14 Andrew Innes <andrewi@gnu.org>
12663
12664 * makefile.w32-in (EMACSLOADPATH): Define.
12665 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
12666 (bootstrap-temacs): Remove dependency on bootstrap-clean.
12667
12668 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
12669
12670 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12671 parameter have a numeric value all the time.
12672
12673 * w32fns.c (x_report_frame_params): Likewise.
12674
12675 2001-12-12 Richard M. Stallman <rms@gnu.org>
12676
12677 * fileio.c (Fwrite_region): Doc fix.
12678
12679 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12680 (redisplay_internal): Call clear_image_cache only for window terminals.
12681
12682 2001-12-12 Gerd Moellmann <gerd@gnu.org>
12683
12684 * xdisp.c (move_it_vertically_backward): Change heuristic
12685 for the case that we didn't move far enough initially.
12686
12687 * window.c (Frecenter): Simplify computation in the case of window
12688 system frames and ARG < 0; use window_box_height.
12689
12690 2001-12-11 Richard M. Stallman <rms@gnu.org>
12691
12692 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12693 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
12694
12695 2001-12-11 Andrew Innes <andrewi@gnu.org>
12696
12697 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12698 arg is negative.
12699
12700 2001-12-11 Richard M. Stallman <rms@gnu.org>
12701
12702 * m/hp800.h: Split the __hpux conditional into the parts
12703 that are right for GNU/Linux too and the parts that are not.
12704 Use the former if GNU_LINUX.
12705 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
12706
12707 * s/gnu-linux.h (GNU_LINUX): Defined.
12708
12709 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12710
12711 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12712 `new style' [w/`doc:' keyword].
12713
12714 2001-12-10 Jason Rumney <jasonr@gnu.org>
12715
12716 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12717 before using.
12718
12719 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12720
12721 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12722 keyword].
12723
12724 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
12725
12726 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
12727
12728 * s/hpux10.h (srand48): Don't undefine.
12729
12730 2001-12-09 Jason Rumney <jasonr@gnu.org>
12731
12732 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12733 Add comment to explain where the struct came from.
12734 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12735 (add_menu_item): Process pop-up menus first to avoid memory leak.
12736 (add_menu_item, w32_menu_display_help): Use `help' field as
12737 Lisp_Object.
12738 (w32_free_submenu_strings): Only free owner-drawn strings.
12739
12740 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12741
12742 * COPYING: Moved back.
12743
12744 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12745 Add parentheses around && within ||.
12746
12747 * indent.c (compute_motion): Likewise.
12748
12749 * intervals.c (merge_properties_sticky): Likewise.
12750
12751 * coding.c (setup_coding_system, shrink_encoding_region)
12752 (Fdecode_sjis_char): Likewise.
12753
12754 2001-12-07 Andreas Schwab <schwab@suse.de>
12755
12756 * xdisp.c (display_mode_element): Don't read past end of string if
12757 it ends with '%'.
12758
12759 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12760 can hold.
12761
12762 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12763 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12764 type changed to Lisp_Object.
12765 (syms_of_data): DEFVAR_LISP them.
12766
12767 2001-12-07 Richard M. Stallman <rms@gnu.org>
12768
12769 * callproc.c (init_callproc): Set Vdata_directory based on the source
12770 location whenever Emacs was run uninstalled.
12771
12772 2001-12-06 Paul Eggert <eggert@twinsun.com>
12773
12774 * config.in (HAVE_WORKING_VFORK): New #undefs.
12775 * process.c (create_process):
12776 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12777 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12778 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12779 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12780 * m/intel386.h (HAVE_VFORK): Likewise.
12781 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12782 * m/mips.h (HAVE_VFORK): Likewise.
12783 * s/freebsd.h (vfork): Remove #define.
12784 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12785 * s/usg5-4-2.h: Fix comment about vfork.
12786
12787 2001-12-06 Richard M. Stallman <rms@gnu.org>
12788
12789 * s/hpux10.h (random): Add undef.
12790 (HAVE_RANDOM): Define it just once.
12791
12792 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
12793
12794 * eval.c: Undo last change: the standard syntax is not wanted.
12795
12796 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
12797
12798 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12799 scroll bars of the frame before deleting the frame itself. If the
12800 frame has a widget, delete the frame with XtDestroyWidget, and do
12801 not call XDestroyWindow before that.
12802
12803 2001-12-06 Kim F. Storm <storm@cua.dk>
12804
12805 * xfns.c (x_report_frame_params): Return actual fringe widths.
12806
12807 * w32fns.c (x_report_frame_params): Return actual fringe widths.
12808
12809 2001-12-05 Andrew Innes <andrewi@gnu.org>
12810
12811 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12812 excessively large.
12813
12814 * insdel.c (make_gap_larger): New function.
12815 (make_gap_smaller): New function.
12816 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12817 Call make_gap_smaller if arg is negative.
12818
12819 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
12820
12821 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12822 Pass a dummy argument when calling interrupt_signal.
12823 (parse_menu_item): Mark disabled items before checking for empty def.
12824 (read_char_minibuf_menu_prompt): Make safety more visible.
12825 (read_key_sequence): Add a `first_unbound' variable.
12826 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12827 unbound prefix as soon as we can detect it.
12828
12829 * doc.c (Fsnarf_documentation): Add prototype.
12830 (get_doc_string): Handle negative arguments.
12831 (Fdocumentation): Use AREF and ASIZE.
12832 Move the calls to get_doc_string to a single place.
12833 Don't confuse an interactive-spec for a docstring reference.
12834 (Fdocumentation_property): Take advantage of the fact that
12835 get_doc_string now ignores the sign of the docstring position.
12836
12837 * eval.c: Use standard syntax for usage in docstrings.
12838
12839 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12840
12841 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
12842
12843 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12844
12845 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12846 constant when the value of `tool_bar_button_relief' is negative.
12847
12848 2001-12-02 Richard M. Stallman <rms@gnu.org>
12849
12850 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12851 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
12852
12853 * fileio.c (read_non_regular): Delete Fsignal call.
12854
12855 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
12856
12857 * lisp.h (run_hook_list_with_args): Undo last change.
12858
12859 2001-12-01 Gerd Moellmann <gerd@gnu.org>
12860
12861 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
12862
12863 2001-12-01 Jason Rumney <jasonr@gnu.org>
12864
12865 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
12866
12867 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12868 [!WM_MOUSELEAVE]: Define.
12869
12870 * w32menu.c (current_popup_menu, get_menu_item_info):
12871 (set_menu_item_info): New vars.
12872 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12873 (w32_menu_show): Set current_popup_menu.
12874 (add_menu_item): Allocate new strings for owner-drawn menu items
12875 and help strings.
12876 Use owner-draw for disabled menu items again.
12877 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12878 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
12879
12880 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12881 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12882 <WM_EXITMENULOOP>: Free menu strings.
12883 <WM_MOUSELEAVE>: Stop tracking mouse.
12884 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
12885
12886 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12887 and mouse face.
12888
12889 2001-12-01 Kim F. Storm <storm@cua.dk>
12890
12891 The following changes add left-fringe and right-fringe
12892 frame parameters to adjust fringe widths, or remove one or
12893 both fringes.
12894
12895 * frame.h (struct frame): Remove trunc_area_pixel_width and
12896 trunc_area_cols fields.
12897 (Qleft_fringe, Qright_fringe): Declare.
12898 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
12899
12900 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12901 (syms_of_frame): Initialize them.
12902
12903 * window.c (coordinates_in_window): Handle separate left and right
12904 fringe widths.
12905
12906 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12907 and fringe_cols fields.
12908 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12909 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12910 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12911 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12912 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12913 (x_compute_fringe_widths): Add prototype.
12914
12915 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12916 fill fringe evenly with small dashes.
12917 (x_draw_fringe_bitmap): Clear background if necessary. Align and
12918 clip the new ZV bitmap to avoid jitter between rows.
12919 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12920 background. Don't draw fringe bitmaps if fringe width is zero.
12921 (x_compute_fringe_widths): New function.
12922 (x_new_font, x_set_window_size_1): Use it.
12923
12924 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12925 (x_set_frame_parameters): Process `font' parameter before other
12926 parameters as fringe widths depend on it.
12927 (x_set_fringe_width): New function.
12928 (x_figure_window_size): Use x_compute_fringe_widths.
12929 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12930 parameters.
12931
12932 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12933 (EmacsFrameSetCharSize): Ditto.
12934
12935 * w32term.h: Merged changes from xterm.h.
12936 * w32term.c: Merged changes from xterm.c.
12937 * w32fns.c: Merged changes from xfns.c.
12938
12939 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12940
12941 * COPYING: Removed.
12942
12943 2001-11-29 Dave Love <fx@gnu.org>
12944
12945 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12946 extra extra slot.
12947 (detect_coding_mask): Fix call of detect_coding_iso2022.
12948
12949 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12950
12951 * fileio.c (file-name-coding-system)
12952 (default-file-name-coding-system): Doc fix (links to referenced
12953 variables added).
12954
12955 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12956
12957 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12958 Add dummy uses of gcproN variables.
12959
12960 * category.c (describe_category, describe_category_1)
12961 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12962 (syms_of_category): Don't defsubr Sdescribe_categories.
12963
12964 2001-11-28 Richard M. Stallman <rms@gnu.org>
12965
12966 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
12967
12968 * Makefile.in (lispdir): New variable, referring to build dir.
12969 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
12970
12971 2001-11-28 Andrew Innes <andrewi@gnu.org>
12972
12973 * w32menu.c (w32_menu_display_help): Actually add the new argument
12974 OWNER.
12975
12976 2001-11-28 Jason Rumney <jasonr@gnu.org>
12977
12978 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12979 menu items. From David Ponce <dponce@wanadoo.fr>.
12980 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12981 conditionally.
12982 (w32_menu_display_help): New argument OWNER. Rewritten to store a
12983 help event in the owner frame's keyboard buffer.
12984
12985 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12986 (Fx_show_tip): Don't subtract last width from row width.
12987
12988 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12989 (w32_read_socket): Use EQ to compare frames.
12990
12991 2001-11-28 Gerd Moellmann <gerd@gnu.org>
12992
12993 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12994 OVERLAPS_P.
12995
12996 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12997
12998 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12999 `gcpro3' and `gcpro4'.
13000
13001 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
13002
13003 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13004
13005 * ccl.c: Use AREF and ASIZE.
13006
13007 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
13008
13009 * lisp.h (run_hook_list_with_args): Remove.
13010 (LIST_END_P): Fix call to wrong_type_argument.
13011 (make_fixnum_or_float): Use EMACS_INT rather than int.
13012
13013 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
13014
13015 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13016 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
13017
13018 * eval.c: Use AREF and ASIZE.
13019 (Ffetch_bytecode): Add the file name to the error message.
13020
13021 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13022 which match the end of the file-name.
13023 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13024 is not a valid env var, but leave it as is instead.
13025
13026 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13027 Make nil bindings in char-tables transparent.
13028 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
13029
13030 2001-11-26 Richard M. Stallman <rms@gnu.org>
13031
13032 * textprop.c (set_text_properties_1): Allow START, END in either order.
13033 Do nothing if range is empty.
13034
13035 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13036
13037 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13038 (clean): Not here.
13039
13040 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13041
13042 * textprop.c (set_text_properties_1): Clearly mark that the
13043 interval should not be empty.
13044
13045 * intervals.c (graft_intervals_into_buffer):
13046 Don't call set_text_properties_1 on an empty interval.
13047
13048 2001-11-25 Richard M. Stallman <rms@gnu.org>
13049
13050 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
13051
13052 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13053 don't lose the data in it.
13054
13055 2001-11-25 Juanma Barranquero <lektu@terra.es>
13056
13057 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
13058
13059 * buffer.c (Fkill_buffer): Likewise.
13060
13061 * print.c (temp_output_buffer_setup): Likewise.
13062
13063 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13064
13065 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
13066
13067 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
13068
13069 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13070 Niemitalo <kon@iki.fi>.
13071
13072 2001-11-25 Jason Rumney <jasonr@gnu.org>
13073
13074 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
13075
13076 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13077 (Fx_show_tip): Block input during frame creation.
13078 (Fx_show_tip, Fx_hide_tip): Enable.
13079
13080 2001-11-24 Richard M. Stallman <rms@gnu.org>
13081
13082 * lread.c (Fload): Detect recursive load error for more than 3
13083 nestings of the same file.
13084 (Vrecursive_load_depth_limit): Variable deleted.
13085 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
13086
13087 2001-11-24 Jason Rumney <jasonr@gnu.org>
13088
13089 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13090 mouse position if either left or top is not specified.
13091
13092 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13093 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13094 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13095 (my_create_tip_window): Assign tip_window.
13096 (x_create_tip_frame): Use same defaults as X.
13097 (compute_tip_xy): Remove unused variable. Use full screen width.
13098 (Fx_show_tip): Do not double height. Call ShowWindow directly.
13099
13100 * w32term.c (x_after_update_window_line): Doc fix.
13101 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13102 frames.
13103 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
13104
13105 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13106 for all Windowed systems.
13107
13108 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
13109
13110 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13111 realized, use the initial screen colors to clear the screen.
13112
13113 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13114
13115 * textprop.c (Fset_text_properties): Remove unused variables
13116 `unchanged', `prev_changed', `s' and `len'.
13117
13118 * search.c (Freplace_match): Remove unused variable `inslen'.
13119
13120 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13121
13122 2001-11-22 Jason Rumney <jasonr@gnu.org>
13123
13124 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13125 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13126 (my_create_tip_window): New function.
13127 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13128 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13129
13130 2001-11-20 Jason Rumney <jasonr@gnu.org>
13131
13132 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13133 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13134
13135 * w32fns.c (Vw32_system_coding_system): Remove.
13136 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13137
13138 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13139
13140 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13141 after build_annotations.
13142
13143 * syntax.c (describe_syntax): Add dummy arg.
13144 (describe_syntax_1): Update call to describe_vector.
13145
13146 * category.c (describe_category): Add dummy arg.
13147 (describe_category_1): Update call to describe_vector.
13148
13149 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13150 (describe_command, describe_translation): Add dummy second param.
13151 (describe_map): Call elt_describer with two arguments.
13152 (describe_vector_princ): Add `fun' parameter.
13153 Call it instead of the hardcoded `princ'.
13154 (describe_vector): Add arg `args'.
13155 Pass it as a new second argument to elt_describer.
13156
13157 * keymap.h (describe_vector): Update prototype.
13158
13159 * frame.c: Don't include keymap.h any more.
13160 (keys_of_frame): Remove.
13161
13162 * lisp.h (keys_of_frame): Remove declaration.
13163
13164 * emacs.c (main): Don't call `keys_of_frame' any more.
13165
13166 2001-11-14 Andreas Schwab <schwab@suse.de>
13167
13168 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13169 if defined, 0 otherwise.
13170 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13171 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13172
13173 2001-11-19 Richard M. Stallman <rms@gnu.org>
13174
13175 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13176
13177 2001-11-18 Jason Rumney <jasonr@gnu.org>
13178
13179 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13180 (x_draw_bar_cursor): If the background color of the glyph under
13181 the cursor equals the frame's cursor color, use the glyph's
13182 foreground color for drawing the bar cursor.
13183 (x_after_update_window_line): Clear internal border in different
13184 circumstances.
13185 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13186 (w32_draw_relief_rect): Correct relief by 1 pixel.
13187 (x_set_glyph_string_background_width):
13188 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13189 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13190 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13191 if cursor_in_non_selected_windows is false.
13192 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13193 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13194 Notice if cursor gets overwritten.
13195 (notice_overwritten_cursor): Renamed from
13196 note_overwritten_text_cursor. Rewritten to take glyph widths
13197 into account, and to take X positions as parameters.
13198 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13199 around call to x_draw_glyphs.
13200 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13201 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13202 color to use for image glyph reliefs.
13203 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13204 (glyph_rect): Remove unused variable `area'.
13205
13206 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13207 some items.
13208 (x_set_internal_border_width): Set frame garbaged when window
13209 doesn't exist yet.
13210 (Fx_create_frame): Accept zero tool_bar_button_relief.
13211 (x_clear_image_1, four_corners_best, image_background)
13212 (image_background_transparent): New functions.
13213 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13214 (gs_format): Add `:background' entry.
13215 (lookup_image): Set IMG's background color if specified.
13216 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13217 when appropriate.
13218 (x_clear_image_1): Reset `background_valid' and
13219 `background_transparent_valid' fields.
13220 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13221 calculating it here. Set IMG's background_transparent field.
13222 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13223 (enum png_keyword_index): Add PNG_BACKGROUND.
13224 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13225 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13226 (enum gif_keyword_index): Add GIF_BACKGROUND.
13227 (enum gs_keyword_index): Add GS_BACKGROUND.
13228 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13229 Pre-calculate image background color where necessary.
13230 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13231 Use display info's n_cbits entry for screen depth.
13232 (Fx_show_tip): Remove unused variables `buffer', `top',
13233 `left', `max_width' and `max_height'.
13234
13235 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13236
13237 2001-11-18 Gerd Moellmann <gerd@gnu.org>
13238
13239 * puresize.h (BASE_PURESIZE): Increase to 750000.
13240
13241 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13242
13243 * frame.c (Fframe_live_p): Doc fix.
13244
13245 2001-11-18 Richard M. Stallman <rms@gnu.org>
13246
13247 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13248 (message_dolog_marker3): New static variables hold three markers.
13249 (syms_of_xdisp): Initialize and staticpro them.
13250 (message_dolog): Use message_dolog_marker1..3 instead of
13251 allocating markers each time. Unchain them when done.
13252
13253 2001-11-17 Richard M. Stallman <rms@gnu.org>
13254
13255 * doc.c (Fsnarf_documentation): Doc fix.
13256
13257 2001-11-17 Andreas Schwab <schwab@suse.de>
13258
13259 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13260
13261 2001-11-17 Richard M. Stallman <rms@gnu.org>
13262
13263 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13264
13265 2001-11-17 Jason Rumney <jasonr@gnu.org>
13266
13267 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13268
13269 2001-11-17 Gerd Moellmann <gerd@gnu.org>
13270
13271 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13272 with invalid position.
13273
13274 2001-11-16 Richard M. Stallman <rms@gnu.org>
13275
13276 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13277
13278 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13279 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13280 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13281
13282 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13283
13284 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13285
13286 * fileio.c (build_annotations): Split off the tail.
13287 (build_annotations_2): New fun. Extracted from build_annotations.
13288 (Fwrite_region): Split the call to build_annotations into two
13289 calls to build_annotations and build_annotations_2.
13290
13291 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13292
13293 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13294 clear_waiting_for_input with argument.
13295
13296 * xterm.h (x_update_cursor): Remove duplicated prototype.
13297
13298 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13299
13300 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13301
13302 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13303
13304 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13305
13306 * fileio.c (choose_write_coding_system): New fun, extracted
13307 from Fwrite_region.
13308 (Fwrite_region): Use it.
13309
13310 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13311 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13312 (ml_apply, find_handler_clause): Add prototype.
13313
13314 2001-11-16 Eli Zaretskii <eliz@gnu.org>
13315
13316 * config.in: Add #undef HAVE_COFF_H.
13317
13318 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13319 Required for ISC 4.1.
13320
13321 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13322
13323 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13324 Andrew Wiseman <a.wiseman@btclick.com>.
13325
13326 2001-11-16 Kim F. Storm <storm@cua.dk>
13327
13328 The following changes are made to clean up the various internal
13329 references to the fringes to actually use the term `fringe' for
13330 them. Previously, they were called `flags areas', `bitmap areas',
13331 `left/right side of windows', or implicitly as `flags' or
13332 `bitmaps':
13333
13334 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13335 Comments fixed. Use renamed symbols.
13336
13337 * dispnew.c: Comment fix. Use renamed symbols.
13338
13339 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13340 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13341 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13342
13343 * msdos.c: Comment fix.
13344
13345 * w32fns.c: Use renamed symbols.
13346
13347 * w32term.c: Comment fixes. Use renamed symbols.
13348 (fringe_bitmap_type): Renamed from bitmap_type.
13349 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13350 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13351 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13352
13353 * w32term.h: Comment fixes. Use renamed symbols.
13354 (fringes_extra): Renamed from flags_areas_extra.
13355 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13356 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13357 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13358 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13359 (FRAME_X_LEFT_FRINGE_WIDTH):
13360 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13361 (FRAME_X_RIGHT_FRINGE_WIDTH):
13362 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13363
13364 * widget.c: Use renamed symbols.
13365
13366 * window.c: Comment fixes. Use renamed symbols.
13367 (coordinates-in-window-p): Doc fix.
13368
13369 * xdisp.c: Comment fixes. Use renamed symbols.
13370
13371 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13372
13373 * xfns.c: Use renamed symbols.
13374
13375 * xterm.c: Comment fixes. Use renamed symbols.
13376 (fringe_bitmap_type): Renamed from bitmap_type.
13377 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13378 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13379 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13380
13381 * xterm.h: Comment fixes. Use renamed symbols.
13382 (fringes_extra): Renamed from flags_areas_extra.
13383 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13384 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13385 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13386 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13387 (FRAME_X_LEFT_FRINGE_WIDTH):
13388 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13389 (FRAME_X_RIGHT_FRINGE_WIDTH):
13390 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13391
13392 2001-11-15 Jason Rumney <jasonr@gnu.org>
13393
13394 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13395 work for most menu items. From David Ponce
13396 <david.ponce@wanadoo.fr>.
13397
13398 2001-11-15 Gerd Moellmann <gerd@gnu.org>
13399
13400 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13401 Some x_set_* function expect to be called even if old and new
13402 value are equal.
13403
13404 * xdisp.c (build_desired_tool_bar_string): Accept zero
13405 tool_bar_button_relief.
13406
13407 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13408
13409 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13410
13411 * xterm.c (x_draw_bar_cursor): If the background color of the
13412 glyph under the cursor equals the frame's cursor color, use
13413 the glyph's foreground color for drawing the bar cursor.
13414
13415 * dispnew.c (direct_output_forward_char): Fix character/byte
13416 position comparison.
13417
13418 2001-11-15 Miles Bader <miles@gnu.org>
13419
13420 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13421 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13422 Update arguments to find_field.
13423 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13424 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13425 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13426 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13427
13428 2001-11-14 Richard M. Stallman <rms@gnu.org>
13429
13430 * editfns.c (Fpropertize): Allow call with 1 arg.
13431
13432 * dispextern.h (image_background, image_background_transparent):
13433 Conditionalize on HAVE_X_WINDOWS.
13434
13435 2001-11-13 Richard M. Stallman <rms@gnu.org>
13436
13437 * print.c (Fprin1_to_string): Doc fix.
13438
13439 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13440
13441 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13442
13443 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13444
13445 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13446
13447 * eval.c (syms_of_eval): Doc fix.
13448
13449 * coding.c (syms_of_coding): Doc fix.
13450
13451 * doc.c (Fsnarf_documentation): Doc fix.
13452
13453 * dispnew.c (syms_of_display): Doc fix.
13454
13455 * category.c (Fget_unused_category): Doc fix.
13456
13457 * buffer.c (syms_of_buffer): Doc fixes.
13458
13459 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13460
13461 * print.c (prin1, print): Doc fix.
13462
13463 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13464
13465 * fontset.h: Remove declarations of variables
13466 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13467
13468 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13469 `Vclip_large_size_font'.
13470
13471 2001-11-13 Jason Rumney <jasonr@gnu.org>
13472
13473 * w32fns.c: Doc fix.
13474
13475 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13476
13477 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13478
13479 * fns.c: Doc fix.
13480
13481 * emacs.c: Doc fix.
13482
13483 * coding.c: Doc fix.
13484
13485 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13486 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13487 `new style' [w/`doc:' keyword].
13488
13489 2001-11-12 Richard M. Stallman <rms@gnu.org>
13490
13491 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13492 LeaveNotify events. Only FocusIn and FocusOut do that now.
13493 (x_display_and_set_cursor): Do display hollow cursors in active
13494 minibuffer windows when they are not selected.
13495
13496 2001-11-12 Jason Rumney <jasonr@gnu.org>
13497
13498 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13499 * w32term.c: Change doc-string comments to `new style'
13500 [w/`doc:' keyword]. Doc fixes.
13501
13502 * w32fns.c: Don't define max.
13503 (Fx_open_connection): Only execute once.
13504
13505 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13506
13507 * ccl.c: Change macros to use do-while block instead of if-else.
13508 Use braces to follow GNU Coding Standards.
13509
13510 2001-11-11 Richard M. Stallman <rms@gnu.org>
13511
13512 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13513
13514 * lread.c (read_escape): Use end_of_file_error for reporting eof.
13515
13516 * insdel.c (replace_range): Use adjust_markers_for_replace
13517 instead of adjust_markers_for_delete and adjust_markers_for_insert.
13518
13519 * intervals.h: Declare set_text_properties and set_text_properties_1.
13520
13521 * textprop.c (set_text_properties_1): New subroutine
13522 broken out of set_text_properties.
13523 (set_text_properties): Use set_text_properties_1.
13524
13525 * intervals.c (graft_intervals_into_buffer):
13526 Use set_text_properties_1 to clear out properties.
13527
13528 * search.c (Freplace_match): Use replace_range to insert
13529 and delete. Don't request property inheritance from
13530 surrounding text.
13531
13532 2001-11-10 Jason Rumney <jasonr@gnu.org>
13533
13534 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
13535 vertical fonts. Allow them if face name is explicitly specified.
13536 Do not give up if we find a font that cannot be converted to an xlfd.
13537
13538 2001-11-10 Gerd Moellmann <gerd@gnu.org>
13539
13540 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13541 instead of malloc/free.
13542
13543 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13544
13545 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13546 Coding Standards.
13547 (Finternal_set_lisp_face_attribute): Likewise.
13548
13549 * buffer.c (Fbury_buffer): Likewise.
13550
13551 * indent.c (current_column_1): Remove unused variable `prev_col'.
13552
13553 * coding.c (encode_coding): Use precomputed value of `src'.
13554 (encode_coding): Remove unused variable `src_end'.
13555 (code_convert_region): Remove unused variables `count'.
13556
13557 2001-11-07 Jason Rumney <jasonr@gnu.org>
13558
13559 * w32term.c (x_display_and_set_cursor): Do not move system caret
13560 if cursor_glyph is NULL.
13561
13562 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13563
13564 * keymap.c (access_keymap): Fix compilation error.
13565
13566 2001-11-07 Miles Bader <miles@gnu.org>
13567
13568 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
13569
13570 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13571
13572 * intervals.c (graft_intervals_into_buffer):
13573 Remove #ifdef'd-out code.
13574 (graft_intervals_into_buffer): Remove unused variable `middle'.
13575
13576 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13577 code (eval-current-buffer).
13578 Change doc-string comments to `new style' [w/`doc:' keyword].
13579
13580 2001-11-06 Richard M. Stallman <rms@gnu.org>
13581
13582 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
13583
13584 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
13585
13586 * lread.c (read1): Fix behavior with nested backquoting.
13587
13588 * keyboard.c (make_lispy_event): Check integerness and fix
13589 Lisp_Object/int mixup.
13590
13591 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13592
13593 * fns.c (copy_hash_table): Remove unused variable `v'.
13594
13595 * fontset.c (fontset_font_pattern): Remove unused variable
13596 `family_registry'.
13597
13598 * indent.c (current_column_1): Remove unused variable `prev_col'.
13599
13600 2001-11-05 Richard M. Stallman <rms@gnu.org>
13601
13602 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
13603
13604 * buffer.c (Fkill_buffer): Don't delete auto save file
13605 if buffer is modified.
13606
13607 2001-11-05 Andrew Innes <andrewi@gnu.org>
13608
13609 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13610 CHECK_NUMBER_CDR.
13611
13612 2001-11-05 Richard M. Stallman <rms@gnu.org>
13613
13614 * unexelf.c (unexec): Minor changes; clean up comments.
13615
13616 2001-11-05 Sam Steingold <sds@gnu.org>
13617
13618 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
13619
13620 2001-11-05 Andreas Schwab <schwab@suse.de>
13621
13622 * sound.c (sound_perror): Save errno from being clobbered.
13623
13624 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
13625
13626 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13627 the program image directly.
13628
13629 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13630
13631 * buffer.h (Fbuffer_local_value): Add prototype.
13632
13633 2001-11-04 Richard M. Stallman <rms@gnu.org>
13634
13635 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13636 and CHECK_BUFFER.
13637
13638 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13639 (record_char): Likewise.
13640
13641 * keyboard.c (make_lispy_event): Don't insist a drag event must
13642 move to a different buffer position. Instead, check for moving at
13643 least double_click_fuzz.
13644
13645 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
13646
13647 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
13648
13649 * indent.c (current_column_1, Fmove_to_column): Separate the code
13650 for display-table glyphs from the code for buffer text, to fix
13651 bugs in the former.
13652
13653 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
13654
13655 * buffer.c (Fbuffer_local_value): New function.
13656 (syms_of_buffer): Defsubr it.
13657
13658 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13659 value of `cursor-in-non-selected-windows'.
13660
13661 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13662 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13663 (syms_of_xdisp): Initialize it.
13664
13665 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13666
13667 * xfns.c (Fx_create_frame): Doc fix.
13668
13669 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13670 keyword].
13671
13672 * eval.c (top_level_value, top_level_set): Remove commented and
13673 #ifdef'd-out code.
13674 (Fdefvar): Fix usage in doc-string.
13675
13676 2001-11-03 Richard M. Stallman <rms@gnu.org>
13677
13678 * xfns.c: Include unistd.h, if it exists.
13679
13680 * editfns.c: Move the include of ctype.h after unistd.h.
13681
13682 * gmalloc.c: Test BROKEN_PROTOTYPES.
13683
13684 2001-11-03 Ken Raeburn <raeburn@gnu.org>
13685
13686 * lisp.h (CHECK_STRING_CAR): New macro.
13687 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13688 treating XCAR and XCDR as lvalues.
13689 (openp): Use CHECK_STRING_CAR.
13690 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
13691
13692 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
13693
13694 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13695 (SIGMASKTYPE): Define.
13696
13697 * syssignal.h (sigunblock): Don't define if already defined.
13698
13699 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13700
13701 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13702 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13703 Fix typos in comments.
13704
13705 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13706 and #ifdef'd-out code.
13707 Fix and reindent comments.
13708
13709 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
13710
13711 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13712 argument `i' in macros.
13713
13714 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13715 `i' in macros.
13716
13717 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13718 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13719 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13720 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13721 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13722 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13723 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13724 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13725 in macros.
13726
13727 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13728 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13729 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13730 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13731 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13732 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13733 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13734 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13735 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13736 (remove unused second argument).
13737
13738 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
13739
13740 * syntax.c (describe_syntax): New wrapper.
13741 (Finternal_describe_syntax_value): Rename from describe_syntax.
13742 Don't insert space at front and \n at the end.
13743 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
13744
13745 * regex.c (re_wctype): Try to fix some warnings.
13746 (regcomp, regexec): Don't forget the __restrict.
13747
13748 2001-11-02 Richard M. Stallman <rms@gnu.org>
13749
13750 * textprop.c (Fget_char_property): Doc fix.
13751
13752 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13753
13754 * process.c (Fstart_process): Add usage to doc-string.
13755
13756 * data.c (Fsetq_default): Ditto.
13757
13758 * callint.c (Finteractive): Ditto.
13759
13760 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
13761
13762 * macros.c: Don't include keymap.h any more.
13763
13764 2001-11-01 Richard M. Stallman <rms@gnu.org>
13765
13766 * data.c (Fmake_local_variable): Doc fix.
13767
13768 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13769 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
13770
13771 * keymap.c (Fdescribe_buffer_bindings): Print character property
13772 bindings along with or instead of the buffer local map.
13773 Make the overriding maps override what they should.
13774
13775 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13776
13777 * window.c (grow_mini_window): Fix typo in comment.
13778
13779 2001-11-01 Gerd Moellmann <gerd@gnu.org>
13780
13781 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13782 (XTset_vertical_scroll_bar): Likewise.
13783
13784 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13785 instead of IMAGE_BACKGROUND.
13786
13787 * xfns.c (four_corners_best): Reindent.
13788
13789 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
13790 Handle :box so that it is possible to specify sexprs.
13791
13792 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13793
13794 * s/hpux11.h: New file.
13795
13796 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13797
13798 * emacs.c (USAGE1): Show command line option --no-window-system
13799 instead of --no-windows in usage.
13800 (standard_args): Rename --no-windows to --no-window-system.
13801 (bug_reporting_address): Follow Emacs coding conventions.
13802
13803 * eval.c (Fcommandp): Doc fix.
13804 Change doc-string comments to `new style' [w/`doc:' keyword].
13805
13806 * frame.c (Fframe_live_p): Doc fix.
13807
13808 * buffer.c (selective-display-ellipses): Doc fix.
13809
13810 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13811
13812 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13813
13814 * xfaces.c (realize_x_face): If C is not a single-byte character,
13815 set the face's colors_copied_bitwise_p instead of the defaulted_p
13816 members which have a different meaning.
13817 (free_face_colors): Do nothing for a face whose colors have been
13818 copied bitwise.
13819
13820 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
13821
13822 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13823
13824 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13825 [w/`doc:' keyword].
13826
13827 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13828
13829 * fns.c (require_unwind): Return Lisp_Object.
13830
13831 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13832
13833 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13834 (last-input-char): Revert doc-string to be the same as the
13835 doc-string of `last-input-event'.
13836
13837 * xdisp.c: Fix typos in comments.
13838
13839 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13840
13841 * window.c (grow_mini_window): Handle case that the root
13842 window is already smaller than the nominal mininum height.
13843
13844 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13845
13846 * emacs.c (main): Don't call keys_of_macros any more.
13847
13848 * lisp.h (keys_of_macros): Remove.
13849
13850 * macros.c (keys_of_macros): Remove.
13851
13852 * xfaces.c (Fface_attribute_relative_p): Declare args.
13853
13854 2001-10-30 Jason Rumney <jasonr@gnu.org>
13855
13856 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13857 (enum_font_cb2): Ignore fonts with vertical orientation.
13858
13859 2001-10-30 Richard M. Stallman <rms@gnu.org>
13860
13861 * keyboard.c (Finput_pending_p): Doc fix.
13862
13863 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13864
13865 * xterm.c (x_after_update_window_line): Don't run the code
13866 clearing in borders for rows whose visible height is 0.
13867
13868 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13869 resized_p flag is set. If not set, use the much less flickering
13870 method previously used.
13871
13872 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13873
13874 * frame.h (struct frame) <resized_p>: New member.
13875
13876 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13877 as large as the number of bytes to convert.
13878
13879 * lread.c (to_multibyte): New function.
13880 (read1): Use it.
13881
13882 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13883
13884 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13885
13886 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13887
13888 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
13889 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13890 if the row's fill_line_p is set and drawing the last glyph with
13891 DRAW_IMAGE_{RAISED,SUNKEN}.
13892
13893 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13894
13895 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13896
13897 * xmenu.c: Include coding.h and charset.h.
13898 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13899 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13900 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13901 Explicitly set wv->help. Use `TRUE' rather than `True'.
13902 (menu_help_callback): Use empty_string.
13903
13904 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13905 (Fx_popup_dialog): Explicitly init f.
13906 (w32_menu_display_help): Use empty_string.
13907
13908 2001-10-29 Richard M. Stallman <rms@gnu.org>
13909
13910 * fns.c (Frequire): Detect recursive try to require the same
13911 feature 3 or more levels deep, and get error.
13912 (require_unwind): New subroutine.
13913 (require_nesting_list): New variable.
13914 (syms_of_fns): Init and staticpro it.
13915
13916 * print.c (print_object): Clarify indication of insertion type.
13917
13918 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13919
13920 * coding.c (syms_of_coding): Document that locale-coding-system is
13921 used for decoding input on X.
13922
13923 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13924
13925 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13926
13927 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13928 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13929
13930 2001-10-29 Gerd Moellmann <gerd@gnu.org>
13931
13932 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13933 use NO_CURSOR if cursor_in_non_selected_windows is false.
13934
13935 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13936 the slant attribute if FRAME is t.
13937
13938 * xfns.c (x_set_internal_border_width): Set frame garbaged
13939 when X window doesn't exist yet.
13940
13941 * xterm.c (x_after_update_window_line): Clear internal border
13942 in different circumstances.
13943
13944 * xterm.c (XTread_socket) <KeyPress>: Don't use
13945 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13946 <handa@etl.go.jp>.
13947
13948 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13949
13950 * m/ibms390.h: New file. From Adam Thornton
13951 <athornton@sinenomine.net>.
13952
13953 2001-10-28 Gerd Moellmann <gerd@gnu.org>
13954
13955 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
13956
13957 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13958 a loop counter.
13959
13960 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13961
13962 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
13963
13964 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13965 keyword].
13966 Fix typos in comments.
13967
13968 * emacs.c (bug_reporting_address): New function.
13969 Use it when displaying usage message.
13970
13971 * minibuf.c (read_minibuf): Remove unused external declaration of
13972 variable `Qread_only'.
13973
13974 * keymap.c (access_keymap): Remove unused variable `charset'.
13975
13976 2001-10-28 Miles Bader <miles@gnu.org>
13977
13978 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13979 Remove #ifdef'd-out code.
13980 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13981 (syms_of_xfaces): Initialize them.
13982
13983 2001-10-27 Jason Rumney <jasonr@gnu.org>
13984
13985 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13986 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13987 position using the system caret.
13988
13989 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13990 (w32_system_caret_height, w32_system_caret_x)
13991 (w32_system_caret_y): New variables for tracking system caret.
13992 (w32_initialize): Initialize them.
13993 (x_display_and_set_cursor): Make system caret follow the active cursor.
13994
13995 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13996 New messages types.
13997
13998 * w32term.c (note_mouse_highlight): Clear old help_echo.
13999
14000 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14001
14002 * xterm.c: Fix typo in a comment.
14003
14004 * emacs.c: Fix typos in comments.
14005 Remove unnecessary spaces.
14006 Change doc-string comments to `new style' [w/`doc:' keyword].
14007 (USAGE2): Fix typos in usage string.
14008
14009 * xterm.c: Fix typo in a comment.
14010
14011 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14012 emacs.c.
14013
14014 2001-10-27 Gerd Moellmann <gerd@gnu.org>
14015
14016 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
14017 instead of 1/2 line_height in the heuristic for skipping
14018 farther backward when target_y was not reached.
14019
14020 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14021 Display errno only if non-zero.
14022 (sound_warning): New function.
14023 (vox_configure): Don't treat failing to set sample rate as error.
14024 (various places): Improve error messages.
14025
14026 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14027
14028 * fileio.c (Faccess_file): Run the argument filename through
14029 Fexpand_file_name, before using it.
14030
14031 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14032 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14033
14034 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14035
14036 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14037
14038 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14039 Fix clearing in the case of scroll bars on the right.
14040
14041 2001-10-26 Juanma Barranquero <lektu@terra.es>
14042
14043 * w32gui.h (XImage): Add a dummy typedef.
14044
14045 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14046
14047 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
14048
14049 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14050
14051 * frame.c (Fframe_parameter): Fix last change.
14052
14053 * fileio.c: Revert last change (which removed old commented-out
14054 version of expand-file-name). Add a comment that explains why
14055 this old version should not be removed.
14056
14057 2001-10-25 Gerd Moellmann <gerd@gnu.org>
14058
14059 * frame.c (Fframe_parameter): Fix a bug whereby some
14060 ``artificial'' frame parameters, like `minibuffer' were not
14061 obtained by calling Fframe_parameters.
14062
14063 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14064 cursor differently.
14065
14066 * xdisp.c (move_it_vertically_backward): Compute line height
14067 differently. Add heuristic to try to be more compatible to 20.x.
14068
14069 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14070
14071 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14072
14073 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14074 boolean.
14075
14076 2001-10-25 Miles Bader <miles@gnu.org>
14077
14078 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14079 BG is a pointer to a structure, not a structure.
14080 (gif_format, png_format): Add missing commas.
14081
14082 2001-10-24 Richard M. Stallman <rms@gnu.org>
14083
14084 * xfaces.c (Fface_attributes_as_vector): New function.
14085 (syms_of_xfaces): Defsubr it.
14086
14087 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14088
14089 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14090 variable `area'.
14091
14092 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14093
14094 * search.c (scan_newline): Remove unused variable `selective_display'.
14095
14096 2001-10-25 Miles Bader <miles@gnu.org>
14097
14098 * dispextern.h (struct image): Add `background',
14099 `background_valid', and `background_transparent' fields.
14100 (image_background, image_background_transparent): New declarations.
14101 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14102 * xfns.c (image_background, image_background_transparent)
14103 (four_corners_best): New functions.
14104 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14105 (gs_format): Add `:background' entry.
14106 (lookup_image): Set IMG's background color if specified.
14107 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14108 when appropriate.
14109 (x_clear_image_1): Reset `background_valid' and
14110 `background_transparent_valid' fields.
14111 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14112 calculating it here. Set IMG's background_transparent field.
14113 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14114 (enum png_keyword_index): Add PNG_BACKGROUND.
14115 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14116 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14117 (enum gif_keyword_index): Add GIF_BACKGROUND.
14118 (enum gs_keyword_index): Add GS_BACKGROUND.
14119 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14120 Pre-calculate image background color where necessary.
14121 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14122 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14123 color to use for image glyph reliefs.
14124
14125 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14126
14127 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14128 in full-width rows.
14129
14130 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14131 Fix clearing of area not covered by scroll bar.
14132
14133 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14134
14135 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14136 and `real_start'.
14137 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14138 (glyph_rect): Remove unused variable `area'.
14139
14140 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14141
14142 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14143
14144 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14145 (row_containing_pos): Take additional argument DY.
14146 Treat rows ending in middle of char differently.
14147 (display_line): Handle tabs on window systems differently.
14148
14149 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14150 with additional argument.
14151
14152 * dispextern.h (row_containing_pos): Adjust prototype.
14153
14154 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14155 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14156 (try_window_id, try_window_reusing_current_matrix)
14157 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14158 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14159
14160 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14161
14162 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14163 gnuemacs).
14164 (HAVE_BOXES): Fix typo in comment.
14165 (push_menu_pane): Fix typo in comment.
14166
14167 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14168 of `Qwhen'.
14169 (single_display_prop_string_p): Remove unused local declarations
14170 of `Qwhen' and `Qmargin'.
14171 (string_buffer_position): Remove unused variable `around'.
14172 (store_frame_title): Remove unused variable `width'.
14173
14174 * window.c: Don't define max.
14175 (coordinates_in_window): Remove unused variable `uy'.
14176
14177 * widget.c: Don't define max.
14178
14179 * process.c: Don't define max.
14180 (create_process): Remove unused variable `buffer'.
14181
14182 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14183
14184 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14185
14186 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14187
14188 * xfaces.c (Finternal_set_lisp_face_attribute)
14189 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14190 frame is on a windowed display.
14191
14192 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14193
14194 * dispnew.c (sync_window_with_frame_matrix_rows):
14195 Fix handling of windows which aren't full-width, fix handling
14196 of marginal areas.
14197
14198 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14199
14200 2001-10-23 Andreas Schwab <schwab@suse.de>
14201
14202 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14203 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14204
14205 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14206
14207 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14208 REAL_END. Notice if cursor gets overwritten.
14209 (notice_overwritten_cursor): Take X positions as parameters.
14210 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14211 around call to x_draw_glyphs.
14212
14213 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14214
14215 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14216 instead of C) and usage.
14217
14218 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14219 of C) and usage.
14220
14221 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14222 `left', `max_width' and `max_height'.
14223
14224 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14225
14226 * xdisp.c (display_line): For a tab continued to the next line,
14227 set row's ends_in_middle_of_char_p.
14228
14229 2001-10-22 Gerd Moellmann <gerd@gnu.org>
14230
14231 * xdisp.c (display_line): Fix computation of continuation lines
14232 width for TABs.
14233
14234 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14235
14236 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14237 `Qlaplace'.
14238
14239 * fileio.c: Remove unused code.
14240
14241 2001-10-22 Miles Bader <miles@gnu.org>
14242
14243 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14244 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14245 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14246
14247 2001-10-21 Jason Rumney <jasonr@gnu.org>
14248
14249 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14250
14251 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14252
14253 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14254 (Finsert_string): Avoid the multi-line string literals warning.
14255
14256 2001-10-22 Miles Bader <miles@gnu.org>
14257
14258 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14259 (Fdocumentation): Don't use it.
14260 (syms_of_doc): Don't initialize it.
14261
14262 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14263 * print.c (Fwith_output_to_temp_buffer): Likewise.
14264 * window.c (Fsave_window_excursion): Likewise.
14265 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14266 (Fsave_restriction): Likewise.
14267 * eval.c (Frun_hooks, Frun_hook_with_args)
14268 (Frun_hook_with_args_until_failure)
14269 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14270 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14271 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14272 (Funwind_protect, Fcondition_case): Likewise.
14273 * coding.c (Ffind_operation_coding_system): Likewise.
14274 * keyboard.c (Ftrack_mouse): Likewise.
14275
14276 2001-10-21 Miles Bader <miles@gnu.org>
14277
14278 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14279 (Fmake_hash_table): Add usage: string to doc string.
14280 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14281 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14282 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14283 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14284 (Fml_prefix_argument_loop): Likewise.
14285
14286 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14287
14288 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14289
14290 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14291 style' [w/`doc:' keyword].
14292
14293 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14294 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14295 comments to `new style' [w/`doc:' keyword].
14296
14297 2001-10-21 Jason Rumney <jasonr@gnu.org>
14298
14299 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14300
14301 * w32term.c (remember_mouse_glyph): New function.
14302 (w32_mouse_position): Use it.
14303 (note_mouse_movement): If the mouse moved off the glyph, remember
14304 its new position.
14305
14306 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14307 (w32_display_info): Add mouse_face_overlay.
14308
14309 * w32term.c (notice_overwritten_cursor): Renamed from
14310 note_overwritten_text_cursor. Rewritten to take glyph widths into
14311 account.
14312 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14313 (fast_find_string_pos): New function.
14314 (fast_find_position): Return the correct vpos. Add parameter
14315 STOP. In the final row, stop before glyphs having STOP as object.
14316 Don't consider glyphs that are not from a buffer.
14317 (fast_find_position) [0]: Add a presumably more correct version
14318 for after 21.1.
14319 (expose_window_tree, expose_frame): Don't compute intersections here.
14320 (expose_window): Do it here instead.
14321 (expose_window_tree, expose_window, expose_line): Return 1 when
14322 overwriting mouse-face.
14323 (expose_window): If W is the window currently being updated, mark
14324 the frame garbaged.
14325 (expose_frame): If mouse-face was overwritten, redo it.
14326 (x_use_underline_position_properties): New variable.
14327 (syms_of_xterm): DEFVAR_BOOL it.
14328 (x_draw_glyph_string): Add comment to use it in future.
14329 (x_draw_glyph_string): Restore clipping after drawing box.
14330 Fix a computation of the underline position.
14331 (w32_get_glyph_string_clip_rect): Minor cleanup.
14332 (x_fill_stretch_glyph_string): Remove an assertion.
14333 (x_produce_glyphs): Don't convert multibyte characters
14334 to unibyte characters in unibyte buffers.
14335 (cursor_in_mouse_face_p): New function.
14336 (x_draw_stretch_glyph_string): Use it to choose a different GC
14337 when drawing a cursor within highlighted text. Don't draw
14338 background again if it has already been drawn.
14339 (x_draw_glyph_string_box): Don't draw a full-width
14340 box just because the glyph row's full_width_p flag is set.
14341 (x_draw_glyphs): Fix computation of rightmost x for
14342 full-width rows.
14343 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14344 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14345 change bottom shadow accordingly. Some cleanup.
14346 (x_update_window_end): Handle overwritten mouse face
14347 also for tool bar windows.
14348 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14349 DRAW is DRAW_IMAGE_RAISED.
14350 (clear_mouse_face): Return 1 if text with mouse face was
14351 actually redrawn. Make the function static.
14352 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14353 optimize away highlighting if we pass over that same overlay again.
14354 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14355 to detect a case where we have to highlight a different region
14356 despite not having left the currently highlighted region.
14357 Set mouse_face_overlay in the x_display_info. Avoid changing the
14358 mouse pointer shape when show_mouse_face has already done it, or
14359 there is no need. Handle mouse-face and help-echo in strings.
14360 (glyph_rect): New function.
14361 (w32_mouse_position): Use it to raise the threshold for mouse
14362 movement event generation.
14363 (w32_initialize_display_info): Initialize the x_display_info's
14364 mouse_face_overlay.
14365 (w32_set_vertical_scroll_bar): Don't clear a zero height
14366 or width area.
14367 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14368 a widget to zero height.
14369
14370 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14371 Protect unibyte strings created by replacing their multibyte
14372 equivalents in menu_items.
14373 (w32_menu_show): Don't overwrite an item's name with its key
14374 description in case the description is a multibyte string.
14375 (single_submenu): Some cleanup.
14376
14377 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14378 (postprocess_image): New function.
14379 (lookup_image): Call it for all image types except PostScript.
14380 (x_kill_gs_process): Call postprocess_image.
14381 (tiff_error_handler, tiff_warning_handler): New functions.
14382 (tiff_load): Install them as handlers.
14383 (x_kill_gs_process): Recognize if someone has cleared the image
14384 cache under us.
14385 (valid_image_p): Protect better against invalid image
14386 specifications. Previous code could signal an error.
14387 (Fx_hide_tip, Fshow_tip): Doc fix.
14388 (Fv_max_tooltip_size): New variable.
14389 (syns_of_xfns): DEFVAR_LISP it.
14390 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14391 window buffer to *tip* right after creating the frame. Set frame's
14392 window_width. Use a maximum tooltip size specified by
14393 Vx_max_tooltip_size, if that has valid contents.
14394 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14395 Make sure the tooltip is completely visible.
14396 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14397 (Fx_create_frame): Adjust the frame's height for presence
14398 of the tool bar before calling x_figure_window_size.
14399 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14400 when the window gets smaller.
14401 (x_set_foreground_color): Set frame's cursor_pixel.
14402 (x_set_foreground_color, x_set_background_color): Cleaned up.
14403 (x_set_font): Handle case of x_new_fontset returning the same name
14404 as before, although there was a change in fontsets.
14405
14406 2001-10-21 Miles Bader <miles@gnu.org>
14407
14408 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14409 (Flogxor): Add usage: string to doc string.
14410 * charset.c (Fstring): Likewise.
14411 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14412 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14413
14414 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14415
14416 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14417
14418 * alloc.c: Reindent DEFUNs with doc: keywords.
14419
14420 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14421
14422 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14423 keyword].
14424
14425 See ChangeLog.9 for earlier changes.
14426
14427 ;; Local Variables:
14428 ;; coding: iso-2022-7bit
14429 ;; End:
14430
14431 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14432 Copying and distribution of this file, with or without modification,
14433 are permitted provided the copyright notice and this notice are preserved.
14434
14435 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4