]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2004-06-22 Kim F. Storm <storm@cua.dk>
2
3 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
4
5 * lisp.h (struct Lisp_Save_Value): New member dogc.
6 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
7 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
8 (SAFE_FREE_LISP): New macro.
9
10 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
11 (make_save_value): Init new dogc member.
12 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
13
14 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
15 SAFE_FREE_LISP macros.
16
17 2004-06-22 Kim F. Storm <storm@cua.dk>
18
19 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
20 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
21 in that memory area are unknown to GC. Add comments.
22
23 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
24
25 2004-06-21 Kim F. Storm <storm@cua.dk>
26
27 * lisp.h (MAX_ALLOCA): Define here.
28 (safe_alloca_unwind): Add prototype.
29 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
30
31 * alloc.c (safe_alloca_unwind): New function.
32
33 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
34
35 * charset.c (Fstring): Use SAFE_ALLOCA.
36
37 * coding.c (MAX_ALLOCA): Remove define.
38
39 * data.c (MAX_ALLOCA): Remove define.
40 (Faset): Use SAFE_ALLOCA.
41
42 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
43
44 * fns.c (string_make_multibyte, string_to_multibyte)
45 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
46 (MAX_ALLOCA): Remove define.
47 (Fbase64_encode_region, Fbase64_encode_string)
48 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
49 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
50 memory leak if encoding fails.
51
52 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
53
54 2004-06-21 Eli Zaretskii <eliz@gnu.org>
55
56 * print.c (Fwith_output_to_temp_buffer): Doc fix.
57
58 2004-06-20 Richard M. Stallman <rms@gnu.org>
59
60 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
61
62 * search.c (match_limit): Cleaner err msg when no match data available.
63
64 * window.c (syms_of_window): Doc fix.
65
66 * keyboard.c (command_loop_1): Handle values `only' and `identity'
67 for Vtransient_mark_mode.
68
69 * buffer.c (syms_of_buffer): Doc fix.
70
71 2004-06-21 David Kastrup <dak@gnu.org>
72
73 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
74 and unbinding of `case-fold-search' according to
75 `completion-ignore-case' around calls of string-match and
76 predicates, respectively. Should give satisfactory performance
77 in all relevant cases.
78
79 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
80
81 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
82 clip_x/y_origin.
83
84 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
85
86 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
87
88 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
89 on Mac OSX.
90
91 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
92
93 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
94
95 2004-06-16 Kim F. Storm <storm@cua.dk>
96
97 * dispextern.h (Vimage_types): Remove extern.
98
99 2004-06-16 Miles Bader <miles@gnu.org>
100
101 * image.c (lookup_image_type): Initialize image type if necessary.
102
103 2004-06-15 Kim F. Storm <storm@cua.dk>
104
105 * xdisp.c (try_cursor_movement): Exclude header line from scroll
106 margin at top of window.
107 (try_window_reusing_current_matrix): Calculate proper cursor position
108 after scrolling up with non-zero scroll margin, as the old cursor
109 position corresponds to value of PT before executing this command.
110 (try_window_id): Consider scroll margin at bottom of window too;
111 otherwise we fail to scroll when hl-line-mode is enabled.
112
113 * syntax.c (skip_chars): Only recognize [:class:] when it has the
114 proper format and class is a lower-case word.
115
116 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
117
118 * gtkutil.c (xg_get_image_for_pixmap): New function.
119 (xg_get_gdk_pixmap_and_mask): Removed.
120 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
121 xg_get_gdk_pixmap_and_mask.
122
123 * xterm.h (struct x_display_info): Typo in comment fixed.
124
125 2004-06-14 Juanma Barranquero <lektu@terra.es>
126
127 * dispextern.h (Vimage_types): Make it conditional on
128 HAVE_WINDOW_SYSTEM.
129
130 * image.c (Vimage_types): Move from xdisp.c.
131 (Vimage_type_cache): New variable.
132 (define_image_type): New argument indicating whether an image
133 library was loaded; cache loaded status and return t on success,
134 nil otherwise.
135 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
136 (w32_delayed_load): New function to load an image library from a
137 list of possible filenames.
138 (init_xpm_functions, init_png_functions, init_jpeg_functions)
139 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
140 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
141 argument.
142 (Finit_image_library): New function, extracted from `init_image'.
143 Try to initialize an image library on demand and cache whether we
144 were successful or not.
145 (syms_of_image): Initialize `Vimage_types' and
146 `Vimage_type_cache'. Add recognized image types to Vimage_types.
147 Export `init-image-library'.
148 (init_image): Remove initialization of all image types, except xbm
149 and pbm.
150
151 * xdisp.c (Vimage_types): Delete (moved to image.c).
152
153 2004-06-14 Andreas Schwab <schwab@suse.de>
154
155 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
156 Avoid calling specbind when completion-regexp-list is empty.
157
158 2004-06-13 Richard M. Stallman <rms@gnu.org>
159
160 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
161 (re_wctype, re_iswctype, re_wctype_to_bit):
162 Non-function definitions moved here from regex.c.
163
164 * regex.c (re_wctype, re_iswctype): Function defs longer static.
165 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
166 (re_wctype, re_iswctype, re_wctype_to_bit):
167 Non-function definitions moved to regex.h.
168
169 * window.c (Fselect_window): Doc fix.
170
171 * syntax.c: Include regex.h.
172 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
173 If requested, make a list of classes, then check the scanned
174 chars for membership in them.
175 (in_classes): New function.
176 Doc fix.
177
178 * keyboard.c (cmd_error): Don't call any_kboard_state
179 if inside a recursive edit level.
180
181 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
182
183 * keyboard.c (command_loop): Call any_kboard_state before
184 command_loop_2 when at top level.
185
186 2004-06-13 Andreas Schwab <schwab@suse.de>
187
188 * print.c (print_object): Always use %ld for printing EMACS_INT.
189
190 * keyboard.c (cancel_hourglass_unwind): Return a value.
191 (modify_event_symbol): Always use %ld for printing EMACS_INT.
192 (Fexecute_extended_command): Likewise.
193
194 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
195 avoid clashes.
196 (SYNTAX): Likewise.
197 (SYNTAX_WITH_FLAGS): Likewise.
198 (SYNTAX_MATCH): Likewise.
199
200 * syntax.c (char_quoted): Avoid warning about undefined operation.
201 (find_defun_start): Likewise.
202 (scan_lists): Likewise.
203 (INC_FROM): Likewise.
204 (scan_sexps_forward): Likewise.
205
206 * image.c: Include <ctype.h>.
207
208 * xfaces.c (face_attr_equal_p): Declare parameters.
209
210 2004-06-13 Kenichi Handa <handa@m17n.org>
211
212 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
213
214 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
215
216 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
217
218 2004-06-12 Kenichi Handa <handa@m17n.org>
219
220 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
221 ccl_prog_stack_struct and update it.
222 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
223 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
224 ccl->eof_ic on EOF.
225 (ccl_debug_hook): New function.
226 (struct ccl_prog_stack): New member eof_ic.
227 (ccl_driver): Handle EOF in subrountine call correctly.
228
229 2004-06-11 Kenichi Handa <handa@m17n.org>
230
231 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
232
233 2004-06-11 Kim F. Storm <storm@cua.dk>
234
235 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
236
237 2004-06-11 Juanma Barranquero <lektu@terra.es>
238
239 * keyboard.c (Fposn_at_point): Doc fix.
240
241 2004-06-11 David Kastrup <dak@gnu.org>
242
243 * search.c (match_limit): Don't flag an error if match-data
244 exceeding the allocated search_regs.num_regs gets requested, just
245 return Qnil.
246
247 2004-06-08 Miles Bader <miles@gnu.org>
248
249 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
250
251 2004-06-07 Juanma Barranquero <lektu@terra.es>
252
253 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
254 (Fcurrent_time_string, Fcurrent_time_zone)
255 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
256
257 2004-06-07 Miles Bader <miles@gnu.org>
258
259 * xfaces.c (struct named_merge_point): New type.
260 (push_named_merge_point): New function.
261 (merge_named_face): New function.
262 (merge_face_ref, face_at_buffer_position, face_at_string_position):
263 Use `merge_named_face'.
264 (merge_face_inheritance): Function removed.
265 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
266 Add new `err_msgs' and `named_merge_points' args. Return error
267 status. Only print error messages if ERR_MSGS is true. Don't try to
268 do :inherit attribute validation.
269 (merge_face_heights): Handle `unspecified' in both directions.
270 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
271 Call `merge_face_ref' instead of `merge_face_inheritance'.
272 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
273 (compute_char_face, face_at_buffer_position)
274 (face_at_string_position): Call `merge_face_ref' instead of
275 `merge_face_vector_with_property'.
276
277 2004-06-07 Kenichi Handa <handa@m17n.org>
278
279 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
280 the necessary places.
281
282 2004-06-07 Kim F. Storm <storm@cua.dk>
283
284 * process.c (Fdelete_process): Undo 2004-05-28 change.
285 Instead, call status_notify also for network process.
286 (status_message): Use process instead of status as arg.
287 Give messages "deleted" or "connection broken by remote peer" for
288 an exited network process.
289 (status_notify): Change call to status_message.
290 (read_process_output): Increase readmax to 4096. Do not increase
291 buffer size for datagram channels (default is now large enough).
292
293 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
294
295 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
296 problem due to newly defined variable.
297
298 2004-06-06 Miles Bader <miles@gnu.org>
299
300 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
301 immediately if non-interactive or not initialized.
302
303 2004-06-05 Richard M. Stallman <rms@gnu.org>
304
305 * minibuf.c (Fcompleting_read): Doc fix.
306
307 2004-06-05 Andreas Schwab <schwab@suse.de>
308
309 * macfns.c (x_create_tip_frame): Fix declaration after statement.
310
311 2004-06-05 Juanma Barranquero <lektu@terra.es>
312
313 * keymap.c (Fdescribe_vector): Fix docstring.
314 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
315
316 2004-06-05 Miles Bader <miles@gnu.org>
317
318 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
319 attributes have different values than the default face.
320
321 2004-06-04 Eli Zaretskii <eliz@gnu.org>
322
323 * xfaces.c (x_supports_face_attributes_p): Make this function
324 conditional on HAVE_WINDOW_SYSTEM.
325 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
326 call x_supports_face_attributes_p if it was not compiled in.
327
328 2004-06-04 Miles Bader <miles@gnu.org>
329
330 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
331 from Ftty_supports_face_attributes_p.
332 (x_supports_face_attributes_p): New function.
333 (Ftty_supports_face_attributes_p): Function deleted.
334 (Fdisplay_supports_face_attributes_p): New function.
335 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
336 (face_attr_equal_p): New function.
337 (lface_equal_p): Use it.
338
339 2004-06-03 Juanma Barranquero <lektu@terra.es>
340
341 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
342 (Vw32_color_map): Fix typo in docstring.
343 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
344 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
345 Make argument names match their use in docstring.
346
347 2004-06-02 Juanma Barranquero <lektu@terra.es>
348
349 Work around bugs/problems with MinGW builds of graphics libraries
350 called from MSVC builds of Emacs.
351
352 * image.c (lookup_image): Make pointer to img static.
353 (png_read_from_memory): Disable "global" optimization.
354
355 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
356
357 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
358
359 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
360
361 * macfns.c: Don't include ccl.h.
362 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
363 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
364 TextUtils.h.
365 (Fx_create_frame): Sync with xfns.c. Initialize cursor
366 descriptors.
367 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
368 display height/width.
369 (compute_tip_xy, Vx_max_tooltip_size): Declare.
370 (unwind_create_tip_frame, compute_tip_xy): New functions.
371 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
372 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
373 and last_show_tip_args.
374
375 * macgui.h [!MAC_OSX]: Include Gestalt.h.
376 (Cursor, No_Cursor): New defines.
377 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
378 macro.
379 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
380
381 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
382
383 * macterm.c: Don't include Gestalt.h.
384 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
385 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
386 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
387 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
388 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
389 (construct_mouse_click, XTmouse_position)
390 (x_scroll_bar_report_motion, x_calc_absolute_position)
391 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
392 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
393 (note_mouse_movement): Clear the mouse face and reset the pointer
394 shape when the pointer goes outside the frame without grabbing.
395 (mac_front_window): New function.
396 (mac_window_to_frame): New macro.
397 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
398 (do_window_activate, do_window_deactivate, do_app_resume)
399 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
400 (do_zoom_window, mac_do_receive_drag, XTread_socket)
401 (mac_check_for_quit_char): Use mac_front_window and/or
402 mac_window_to_frame.
403 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
404 scroll-bar click event.
405 (mac_define_frame_cursor): Change the pointer shape.
406 (x_free_frame_resources): Reset tip_window to NULL when it is
407 disposed.
408 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
409 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
410 arrow_cursor.
411 (do_window_update): Don't do anything if the updated window is the
412 tooltip window.
413 (do_mouse_moved): Handle mouse movement events here (previously in
414 XTread_socket). Clear the mouse face if
415 dpyinfo->mouse_face_hidden is set.
416 (do_os_event, do_events): Remove (now in XTread_socket).
417 (XTread_socket): Immediately return if interrupt_input_blocked.
418 Loop until all the events in the queue are processed. Rearrange
419 codes for mouse grabbing. Add tooltip support. Include the
420 contents of do_os_event and do_events. Remove mouse movement
421 handling (now in do_mouse_moved). Add the case where
422 Vmouse_highlight has an integer value.
423 (NewMacWindow): Remove.
424 (make_mac_frame): Do what NewMacWindow previously did. Don't do
425 excess initializations.
426 (make_mac_terminal_frame): Previous initializations in
427 make_mac_frame are moved here.
428 (mac_initialize_display_info): Initialize
429 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
430
431 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
432 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
433
434 2004-05-29 Richard M. Stallman <rms@gnu.org>
435
436 * lisp.h (truncate_undo_list): Update decl.
437
438 * alloc.c (undo_outer_limit): New variable.
439 (syms_of_alloc): Defvar it.
440 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
441
442 * undo.c (truncate_undo_list): New arg LIMITSIZE.
443
444 * alloc.c (lisp_align_malloc): Check for base == 0
445 regardless of HAVE_POSIX_MEMALIGN.
446 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
447
448 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
449
450 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
451 (marker_blocks_pending_free): Remove.
452 (Fgarbage_collect): Sweep after cleaning up undo-lists.
453 Mark the undo lists after claning them up.
454 Don't free block in marker_blocks_pending_free.
455 (mark_buffer): Don't mark undo_list.
456 (gc_sweep): Sweep hash-tables and strings first.
457 Do free marker blocks that are empty.
458
459 2004-05-28 Jim Blandy <jimb@redhat.com>
460
461 * regex.c (print_partial_compiled_pattern): Add missing 'break'
462 after 'case wordend'. For symbeg and symend, print to stderr,
463 like the other cases.
464
465 2004-05-28 Noah Friedman <friedman@splode.com>
466
467 * process.c (Fdelete_process): Do not call remove_process.
468
469 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
470
471 * alloc.c (struct backtrace): Remove.
472 (Fgarbage_collect): Use the new mark_backtrace.
473
474 * eval.c (mark_backtrace): New function.
475
476 * minibuf.c (run_exit_minibuf_hook): New function.
477 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
478 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
479
480 2004-05-27 Kim F. Storm <storm@cua.dk>
481
482 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
483 over display properties, e.g. images, that replace buffer text.
484
485 2004-05-25 Kim F. Storm <storm@cua.dk>
486
487 * alloc.c (marker_blocks_pending_free): New var.
488 (gc_sweep): Store free marker blocks on that list.
489 (Fgarbage_collect): Free them after undo-list cleanup.
490
491 * process.c (wait_reading_process_input): Check connect_wait_mask
492 before actually accepting connection in case it has already been
493 accepted due to recursion.
494
495 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
496
497 * coding.c (Fset_safe_terminal_coding_system_internal):
498 Set suppress_error in safe_terminal_coding, not terminal_coding.
499
500 2004-05-22 Richard M. Stallman <rms@gnu.org>
501
502 * alloc.c (Fmake_string): Doc fix.
503
504 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
505 and the alist pairs too.
506
507 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
508
509 * emacs.c (main): Update copyright year.
510
511 * fileio.c (Fread_file_name): Expand DIR if not absolute.
512
513 * insdel.c (del_range_2, replace_range): Don't write an anchor
514 if the gap is empty.
515
516 * xdisp.c (try_scrolling): If scroll-up-aggressively or
517 scroll-down-aggressively is small but positive, put point
518 near the screen edge.
519
520 2004-05-22 Juanma Barranquero <lektu@terra.es>
521
522 * keymap.c (Fdefine_key): Doc fix.
523
524 2004-05-22 Kim F. Storm <storm@cua.dk>
525
526 * alloc.c (struct backtrace): Add debug_on_exit member.
527 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
528 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
529 the removed cons cells.
530 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
531 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
532 any cons cells pointing to unallocated stings.
533 Do not lisp_free any marker blocks, as there may still be pointers
534 to them from buffer undo lists at this stage of GC.
535
536 * keyboard.c (struct backtrace): Add debug_on_exit member.
537 (Fcommand_execute): Clear it.
538
539 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
540
541 * intervals.c (lookup_char_property): Do not prematurely return nil.
542
543 2004-05-19 Jim Blandy <jimb@redhat.com>
544
545 Add support for new '\_<' and '\_>' regexp operators, matching the
546 beginning and end of symbols.
547
548 * regex.c (enum syntaxcode): Add Ssymbol.
549 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
550 (re_opcode_t): New opcodes `symbeg' and `symend'.
551 (print_partial_compiled_pattern): Print the new opcodes properly.
552 (regex_compile): Parse the new operators.
553 (analyse_first): Skip sym(beg|end) (they match only the empty string).
554 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
555 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
556 (re_match_2_internal): Match symbeg and symend.
557
558 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
559
560 2004-05-19 Kim F. Storm <storm@cua.dk>
561
562 * .gdbinit (xsymbol): Fix last change.
563
564 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
565
566 * .gdbinit (xprintstr): New fun.
567 (xstring, xprintsym): Use it.
568
569 * w32proc.c (create_child): Use INTMASK.
570
571 * alloc.c (Fgarbage_collect): Do all the marking before flushing
572 unmarked elements of the undo list.
573
574 2004-05-18 David Ponce <david@dponce.com>
575
576 * print.c (print): Reset print_depth before to call print_object.
577
578 2004-05-18 Jason Rumney <jasonr@gnu.org>
579
580 * w32console.c: Prefix RIF functions with w32con_ to avoid
581 namespace clash with functions in term.c and w32term.c.
582
583 * w32menu.c (add_menu_item, w32_menu_display_help)
584 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
585
586 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
587
588 2004-05-18 Eli Zaretskii <eliz@gnu.org>
589
590 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
591
592 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
593 with make_number.
594 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
595 with XINT.
596
597 2004-05-18 Kim F. Storm <storm@cua.dk>
598
599 * blockinput.h (INPUT_BLOCKED_P): New macros.
600
601 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
602 (Ftop_level): Unblock input if blocked.
603
604 * buffer.h (GET_OVERLAYS_AT): New macro.
605 * msdos.c (IT_note_mouse_highlight): Use it.
606 * textprop.c (get_char_property_and_overlay): Use it.
607 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
608 * xfaces.c (face_at_buffer_position): Use it.
609
610 * print.c (print_object): Increase buf size.
611
612 2004-05-17 Jason Rumney <jasonr@gnu.org>
613
614 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
615 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
616 Lisp_Object using i member.
617 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
618 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
619 consistently.
620
621 * w32proc.c (create_child): Use make_number instead of masking pid.
622
623 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
624 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
625 Use EQ to compare Lisp_Objects.
626 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
627
628 * w32term.c (w32_num_mouse_buttons): Rename from
629 Vw32_num_mouse_buttons and make it an int.
630
631 * w32.c (init_environment): Use it.
632
633 * w32fns.c (w32_wnd_proc): Likewise.
634
635 * w32proc.c (w32_pipe_read_delay): Rename from
636 Vw32_pipe_read_delay and make it an int.
637
638 * w32.c (_sys_read_ahead): Use it.
639
640 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
641
642 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
643
644 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
645 (key_event): Don't mix Lisp_Object and int.
646
647 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
648
649 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
650 modifiers in language change event.
651
652 2004-05-17 Kim F. Storm <storm@cua.dk>
653
654 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
655 Such objects may be freed markers which still exist on an undo list.
656
657 2004-05-16 Juanma Barranquero <lektu@terra.es>
658
659 * data.c (Fset_default): Make argument names match their use in
660 docstring.
661
662 2004-05-15 Andreas Schwab <schwab@suse.de>
663
664 * emacs.c (gdb_array_mark_flag): Define.
665 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
666
667 2004-05-15 Eli Zaretskii <eliz@gnu.org>
668
669 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
670 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
671 defined for the MS-DOS build.
672
673 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
674
675 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
676
677 2004-05-14 Kenichi Handa <handa@m17n.org>
678
679 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
680
681 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
682
683 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
684 section to frame.c section.
685 (Fxw_display_color_p, Fx_file_dialog): Declare if
686 HAVE_WINDOW_SYSTEM defined.
687
688 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
689
690 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
691
692 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
693 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
694 (XTread_socket): Fix int/Lisp_Object mixup.
695 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
696
697 * macterm.h (struct frame, struct face, struct image)
698 (display_x_get_resource, Fx_display_color_p)
699 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
700 Add prototypes.
701
702 2004-05-14 Kim F. Storm <storm@cua.dk>
703
704 * process.c (wait_reading_process_input): Make reentrant.
705 Make Available and Connecting non-static. Save and restore value
706 of waiting_for_user_input_p.
707
708 2004-05-13 Kim F. Storm <storm@cua.dk>
709
710 * keyboard.c (mark_kboards): Don't mark x and y members
711 that are overloaded in selection request events.
712
713 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
714
715 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
716
717 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
718
719 * window.c (Fdisplay_buffer, Fsplit_window)
720 (split-height-threshold): Doc fix.
721
722 2004-05-13 Juanma Barranquero <lektu@terra.es>
723
724 * xfaces.c (Ftty_supports_face_attributes_p)
725 (Finternal_copy_lisp_face): Fix typo in docstring.
726 (Finternal_get_lisp_face_attribute): Fix docstring.
727
728 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
729
730 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
731
732 2004-05-11 Steven Tamm <steventamm@mac.com>
733
734 * macfns.c (Fx_create_frame): Default to using tool-bar by
735 setting tool-bar-lines to 1 in default-frame-alist.
736
737 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
738
739 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
740 (xpm_get_color_table_v, xpm_make_color_table_h)
741 (xpm_put_color_table_h, xpm_get_color_table_h)
742 (xpm_str_to_color_key, xpm_load_image, xpm_load)
743 (syms_of_image): Support XPM on Carbon Emacs. Does not
744 depend on libXpm, but only supports XPM version 3 without extensions.
745
746 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
747
748 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
749 instead of FRAME_X_P
750
751 2004-05-11 Kim F. Storm <storm@cua.dk>
752
753 * process.c (read_process_output): Grow decoding_buf when needed;
754 this could cause a crash in allocate_string and compact_small_strings.
755
756 2004-04-29 Jim Blandy <jimb@redhat.com>
757
758 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
759 against proper opcode.
760
761 2004-05-10 Juanma Barranquero <lektu@terra.es>
762
763 * process.c (Fstart_process): Fix docstring.
764
765 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
766 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
767 (Fsplit_char, Fchar_charset): Make argument names match their use
768 in docstring.
769
770 2004-05-10 Richard M. Stallman <rms@gnu.org>
771
772 * print.c (print_preprocess): Use being_printed, loop_count and
773 halftail to detect overdeep nesting and cyclic cdr chains.
774
775 2004-05-10 Andreas Schwab <schwab@suse.de>
776
777 * lisp.h: Declare Fmake_symbolic_link.
778
779 * fileio.c (Frename_file): Remove extra argument in call to
780 Fmake_symbolic_link.
781
782 2004-05-10 Kim F. Storm <storm@cua.dk>
783
784 * xdisp.c (calc_line_height_property): Use string position when
785 object is a string.
786
787 2004-05-10 Kenichi Handa <handa@m17n.org>
788
789 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
790 inhibit-modification-hooks to t temporarily before calling
791 Ferase_buffer.
792
793 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
794 inhibit-modification-hooks to t temporarily before calling
795 Ferase_buffer.
796
797 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
798 inhibit-modification-hooks to t temporarily before calling
799 Ferase_buffer.
800
801 * fns.c (count_combining): Delete it.
802 (concat): Don't check combining bytes.
803
804 2004-05-09 Jason Rumney <jasonr@gnu.org>
805
806 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
807 (globals_of_w32fns): Set it.
808
809 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
810
811 * data.c (Fquo): Simplify.
812
813 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
814
815 * data.c (Fquo): If any argument is float, do the computation in
816 floating point.
817
818 2004-05-08 Juanma Barranquero <lektu@terra.es>
819
820 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
821 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
822 Fix spelling of Emacs on docstring.
823 (Fset_process_coding_system, Fprocess_coding_system)
824 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
825 Make argument names match their use in docstring.
826 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
827 Fix docstring.
828
829 * editfns.c (Finsert_buffer_substring): Make argument names match their
830 use in docstring.
831
832 * syntax.c (Fmodify_syntax_entry): Fix docstring.
833
834 2004-05-07 Steven Tamm <steventamm@mac.com>
835
836 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
837 around call to ReceiveEvent to avoid certain crashes.
838
839 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
840
841 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
842 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
843 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
844 Save/restore the current graphics port and device handle when
845 drawing into an offscreen graphics world.
846
847 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
848 (gif_load): Likewise.
849
850 2004-05-07 Juanma Barranquero <lektu@terra.es>
851
852 * window.c (Fset_window_buffer): Fix docstring.
853
854 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
855
856 * emacs.c (main) [VMS]: Fix var ref.
857
858 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
859
860 * data.c (Fsetq_default): Fix docstring.
861
862 2004-05-06 Jason Rumney <jasonr@gnu.org>
863
864 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
865 to avoid name clash.
866
867 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
868
869 * fileio.c (barf_or_query_if_file_exists): Use lstat.
870 (Frename_file): Handle renaming of symlinks across file systems.
871 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
872
873 2004-05-04 Kim F. Storm <storm@cua.dk>
874
875 * xdisp.c (Qtotal): New var.
876 (syms_of_xdisp): Intern and staticpro it.
877 (calc_line_height_property): New arg total. Set it if
878 line-spacing property has format (total . VALUE).
879 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
880 Handle total line-spacing property.
881
882 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
883
884 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
885 "under" scroll bar when size/position changes.
886
887 2004-05-03 Jason Rumney <jasonr@gnu.org>
888
889 * makefile.nt: Remove.
890
891 2004-05-02 Eli Zaretskii <eliz@gnu.org>
892
893 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
894 Avoid compiler warnings.
895
896 * Makefile.in (region-cache.o): Depend on config.h.
897
898 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
899
900 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
901 with continuation lines, too.
902
903 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
904
905 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
906
907 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
908
909 * xdisp.c (calc_line_height_property): YAILOM (yet another
910 int/Lisp_Object mixup).
911
912 2004-05-01 Eli Zaretskii <eliz@gnu.org>
913
914 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
915 undo bad effect of pack(4) in some versions of system headers.
916
917 2004-05-01 Jason Rumney <jasonr@gnu.org>
918
919 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
920
921 2004-04-30 Kim F. Storm <storm@cua.dk>
922
923 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
924 (syms_of_buffer) <cursor-type>: Doc fix.
925
926 * dispextern.h (struct it): Remove member use_default_face.
927 Add members override_ascent, override_descent, override_boff.
928
929 * xdisp.c (init_iterator): Handle line-spacing float value.
930 Initialize override_ascent member.
931 (append_space_for_newline): Reset override_ascent.
932 Remove use_default_face.
933 (calc_line_height_property): New function to calculate value of
934 line-height and line-spacing properties. Look at overlays, too.
935 Set override_ascent, override_descent, override_boff members when
936 using another face than the current face. Float values are now
937 relative to the frame default font, by default; accept a cons
938 of ratio and face name to specify value relative to a specific face.
939 (x_produce_glyphs): Use calc_line_height_property.
940 Use override_ascent etc. when set to handle different face heights.
941 A negative line-spacing property value is interpreted as a total
942 line height, rather than inter-line spacing.
943 (note_mouse_highlight): Allocate room for 40 overlays initially.
944
945 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
946
947 * data.c (Fsubr_name): New fun.
948 (syms_of_data): Defsubr it.
949
950 2004-04-29 Kim F. Storm <storm@cua.dk>
951
952 * xdisp.c (null_glyph_slice): New var.
953 (append_glyph, append_composite_glyph, append_stretch_glyph):
954 Use it to initialize glyph slice.
955
956 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
957
958 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
959 (on_hot_spot_p): Make sure we always return a value.
960 (Flookup_image_map): Remove unused var ix and iy.
961 (note_mode_line_or_margin_highlight): Remove unused var `image'.
962
963 2004-04-27 Eli Zaretskii <eliz@gnu.org>
964
965 * msdos.c (init_environment): If one of the TMP... environment
966 variables is set to a drive letter without a trailing slash,
967 append a slash.
968
969 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
970
971 * editfns.c (lisp_time_argument): Provide externally.
972
973 * fileio.c (Fset_file_times): New function.
974 (syms_of_fileio): Intern and staticpro it.
975
976 2004-04-27 Kim F. Storm <storm@cua.dk>
977
978 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
979 header line strings.
980
981 * dispextern.h (struct it): New member use_default_face.
982
983 * xdisp.c (Qline_height): New variable.
984 (syms_of_xdisp): Intern and staticpro it.
985 (append_space_for_newline): Partially undo 2004-04-25 change;
986 add default_face_p arg, and restore callers.
987 Clear it->use_default_face after use.
988 (x_produce_glyphs): Set default font for ascii char if
989 it->use_default_font is set. Change line-spacing property to set
990 just extra line spacing. Handle new line-height property.
991
992 2004-04-26 Andreas Schwab <schwab@suse.de>
993
994 * print.c (print_object): Print non-ascii characters in bool
995 vector representation as octal escapes.
996
997 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
998 * print.c (print_object): Use it instead of BITS_PER_CHAR for
999 bool vectors.
1000 * lread.c (read1): Likewise.
1001 * alloc.c (Fmake_bool_vector): Likewise.
1002 * data.c (Faref, Faset): Likewise.
1003 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1004 (mapcar1): Likewise.
1005
1006 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1007
1008 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1009
1010 2004-04-26 Miles Bader <miles@gnu.org>
1011
1012 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1013
1014 2004-04-26 Juanma Barranquero <lektu@terra.es>
1015
1016 * buffer.c (Fpop_to_buffer): Fix docstring.
1017
1018 2004-04-26 Steven Tamm <steventamm@mac.com>
1019
1020 * lread.c (init_lread): Don't display missing lisp directory
1021 warnings with Carbon Emacs because self-contained bundled Emacs
1022 may be built without correct installation path.
1023
1024 2004-04-25 Kim F. Storm <storm@cua.dk>
1025
1026 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1027
1028 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1029
1030 * xdisp.c (append_space_for_newline): Rename from append_space.
1031 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1032 (x_produce_glyphs): Handle line-spacing property on newline char.
1033 If value is t, adjust ascent and descent to fit current row height.
1034 If value is an integer or float, set extra_line_spacing to integer
1035 value, or to float value x current line height.
1036
1037 2004-04-23 Kenichi Handa <handa@m17n.org>
1038
1039 * fontset.c (Finternal_char_font): If POSITION is nil, return
1040 font for displaying CH with the default face.
1041
1042 2004-04-23 Juanma Barranquero <lektu@terra.es>
1043
1044 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1045
1046 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1047
1048 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1049 Don't make assumptions about the relative place of i and val.
1050 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1051
1052 2004-04-21 Kim F. Storm <storm@cua.dk>
1053
1054 * dispextern.h (struct glyph_slice): New struct.
1055 (struct glyph): New member slice.
1056 (GLYPH_SLICE_EQUAL_P): New macro.
1057 (GLYPH_EQUAL_P): Use it.
1058 (struct glyph_string): New member slice.
1059 (struct it_slice): New struct.
1060 (struct it): New member slice, add member to stack too.
1061 New member constrain_row_ascent_descent_p.
1062 (image_ascent): Add prototype.
1063
1064 * dispnew.c (buffer_posn_from_coords): Return full image width
1065 and height even for image slices (posn is relative to full image).
1066 (marginal_area_string): Adjust x0,y0 for image slice.
1067
1068 * image.c (image_ascent): Add slice arg; calculate ascent for
1069 image slice (or full image).
1070
1071 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1072 (syms_of_keyboard): Defsubr them.
1073
1074 * lisp.h (pos_visible_p): Fix prototype.
1075
1076 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1077 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1078 (x_draw_image_foreground, x_draw_image_relief)
1079 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1080 Draw sliced images.
1081
1082 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1083 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1084 (x_draw_image_foreground, x_draw_image_relief)
1085 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1086 Draw sliced images.
1087
1088 * w32term.h (image_ascent): Remove prototype.
1089
1090 * window.c (Fpos_visible_in_window_p): Return pixel position if
1091 PARTIALLY arg is non-nil. Simplify. Doc fix.
1092 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1093 to return/set vscroll in pixels.
1094
1095 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1096
1097 * xdisp.c (Qslice): New variable.
1098 (syms_of_xdisp): Intern and staticpro it.
1099 (pos_visible_p): Return pixel position in new x and y args.
1100 (init_iterator): Reset it->slice info.
1101 (handle_display_prop): Parse (slice ...) property.
1102 (push_it, pop_it): Save/restore slice info.
1103 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1104 force repositioning of tall row if window is vscrolled, as that
1105 would reset vscroll.
1106 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1107 increasing row height if row is non-empty.
1108 (fill_image_glyph_string): Copy slice info.
1109 (take_vertical_position_into_account): Simplify.
1110 (produce_image_glyph): Handle iterator slice info, setup glyph
1111 slice info. Do not force minimum line height.
1112 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1113 do not increase height (ascent/descent) of non-empty row when
1114 adding normal character glyph; instead reduce glyph ascent/descent
1115 appropriately; if row is higher than current glyph, adjust glyph
1116 descent/ascent to reposition glyph within the existing row.
1117 Likewise, when char is newline, only set ascent/descent if row is
1118 currently empty.
1119 (note_mouse_highlight): Handle hotspots with sliced image.
1120
1121 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1122 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1123 (x_draw_image_foreground, x_draw_image_relief)
1124 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1125 Draw sliced images.
1126
1127 * xterm.h (image_ascent): Remove prototype.
1128
1129 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1130
1131 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1132
1133 2004-04-20 John Paul Wallington <jpw@gnu.org>
1134
1135 * fns.c (Fassoc, Feql): Fix indentation.
1136
1137 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1138
1139 2004-04-19 John Paul Wallington <jpw@gnu.org>
1140
1141 * fns.c (Feql): New function.
1142 (syms_of_fns): Defsubr it.
1143
1144 2004-04-18 Jason Rumney <jasonr@gnu.org>
1145
1146 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1147 after closing the clipboard.
1148
1149 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1150
1151 * buffer.c (Fbuffer_base_buffer): Doc fix.
1152
1153 2004-04-17 Kim F. Storm <storm@cua.dk>
1154
1155 * keymap.c (Fkey_description): Add optional PREFIX arg.
1156 Combine prefix with KEYS to make up the full key sequence to describe.
1157 Correlate meta_prefix_char and following (simple) key to describe
1158 as meta modifier. All callers changed.
1159 (describe_map): Rename arg `keys' to `prefix'. Remove local
1160 `elt_prefix' var. Use Fkey_description with prefix instead of
1161 elt_prefix combined with Fsingle_key_description.
1162 (describe_vector): Declare static. Replace arg `elt_prefix' with
1163 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1164 if !KEYMAP_P. Use Fkey_description with prefix instead of
1165 Fsingle_key_description.
1166
1167 * keymap.h (Fkey_description): Fix prototype.
1168 (describe_vector): Remove prototype.
1169
1170 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1171
1172 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1173 (png_load): Fix calculation of transparent background color on X
1174 and W32 platforms.
1175
1176 2004-04-16 Juanma Barranquero <lektu@terra.es>
1177
1178 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1179 not too large before computing how much to scroll.
1180
1181 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1182
1183 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1184
1185 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1186
1187 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1188 Add hyperlink to Elisp manual to the docstring.
1189
1190 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1191
1192 * callint.c (fix_command): Use XDCR.
1193
1194 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
1195
1196 * window.c (Fget_lru_window): Doc fix.
1197
1198 2004-04-14 Kim F. Storm <storm@cua.dk>
1199
1200 * editfns.c (Fformat): Fix allocation size of precision array.
1201
1202 * dispnew.c (update_window): Only set changed_p if
1203 scrolling_window actually did scroll.
1204 (scrolling_window): Only return 1 if we actually did scroll.
1205
1206 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1207 height to glyph height when cursor row is not fully visible.
1208 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1209 failure in case row is higher than window. Callers changed.
1210 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1211 Try to scroll partially visible, higher-than-window cursor row.
1212 (redisplay_window): Always try to scroll partially visible,
1213 higher-than-window cursor row - both initially and again with
1214 centering_position = 0.
1215 Clear desired matrix before retrying with centering_position = 0.
1216
1217 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1218
1219 * syntax.c (scan_lists): Simplify backward string scan.
1220 Fix off-by-one boundary check for string and comment fences.
1221
1222 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
1223
1224 * sheap.c, unexcw.c: New files.
1225
1226 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1227
1228 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1229 base buffer has been killed. Correct the error message if the
1230 base buffer does not exist.
1231
1232 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
1233
1234 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1235 Cygwin itself. Add support for Xaw3d scrollbars.
1236
1237 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1238
1239 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1240
1241 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1242 before Cygwin unexec.
1243
1244 * Makefile.in: Link changes for Cygwin unexec() support.
1245
1246 2004-04-12 Andreas Schwab <schwab@suse.de>
1247
1248 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1249
1250 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1251
1252 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1253 IGNORE argument equals NAME. Doc fix.
1254
1255 2004-04-11 Masatake YAMATO <jet@gyve.org>
1256
1257 * buffer.c (fix_start_end_in_overlays): Make overlays
1258 empty if they are backwards.
1259
1260 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1261
1262 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1263
1264 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1265
1266 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1267
1268 2004-04-06 Kim F. Storm <storm@cua.dk>
1269
1270 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1271 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1272
1273 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1274 clearing highlight.
1275
1276 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1277
1278 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1279 clearing highlight.
1280
1281 * indent.c (vmotion): Do not reserve one column for continuation
1282 marks on window frames.
1283
1284 2004-04-04 Eli Zaretskii <eliz@gnu.org>
1285
1286 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1287 from GCC.
1288
1289 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1290
1291 * .gdbinit-union: Remove.
1292
1293 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1294 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1295 ($nonvalbits): Remove.
1296 ($valmask): Set it by calling xreload to avoid redundancy.
1297
1298 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1299 (gdb_emacs_intbits): Remove.
1300
1301 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1302
1303 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1304
1305 2004-03-30 Kenichi Handa <handa@m17n.org>
1306
1307 * editfns.c (Fformat): Fix initialization of the array info.
1308
1309 2004-03-30 Kim F. Storm <storm@cua.dk>
1310
1311 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1312 (syms_of_xterm): DEFVAR_BOOL it.
1313 (ignore_next_mouse_click_timeout): New var.
1314 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1315 Use it to filter mouse clicks following focus event.
1316
1317 2004-03-29 David Ponce <david@dponce.com>
1318
1319 * callint.c (Fcall_interactively): Fix last change.
1320
1321 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1322
1323 * eval.c (Fcommandp): Simplify.
1324
1325 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1326 Extend to handle all kinds of functions.
1327
1328 * lisp.h (Finteractive_form): Declare.
1329
1330 * callint.c (Fcall_interactively): Use it.
1331
1332 2004-03-26 Kim F. Storm <storm@cua.dk>
1333
1334 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1335 to catch errors in calc_pixel_width_or_height during redisplay.
1336
1337 2004-03-26 Masatake YAMATO <jet@gyve.org>
1338
1339 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1340
1341 * lisp.h (fix_start_end_in_overlays): Likewise.
1342
1343 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1344
1345 * editfns.c (Ftranspose_regions): Likewise.
1346
1347 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1348
1349 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1350
1351 2004-03-19 Richard M. Stallman <rms@gnu.org>
1352
1353 * s/sol2-6.h: Delete previous change.
1354
1355 2004-03-19 Kim F. Storm <storm@cua.dk>
1356
1357 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1358 to_charpos corresponds to newline in right fringe. Use local
1359 BUFFER_POS_REACHED_P macro.
1360
1361 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1362
1363 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1364 to compile on non-window system.
1365
1366 2004-03-19 Kim F. Storm <storm@cua.dk>
1367
1368 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1369
1370 * image.c (Qcenter): Move to xdisp.c.
1371
1372 * xdisp.c (Qcenter): Declare here.
1373 (syms_of_xdisp): Intern and staticpro it.
1374 (handle_single_display_prop): Allow space display property on all
1375 platforms.
1376 (display_mode_line): Set mode_line_p before displaying line.
1377 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1378 handling. Remove complex cases for fringes and scroll-bars.
1379 Add left, right, and center alignment positions. Add text (area)
1380 width/height. Return width or height for image specs.
1381 (produce_stretch_glyph): Improve handling of :align-to. Is now
1382 relative to left of text area by default, but other base offsets
1383 can be specified -- also for text lines.
1384
1385 * term.c (produce_glyphs): Handle IT_STRETCH.
1386 (produce_stretch_glyph): New function to handle space width and
1387 align-to display properties on non-window systems.
1388
1389 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1390
1391 * fileio.c (Fread_file_name): Set completion-ignore-case for
1392 case-insensitive systems.
1393
1394 2004-03-14 Masatake YAMATO <jet@gyve.org>
1395
1396 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1397 when keymap and cursor are setup.
1398
1399 2004-03-14 Steven Tamm <steventamm@mac.com>
1400
1401 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1402
1403 2004-03-14 Kim F. Storm <storm@cua.dk>
1404
1405 * dispextern.h (x_find_image_file): Add prototype.
1406
1407 * image.c (x_find_image_file): Make extern.
1408
1409 * xfns.c (x_find_image_file): Remove prototype.
1410
1411 2004-03-13 Eli Zaretskii <eliz@gnu.org>
1412
1413 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1414
1415 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1416
1417 2004-03-12 Richard M. Stallman <rms@gnu.org>
1418
1419 * fns.c (internal_equal): New arg PROPS controls comparing
1420 text properties. All callers changed.
1421 (Fequal_including_properties): New function.
1422 (syms_of_fns): defsubr it.
1423
1424 2004-03-12 Kim F. Storm <storm@cua.dk>
1425
1426 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1427
1428 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1429 (image_background, image_background_transparent): Fix prototypes.
1430
1431 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1432
1433 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1434 (x_query_font, x_find_ccl_program, x_set_window_size)
1435 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1436 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1437 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1438
1439 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1440 (x_query_font, x_find_ccl_program, x_set_window_size)
1441 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1442 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1443 (mac_draw_line_to_pixmap): Add prototypes.
1444
1445 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1446
1447 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1448
1449 2004-03-11 Kim F. Storm <storm@cua.dk>
1450
1451 * dispextern.h: Move image related prototypes from xfns.c section
1452 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1453 HAVE_X_WINDOWS.
1454
1455 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1456 Move gtkutil.o to new GTK_OBJ list.
1457 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1458 (GTK_OBJ) [USE_GTK]: New declaration.
1459 (obj): Add $(GTK_OBJ) to list.
1460
1461 2004-03-11 Steven Tamm <steventamm@mac.com>
1462
1463 * image.c [MAC_OSX]: Include sys/stat.h
1464
1465 * macfns.c (syms_of_macfns): Remove definitions of things now
1466 defined in image.c
1467
1468 2004-03-11 Kim F. Storm <storm@cua.dk>
1469
1470 The following changes consolidates the identical/similar image
1471 support code previously found in xfns.c, w32fns.c, and macfns.c
1472 into a new file image.c.
1473
1474 * makefile.w32-in (OBJ1): Add image.o.
1475 ($(BLD)/image.$(O)): Add dependencies.
1476
1477 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1478 (image.o): Add dependencies.
1479
1480 * image.c: New file with consolidated image support code.
1481 (COLOR_TABLE_SUPPORT): New define to control whether
1482 color table support is available (X only).
1483 (Bitmap_Record): Common name for x_bitmap_record,
1484 w32_bitmap_record, and mac_bitmap_record.
1485 (XImagePtr): Common name for pointer to XImage or equivalent.
1486 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1487 to XImagePtr on X+MAC, and to HDC on W32.
1488 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1489 (NO_PIXMAP): Common name for "None" or equivalent.
1490 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1491 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1492 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
1493 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1494 Define with suitable equivalents on W32 and MAC for code sharing.
1495 (XDrawLine): Define on MAC for code sharing.
1496 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1497 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1498 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1499 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1500 (x_reference_bitmap, x_create_bitmap_from_data)
1501 (x_create_bitmap_from_file, x_destroy_bitmap)
1502 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1503 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1504 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1505 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1506 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1507 (define_image_type, lookup_image_type, valid_image_p)
1508 (image_error, enum image_value_type, struct image_keyword)
1509 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1510 (make_image, free_image, prepare_image_for_display, image_ascent)
1511 (four_corners_best, image_background, image_background_transparent)
1512 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1513 (make_image_cache, free_image_cache, clear_image_cache)
1514 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1515 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1516 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1517 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1518 (init_image_func_pointer, image_load_quartz2d)
1519 (struct ct_color, init_color_table, free_color_table)
1520 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1521 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1522 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1523 (x_disable_image, x_build_heuristic_mask)
1524 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1525 (TIFF support, GIF support, Ghostscript support): Consolidate image
1526 code from xfns.c, w32fns.c, and macfns.c.
1527 (syms_of_image): Consolidate image related symbol setup here.
1528 (init_image): Consolidate image related initializations here.
1529
1530 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1531 and init_image. Remove call to init_xfns.
1532
1533 * macterm.h (struct mac_bitmap_record): Add file member.
1534 Not currently used, but simplifies code sharing.
1535
1536 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1537 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1538 (x_reference_bitmap, x_create_bitmap_from_data)
1539 (x_create_bitmap_from_file, x_destroy_bitmap)
1540 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1541 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1542 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1543 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1544 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1545 (define_image_type, lookup_image_type, valid_image_p)
1546 (image_error, enum image_value_type, struct image_keyword)
1547 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1548 (make_image, free_image, prepare_image_for_display, image_ascent)
1549 (four_corners_best, image_background, image_background_transparent)
1550 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1551 (make_image_cache, free_image_cache, clear_image_cache)
1552 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1553 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1554 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1555 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1556 (init_image_func_pointer, image_load_quartz2d)
1557 (struct ct_color, init_color_table, free_color_table)
1558 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1559 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1560 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1561 (x_disable_image, x_build_heuristic_mask)
1562 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1563 (TIFF support, GIF support, Ghostscript support): Merge with image
1564 code from xfns.c and macfns.c into image.c.
1565 (syms_of_xfns): Move image related symbols to image.c.
1566 (init_external_image_libraries, init_xfns): Remove; initialization
1567 moved to init_image in image.c.
1568
1569 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1570 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1571 (x_reference_bitmap, x_create_bitmap_from_data)
1572 (x_create_bitmap_from_file, x_destroy_bitmap)
1573 (x_destroy_all_bitmaps, x_create_bitmap_mask)
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 (struct ct_color, init_color_table, free_color_table)
1588 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1589 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1590 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1591 (x_disable_image, x_build_heuristic_mask)
1592 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1593 (TIFF support, GIF support, Ghostscript support): Merge with image
1594 code from xfns.c and macfns.c into image.c.
1595 (syms_of_xfns): Move image related symbols to image.c.
1596 (init_external_image_libraries, init_xfns): Remove; initialization
1597 moved to init_image in image.c.
1598
1599 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1600 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1601 (x_reference_bitmap, x_create_bitmap_from_data)
1602 (x_create_bitmap_from_file, x_destroy_bitmap)
1603 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1604 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1605 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1606 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1607 (define_image_type, lookup_image_type, valid_image_p)
1608 (image_error, enum image_value_type, struct image_keyword)
1609 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1610 (make_image, free_image, prepare_image_for_display, image_ascent)
1611 (four_corners_best, image_background, image_background_transparent)
1612 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1613 (make_image_cache, free_image_cache, clear_image_cache)
1614 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1615 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1616 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1617 (struct ct_color, init_color_table, free_color_table)
1618 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1619 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1620 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1621 (x_disable_image, x_build_heuristic_mask)
1622 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1623 (TIFF support, GIF support, Ghostscript support): Merge with
1624 w32fns.c and macfns.c image code into image.c.
1625 (syms_of_xfns): Move image related symbols to image.c.
1626 (init_xfns): Remove; initialization moved to init_image in image.c.
1627
1628 * lisp.h (syms_of_image, init_image): Add protoypes.
1629 (init_xfns): Remove prototype.
1630
1631 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1632 (x_reference_bitmap, x_create_bitmap_from_data)
1633 (x_create_bitmap_from_file, x_destroy_bitmap)
1634 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1635 (gamma_correct) [MAC_OS]: Add prototype.
1636
1637 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1638 (x_reference_bitmap, x_create_bitmap_from_data)
1639 (x_create_bitmap_from_file, x_destroy_bitmap)
1640 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1641
1642 2004-03-09 Kenichi Handa <handa@etlken2>
1643
1644 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1645 correctly.
1646
1647 2004-03-04 Richard M. Stallman <rms@gnu.org>
1648
1649 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1650
1651 * window.c (Fdisplay_buffer): Doc fix.
1652
1653 * buffer.c (Fpop_to_buffer): Doc fix.
1654
1655 2004-03-03 Kim F. Storm <storm@cua.dk>
1656
1657 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1658
1659 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1660
1661 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1662
1663 2004-03-02 Richard M. Stallman <rms@gnu.org>
1664
1665 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1666
1667 2004-03-02 Kenichi Handa <handa@m17n.org>
1668
1669 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1670
1671 2004-03-02 Kim F. Storm <storm@cua.dk>
1672
1673 * window.h (struct window): New member overlay_arrow_bitmap.
1674
1675 * window.c (make_window): Initialize overlay_arrow_bitmap.
1676
1677 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1678 implement and integrate multiple overlay arrows with redisplay.
1679 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1680 (last_arrow_position, last_arrow_string): Replace by properties.
1681 (Qlast_arrow_position, Qlast_arrow_string)
1682 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1683 (syms_of_xdisp): Intern and staticpro them.
1684 (overlay_arrow_string_or_property, update_overlay_arrows)
1685 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1686 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1687 (redisplay_internal): Use them instead of directly accessing
1688 Voverlay_arrow_position etc. for multiple overlay arrows.
1689 (mark_window_display_accurate): Use update_overlay_arrows.
1690 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1691 (try_window_id): Use overlay_arrows_changed_p.
1692 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1693 (display_line): Use overlay_arrow_at_row to check multiple
1694 overlay arrows, and get relevant overlay-arrow-string and
1695 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
1696 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1697 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1698
1699 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1700 (update_window_fringes): Remove unused code.
1701
1702 2004-03-01 Jason Rumney <jasonr@gnu.org>
1703
1704 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1705
1706 2004-03-01 Juanma Barranquero <lektu@terra.es>
1707
1708 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1709
1710 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1711
1712 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1713
1714 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1715 how many colors can be displayed.
1716
1717 2004-03-01 Kenichi Handa <handa@m17n.org>
1718
1719 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1720 correctly.
1721
1722 2004-02-28 Kim F. Storm <storm@cua.dk>
1723
1724 * dispnew.c (update_window): Update header line also if there are
1725 no other changes in window (move code after set_cursor label).
1726
1727 * lisp.h (mark_window_display_accurate): Remove prototype.
1728
1729 * window.c (window_loop, Fforce_window_update): Force mode line
1730 updates by setting prevent_redisplay_optimizations_p and
1731 update_mode_lines.
1732
1733 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1734
1735 * xfns.c (x_window): Fix indentation.
1736
1737 * xterm.c (x_calc_absolute_position): Call x_real_positions
1738 to get WM window sizes and use those to calculate position.
1739 (x_set_offset): Remove code commented out.
1740
1741 2004-02-28 Miles Bader <miles@gnu.org>
1742
1743 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1744
1745 2004-02-28 Kim F. Storm <storm@cua.dk>
1746
1747 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1748 an event into kbd fifo, but with special handling of quit event;
1749 a quit event is saved for later, and further events are discarded
1750 until the saved quit event has been processed.
1751 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1752 (gen_help_event): Store help event in kbd fifo.
1753 (NREAD_INPUT_EVENTS): Remove.
1754 (read_avail_input): Adapt to new read_socket_hook interface.
1755 Remove allocation and initialization of local input_event buffer,
1756 as read_socket_hook stores events directly in fifo. Allocate and
1757 initialize local hold_quit event to handle postponed quit event
1758 (and store it if set by kbd_buffer_store_event_hold).
1759
1760 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1761 (gen_help_event): Fix prototype.
1762
1763 * macterm.c (XTread_socket): Remove bufp_r and
1764 numcharsp args. Add hold_quit arg.
1765 Rework to use just one, local, inev input_event. Store inev
1766 directly in fifo using kbd_buffer_store_event_hold.
1767
1768 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1769 (read_input_waiting): Adapt to new read_socket_hook interface.
1770 Remove allocation and initialization of local input_event buffer,
1771 as read_socket_hook stores events directly in fifo. Allocate and
1772 initialize local hold_quit event to handle postponed quit event
1773 (and store it if set by kbd_buffer_store_event_hold).
1774
1775 * term.c (read_socket_hook): Fix arg list.
1776
1777 * termhooks.h (read_socket_hook): Fix prototype.
1778
1779 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1780 numcharsp args. Add hold_quit arg.
1781 Rework to use just one, local, inev input_event. Store inev
1782 directly in fifo using kbd_buffer_store_event_hold.
1783
1784 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1785
1786 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
1787 Add hold_quit arg. Rework to use just one, local, inev
1788 input_event. Store inev directly in fifo using
1789 kbd_buffer_store_event_hold. Update count in one place.
1790 Postpone call to gen_help_event until inev is stored; use new
1791 local do_help for this.
1792 Remove local emacs_event in handing of ButtonPress event; just use
1793 inev instead (so no reason to copy it later).
1794
1795 * xsmfns.c (x_session_check_input): Remove numchars arg.
1796
1797 * xterm.c (x_focus_changed, x_detect_focus_change):
1798 Remove numchars arg. Always store event into bufp arg.
1799 Return nothing. Callers changed accordingly.
1800 (glyph_rect): Simplify.
1801 (STORE_KEYSYM_FOR_DEBUG): New macro.
1802 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1803 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1804 (current_hold_quit) [USE_GTK]: Add.
1805 (event_handler_gdk): Adapt to new handle_one_xevent.
1806 (handle_one_xevent): Remove bufp_r and numcharsp args.
1807 Add hold_quit arg. Rework to use just one, local, inev
1808 input_event. Store inev directly in fifo using
1809 kbd_buffer_store_event_hold. Update count in one place.
1810 Postpone call to gen_help_event until inev is stored; use new
1811 local do_help for this.
1812 Simplify handling of keysyms (consolidate common code). Fix bug
1813 where count was updated with nchars instead of nbytes.
1814 Remove local emacs_event in handing of ButtonPress event; just use
1815 inev instead (so no reason to copy it later).
1816 Remove `out' label. Rename label `ret' to `done'; add various
1817 `goto done' to clarify code flow in deeply nested blocks.
1818 (x_dispatch_event): Simplify as handle_one_xevent now calls
1819 kbd_buffer_store_event itself.
1820 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
1821 arg. Call handle_one_xevent with new arglist. Store event from
1822 x_session_check_input in fifo.
1823 [USE_GTK]: Setup current_hold_quit.
1824 Decrement handling_signal before unblocking input.
1825 (x_initialize) [USE_GTK]: Initialize current_count.
1826
1827 * xterm.h (x_session_check_input): Fix prototype.
1828
1829 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1830
1831 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
1832
1833 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1834 macgui.h).
1835
1836 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
1837
1838 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1839 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1840 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1841 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1842 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1843 (Bitmap): Remove typedef.
1844 (Pixmap): Change int to GWorldPtr.
1845
1846 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1847
1848 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1849 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1850 New #define to extract 16-bit depth color components from unsigned
1851 long representation.
1852 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1853 colors used for masks.
1854 (struct mac_display_info): Add color_p. Remove n_cbits.
1855
1856 * macfns.c: Include sys/types.h and sys/stat.h.
1857 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1858 Include QuickTime/QuickTime.h.
1859 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1860 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1861 functions defined in macterm.c.
1862 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1863 (ZPixmap): New #define for compatibility with xfns.c.
1864 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1865 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
1866 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1867 New functions.
1868 (four_corners_best, x_create_x_image_and_pixmap)
1869 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1870 (x_edge_detection, init_color_table, colors_in_color_table)
1871 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1872 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1873 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1874 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1875 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1876 long mixup.
1877 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1878 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1879 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1880 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1881 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1882 (x_alloc_image_color, clear_image_cache, lookup_image)
1883 (x_find_image_file, xbm_read_bitmap_file_data)
1884 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1885 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1886 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1887 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1888 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
1889 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
1890 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1891 #if 0.
1892 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1893 #if 0. Free white_relief.gc and black_relief.gc.
1894 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1895 New functions (from xfns.c).
1896 (Fx_create_frame): Record unwind_create_frame.
1897 (Fxw_display_color_p): Use dpyinfo->color_p.
1898 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1899 dpyinfo->n_cbits.
1900 (Fx_display_color_cells): Use dpyinfo->n_planes;
1901 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1902 (Qheuristic, cross_disabled_images, emboss_matrix)
1903 (laplace_matrix): New variables (from xfns.c).
1904 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1905 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1906 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
1907 (image_background_transparent): New function (from xfns.c).
1908 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1909 (image_load_quicktime): Add declaration.
1910 [MAC_OSX] (image_load_quartz2d): Likewise.
1911 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1912 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
1913 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
1914 (xbm_load_image_from_file, x_laplace_read_row)
1915 (x_laplace_write_row, pbm_read_file): Remove functions.
1916 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1917 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1918 (colors_in_color_table): Sync with xfns.c (although not used).
1919 (lookup_rgb_color): Don't lookup color table. Just do gamma
1920 correction.
1921 (COLOR_INTENSITY): New #define (from xfns.c).
1922 (x_disable_image): New function (from xfns.c).
1923 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1924 (x_build_heuristic_mask): Sync with xfns.c.
1925 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1926 (HAVE_PBM): Remove #ifdef.
1927 (pbm_load): Sync with xfns.c. Set img->width and img->height
1928 before IMAGE_BACKGROUND.
1929 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
1930 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1931 Don't enclose with #if HAVE_PNG.
1932 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
1933 symbol _CGImageCreateWithPNGDataProvider is defined.
1934 Otherwise use image_load_quicktime.
1935 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
1936 [HAVE_PNG] (png_load): Sync with xfns.c.
1937 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1938 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1939 HAVE_JPEG.
1940 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1941 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1942 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1943 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1944 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1945 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1946 HAVE_TIFF.
1947 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1948 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1949 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
1950 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1951 New functions (from xfns.c).
1952 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
1953 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
1954 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1955 Don't enclose with #if HAVE_GIF.
1956 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1957 animated gif. Otherwise use image_load_quicktime.
1958 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1959 gif_DrawText to avoid conflict with QuickdrawText.h.
1960 [HAVE_GIF] (gif_load): Sync with xfns.c.
1961 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1962 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1963 Ghostscript is not supported yet).
1964 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1965 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1966 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1967 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1968 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1969 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1970 HAVE_PNG. Call EnterMovies to support animated gifs.
1971 Call init_image_func_pointer to bind a symbol
1972 _CGImageCreateWithPNGDataProvider if it is defined.
1973
1974 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1975 (x_draw_bar_cursor): Sync declaration with xterm.c.
1976 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1977 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1978 graphics).
1979 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1980 (mac_draw_line_to_pixmap, XCreatePixmap)
1981 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
1982 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1983 New functions.
1984 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1985 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1986 Cast bits to char *.
1987 (reflect_byte): New function (from w32fns.c).
1988 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1989 due to byte alignment.
1990 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1991 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1992 (XSetForeground): Remove static (now used in macfns.c).
1993 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1994 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1995 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1996 (x_draw_glyph_string_box, x_draw_image_foreground)
1997 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1998 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1999 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2000 Sync with xterm.c.
2001 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2002 than the xterm.c version when a strictly horizontal or vertical
2003 line is drawn.
2004 (XTset_terminal_window): Add static.
2005 (x_make_frame_visible): Add UNBLOCK_INPUT.
2006 (x_free_frame_resources): New funcion (from xterm.c).
2007 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2008 occurs in tool bar area.
2009 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2010 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
2011 Initialize image cache.
2012 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2013 Enclose unused functions with #if 0.
2014 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2015 (decode_mac_font_name): New function to apply code conversions
2016 from a mac font name to an XLFD font name according to its script code.
2017 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
2018 font name to a mac font name according to REGISTRY and ENCODING fields.
2019 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2020 whose name starts with `.'.
2021 (init_font_name_table): Use decode_mac_font_name. Add both
2022 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2023 of a font is smJapanese.
2024 (mac_do_list_fonts): New function to list fonts that match a given
2025 pattern.
2026 (x_list_fonts, XLoadQueryFont): Use it.
2027 (XLoadQueryFont): Set rbearing field for each variable width
2028 character to avoid needless redraw.
2029 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2030
2031 2004-02-26 Kim F. Storm <storm@cua.dk>
2032
2033 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2034 as read_socket_hook handler on X aborts if buffer is too small
2035 and W32 handler doesn't always check buffer limit.
2036
2037 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2038 right-fringe similar to a display margin image. Specifically,
2039 the characters having the fringe prop are no longer shown, and
2040 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2041 do this. Set fringe bitmap face_id in it->face_id.
2042 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2043 still realize it->face (i.e. the fringe bitmap face).
2044
2045 2004-02-25 Miles Bader <miles@gnu.org>
2046
2047 * xdisp.c (check_it): Check string/string_pos consistency.
2048 (init_iterator): Initialize string-related fields properly.
2049
2050 2004-02-11 Miles Bader <miles@gnu.org>
2051
2052 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2053
2054 2004-02-10 Miles Bader <miles@gnu.org>
2055
2056 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2057 BLOCK_INPUT can be nested, so it doesn't make much sense.
2058
2059 2004-02-24 Michael Mauger <mmaug@yahoo.com>
2060
2061 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2062 (xbm_read_bitmap_data): Use unsigned char for image data.
2063
2064 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2065
2066 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2067
2068 2004-02-22 Jason Rumney <jasonr@gnu.org>
2069
2070 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2071 correctly over other bitmaps.
2072
2073 2004-02-21 Eli Zaretskii <eliz@gnu.org>
2074
2075 * emacs.c (USAGE1): Split into two halves.
2076 (USAGE2): Second half of the old USAGE1.
2077 (USAGE3): Rename from USAGE2.
2078 (USAGE4): Rename from USAGE3.
2079
2080 2004-02-21 Juri Linkov <juri@jurta.org>
2081
2082 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2083 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2084 --file. Fix -f, -l. Sort options. Untabify.
2085 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2086
2087 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2088
2089 * category.c (Fdefine_category, Fcategory_docstring)
2090 (Fget_unused_category, Fset_category_table)
2091 (Fcategory_set_mnemonics): Doc fixes.
2092
2093 2004-02-20 Kim F. Storm <storm@cua.dk>
2094
2095 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2096 The following changes are relative to the 2004-01-21 revision.
2097 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2098 in one call to read_socket_hook. Value is 8.
2099 (read_avail_input): Separate and rework handling of read_socket_hook
2100 and non-read_socket_hook cases. Use smaller input_event buffer
2101 in read_socket_hook case, and repeat if full buffer is read.
2102 Use new local variable 'discard' to skip input after C-g.
2103 In non-read_socket_hook case, just use a single input_event, and
2104 call kbd_buffer_store_event on the fly for each character.
2105
2106 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2107
2108 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2109 Remove unused `gu' alternative.
2110
2111 2004-02-19 Andreas Schwab <schwab@suse.de>
2112
2113 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2114 warning.
2115
2116 2004-02-18 Kim F. Storm <storm@cua.dk>
2117
2118 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2119 Fix last change.
2120
2121 2004-02-17 Kim F. Storm <storm@cua.dk>
2122
2123 * xdisp.c (fast_find_position): Fix return value of new version;
2124 it was inverted compared to the 21.1 version.
2125 (get_window_cursor_type): Don't look at glyph if NULL.
2126 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2127
2128 * keyboard.c: Rework previous change; it didn't consider that the
2129 buf array was allocated on the stack.
2130 (prev_read): Remove variable.
2131 (read_avail_input_buf): New static event buffer array.
2132 (in_read_avail_input): New static variable to handle re-entrancy.
2133 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2134 Use in_read_avail_input to handle re-entrance; when re-entered,
2135 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2136 Do not initialize read_avail_input_buf in full here; instead assume it
2137 is always cleared on entry. To ensure that, we clear (just) the
2138 entries that were used before we return.
2139 (init_keyboard): Initialize read_avail_input_buf here.
2140
2141 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2142
2143 * cmds.c (Fend_of_line): Doc fix.
2144
2145 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2146
2147 * keyboard.c (prev_read): New static variable.
2148 (read_avail_input): Use it to zero out only those slots in buf[]
2149 that were used last time we were called.
2150
2151 2004-02-16 Eli Zaretskii <eliz@gnu.org>
2152
2153 * Makefile.in (obj): Move fringe.o from here...
2154 (XOBJ, MAC_OBJ): ...to here.
2155
2156 2004-02-16 Stephen Eglen <stephen@gnu.org>
2157
2158 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2159
2160 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2161
2162 * data.c (Fbyteorder):
2163 * fringe.c (Fdefine_fringe_bitmap):
2164 * xdisp.c (handle_single_display_prop):
2165 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2166
2167 2004-02-16 Jason Rumney <jasonr@gnu.org>
2168
2169 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2170
2171 2004-02-15 Steven Tamm <steventamm@mac.com>
2172
2173 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2174 controlling emulation of a three button mouse with option and
2175 command keys.
2176 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2177 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2178
2179 2004-02-15 Kim F. Storm <storm@cua.dk>
2180
2181 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2182
2183 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2184 Perform byte-swapping.
2185
2186 2004-02-14 Kim F. Storm <storm@cua.dk>
2187
2188 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2189 bits from char to short to facilitate wider bitmaps.
2190 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2191 member.
2192
2193 * fringe.c (struct fringe_bitmap): Change member bits from char to
2194 short to facilitate 16 bits wide bitmaps. Modify all standard
2195 bitmaps accordingly.
2196 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2197 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2198 (draw_fringe_bitmap): Ditto.
2199 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2200 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2201 handle up to 16 bits wide bitmaps.
2202 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2203 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2204
2205 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2206 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2207 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2208
2209 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2210 so it is no longer necessary to expand them here.
2211
2212 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2213
2214 2004-02-12 Kim F. Storm <storm@cua.dk>
2215
2216 * window.c (Fwindow_fringes): Doc fix.
2217
2218 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2219
2220 * xselect.c (x_get_foreign_selection): Add new optional parameter
2221 time_stamp.
2222 (Fx_get_selection_internal): Ditto, pass time_stamp to
2223 x_get_foreign_selection.
2224
2225 * data.c (Fbyteorder): New function.
2226
2227 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2228
2229 * atimer.c: Move include stdio.h to same place as in other files.
2230
2231 * region-cache.c: Ditto.
2232
2233 * sysdep.c: Ditto.
2234
2235 * xfaces.c: Ditto.
2236
2237 2004-02-09 Sam Steingold <sds@gnu.org>
2238
2239 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2240
2241 2004-02-09 Kim F. Storm <storm@cua.dk>
2242
2243 * fringe.c: New file. Move original fringe related declarations
2244 and code from dispextern.h and xdisp.c here.
2245 Rework code to support user defined fringe bitmaps, redefining
2246 standard bitmaps, ability to overlay user defined bitmap with
2247 overlay arrow bitmap, and add faces to bitmaps.
2248 (Voverflow_newline_into_fringe): Declare here.
2249 (enum fringe_bitmap_align): New enum.
2250 (..._bits): All bitmaps are now defined without bitswapping; that
2251 is now done in init_fringe_once (if necessary).
2252 (standard_bitmaps): New array with specifications for the
2253 standard fringe bitmaps.
2254 (fringe_faces): New array.
2255 (valid_fringe_bitmap_id_p): New function.
2256 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2257 (draw_fringe_bitmap): New function which draws fringe bitmap,
2258 possibly overlaying bitmap with cursor in right fringe or the
2259 overlay arrow in the left fringe.
2260 (update_window_fringes): Do not handle overlay arrow here.
2261 Compare and copy fringe bitmap faces.
2262 (init_fringe_bitmap): New function.
2263 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2264 define and destroy user defined fringe bitmaps.
2265 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2266 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2267 (syms_of_fringe): New function. Defsubr new DEFUNs.
2268 DEFVAR_LISP Voverflow_newline_into_fringe.
2269 (init_fringe_once, init_fringe): New functions.
2270 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2271
2272 * Makefile.in (obj): Add fringe.o.
2273 (fringe.o): New dependencies.
2274
2275 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2276 bits allocated to hold a fringe number. Increase number of bits
2277 from 4 to 8 to allow user defined fringe bitmaps.
2278 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2279 left_user_fringe_face_id, right_user_fringe_bitmap,
2280 right_user_fringe_face_id.
2281 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2282 Move to new file fringe.c.
2283 (MAX_FRINGE_BITMAPS): Define here.
2284 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2285 and overlay_p. Change member which to int.
2286 (struct redisplay_interface): New members define_fringe_bitmap
2287 and destroy_fringe_bitmap.
2288 (valid_fringe_bitmap_id_p): Add prototype.
2289 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2290
2291 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2292 arrows.
2293 (update_frame): Do flush_display if force_flush_display_p to
2294 ensure display (specifically fringes) are updated in a timely
2295 manner when resizing the frame by dragging the mouse.
2296 (update_window_line): Update row if overlay arrow changed.
2297 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2298 or overlay arrow changed.
2299
2300 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2301 syms_of_fringe, and init_fringe.
2302
2303 * frame.h (struct frame): New member force_flush_display_p.
2304
2305 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2306 Add prototypes.
2307
2308 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2309 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2310 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2311 Use cursor color for displaying cursor in fringe.
2312 (x_redisplay_interface): Add null handlers for
2313 define_fringe_bitmap and destroy_fringe_bitmap functions.
2314
2315 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2316 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2317 for displaying cursor in fringe.
2318 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2319 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2320 (w32_redisplay_interface): Add them to redisplay_interface.
2321 (w32_term_init): Call w32_init_fringe instead of explicitly
2322 defining fringe bitmaps in fringe_bmp array.
2323 (x_delete_display): Call w32_reset_fringes instead of explicitly
2324 destroying fringe bitmaps in fringe_bmp array.
2325
2326 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2327 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2328 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2329 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2330 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2331 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2332 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2333 Move fringe handling vars and code to new file fringe.c.
2334 (handle_display_prop): Handle left-fringe and right-fringe
2335 display properties; store user fringe bitmaps in iterator.
2336 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2337 (clear_garbaged_frames): Set force_flush_display_p if resized.
2338 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2339 (display_line): Handle cursor in fringe at eob.
2340 (display_line): Set row user fringe bitmaps from iterator.
2341
2342 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
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 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2348
2349 * macfns.c (Fx_change_window_property): Make doc string and
2350 parameters same as for X version.
2351
2352 * w32fns.c (Fx_change_window_property): Ditto.
2353
2354 2004-02-07 Kim F. Storm <storm@cua.dk>
2355
2356 * xdisp.c (hscroll_window_tree): Position cursor near to right
2357 margin in hscrolled window when jumping to end of line (rather
2358 than centering cursor).
2359
2360 * process.c (wait_reading_process_input): Don't do adaptive read
2361 buffering if waiting for a specific process.
2362
2363 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2364
2365 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2366 (Fread_minibuffer, Feval_minibuffer)
2367 (Fread_string, Fread_no_blanks_input)
2368 (Fcompleting_read): Doc fixes.
2369 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2370 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2371 (read_minibuf): Fix initial comment.
2372 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2373 case-fold-search to the value of completion-ignore-case when
2374 checking completion-regexp-list.
2375 (Fdisplay_completion_list): Make it handle arguments that are
2376 symbols. Doc fix.
2377
2378 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2379
2380 * xterm.h: Add declaration of free_frame_menubar.
2381
2382 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2383 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2384 (Fx_change_window_property): Add declaration of parameters type and
2385 format. Remove unused variable cons.
2386
2387 * xselect.c: Include stdio,h.
2388
2389 2004-02-05 Kenichi Handa <handa@m17n.org>
2390
2391 * fns.c (Fset_char_table_range): Fix previous change.
2392
2393 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2394
2395 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2396
2397 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2398
2399 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2400
2401 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2402 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2403
2404 2004-02-04 Kenichi Handa <handa@m17n.org>
2405
2406 * fns.c (Fset_char_table_range): Handle charsets ascii,
2407 eight-bit-control, and eight-bit-graphic correctly.
2408
2409 2004-02-03 Jason Rumney <jasonr@gnu.org>
2410
2411 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2412
2413 * w32fns.c (x_to_w32_font): Likewise.
2414
2415 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2416
2417 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2418 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2419
2420 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2421 ClientMessages.
2422
2423 * xselect.c: Include termhooks.h and X11/Xproto.h
2424 (x_check_property_data, x_fill_property_data)
2425 (x_property_data_to_lisp, mouse_position_for_drop)
2426 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2427 (Fx_send_client_event): Move here from xfns.c.
2428 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2429
2430 * xfns.c (x-send-client-message): Move to xselect.c
2431 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2432 OUTER_P.
2433 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2434 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2435 if vector_ret_p is true.
2436 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2437
2438 2004-02-02 Eli Zaretskii <eliz@gnu.org>
2439
2440 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2441 basename of FILE relative to it, not FILE itself.
2442
2443 2004-02-02 Kenichi Handa <handa@m17n.org>
2444
2445 * coding.c (coding_restore_composition): Check invalid
2446 composition data more rigidly.
2447
2448 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2449
2450 * fileio.c (Fread_file_name_internal): Correctly handle the case
2451 where insert-default-directory is nil.
2452 (Fread_file_name): Always return an empty string if the user exits
2453 with an empty minibuffer. Adapt the docstring accordingly.
2454 (syms_of_fileio): Adapt the docstring of insert-default-directory
2455 to the change in Fread_file_name.
2456
2457 2004-01-29 Eli Zaretskii <eliz@gnu.org>
2458
2459 * alloca.c [!alloca]: Fix the prototype for xfree.
2460
2461 2004-01-29 Kenichi Handa <handa@m17n.org>
2462
2463 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2464 (string_byte_to_char): Likewise.
2465
2466 2004-01-28 Peter Runestig <peter@runestig.com>
2467
2468 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2469
2470 2004-01-27 Steven Tamm <steventamm@mac.com>
2471
2472 * unexmacosx.c (unexec_copy): Do not copy more than was
2473 requested to prevent overwriting during unexec.
2474
2475 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2476
2477 * process.c (sigchld_handler): Add comment about not calling malloc.
2478
2479 * process.h: Add extern to synch_process_termsig.
2480
2481 2004-01-27 Steven Tamm <steventamm@mac.com>
2482
2483 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2484 Move setting of scroll bars from make_mac_frame to
2485 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
2486
2487 2004-01-26 Richard M. Stallman <rms@gnu.org>
2488
2489 * search.c (Freplace_match): Handle nonexistent
2490 back-references properly.
2491
2492 2004-01-03 Richard M. Stallman <rms@gnu.org>
2493
2494 * window.c (decode_any_window): New function.
2495 (Fwindow_height, Fwindow_width, Fwindow_edges)
2496 (Fwindow_pixel_edges, Fwindow_inside_edges)
2497 (Fwindow_inside_pixel_edges): Use decode_any_window.
2498
2499 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2500
2501 * process.h: synch_process_termsig new variable.
2502
2503 * callproc.c: Define synch_process_termsig.
2504 (Fcall_process): Initiate synch_process_termsig to zero and
2505 check if non-zero and get signal name after subprocess has ended.
2506
2507 * process.c (sigchld_handler): Set synch_process_termsig
2508 if terminated by a signal. synch_process_death setting removed.
2509
2510 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2511
2512 2004-01-26 Andreas Schwab <schwab@suse.de>
2513
2514 * print.c (print_preprocess): Declare size as EMACS_INT to not
2515 lose bits.
2516 (print_object): Likewise.
2517 * alloc.c (Fpurecopy): Likewise.
2518
2519 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2520
2521 * window.c (Fwindow_minibuffer_p): Doc fix.
2522
2523 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2524
2525 * editfns.c (Fformat): Make both passes accept the same set of flags.
2526
2527 2004-01-23 Kenichi Handa <handa@m17n.org>
2528
2529 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2530 one, set buffer to OBJECT temporarily.
2531
2532 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2533
2534 * keyboard.c (kbd_buffer_gcpro): Remove.
2535 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2536 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2537 Don't initialize and/or maintain the variable any more. It was made
2538 redundant by my commit of 2003-06-15.
2539
2540 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2541
2542 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2543
2544 * lisp.h: Add undef DECL_ALIGN.
2545
2546 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2547
2548 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2549 Check interrupt_input_pending explicitly.
2550
2551 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2552
2553 * keyboard.c (handle_async_input): New fun,
2554 extracted from input_available_signal.
2555 (input_available_signal, reinvoke_input_signal): Use it.
2556
2557 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2558
2559 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2560
2561 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2562 manipulation macros for when tags are in the lower bits.
2563 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2564 (DECL_ALIGN): New macro.
2565 (DEFUN): Use it.
2566
2567 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2568
2569 * s/darwin.h (__attribute__): Remove outdated workaround.
2570
2571 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2572
2573 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2574 Don't check range of malloc address.
2575 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2576
2577 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2578
2579 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2580
2581 2004-01-19 Kenichi Handa <handa@m17n.org>
2582
2583 * fontset.c (fontset_font_pattern): Fix previous change.
2584
2585 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2586
2587 * xdisp.c (Voverflow_newline_into_fringe)
2588 (move_it_in_display_line_to, redisplay_internal)
2589 (update_window_fringes, redisplay_window, display_line, window):
2590 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2591 that it compiles without a window-system.
2592 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2593
2594 2004-01-16 Kim F. Storm <storm@cua.dk>
2595
2596 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2597
2598 * buffer.c (init_buffer_once): Set buffer_defaults and
2599 buffer_local_flags for indicate_buffer_boundaries.
2600 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2601 default- variable for it.
2602
2603 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2604 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
2605 New members exact_window_width_line_p and cursor_in_fringe_p for
2606 overflowing newlines into right fringe.
2607 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2608 and indicate_bottom_line_p for buffer boundaries and scrolling.
2609 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2610 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2611 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2612 and HOLLOW_SQUARE_BITMAP.
2613 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2614 Add prototypes.
2615
2616 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2617 instead of related indicator fields.
2618 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2619 (direct_output_for_insert): Handle exact width lines like
2620 contined lines. Call update_window_fringes.
2621 (update_window): Call update_window_fringes.
2622 (scrolling_window): Don't skip desired rows with changed bitmaps.
2623 Check if fringe bitmaps changes when assigning scrolled rows.
2624
2625 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2626 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2627 (move_it_in_display_line_to): Overflow newline into fringe for
2628 rows that are exactly as wide as the window.
2629 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2630 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2631 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2632 (fringe_bitmaps): Add new bitmaps.
2633 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2634 Select proper bitmap for cursor in fringe when appropriate.
2635 Handle alignment of bitmap to top or bottom of row.
2636 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2637 done by update_window_fringes.
2638 (update_window_fringes, draw_window_fringes): New functions.
2639 (redisplay_internal): Call update_window_fringes in case only
2640 cursor row is updated.
2641 (redisplay_window): Call update_window_fringes.
2642 Explicitly call draw_window_fringes if redisplay was done using
2643 the current matrix or the overlay arrow is in the window.
2644 (try_window_reusing_current_matrix): Mark scrolled rows for
2645 fringe update (to update buffer-boundaries / scrolling icons).
2646 (find_last_unchanged_at_beg_row): Handle exact width lines line
2647 continued lines.
2648 (display_line): Overflow newline into fringe for rows that are
2649 exactly as wide as the window. Don't append space for newline
2650 in this case.
2651 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2652 in fringe as if it had been overwritten.
2653 (erase_phys_cursor): Erase cursor bitmap in fringe.
2654 (syms_of_xdisp): Mark show-trailing-whitespace and
2655 void-text-area-pointer as user options.
2656 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
2657
2658 * xterm.c (x_update_window_end): Call draw_window_fringes.
2659 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2660 in row instead of actually drawing fringe bitmaps.
2661 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2662 (x_draw_window_cursor): Draw cursor in fringe.
2663
2664 * w32term.c (x_update_window_end): Call draw_window_fringes.
2665 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2666 in row instead of actually drawing fringe bitmaps.
2667 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2668 (w32_draw_window_cursor): Draw cursor in fringe.
2669
2670 * macterm.c (x_update_window_end): Call draw_window_fringes.
2671 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2672 in row instead of actually drawing fringe bitmaps.
2673 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2674 (mac_draw_window_cursor): Draw cursor in fringe.
2675
2676 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2677
2678 * xterm.c (handle_one_xevent): Don't handle characters that are part
2679 of an old style (XLookupString) compose sequence.
2680
2681 2004-01-15 Kenichi Handa <handa@m17n.org>
2682
2683 * search.c (Freplace_match): Use make_multibyte_string or
2684 make_unibyte_string according to the buffer multibyteness.
2685
2686 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2687
2688 * alloc.c (struct interval_block, struct string_block)
2689 (struct symbol_block, struct marker_block, live_string_p)
2690 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2691 Better preserve alignment for objects in blocks.
2692 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2693
2694 * lread.c (defvar_per_buffer): Remove dead declaration.
2695
2696 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2697 space size.
2698
2699 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2700
2701 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2702 if a key press should pop down. Only pop down if a key is pressed
2703 outside the menu/dialog.
2704 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2705 popup_get_selection.
2706 (create_and_show_dialog): Pass 1 for down_on_keypress to
2707 popup_get_selection.
2708
2709 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2710
2711 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2712 BLOCK/UNBLOCK_INPUT.
2713
2714 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2715
2716 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2717 specified.
2718
2719 2004-01-08 Kenichi Handa <handa@m17n.org>
2720
2721 * editfns.c (Fformat): Fix '&' to '&&'.
2722
2723 2004-01-08 Andreas Schwab <schwab@suse.de>
2724
2725 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2726 size if PSEUDOVECTOR_FLAG is set.
2727
2728 2004-01-07 Kenichi Handa <handa@m17n.org>
2729
2730 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2731
2732 * fontset.c (fontset_ref_via_base): Fix previous change.
2733
2734 2004-01-07 Kim F. Storm <storm@cua.dk>
2735
2736 * process.c (read_process_output): Only activate adaptive
2737 buffering if we read less than 256 bytes at a time.
2738
2739 2004-01-06 Kim F. Storm <storm@cua.dk>
2740
2741 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2742 object and image object. Return glyph width and height.
2743 (mode_line_string, marginal_area_string): Ditto.
2744
2745 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2746 (marginal_area_string): Fix prototypes.
2747
2748 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
2749 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
2750 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2751
2752 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2753 buffer_posn_from_coords, and marginal_area_string functions to
2754 include both string object and image object in the lispy position.
2755 Also add actual glyph width and height to position.
2756 (read_key_sequence): Use real buffer position from mouse
2757 event to find keymap property even when click is in marginal area.
2758
2759 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2760 mode_line_string and marginal_area_string functions to handle
2761 both string object and image object properties.
2762
2763 2004-01-06 Andreas Schwab <schwab@suse.de>
2764
2765 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2766 character.
2767
2768 2004-01-02 Andreas Schwab <schwab@suse.de>
2769
2770 * macterm.c (emacs_options, x_initialized, same_x_server):
2771 Remove unused (and duplicated) definitions.
2772
2773 2004-01-02 Kim F. Storm <storm@cua.dk>
2774
2775 * process.h (struct Lisp_Process): New members for adaptive read
2776 buffering: adaptive_read_buffering, read_output_delay, and
2777 read_output_skip.
2778
2779 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2780 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2781 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2782 (process_output_delay_count, process_output_skip): New vars.
2783 (Vprocess_adaptive_read_buffering): New variable.
2784 (make_process): Initialize adaptive read buffering members.
2785 (Fstart_process): Set adaptive_read_buffering member.
2786 (deactivate_process): Cleanup adaptive read buffering.
2787 (wait_reading_process_input): Temporarily omit delayed
2788 subprocesses from the set of file descriptors to read from;
2789 adjust the select timeout if we skipped any subprocesses.
2790 (read_process_output): Increase adaptive read buffering delay if
2791 we read less than a full buffer; reduce delay when we read a
2792 full buffer.
2793 (send_process): Simplify using local Lisp_Process var.
2794 Reset adaptive read buffering delay after write.
2795 (init_process): Initialize process_output_delay_count and
2796 process_output_skip.
2797 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2798
2799 2004-01-01 Jason Rumney <jasonr@gnu.org>
2800
2801 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
2802
2803 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2804
2805 * print.c (Ferror_message_string): Add hyperlink in the docstring
2806 to the definition of `signal' in the Elisp manual.
2807 * eval.c (Fsignal): Ditto.
2808
2809 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
2810
2811 * fns.c (internal_equal): Return t for two NaN arguments.
2812
2813 2003-12-29 Richard M. Stallman <rms@gnu.org>
2814
2815 * data.c (store_symval_forwarding): Handle setting
2816 default-fill-column, etc., by changing the value in
2817 buffers that use the default.
2818
2819 * minibuf.c (Fset_minibuffer_window): Doc fix.
2820
2821 * fileio.c (choose_write_coding_system): Ignore auto_saving
2822 if using the visited file for auto saves.
2823 (Fwrite_region): Don't update SAVE_MODIFF
2824 if auto-saving in visited file.
2825
2826 2003-12-29 Kenichi Handa <handa@m17n.org>
2827
2828 * dispextern.h (face_font_available_p): Extern it.
2829
2830 * fontset.c (Voverriding_fontspec_alist): New variable.
2831 (lookup_overriding_fontspec): New function.
2832 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
2833 (fontset_font_pattern): Likewise.
2834 (regulalize_fontname): New function.
2835 (Fset_fontset_font): Call regulalize_fontname.
2836 (Fset_overriding_fontspec_internal): New function.
2837 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2838 Defsubr Sset_overriding_fontspec_internal.
2839
2840 * xfaces.c (face_font_available_p): New function.
2841
2842 2003-12-28 Richard M. Stallman <rms@gnu.org>
2843
2844 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2845 or if its name is nil.
2846
2847 * buffer.c (Fkill_buffer): Don't delete auto-save file
2848 if it's the same as the visited file.
2849
2850 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2851
2852 * coding.c (Fcheck_coding_system): Doc fix.
2853
2854 2003-12-28 Kim F. Storm <storm@cua.dk>
2855
2856 * Makefile.in (eval.o): Depend on dispextern.h.
2857
2858 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2859 image glyph using image's ascent.
2860 (mode_line_string): Return image glyph as object clicked on.
2861 Adjust y0 for image glyph using image's ascent.
2862
2863 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2864 (struct glyph): New members, ascent and descent. Used to save
2865 this glyph's ascent and descent, instead of having.
2866 (struct glyph): Declare member face_id using FACE_ID_BITS.
2867 (find_hot_spot): Add prototype.
2868
2869 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2870 (QCmap): Declare extern.
2871 (make_lispy_position): When position is inside image hot-spot,
2872 use hot-spot element's id as posn element.
2873
2874 * lisp.h (IMAGEP): New macro to test for image object type.
2875 (Qimage): Declare extern.
2876
2877 * macfns.c (Qimage): Remove extern (now in lisp.h).
2878 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2879
2880 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2881
2882 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2883 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2884
2885 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2886
2887 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2888
2889 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2890 pointer types.
2891 (Qrelative_width, Qalign_to): Remove unused variables.
2892 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2893 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2894 image maps.
2895 (x_y_to_hpos_vpos): Return glyph relative coordinates through
2896 new dx and dy args.
2897 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2898 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2899 than row's ascent and height, to get sensible height on tall rows.
2900 (build_desired_tool_bar_string): Remove Qimage extern.
2901 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2902 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2903 image glyph is alone on the last line.
2904 (append_glyph, append_composite_glyph, produce_image_glyph)
2905 (append_stretch_glyph): Set glyph's ascent and descent.
2906 (on_hot_spot_p): New function to check if position is inside an
2907 rectangular, circular, or polygon-shaped image hot-spot,
2908 (find_hot_spot): New function to search for image hot-spot.
2909 (Flookup_image_map): New defun to search for image hot-spot.
2910 (define_frame_cursor1): New aux function to determine frame pointer.
2911 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2912 Handle `pointer' text property and :pointer image property to
2913 control frame pointer shape. Detect image hot-spots for pointer
2914 and help_echo properties. Use define_frame_cursor1.
2915 (note_mouse_highlight): Use Vvoid_text_area_pointer.
2916 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
2917 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2918
2919 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2920
2921 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2922 (Qimage): Remove extern (now in lisp.h).
2923 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2924
2925 * xmenu.c (show_help_event): Remove unused code.
2926
2927 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2928 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2929 row's ascent and descent, to get a sensible height on tall rows.
2930
2931 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2932
2933 * minibuf.c (Fcompleting_read): Undo previous change.
2934
2935 2003-12-25 Lars Hansen <larsh@math.ku.dk>
2936
2937 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2938 Arguments GCPRO'ed in call to file name handler.
2939
2940 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2941
2942 * termcap.c (tgetst1): Scan for "%pN"; if all
2943 N are continuous in [1,9], remove all "%pN".
2944
2945 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2946
2947 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2948
2949 * xfaces.c (lface_fully_specified_p): Take into account that
2950 MAC OS always have unspecified stipple.
2951
2952 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2953
2954 * tparam.c (tparam1): Add handling for `%pN', which
2955 means use param N for the next substitution.
2956
2957 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2958
2959 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2960 In case `frame' is nil, consult the selected frame.
2961 (Fcolor_supported_p): Likewise.
2962
2963 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2964
2965 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2966 Doc fixes.
2967
2968 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2969 and an integer. Adapt the introductory comment accordingly.
2970 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2971 Doc fix.
2972 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2973 read_minibuf.
2974 (Fcompleting_read): Delete code moved into read_minibuf.
2975 (Ftest_completion): Make it handle obarrays and hash tables correctly.
2976
2977 2003-12-03 Kenichi Handa <handa@m17n.org>
2978
2979 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2980 encoding sequence.
2981
2982 2003-12-01 Kenichi Handa <handa@m17n.org>
2983
2984 * composite.c (syms_of_composite): Don't make the compostion hash
2985 table week.
2986
2987 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2988
2989 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2990 * textprop.c (Fget_char_property_and_overlay): New function.
2991 (syms_of_textprop): Defsubr it.
2992
2993 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2994
2995 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2996 to compile on terminal configuration.
2997
2998 * fileio.c (Fread_file_name): Check use_file_dialog also before
2999 calling Fx_file_dialog.
3000
3001 * fns.c: use_file_dialog: New variable.
3002 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3003
3004 2003-11-29 Kim F. Storm <storm@cua.dk>
3005
3006 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3007 (syms_of_msdos): Don't intern and staticpro them.
3008
3009 2003-11-27 Kim F. Storm <storm@cua.dk>
3010
3011 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3012 coordinates relative to glyph at posn. If glyph is an image,
3013 return that as object at posn. Callers changed.
3014 (mode_line_string, marginal_area_string): Calculate and return
3015 pixel coordinates relative to glyph. Callers changed.
3016
3017 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3018 (marginal_area_string): Fix prototypes.
3019 (window_box_left_offset, window_box_right_offset): Add prototypes.
3020
3021 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3022 Remove prototypes.
3023
3024 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3025
3026 * keyboard.c (make_lispy_position): Add x and y coordinates
3027 relative to the current glyph as 7th element of position.
3028 If glyph is an image, return it in the object element.
3029 (read_key_sequence): Skip checks for keymap property in cases
3030 where POSN_STRING is not a string (e.g. an image).
3031
3032 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3033 (Vshow_text_cursor_in_void): New variable.
3034 (glyph_to_pixel_coords): Don't use negative hpos.
3035 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3036 (append_stretch_glyph): Change ascent arg to be actual value
3037 in pixels rather than ratio to height. Callers changed.
3038 (calc_pixel_width_or_height): New aux function, implementing
3039 pixel based artihmetic for glyph widths and heights.
3040 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3041 :width, :height, :align-to, and :ascent, thus allowing these to
3042 be specified in pixels as well as multiples of characters.
3043 Don't produce stretch glyphs with zero width or height.
3044 (get_specified_cursor_type): Declare static.
3045 (get_window_cursor_type): Declare static. Add glyph arg to be
3046 able to know when cursor is on an image; always substitute
3047 hollow-box cursor for filled-box cursor on images, to avoid
3048 negative images and flicker when blinking the cursor.
3049 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3050 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3051 than vertical scroll-bar cursor in display margins.
3052 (note_mouse_highlight): Use non-text cursor rather than text
3053 cursor in fringes and over images in the text area.
3054 Use non-text cursor when mouse pointer is outside editable text,
3055 i.e. in the void after end-of-line or end-of-buffer; this was
3056 already done for W32, but is now standard for all systems --
3057 user can toggle show-text-cursor-in-void to get old behaviour.
3058 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3059 Vdisplay_pixels_per_inch.
3060
3061 2003-11-25 Andreas Schwab <schwab@suse.de>
3062
3063 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3064 EMACS_INT to not lose bits.
3065 (Ffillarray): Don't set bits beyond the size of a bool vector.
3066
3067 2003-11-25 Kim F. Storm <storm@cua.dk>
3068
3069 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3070 define this defun on systems that cannot use stderr as lvalue.
3071
3072 2003-11-24 Gerd Moellmann <gerd@gnu.org>
3073
3074 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3075 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3076 ld's default is incompatible with unexec.
3077
3078 2003-11-23 Kim F. Storm <storm@cua.dk>
3079
3080 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3081 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3082 (Fforce_window_update): New defun.
3083 (syms_of_window): Defsubr it.
3084 (Fset_window_margins, Fset_window_fringes): Doc fix.
3085
3086 * print.c (Fredirect_debugging_output): New defun.
3087 (syms_of_print): Defsubr it.
3088
3089 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3090
3091 * fns.c (Fset_char_table_parent): Doc fix.
3092
3093 2003-11-22 Kim F. Storm <storm@cua.dk>
3094
3095 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3096 for glyph clicked on, rather than (unused) pixel positions.
3097 (mode_line_string, marginal_area_string): Change X and Y args to
3098 pointers for returning actual row/column for glyph clicked on.
3099 Simplify and optimize loops.
3100
3101 * dispextern.h (mode_line_string, marginal_area_string):
3102 Update prototypes.
3103
3104 * keyboard.c (make_lispy_position): New function for generating
3105 mouse click positions from frame and pixel coordinates.
3106 Enhanced to return buffer position and actual row/column for
3107 events outside the text area using updated mode_line_string and
3108 marginal_area_string functions.
3109 Return left-fringe and right-fringe clicks as such, rather than
3110 clicks in text area.
3111 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3112 pixel_to_glyph_coords, as we never use the results.
3113 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3114 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3115 Eliminate unused code in WHEEL_EVENT handling.
3116 (make_lispy_movement): Use make_lispy_position.
3117
3118 * window.c (coordinates_in_window): Remove redundant tests.
3119 Fix returned X pixel value for left-margin.
3120
3121 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3122 mode_line_string and marginal_area_string parameters.
3123
3124 2003-11-22 Lars Hansen <larsh@math.ku.dk>
3125
3126 * w32.c (struct the_group, getgrgid): Add.
3127 * mac.c (struct my_group, getgrgid): Add.
3128
3129 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3130
3131 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3132
3133 2003-11-21 Lars Hansen <larsh@math.ku.dk>
3134
3135 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3136 include in call to file name handler. Optionally translate numeric
3137 UID and GID to strings. Update docstring.
3138 (directory_files_internal): Add parameter ID-FORMAT.
3139 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3140 include in call to file name handler and call to
3141 directory_files_internal. Update Docstring.
3142 (Fdirectory_files): Add dummy parameter in call to
3143 directory_files_internal.
3144 * lisp.h (Qinteger): Add.
3145 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3146 (Ffile_attributes): Add parameter.
3147 * data.c (Qinteger): Export.
3148
3149 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3150
3151 * fns.c (Freverse, Fnreverse): Doc fixes.
3152
3153 2003-11-19 Kim F. Storm <storm@cua.dk>
3154
3155 * xdisp.c (init_iterator): Initialize it->start to position
3156 before reseating (in case start position is invisible).
3157 (init_to_row_start): Set it->start to row-start.
3158 (redisplay_window): Accept optional_new_start if start position
3159 is invisible (in which case IT_CHARPOS overshoots PT).
3160 (display_line): Setup row->start from it->start (rather than
3161 it->current which is wrong if first char on line is invisible).
3162 When done, reseat it->start to it->current (= start of next row).
3163 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3164 is only partially visible.
3165
3166 * dispextern.h (struct it): New member start.
3167
3168 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3169
3170 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3171 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3172 of block_index outside of the macro call.
3173 (Fgarbage_collect): Remove null code.
3174
3175 * m/amdx86-64.h: Don't redefine XPNTR.
3176
3177 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3178 of VALMASK.
3179
3180 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3181 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3182 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3183
3184 * lisp.h (VALMASK): Only define for non-union type.
3185 (MARKBIT): Remove.
3186 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3187 (XTYPE): Define unconditionally.
3188 (XSETTYPE): Remove one more remnant.
3189 (EQ): Define differently for the union and non-union cases.
3190 (INTMASK): New bit mask.
3191 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3192 (GC_EQ): Delegate to EQ.
3193
3194 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3195
3196 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3197
3198 * xterm.c (x_window_to_scroll_bar): Move check of display to
3199 where window_id is compared.
3200
3201 2003-11-17 Kim F. Storm <storm@cua.dk>
3202
3203 * dispextern.h (struct it): New member first_vpos.
3204
3205 * xdisp.c (start_display): Set it->first_vpos.
3206 (try_window_id): Use first_vpos to start display in first _text_
3207 line if no reusable lines at start of window with header line.
3208
3209 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3210
3211 * w32fns.c (XPutPixel):
3212 * w32bdf.c (w32_init_bdf_font):
3213 * sunfns.c (sel_read):
3214 * process.c (Fmake_network_process):
3215 * frame.c (store_frame_param):
3216 * fontset.c (Fset_fontset_font):
3217 * emacs.c (shut_down_emacs):
3218 * ccl.c (ccl_driver): Remove period at end of error message.
3219
3220 * config.in: Regenerate.
3221
3222 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3223 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3224 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3225 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3226 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3227
3228 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3229
3230 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3231 (XTmouse_position, handle_one_xevent): Pass Display* to
3232 x_window_to_scroll_bar.
3233 (x_window_to_scroll_bar): Take a Display* argument.
3234 Check that display for frame is equal to Display* argument.
3235 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3236 x_display_info_for_display instead. Use Display in xev instead
3237 of GDK_DISPLAY.
3238 (x_dispatch_event): Call x_display_info_for_display.
3239 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3240 (x_connection_closed): Call xg_display_close for GTK.
3241 (x_term_init): Call xg_display_open for additional displays.
3242 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3243 for GTK.
3244
3245 * xmenu.c (single_menu_item, mouse_position_for_popup)
3246 (x_activate_menubar): Formatting adjustments.
3247
3248 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3249 adjustments.
3250
3251 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3252 (xg_display_close, xg_create_default_cursor)
3253 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3254 handling.
3255 (xg_left_ptr_cursor): Remove.
3256 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3257 cursor here.
3258 (xg_win_to_widget): Take Display* argument, call
3259 gdk_xid_table_lookup_for_display.
3260 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3261 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3262 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3263 in FRAME_X_DISPLAY_INFO.
3264 (xg_get_scroll_id_for_window): Take Display* argument.
3265 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3266 (xg_initialize): Remove xg_left_ptr_cursor.
3267
3268 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3269 Display* argument also. Declare xg_display_open,
3270 xg_display_close, xg_create_default_cursor.
3271
3272 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3273
3274 * xterm.c (x_detect_focus_change): Do not change focus frame for
3275 Enter/LeaveNotify if the current focus frame has explicit focus.
3276
3277 2003-11-14 Kim F. Storm <storm@cua.dk>
3278
3279 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3280 is active and first glyph is only partially visible.
3281
3282 2003-11-13 Kenichi Handa <handa@m17n.org>
3283
3284 * xdisp.c (select_frame_for_redisplay): New function.
3285 (redisplay_internal): Record also selected_frame for
3286 unwind_redisplay. Call select_frame_for_redisplay before
3287 redrawing each frame.
3288 (unwind_redisplay): Argument changed to a cons.
3289
3290 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3291
3292 * fns.c (Fstring_to_multibyte): Doc fix.
3293
3294 2003-11-11 Kenichi Handa <handa@m17n.org>
3295
3296 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3297
3298 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3299
3300 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3301 program specified positions.
3302
3303 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3304
3305 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3306
3307 2003-11-08 Kenichi Handa <handa@m17n.org>
3308
3309 * Makefile.in (lisp): Add kannada.el.
3310 (shortlisp): Likewise.
3311
3312 2003-11-07 Kenichi Handa <handa@m17n.org>
3313
3314 * coding.c (coding_allocate_composition_data):
3315 Reset coding->composing to COMPOSITION_NO.
3316 (coding_restore_composition): Detect invalid composition data.
3317 Give Fstring and Fvector a Lispy integer, not C int.
3318
3319 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3320
3321 * floatfns.c (Flogb): Don't use VALMASK.
3322
3323 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3324 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3325
3326 * lisp.h (XINT): Move the cast to clarify what is going on.
3327 (GCTYPEMASK, XSETTYPE): Remove.
3328 (XGCTYPE): Make it an alias of XTYPE.
3329
3330 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3331
3332 * xterm.c (x_term_init): Fix formatting.
3333
3334 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3335
3336 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3337 and xg_did_tearoff.
3338
3339 * gtkutil.c: Remove variable xg_did_tearoff.
3340 (xg_have_tear_offs): New function.
3341 (tearoff_remove): Just decrease xg_detached_menus.
3342 (tearoff_activate): Increase xg_detached_menus and call
3343 tearoff_remove when tearoff is removed.
3344 (xg_keep_popup): Remove function.
3345 (create_menus): Give add_tearoff_p as argument to recursive
3346 call to create_menus.
3347 (xg_create_widget): Use variables instead of multiple
3348 strcmp. Tell create_menus to create tear off only for
3349 menu bar menus.
3350 (xg_update_menubar): Change title for a detached menu also.
3351 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3352 of deep_p.
3353 (xg_initialize): Initialize xg_detached_menus, remove
3354 initialization of xg_did_tearoff.
3355
3356 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3357 xg_have_tear_offs returns non-zero.
3358 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3359 call to xg_keep_popup.
3360
3361 2003-11-01 Andrew Choi <akochoi@shaw.ca>
3362
3363 * macterm.c (XTread_socket): Handle menubar selection and grow
3364 window only for mouseDown events.
3365
3366 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3367
3368 * xterm.c (x_term_init): For GTK part, increase x_initialized
3369 to check for more than one display. Use error instead of return 0.
3370
3371 2003-10-31 Andrew Choi <akochoi@shaw.ca>
3372
3373 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3374 (copy_dysymtab): Call it.
3375
3376 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3377
3378 * eval.c (Fdefvaralias): Doc fix.
3379
3380 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3381
3382 * data.c (Fsetplist): Doc fix.
3383
3384 2003-10-14 Lute Kamstra <lute@gnu.org>
3385
3386 * window.c (Fset_window_fringes): Clarify docstring.
3387
3388 2003-10-14 Kim F. Storm <storm@cua.dk>
3389
3390 * window.c (Fset_window_margins): Simplify arg checking.
3391
3392 2003-10-13 Richard M. Stallman <rms@gnu.org>
3393
3394 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3395 (print_partial_compiled_pattern): Replace assert with a printout.
3396 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3397
3398 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3399
3400 * window.c (Fset_window_margins): Allow only integers as args.
3401 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3402 Doc fixes.
3403
3404 2003-10-13 Lute Kamstra <lute@gnu.org>
3405
3406 * window.c (Fset_window_fringes): Elaborate docstring.
3407
3408 2003-10-12 Andrew Choi <akochoi@shaw.ca>
3409
3410 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3411
3412 * s/darwin.h (GC_MARK_STACK): Define.
3413
3414 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3415
3416 * window.c (shrink_windows): New function.
3417 (size_window): Call shrink_windows to calculate window sizes when
3418 shrinking frame with more than one window.
3419
3420 2003-10-12 Kim F. Storm <storm@cua.dk>
3421
3422 * xdisp.c (compute_fringe_widths): Doc fix.
3423
3424 2003-10-08 Kenichi Handa <handa@m17n.org>
3425
3426 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3427
3428 2003-10-07 Kenichi Handa <handa@m17n.org>
3429
3430 * coding.c (Qcoding_system_define_form): New variable.
3431 (syms_of_coding): Intern and staticpro it.
3432 (Fcheck_coding_system): Try to autoload the definition of
3433 CODING-SYSTEM.
3434
3435 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3436
3437 * fns.c (Frequire): Doc fix.
3438
3439 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3440
3441 * xfns.c (Fx_send_client_event): New function as a base for
3442 manipulating extended window manager hints.
3443 (Fx_send_client_event): Remove unused variable s.
3444
3445 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3446 that function is removed.
3447
3448 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3449 x/y_pixels_outer_diff.
3450 (x_check_expected_move): Calculate move_offset_left/top.
3451
3452 * xterm.h (struct x_output): New members: move_offset_top/left.
3453
3454 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3455 call x_set_offset directly.
3456
3457 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3458
3459 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3460
3461 * xterm.c (x_delete_display): Free font names and font_encoder
3462 in dpyinfo->font_table.
3463
3464 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3465 Move xfree of font names to x_delete_display.
3466
3467 * xterm.h (struct x_display_info): New member, wm_type.
3468 (struct x_output): New members, expected_top/left and
3469 check_expected_move.
3470
3471 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3472 is received.
3473 (handle_one_xevent): Rename x_check_expected_move from
3474 x_check_fullscreen_move.
3475 (x_set_offset): Only add WM decoration sizes to modified_top/left
3476 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3477 (x_check_expected_move): Rename from x_check_fullscreen_move.
3478 Removed fullscreen specific code. Use check_expected_move,
3479 expected_left/top instead. Also, set wm_type.
3480 (x_term_init): Initialize wm_type to unknown.
3481
3482 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3483 sizes to move_x/y.
3484
3485 2003-10-03 Kenichi Handa <handa@m17n.org>
3486
3487 * macterm.c (x_load_font): Clear all members of FONTP before start
3488 filling them.
3489
3490 2003-10-02 Kenichi Handa <handa@m17n.org>
3491
3492 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3493 before calling find_ccl_program_func. Call find_ccl_program_func
3494 only when fontp->font_encoder is not NULL.
3495
3496 * xterm.c (x_load_font): Clear all members of FONTP before start
3497 filling them.
3498
3499 2003-10-03 John Paul Wallington <jpw@gnu.org>
3500
3501 * keymap.c (map_keymap): Don't abort when binding is a vector.
3502
3503 2003-10-02 Jason Rumney <jasonr@gnu.org>
3504
3505 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3506 Sync dependencies with Makefile.in.
3507 (alloca.o): Remove.
3508
3509 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3510 filling them.
3511
3512 * w32bdf.c (w32_load_bdf_font): Likewise.
3513
3514 2003-09-30 Richard M. Stallman <rms@gnu.org>
3515
3516 * term.c (set_tty_color_mode): Calculate current_mode_spec
3517 regardless of value of VAL.
3518
3519 * intervals.c (graft_intervals_into_buffer):
3520 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3521 Handle over_used when splitting UNDER.
3522
3523 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3524
3525 * regex.c (regex_compile): Free the stack when returning from function.
3526
3527 2003-09-28 Kenichi Handa <handa@m17n.org>
3528
3529 * fontset.c (Finternal_char_font): Change return value to
3530 cons (FONT-NAME . GLYPH-CODE).
3531
3532 2003-09-28 Eli Zaretskii <eliz@gnu.org>
3533
3534 * term.c (tty_setup_colors): Treat any negative argument as -1.
3535
3536 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3537
3538 * process.c (send_process): Delete unused temp_buf.
3539
3540 2003-09-26 Dave Love <fx@gnu.org>
3541
3542 * xterm.c (x_bitmap_mask): Declare.
3543
3544 2003-09-25 Dave Love <fx@gnu.org>
3545
3546 * Makefile.in (fns.o): Depend on md5.h.
3547
3548 2003-09-25 Kim F. Storm <storm@cua.dk>
3549
3550 * window.c (set_window_buffer): Fix redisplay problems when
3551 switching between buffers with different display margin widths.
3552
3553 2003-09-23 Kim F. Storm <storm@cua.dk>
3554
3555 * process.c (set_socket_option): Fix :bindtodevice option.
3556 (Fset_network_process_option): Update process contact list when
3557 setting option succeeds.
3558 (Fmake_network_process): Doc fix.
3559
3560 2003-09-23 Dave Love <fx@gnu.org>
3561
3562 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
3563
3564 2003-09-22 Eli Zaretskii <eliz@gnu.org>
3565
3566 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3567 color mode is an integer number (it could be -1).
3568
3569 2003-09-22 Richard M. Stallman <rms@gnu.org>
3570
3571 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3572 in the case where OVER is longer than UNDER.
3573
3574 2003-09-22 Masatake YAMATO <jet@gyve.org>
3575
3576 * window.c (Fset_window_scroll_bars): Validate the value of
3577 `vertical_type'.
3578
3579 2003-09-21 Kim F. Storm <storm@cua.dk>
3580
3581 * frame.c (Vdefault_frame_scroll_bars): New variable.
3582 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3583 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3584 window-system default scroll bar position.
3585
3586 * window.c (Fwindow_scroll_bars): Doc fix.
3587
3588 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3589
3590 * xterm.c (x_set_offset): Take window manager decorations into account.
3591
3592 2003-09-19 Richard M. Stallman <rms@gnu.org>
3593
3594 * atimer.h: Don't include lisp.h.
3595 (P_): Define it here (as well as elsewhere).
3596
3597 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3598 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3599
3600 * data.c (Fvariable_binding_locus): New function.
3601 (syms_of_data): defsubr it.
3602 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3603
3604 2003-09-18 Dave Love <fx@gnu.org>
3605
3606 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3607
3608 * process.c (Fnetwork_interface_info): Fix type error.
3609 (Fnetwork_interface_list): Doc fix.
3610 (read_process_output, read_process_output): Delete unused var.
3611
3612 2003-09-17 Kim F. Storm <storm@cua.dk>
3613
3614 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3615 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3616 (Fnetwork_interface_info): Check that ifreq struct has required
3617 fields before accessing them; this requires that those fields are
3618 defined as macros, which may be too restrictive on some platforms,
3619 but it is better than failing on other platforms.
3620 (syms_of_process): Only defsubr above fns when included.
3621
3622 2003-09-17 Dave Love <fx@gnu.org>
3623
3624 * unexalpha.c: Don't include varargs.h.
3625
3626 2003-09-17 Kim F. Storm <storm@cua.dk>
3627
3628 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3629 for network process.
3630 (socket_options): Add `:' prefix to option names. Add optbit field.
3631 (set_socket_option): Remove no_error arg and special handling of s < 0.
3632 Return 1<<optbit for known option, 0 for unknown.
3633 Do not interpret 0 as false for boolean option (only nil).
3634 Pass failed option and value to report_file_error.
3635 (Fset_network_process_options): Replace by Fset_network_process_option.
3636 (Fset_network_process_option): New function to set just one option.
3637 (Fmake_network_process): Allow :coding arg to be a cons.
3638 Allow :server arg to be an integer specifying backlog size.
3639 Remove :options arg, and allow options to be specified directly
3640 as :KEY, VALUE pairs. Parse these options before binding socket.
3641 As before, :reuseaddr t is default for a server process, but this
3642 can now be disabled by specifying :reuseaddr nil.
3643 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3644 (init_process): Availability of network options is now checked with
3645 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3646 setup features.
3647 (syms_of_process): Fix defsubr's for the replaced functions.
3648
3649 2003-09-16 Dave Love <fx@gnu.org>
3650
3651 * Makefile.in: Depend on coding.h.
3652
3653 2003-09-14 Kim F. Storm <storm@cua.dk>
3654
3655 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3656 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3657 (syms_of_process): Defsubr them.
3658
3659 * config.in: Regenerate.
3660
3661 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3662
3663 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3664 * m/news-r6.h (XUNMARK): Remove.
3665 * m/mips.h (XUNMARK): Remove.
3666 * m/mips-siemens.h (XUNMARK): Remove.
3667 * m/iris4d.h (XUNMARK): Remove.
3668 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3669
3670 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3671
3672 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3673 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3674 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3675 (XTYPE): Use unsigned right-shift.
3676 (XMARKBIT, XMARK, XUNMARK): Remove.
3677
3678 * alloc.c (init_intervals, init_symbol, init_marker):
3679 Don't preallocate anything.
3680 (Fgarbage_collect, mark_object): Ignore the markbit.
3681
3682 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3683
3684 2003-09-08 Lute Kamstra <lute@gnu.org>
3685
3686 * xdisp.c (pint2hrstr): New function.
3687 (decode_mode_spec): Add `%i' and `%I' specs.
3688 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3689 for `mode-line-format'.
3690
3691 2003-09-07 Andreas Schwab <schwab@suse.de>
3692
3693 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3694 avoid warning.
3695
3696 2003-09-07 Eli Zaretskii <eliz@gnu.org>
3697
3698 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
3699
3700 2003-09-03 Kim F. Storm <storm@cua.dk>
3701
3702 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3703 change (superseded by 2002-08-30 change); the default blink-off
3704 cursor is now again "no cursor".
3705
3706 2003-09-01 Jason Rumney <jasonr@gnu.org>
3707
3708 * makefile.w32-in (alloca.o): Remove.
3709 (coding.o): Depend on intervals.h
3710 (emacs.o, bytecode.o): Depend on window.h
3711
3712 2003-09-01 Dave Love <fx@gnu.org>
3713
3714 * Makefile.in (alloca.o): Remove commands.
3715 (coding.o): Depend on intervals.h composite.h window.h.
3716 (emacs.o): Depend on window.h keyboard.h keymap.h.
3717 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3718 (bytecode.o): Depend on window.h.
3719
3720 2003-08-31 Jason Rumney <jasonr@gnu.org>
3721
3722 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3723 returned even when font_type is unknown.
3724
3725 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3726
3727 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3728
3729 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3730
3731 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3732 *_offset.
3733
3734 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3735 calculate pixel value.
3736
3737 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3738
3739 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3740 Don't tell redisplay display is accurate when it's actually been
3741 paused for pending input.
3742
3743 2003-08-29 Richard M. Stallman <rms@gnu.org>
3744
3745 * dispnew.c (adjust_glyph_matrix): Call window_box
3746 whenever W is nonzero.
3747
3748 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3749 (Fkill_local_variable, Fmake_variable_frame_local)
3750 (Flocal_variable_p, Flocal_variable_if_set_p):
3751 Use indirect_variable to trace thru variable aliases.
3752
3753 * config.in: Updated.
3754
3755 * callint.c (Fcall_interactively): Save and restore
3756 Vthis_command, Vthis_original_command, real_this_command,
3757 and current_kboard->Vlast_command.
3758
3759 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3760
3761 2003-08-29 Gerd Moellmann <gerd@gnu.org>
3762
3763 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3764
3765 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3766
3767 * coding.c (decode_coding_iso2022): Initialize local variable c2.
3768 (decode_coding_sjis_big5): Likewise.
3769
3770 2003-08-27 Jason Rumney <jasonr@gnu.org>
3771
3772 * w32.c (sys_pipe): Protect against file descriptor overflow.
3773
3774 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3775
3776 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3777
3778 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
3779
3780 * xfns.c (Vgtk_version_string): New variable.
3781 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3782
3783 2003-08-24 Eli Zaretskii <eliz@gnu.org>
3784
3785 * term.c (term_init): Remove `const' from buffer_size's declaration.
3786
3787 * Makefile.in (msdos.o): Depend on intervals.h.
3788
3789 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
3790
3791 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3792
3793 * xterm.h (struct x_display_info): New fields: client_leader_window
3794 and Xatom_wm_client_leader.
3795
3796 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3797 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3798
3799 * xsmfns.c (create_client_leader_window): New function.
3800 (x_session_initialize): Call create_client_leader_window, take
3801 dpyinfo as argument.
3802
3803 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3804
3805 * Makefile.in (xsmfns.o): Add more depenedencies.
3806
3807 2003-08-21 Dave Love <fx@gnu.org>
3808
3809 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3810
3811 2003-08-21 Kenichi Handa <handa@m17n.org>
3812
3813 * term.c (term_init): Fix previous change; don't rely on the
3814 length of `buffer' if TERMINFO is defined.
3815
3816 2003-08-20 Dave Love <fx@gnu.org>
3817
3818 * atimer.h: Include lisp.h.
3819
3820 * lisp.h (EMACS_LISP_H): New.
3821 (popup_activated_flag): Don't declare.
3822
3823 * alloca.c: Some merging with gnulib. Change logic and doc
3824 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3825 [DO_BLOCK_INPUT]: Don't include lisp.h.
3826 (xmalloc, xfree): Declare.
3827 (malloc): Don't declare.
3828
3829 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
3830 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3831 atimer.h, blockinput.h.
3832
3833 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3834
3835 * alloca.s: Removed.
3836
3837 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3838
3839 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3840 use -lncurses.
3841
3842 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3843 FreeBSD returns something longer than 2044. Abort if the end of
3844 the buffer is overwritten.
3845
3846 2003-08-19 Miles Bader <miles@gnu.org>
3847
3848 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3849
3850 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3851
3852 * alloc.c (lisp_align_malloc): Check for memory full when
3853 allocating ablocks, which also avoids freeing a pointer into an
3854 ablocks structure.
3855
3856 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3857
3858 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
3859
3860 2003-08-16 Richard M. Stallman <rms@gnu.org>
3861
3862 * editfns.c (Fencode_time): Doc fix.
3863
3864 2003-08-16 David Ponce <david@dponce.com>
3865
3866 * fileio.c (Fwrite_region): Fix conditional expression to issue
3867 the right message.
3868
3869 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3870
3871 * syntax.c (Fforward_word): Argument changed to optional.
3872 Set default value to 1.
3873
3874 2003-08-15 Kenichi Handa <handa@m17n.org>
3875
3876 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3877 what autoscaled.
3878 (best_matching_font): Once we find a better scalable font, set
3879 non_scalable_has_exact_height_p to 1.
3880 (try_font_list): Call try_alternative_families to try any family
3881 with the given registry.
3882
3883 2003-08-09 Andreas Schwab <schwab@suse.de>
3884
3885 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3886
3887 * print.c (print_string): Fix printing of multibyte string with
3888 nontrivial printcharfun.
3889
3890 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3891
3892 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3893
3894 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3895
3896 2003-07-31 Kenichi Handa <handa@m17n.org>
3897
3898 * process.c (read_process_output): Return the actually read bytes
3899 instead of the result of decoding.
3900
3901 2003-07-31 Kenichi Handa <handa@m17n.org>
3902
3903 * xterm.h (struct x_bitmap_record): New member have_mask.
3904
3905 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3906 to 0.
3907 (x_create_bitmap_from_file): Likewise.
3908 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3909 (x_destroy_all_bitmaps): Likewise.
3910 (x_create_bitmap_mask): Set have_mask member to 1.
3911
3912 2003-07-30 Richard M. Stallman <rms@gnu.org>
3913
3914 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3915
3916 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3917
3918 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3919
3920 2003-07-29 Richard M. Stallman <rms@gnu.org>
3921
3922 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3923 Conditionalize XIM code on HAVE_XIM.
3924
3925 * fns.c (Fclear_string): New function.
3926 (syms_of_fns): defsubr it.
3927
3928 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3929
3930 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
3931
3932 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3933
3934 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3935
3936 * buffer.c (delete_all_overlays): New function.
3937 * buffer.h (delete_all_overlays): Declare.
3938 * coding.c (run_pre_post_conversion_on_str):
3939 * print.c (temp_output_buffer_setup):
3940 * fileio.c (Finsert_file_contents):
3941 * minibuf.c (get_minibuffer): Use it.
3942
3943 2003-07-22 Andrew Choi <akochoi@shaw.ca>
3944
3945 * unexmacosx.c (unexec_regions_sort_compare):
3946 (unexec_regions_merge): New functions. Sort and merge unexec
3947 regions before dumping them.
3948
3949 2003-07-22 Dave Love <fx@gnu.org>
3950
3951 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3952
3953 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3954
3955 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3956 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3957 MARKBIT as the gcmarkbit for strings.
3958
3959 2003-07-21 Richard M. Stallman <rms@gnu.org>
3960
3961 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3962
3963 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
3964 (syms_of_fns): Corresponding change.
3965
3966 * alloc.c (syms_of_alloc): Doc fixes.
3967
3968 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3969
3970 * s/netbsd.h: Use -Wl syntax.
3971
3972 2003-07-17 Richard M. Stallman <rms@gnu.org>
3973
3974 * xterm.c (xim_initialize): Redo 6/24 change.
3975
3976 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3977
3978 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3979 (Fswitch_to_buffer): Don't signal an error when switching to the same
3980 buffer in a dedicated window.
3981
3982 * alloc.c: Use bitmaps for cons, as was done for floats.
3983 (init_float, init_cons): Let the normal code allocate the first block.
3984 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3985 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3986 New macros.
3987 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3988 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3989 (live_cons_p): Check the pointer is not past the `conses' array.
3990 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3991 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3992 (survives_gc_p): Use CONS_MARKED_P and simplify.
3993 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3994
3995 2003-07-13 Paul Eggert <eggert@twinsun.com>
3996
3997 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3998 puts it into BSS instead, at least on Solaris 8 and 9.
3999 This is a valid optimization, and it may occur on other platforms,
4000 so Emacs should not assume that initializing a static variable to
4001 zero puts it into data.
4002 * alloc.c (pure, staticvec):
4003 Initialize these arrays to nonzero, so that they're not
4004 put into BSS by that optimization.
4005
4006 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4007
4008 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4009 (lisp_align_malloc): Use posix_memalign is available.
4010 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4011 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4012 for consistency. Update users.
4013
4014 2003-07-13 Richard M. Stallman <rms@gnu.org>
4015
4016 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4017
4018 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4019
4020 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4021 and use the Gtk+ function gtk_window_icon_from_file if available.
4022
4023 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4024 handle mask of bitmaps.
4025 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4026 mask property.
4027 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4028
4029 * xterm.h (xg_set_icon): New function.
4030
4031 2003-07-12 Paul Eggert <eggert@twinsun.com>
4032
4033 * unexelf.c (unexec): Consider a section to precede the .bss
4034 section if its addresses overlap that of .bss.
4035
4036 2003-07-12 Richard M. Stallman <rms@gnu.org>
4037
4038 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4039
4040 * config.in (HAVE_CRTIN): Add #undef.
4041 (INLINE): Really inline only if OPTIMIZE is defined.
4042
4043 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4044 END_FILES_1.
4045 (START_FILES_1, END_FILES_1): New macros (conditional).
4046 (LD_SWITCH_SYSTEM_TEMACS): Define.
4047
4048 * s/openbsd.h: Don't include bsd4-3.h.
4049 (TERMINFO): Define.
4050 (LIBS_TERMCAP): Define.
4051 (LD_SWITCH_SYSTEM): Define (two definitions).
4052
4053 * xfns.c: Include libpng/png.h instead of png.h.
4054
4055 2003-07-11 Andreas Schwab <schwab@suse.de>
4056
4057 * buffer.c (modify_overlay): Update prototype.
4058 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4059 Likewise.
4060
4061 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4062
4063 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4064 (struct interval): Move to intervals.h.
4065 (struct Lisp_Marker): Use EMACS_INT for position info.
4066 (forward_point): Remove prototype of defunct function.
4067 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4068 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4069 (syms_of_textprop, set_text_properties): Remove prototypes that are
4070 already in intervals.h.
4071
4072 * intervals.h (struct interval): Move from lisp.h.
4073 Use EMACS_INT for position and size info.
4074
4075 * coding.c: Include intervals.h for Fset_text_properties.
4076
4077 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4078 position and length information.
4079
4080 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4081
4082 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4083 position and length information.
4084
4085 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4086
4087 Change overlays_after and overlays_before so the overlays themselves
4088 are linked into lists, rather than using cons cells. After all each
4089 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4090 Lisp_Overlay for free and save up one cons cell per overlay (not
4091 to mention one indirection when traversing the list of overlay).
4092
4093 * lisp.h (struct Lisp_Overlay): New field `next'.
4094
4095 * buffer.h (struct buffer): Change overlays_before and overlays_after
4096 from Lisp lists of overlays to pointers to overlays.
4097
4098 * buffer.c (overlay_strings, recenter_overlay_lists):
4099 Fix typo in eassert in last commit.
4100 (unchain_overlay): New function.
4101 (add_overlay_mod_hooklist): Use AREF.
4102 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4103 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4104 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4105 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4106 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4107 Adjust to new type of overlays_(before|after).
4108
4109 * alloc.c (mark_object): Mark the new `next' field of overlays.
4110 (mark_buffer): Manually mark the overlays_(after|before) fields.
4111
4112 * coding.c (run_pre_post_conversion_on_str):
4113 * editfns.c (overlays_around):
4114 * xdisp.c (load_overlay_strings):
4115 * fileio.c (Finsert_file_contents):
4116 * indent.c (current_column):
4117 * insdel.c (signal_before_change, signal_after_change):
4118 * intervals.c (set_point_both):
4119 * print.c (temp_output_buffer_setup): Use new type for
4120 overlays_(before|after).
4121
4122 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4123
4124 * buffer.c (report_overlay_modification): Don't run hooks while
4125 traversing the list of overlays.
4126
4127 * buffer.h (struct buffer): Use an int for overlay_center.
4128 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4129 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4130
4131 * buffer.c (reset_buffer, recenter_overlay_lists)
4132 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4133 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4134 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4135 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4136 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4137
4138 * xdisp.c (fast_find_position): Remove unused var.
4139
4140 * cmds.c (Qexpand_abbrev): New sym.
4141 (syms_of_cmds): Initialize it.
4142 (internal_self_insert): Use it to call expand-abbrev.
4143
4144 2003-07-09 Kim F. Storm <storm@cua.dk>
4145
4146 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4147 was configured with --without-xim.
4148 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4149
4150 2003-07-07 Richard M. Stallman <rms@gnu.org>
4151
4152 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4153
4154 * alloc.c (Fgarbage_collect): Doc fix.
4155
4156 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4157
4158 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4159
4160 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4161
4162 * minibuf.c (read_minibuf): UNGCPRO before returning.
4163 (Ftry_completion, Fall_completions): Doc fix.
4164
4165 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4166 now that `floats' is not the last element of the struct any more.
4167
4168 2003-07-06 Jason Rumney <jasonr@gnu.org>
4169
4170 * w32term.h (ClipboardSequence_Proc): New type.
4171
4172 * w32fns.c (clipboard_sequence_fn): New variable.
4173 (globals_of_w32fns): Initialize it.
4174
4175 * w32select.c (last_clipboard_sequence_number): New variable.
4176 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4177 number if possible.
4178
4179 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4180
4181 * m/amdx86-64.h (MARKBIT):
4182 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4183 MARKBIT and ARRAY_MARK_FLAG any more.
4184
4185 * m/hp800.h (XSETMARKBIT):
4186 * m/sr2k.h (XSETMARKBIT):
4187 * lisp.h (XSETMARKBIT): Remove unused macro.
4188
4189 * lisp.h (mark_object): Change prototype.
4190
4191 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4192 (last_marked): Change accordingly.
4193 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4194 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4195 (mark_buffer): Update calls to mark_object.
4196
4197 * bytecode.c (mark_byte_stack):
4198 * fns.c (sweep_weak_table):
4199 * keyboard.c (mark_kboards): Update calls to mark_object.
4200
4201 2003-07-06 Jason Rumney <jasonr@gnu.org>
4202
4203 * alloc.c (struct ablock): Only include padding when there is some.
4204
4205 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4206
4207 * alloc.c (ALIGN): Add casts to simplify usage.
4208 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4209 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4210 (struct ablock, struct ablocks): New types.
4211 (free_ablock): New global var.
4212 (lisp_align_malloc, lisp_align_free): New functions.
4213 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4214 (struct float_block): Reorder and add gcmarkbits.
4215 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4216 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4217 (init_float, make_float): Use lisp_align_malloc.
4218 (free_float, live_float_p): Don't use `type' any more.
4219 (make_float): Use FLOAT_UNMARK to access to mark bit.
4220 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4221 Use FLOAT_MARKED_P to access the mark bit.
4222 (pure_alloc): Simplify use of ALIGN.
4223 (mark_object): Use FLOAT_MARK to access the mark bit.
4224 (gc_sweep): Use new macros to access the float's mark bit.
4225 (init_alloc_once): Init free_ablock.
4226
4227 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4228
4229 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4230
4231 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4232 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4233 (allocate_buffer): Move.
4234 (string_bytes): Don't mask markbit of `size_byte'.
4235 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4236 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4237 Use the `size' field of buffers (rather than the `name' field) for
4238 the mark bit, as is done for all other vectorlike objects.
4239 Use the new macros to access the mark bit of vectorlike objects.
4240
4241 2003-06-26 Richard M. Stallman <rms@gnu.org>
4242
4243 * puresize.h (BASE_PURESIZE): Increment base size.
4244
4245 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4246
4247 * xterm.c (xim_initialize): Undo previous change.
4248
4249 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4250
4251 * alloc.c (survives_gc_p): Simplify.
4252
4253 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4254
4255 * window.c (Fset_window_dedicated_p): Simplify.
4256 (display_buffer_1): Don't raise the win from which minibuf was entered.
4257 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4258 (Fminibuffer_selected_window): Simplify.
4259
4260 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4261
4262 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4263 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4264
4265 * insdel.c (check_markers, adjust_markers_for_delete)
4266 (adjust_markers_for_insert, adjust_markers_for_replace)
4267 (prepare_to_modify_buffer, RESTORE_VALUE):
4268 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4269 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4270 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4271 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4272 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4273 * editfns.c (save_excursion_restore, transpose_markers):
4274 * window.c (delete_window):
4275 * xdisp.c (message_dolog): Update for new types.
4276
4277 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4278
4279 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4280 (realize_default_face): Use default_face_done_p for the force_p
4281 argument to set_lface_from_font_name. Set default_face_done_p to one.
4282
4283 * frame.c (make_frame): Initialize default_face_done_p.
4284
4285 * frame.h (struct frame): Add default_face_done_p.
4286
4287 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4288 will be defined.
4289
4290 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4291
4292 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4293 Initialize the new field `gcmarkbit'.
4294 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4295 (mark_interval_tree): Don't mark the tree separately from the nodes.
4296 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4297 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4298 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4299
4300 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4301 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4302 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4303 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4304 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4305
4306 2003-06-24 Dave Love <fx@gnu.org>
4307
4308 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4309
4310 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4311 from gnulib.
4312
4313 2003-06-21 Richard M. Stallman <rms@gnu.org>
4314
4315 * fileio.c (Fwrite_region): Alternate messages
4316 for append and partial write.
4317
4318 * keyboard.c (read_key_sequence): When converting upcase fn key to
4319 downcase, update fkey and keytran so `backspace' gets translated.
4320
4321 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4322
4323 * process.c (wait_reading_process_input): Don't signal SIGIO
4324 in batch mode.
4325
4326 2003-06-17 Kenichi Handa <handa@m17n.org>
4327
4328 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4329 composite.h.
4330
4331 * xselect.c: Don't include charset.h, coding.h, composite.h.
4332 (Qforeign_selection): New variable.
4333 (syms_of_xselect): Intern and static it.
4334 (selection_data_to_lisp_data): Return a unibyte string made from
4335 data with `foreign-selection' text property.
4336
4337 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4338
4339 * termhooks.h (EVENT_INIT): New macro.
4340
4341 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4342
4343 * alloc.c (mark_kboards): Move to keyboard.c.
4344
4345 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4346 * xterm.c (x_dispatch_event):
4347 * xmenu.c (find_and_call_menu_selection):
4348 * xdisp.c (handle_tool_bar_click):
4349 * w32menu.c (menubar_selection_callback):
4350 * sysdep.c (kbd_input_ast, read_input_waiting):
4351 * msdos.c (dos_rawgetc):
4352 * macterm.c (mac_check_for_quit_char):
4353 * macmenu.c (menubar_selection_callback):
4354 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4355 data to kbd_buffer_store_event.
4356
4357 2003-06-15 Kim F. Storm <storm@cua.dk>
4358
4359 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4360 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4361
4362 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4363
4364 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4365
4366 2003-06-12 Kenichi Handa <handa@m17n.org>
4367
4368 * fileio.c (Fwrite_region): Save and restore restriction.
4369
4370 2003-06-12 Dave Love <fx@gnu.org>
4371
4372 * alloca.c (alloca): Declare arg as size_t.
4373
4374 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4375 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4376
4377 2003-06-11 Dave Love <fx@gnu.org>
4378
4379 * search.c (shrink_regexp_cache): Use xrealloc.
4380 (syms_of_search): Use xmalloc.
4381
4382 2003-06-10 Kim F. Storm <storm@cua.dk>
4383
4384 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4385 Adjust phys_cursor.x to be relative to window box, rather than
4386 text area before checking -- to ensure cursor is redrawn when
4387 exposing window.
4388 Note: This also fixes a similar (older) bug if display margins
4389 are present.
4390
4391 2003-06-06 Kenichi Handa <handa@m17n.org>
4392
4393 * coding.c (encoding_buffer_size): If coding->type is
4394 coding_type_ccl, double magnification on CRLF encoding.
4395
4396 2003-06-06 Jason Rumney <jasonr@gnu.org>
4397
4398 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4399 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4400
4401 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4402 Mac too.
4403
4404 2003-06-05 Dave Love <fx@gnu.org>
4405
4406 * strftime.c: Merge changes from gnulib.
4407
4408 * mktime.c (__mktime_internal): Merge changes from gnulib
4409 involving year 69 and dst2.
4410
4411 Changes to merge with gnulib version and be consistent with the
4412 autoconf test:
4413
4414 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4415 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4416 [HAVE_LOCALE_H]: Include locale.h.
4417 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4418
4419 2003-06-05 Kim F. Storm <storm@cua.dk>
4420
4421 * window.c (coordinates_in_window): Convert X and Y to window
4422 relative coordinates inside mode-line and header-line parts.
4423 Convert X and Y to margin area relative coordinates inside left
4424 and right display margin parts.
4425
4426 2003-06-05 Jason Rumney <jasonr@gnu.org>
4427
4428 * w32fns.c (add_system_logical_colors_to_map): New function.
4429 (Fx_open_connection): Use it.
4430
4431 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4432
4433 * process.c (allocate_pty): Revert part of the previous patch.
4434 (Faccept_process_output): Simplify.
4435
4436 2003-06-04 Jason Rumney <jasonr@gnu.org>
4437
4438 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4439
4440 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4441 (lispy_mouse_wheel_names): Remove.
4442 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4443 Always define drag_and_drop_syms.
4444
4445 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4446 WHEEL_EVENT events.
4447
4448 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4449
4450 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4451
4452 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4453
4454 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4455
4456 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4457 menu item label.
4458
4459 2003-06-03 Richard M. Stallman <rms@gnu.org>
4460
4461 * window.c (Fwindow_edges): Doc fix.
4462 (Fwindow_pixel_edges, Fwindow_inside_edges)
4463 (Fwindow_inside_pixel_edges): New functions.
4464 (syms_of_window): defsubr them.
4465
4466 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4467 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4468
4469 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4470
4471 * dispnew.c (Fsit_for): Don't lie about the number of args.
4472
4473 2003-06-02 Dave Love <fx@gnu.org>
4474
4475 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4476 (syms_of_callproc) <process-environment>: Doc fix.
4477
4478 * doc.c: Use HAVE_FCNTL_H, not USG5.
4479
4480 * xfaces.c (font_rescale_ratio): Fix for K&R.
4481
4482 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4483
4484 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4485
4486 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4487
4488 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4489 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4490
4491 * xterm.c (Qutf_8): Move to coding.c
4492
4493 * xmenu.c (ENCODE_MENU_STRING): New.
4494 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4495 Use it.
4496
4497 * coding.h (ENCODE_UTF_8): New.
4498 (Qutf_8): Declare.
4499
4500 * coding.c (Qutf_8): New.
4501 (syms_of_coding): Intern it.
4502
4503 * fns.c: Doc fixes.
4504
4505 2003-06-02 Kenichi Handa <handa@m17n.org>
4506
4507 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4508
4509 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4510
4511 * lread.c (openp): Make sure STR is a string.
4512
4513 2003-06-01 David Ponce <david@dponce.com>
4514
4515 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4516 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4517
4518 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4519 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4520 (discard_mouse_events): Discard WHEEL_EVENT events too.
4521 (lispy_wheel_names, wheel_syms): New.
4522 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4523 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4524 defined.
4525 (make_lispy_event): Add WHEEL_EVENT handler.
4526
4527 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4528 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4529 WHEEL_EVENT events.
4530
4531 2003-05-31 John Paul Wallington <jpw@gnu.org>
4532
4533 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4534 timer are in lisp/emacs-lisp.
4535
4536 2003-05-31 Kenichi Handa <handa@m17n.org>
4537
4538 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4539 region when a buffer is changed to unibyte.
4540
4541 * charset.h (VALID_LEADING_CODE_P): New macro.
4542 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4543
4544 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4545 is nonzero, accept multibyte form of eight-bit-control chars.
4546 (decode_composition_emacs_mule): Likewise.
4547 (decode_coding_emacs_mule): Likewise.
4548 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4549 multibyte form of eight-bit-control chars.
4550
4551 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4552 (Finsert_file_contents): If coding-system-for-read is bound to
4553 Qauto_save_coding, use the coding system emacs-mule with special
4554 setting for recovering a file.
4555 (choose_write_coding_system): On auto saving, use the coding
4556 system emacs-mule with special setting for auto saving.
4557 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4558
4559 2003-05-30 Kenichi Handa <handa@m17n.org>
4560
4561 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4562 properly before calling ccl_driver.
4563
4564 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
4565
4566 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4567 nonzero.
4568 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4569 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4570
4571 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4572
4573 * xfaces.c (realize_default_face): Do not abort if lface is
4574 non-existent - reverts change from 2003-05-19.
4575
4576 2003-05-29 Kenichi Handa <handa@m17n.org>
4577
4578 * coding.c (decode_coding_iso2022): Pay attention to the byte
4579 sequence of CTEXT extended segment, and retain those bytes as is.
4580
4581 2003-05-28 Kenichi Handa <handa@m17n.org>
4582
4583 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4584 of CODING_REPLACEMENT_CHARACTER.
4585 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4586 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4587 check this flag on encoding.
4588 (encode_coding_sjis_big5): Check
4589 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4590 (Fset_terminal_coding_system_internal): Set
4591 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4592 instead of setting CODING_FLAG_ISO_SAFE flag in
4593 terminal_coding.flags.
4594
4595 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4596 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4597 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4598
4599 2003-05-28 Richard M. Stallman <rms@gnu.org>
4600
4601 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4602
4603 * eval.c (unbind_to): Move init of this_binding to separate statement.
4604
4605 2003-05-28 Kim F. Storm <storm@cua.dk>
4606
4607 * xdisp.c (expose_window): Fix error in calculation of
4608 window relative coordinates of area to redisplay.
4609
4610 2003-05-27 Jason Rumney <jasonr@gnu.org>
4611
4612 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4613
4614 2003-05-27 David Ponce <david@dponce.com>
4615
4616 Handle W32 mouse wheel events as mouse click events, like in X.
4617
4618 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4619 MOUSE_WHEEL_EVENT anymore.
4620
4621 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4622 Scrolling down/up the mouse wheel is respectively mapped to mouse
4623 button 4 and 5.
4624 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4625 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4626 WM_MOUSEWHEEL events.
4627
4628 2003-05-27 Andreas Schwab <schwab@suse.de>
4629
4630 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4631
4632 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4633 partially visible line.
4634
4635 * alloc.c (Fgarbage_collect): Fix last change.
4636
4637 2003-05-26 John Paul Wallington <jpw@gnu.org>
4638
4639 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4640
4641 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4642
4643 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4644 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4645
4646 * window.h (window_box_text_cols): Declare.
4647
4648 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4649 (x_draw_vertical_border): Remove unused var `f'.
4650
4651 * xfaces.c (build_scalable_font_name): Remove `unused var
4652 pixel_size' warning.
4653
4654 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4655
4656 * unexelf.c (unexec): Remove `unused var n' warning.
4657
4658 * strftime.c (my_strftime_localtime_r): Remove `defined but
4659 unused' warning.
4660
4661 * process.c (allocate_pty): Remove `unused var stb' and
4662 `cp might be used uninitialized' warnings.
4663
4664 * dispnew.c (mode_line_string): Remove unused var `f'.
4665
4666 * coding.c (find_safe_codings): Remove unused var `i'.
4667
4668 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4669
4670 * buffer.c (Fkill_buffer): Remove unused var `list'.
4671
4672 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4673
4674 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4675
4676 * frame.c (make_frame): Condition want_fullscreen with
4677 HAVE_WINDOW_SYSTEM.
4678
4679 2003-05-25 Juanma Barranquero <lektu@terra.es>
4680
4681 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4682 (Fwindow_scroll_bars): Fix typo in docstring.
4683
4684 2003-05-24 Kim F. Storm <storm@cua.dk>
4685
4686 The following changes serve several purposes:
4687
4688 1) Swap the position of fringes and display margins in windows, i.e.
4689 the fringes are now displayed between the margins and the text area
4690 (by default).
4691
4692 2) Allow fringe and scroll bar parameters to be set per-buffer and
4693 per-window (like display margins). Such settings are now stored
4694 in window configurations, preserved when frames are resized, and
4695 copied when windows are split vertically or horizontally.
4696 Several bugs related to display margins have been fixed.
4697
4698 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
4699
4700 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4701 rather than FRAME_WIDTH (FRAME_FONT (f)).
4702
4703 5) Introduce a consistent naming of variables, members and macros
4704 depending on whether their value is measured in pixels or in
4705 canonical columns/lines. Pixel dimensions are named *_width and
4706 *_height, while canonical columns/lines are named *_cols and
4707 *_lines. Pixel positions are named *_x and *_y, while column/line
4708 positions are named *_col and *_line.
4709
4710 6) Consolidate more of the X, W32, and MAC gui code by moving
4711 common data into struct frame, and generalize it for the non-gui
4712 case by using suitable defaults.
4713
4714 7) Cleanup and consolidate the macros controlling frame and window
4715 layout into frame.h and window.h, and generalize the use of the
4716 various window_box_* functions (enhanced to handle the new fringe
4717 position and the per-window fringe and scroll bar settings).
4718
4719 * frame.h (struct frame): Rename members height to text_lines,
4720 width to text_cols, window_height to total_lines, window_width to
4721 total_cols, new_height to new_text_lines, new_width to
4722 new_text_cols. All uses changed.
4723 (struct frame): New members which consolidate common members of
4724 x_output, w32_output, and mac_output structures: left_pos,
4725 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4726 win_gravity, size_hint_flags, border_width, internal_border_width,
4727 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4728 want_fullscreen. All uses changed.
4729 (struct frame): New member column_width contaning the canonical
4730 column width, analogue to line_height. All uses changed.
4731 (struct frame): Rename members scroll_bar_pixel_width to
4732 config_scroll_bar_width, and scroll_bar_cols to
4733 config_scroll_bar_cols. All uses changed.
4734 (struct frame): New member scroll_bar_actual_width which
4735 consolidates and renames the vertical_scroll_bar_extra member of
4736 x_output, w32_output, and mac_output structures. All uses changed.
4737 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4738 from x/w32/macterm.h files. All uses changed. Also change code
4739 which referred to f->output_data...->pixel_height.
4740 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
4741 from x/w32/macterm.h files. All uses changed. Also change code
4742 which referred to f->output_data...->pixel_width.
4743 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4744 Also change code which referred to f->height.
4745 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4746 Also change code which referred to f->width.
4747 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4748 to update new_text_lines and new_text_cols members directly.
4749 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4750 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4751 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4752 FRAME_SCROLL_BAR_COLS. All uses changed.
4753 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4754 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4755 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4756 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4757 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4758 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4759 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4760 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4761 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4762 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4763 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4764 return line_height member (it now has proper value also for
4765 non-window frames).
4766 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4767 return new column_width member (rather than the default font width).
4768 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4769 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4770 from x/w32/macterm.h files. Unconditionally return corresponding
4771 member of frame structure (they now have proper values also for
4772 non-window frames).
4773 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4774 Calculate return value from left and right widths.
4775 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4776 internal_border_width member (has proper value for non-window frame).
4777 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4778 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4779 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4780 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4781 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4782 consolidated from xterm.h, macterm.h, and w32term.h.
4783 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4784 consolidated from xterm.h, macterm.h, and w32term.h.
4785 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4786 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4787 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4788 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4789 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4790 consolidated from x/mac/w32term.h.
4791 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4792 consolidated from x/mac/w32term.h.
4793 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4794 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4795 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4796 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4797
4798 * window.h (struct window): Rename members left to left_col,
4799 top to top_line, height to total_lines, width to total_cols,
4800 left_margin_width to left_margin_cols, right_margin_width to
4801 right_margin_cols, orig_height to orig_total_lines, orig_top to
4802 orig_top_line. All uses changed.
4803 (struct window): New members left_fringe_width, right_fringe_width,
4804 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4805 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4806 New macros primarily used to simplify other macros.
4807 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4808 referred to XINT (w->width).
4809 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4810 referred to XINT (w->height).
4811 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4812 referred to XINT (w->width) * canon_x_unit.
4813 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4814 referred to XINT (w->height) * canon_y_unit.
4815 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4816 referred to XINT (w->left).
4817 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4818 all uses and code that referred to XINT (w->left) + XINT (w->width).
4819 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4820 referred to XINT (w->top).
4821 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4822 referred to XINT (w->top) + XINT (w->height).
4823 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4824 referred to XINT (w->left) * canon_x_unit.
4825 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4826 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4827 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4828 referred to XINT (w->top) * canon_y_unit.
4829 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4830 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4831 (WINDOW_LEFTMOST_P): New macro.
4832 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4833 All uses changed.
4834 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4835 All uses changed.
4836 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4837 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4838 Do not exclude left fringe width.
4839 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4840 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4841 Do not exclude fringe widths.
4842 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4843 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4844 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4845 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4846 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4847 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4848 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4849 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4850 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4851 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4852 New macros. Change code which referenced corresponding
4853 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4854 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4855 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4856 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4857 allow per-window scroll-bar settings.
4858 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4859 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4860 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4861 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4862 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4863 FRAME_SCROLL_BAR_WIDTH.
4864 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
4865 (WINDOW_SCROLL_BAR_AREA_X): New macros.
4866 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4867 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4868 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4869 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4870 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4871 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4872 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4873 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4874 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4875 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4876 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4877 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4878 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4879 (window_from_coordinates): Update prototype.
4880 (Fset_window_buffer): Update EXFUN.
4881 (set_window_buffer): Update prototype.
4882
4883 * dispextern.h (struct glyph_matrix): Rename members window_left_x
4884 to window_left_col, window_top_y to window_top_line. All uses
4885 changed.
4886 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4887 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4888 internal_border_width is now set to 0 for non-window frames.
4889 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4890 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4891 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4892 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4893 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4894 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4895 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4896 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4897 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
4898 Move to window.h and renamed [see window.h changes].
4899 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4900 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
4901 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4902 Use WINDOW_TOTAL_LINES.
4903 (frame_update_line_height): Remove prototype.
4904
4905 * buffer.h (struct buffer): Rename members measured in columns:
4906 left_margin_width to left_margin_cols, right_margin_width to
4907 right_margin_cols. All uses changed.
4908 New members left_fringe_width, right_fringe_width,
4909 fringes_outside_margins for per-buffer fringe settings.
4910 New members scroll_bar_width and vertical_scroll_bar_type for
4911 per-buffer scroll bar settings.
4912
4913 * buffer.c (init_buffer_once): Set buffer_defaults and
4914 buffer_local_flags for new buffer-local variables
4915 left_fringe_width, right_fringe_width, fringes_outside_margins,
4916 scroll_bar_width, and vertical_scroll_bar_type.
4917 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4918 default-* variables for them.
4919
4920 * dispnew.c: Make (many) trivial substitutions for renamed and
4921 new macros in dispextern.h, frame.h and window.h.
4922 (mode_line_string): No need to adjust width for mode lines, as it
4923 is already adjusted by the caller.
4924 (marginal_area_string): Handle fringes inside/outside margins.
4925
4926 * frame.c: Make (many) trivial substitutions for renamed and
4927 new macros in dispextern.h, frame.h and window.h.
4928 (make_frame): Initialize left_fringe_width, right_fringe_width,
4929 fringe_cols, scroll_bar_actual_width, border_width,
4930 internal_border_width, column_width, line_height, x_pixels_diff,
4931 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4932 members with values suitable for a non-window frames.
4933
4934 * gtkutil.c: Make (many) trivial substitutions for renamed and
4935 new macros in dispextern.h, frame.h and window.h.
4936
4937 * indent.c: Make (few) trivial substitutions for renamed and
4938 new macros in dispextern.h, frame.h and window.h.
4939
4940 * keyboard.c: Make (many) trivial substitutions for renamed and
4941 new macros in dispextern.h, frame.h and window.h.
4942 (make_lispy_event): Use window positions returned from
4943 window_from_coordinates when constructing the lisp event for
4944 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4945 (incorrect) values locally.
4946 (make_lispy_movement): Use window positions returned from
4947 window_from_coordinates when constructing the lisp event, rather
4948 than calculating (incorrect) values locally.
4949
4950 * scroll.c: Make (some) trivial substitutions for renamed and
4951 new macros in dispextern.h, frame.h and window.h.
4952
4953 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4954 scroll-bars.
4955
4956 * sysdep.c: Make (few) trivial substitutions for renamed and
4957 new macros in dispextern.h, frame.h and window.h.
4958
4959 * term.c: Make (some) trivial substitutions for renamed and
4960 new macros in dispextern.h, frame.h and window.h.
4961
4962 * widget.c: Make (few) trivial substitutions for renamed and
4963 new macros in dispextern.h, frame.h and window.h.
4964
4965 * window.c: Make (many) trivial substitutions for renamed and
4966 new macros in dispextern.h, frame.h and window.h.
4967 (make_window): Initialize new members
4968 left_margin_cols, right_margin_cols, left_fringe_width,
4969 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4970 and vertical_scroll_bar_type.
4971 (coordinates_in_window): Adapted to new fringe/margin positions
4972 and per-window fringes and scroll-bars.
4973 Fix bug related to incorrectly adjusting coordinates by
4974 frame's internal_border_width (the effect normally negible since
4975 the internal_border_width is typically 0 or 1 pixel, but very
4976 noticeable for an internal_border_width of e.g. 25 pixels).
4977 Upon successful return (other than ON_NOTHING), the coordinates
4978 are now always properly converted to window relative for the
4979 given display element.
4980 (window_from_coordinates): Add new parameters wx and wy to
4981 return the window relative x and y position in the returned
4982 window and part. A null arg means, don't return the position.
4983 All callers changed.
4984 (adjust_window_margins): New function which may reduce the width
4985 of the display margins if a window's text area is too small after
4986 resizing or splitting windows.
4987 (size_window): Fix bug that did not account for display margin
4988 widths when checking the minimum width of a window; use
4989 adjust_window_margins.
4990 (set_window_buffer): Call Fset_window_fringes and
4991 Fset_window_scroll_bars to setup per-window elements.
4992 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4993 existing display margin, fringe widths, and scroll bar settings
4994 (e.g. after splitting a window or resizing the frame).
4995 All callers changed.
4996 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4997 (Fsplit_window): Duplicate original window's display margin,
4998 fringe, and scroll-bar settings; then call Fset_window_buffer with
4999 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5000 window to only preserve the display margins in one of the windows.
5001 When splitting horizontally, call adjust_window_margins on both
5002 windows to ensure that the text area of the new windows is non too
5003 narrow. This fixes a bug which could cause Emacs to trap if the
5004 width of the split window was less than the width of the display
5005 margins.
5006 (window_box_text_cols): Renamed from window_internal_width.
5007 All uses changed. Adapt to per-window fringes and scroll bars.
5008 Fix bug that caused vertical separator to be subtracted also on
5009 window frames. Fix another bug that did not reduce the returned
5010 value by the columns used for display margins.
5011 (window_scroll_line_based): Fix bug related to scrolling too much
5012 when display margins are present (implicitly fixed by the fix to
5013 window_box_text_cols).
5014 (scroll_left, scroll_right): Fix bug related to scrolling too far
5015 by default when display margins are present (implicitly fixed by
5016 the fix to window_box_text_cols).
5017 (struct saved_window): Rename members left to left_col, top to
5018 top_line, width to total_cols, height to total_lines, orig_top to
5019 orig_top_line, orig_height to orig_total_lines. All uses changed.
5020 New members left_margin_cols, right_margin_cols,
5021 left_fringe_width, right_fringe_width, fringes_outside_margins,
5022 scroll_bar_width, and vertical_scroll_bar_type for saving
5023 per-window display elements.
5024 (Fset_window_configuration): Restore display margins, fringes,
5025 and scroll bar settings. This fixes a bug which caused display
5026 margins to be discarded when saving and restoring a window
5027 configuration.
5028 (save_window_save): Save display margins, fringes, and scroll bar
5029 settings. This fixes a bug which caused display margins to be
5030 discarded when saving and restoring a window configuration.
5031 (Fset_window_margins): Do nothing if display margins are not
5032 really changed. Otherwise, call adjust_window_margins to ensure
5033 the text area doesn't get too narrow. This fixes a bug which
5034 could cause Emacs to trap if setting display margins wider than
5035 the width of the window.
5036 (Fset_window_fringes): New defun to allow user to specifically set
5037 this window's fringe widths and position vs. display margins.
5038 (Fwindow_fringes): New defun to return window's actual fringe
5039 settings.
5040 (Fset_window_scroll_bars): New defun to allow user to specifically
5041 set this window's scroll bar width and position.
5042 (Fwindow_scroll_bars): New defun to return window's actual scroll
5043 bar settings.
5044 (compare_window_configurations): Also compare display margins,
5045 fringes, and scroll bar settings.
5046 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5047
5048 * xdisp.c: Make (many) trivial substitutions for renamed and
5049 new macros in dispextern.h, frame.h and window.h.
5050 (window_box_width): Adapt to per-window fringes and scroll bars,
5051 and new fringe vs. display margin position. Note that returned
5052 value is no longer guaranteed to be a whole multiple of the frame
5053 column width, since per-window fringes may now be any width.
5054 (window_box_left_offset): New function like window_box_left, but
5055 value is relative to left border of window (rather than frame).
5056 (window_box_right_offset): New function like window_box_right,
5057 but value is relative to left border of window.
5058 (window_box_left): Adapt to per-window fringes and scroll bars,
5059 and new fringe vs. display margin position. Simplify by using
5060 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5061 (window_box): Allow null args for unnecessary return values;
5062 change/simplify relevant callers.
5063 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
5064 and new fringe vs. display margin position.
5065 Use window_box_left_offset and window_box_right_offset
5066 (get_glyph_string_clip_rect): Adapt to per-window fringes and
5067 scroll bars, and new fringe vs. display margin position.
5068 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
5069 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5070 fringe vs. display margin position.
5071 (hscroll_window_tree): Use window_box_width instead of window_box.
5072 (redisplay_window): Adapt to per-window scroll bars.
5073 (draw_glyphs): Rework to handle per-window fringes and scroll
5074 bars, and new fringe vs. display margin position.
5075 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
5076 (x_clear_end_of_line): Adapt to per-window fringes and scroll
5077 bars, and new fringe vs. display margin position. Fix bug which
5078 increased total width of full_width rows by width of scroll bars
5079 although window's total width already includes that.
5080 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5081 (expose_area): Simplify using window_box_left_offset.
5082 (x_draw_vertical_border): Handle per-window scroll bar settings,
5083 mixing windows with left, right and no scroll bars.
5084
5085 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5086 where it's used in x_list_fonts (for clarity).
5087 (frame_update_line_height): Remove unused function; functionality
5088 is now done directly when setting the default font in x_set_font.
5089
5090 * xfns.c: Make (many) trivial substitutions for renamed and
5091 new macros in dispextern.h, frame.h and window.h.
5092
5093 * xmenu.c: Make (some) trivial substitutions for renamed and
5094 new macros in dispextern.h, frame.h and window.h.
5095
5096 * xterm.h (struct x_output): Move members left_pos, top_pos,
5097 border_width, pixel_height, pixel_width, line_height,
5098 internal_border_width, vertical_scroll_bar_extra,
5099 left_fringe_width, right_fringe_width, fringe_cols,
5100 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5101 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5102 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5103 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5104 (PIXEL_WIDTH, PIXEL_HEIGHT)
5105 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5106 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5107 frame.h and renamed [see frame.h changes].
5108 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5109 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5110 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5111 and renamed [see frame.h changes].
5112
5113 * xterm.c: Make (several) trivial substitutions for renamed and
5114 new macros in dispextern.h, frame.h and window.h.
5115 (x_draw_glyph_string_box): Adapt to per-window fringes and
5116 scroll-bars.
5117 (scroll_run): Adapt to new fringe position.
5118 (glyph_rect): Use window coordinates returned from
5119 window_from_coordinates rather than frame_to_window_pixel_xy.
5120 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5121 scroll-bars.
5122 (handle_one_xevent): Simplify a USE_GTK conditional.
5123 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5124 (fringes are now inside margins, i.e. always in the clipping area).
5125 All callers changed.
5126 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5127 directly, then call compute_fringe_widths. Don't call
5128 frame_update_line_height.
5129
5130 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5131 border_width, pixel_height, pixel_width, line_height,
5132 internal_border_width, vertical_scroll_bar_extra,
5133 left_fringe_width, right_fringe_width, fringe_cols,
5134 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5135 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5136 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5137 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5138 (PIXEL_WIDTH, PIXEL_HEIGHT)
5139 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5140 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5141 frame.h and renamed [see frame.h changes].
5142 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5143 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5144 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5145 and renamed [see frame.h changes].
5146
5147 * w32term.c: Make (several) trivial substitutions for renamed and
5148 new macros in dispextern.h, frame.h and window.h.
5149 (x_draw_glyph_string_box): Adapt to per-window fringes and
5150 scroll-bars.
5151 (glyph_rect): Use window coordinates returned from
5152 window_from_coordinates rather than frame_to_window_pixel_xy.
5153 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5154 scroll-bars.
5155 (w32_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 * w32console.c: Make (few) trivial substitutions for renamed and
5163 new macros in dispextern.h, frame.h and window.h.
5164
5165 * w32fns.c: Make (many) trivial substitutions for renamed and
5166 new macros in dispextern.h, frame.h and window.h.
5167
5168 * w32menu.c: Make (few) trivial substitutions for renamed and
5169 new macros in dispextern.h, frame.h and window.h.
5170
5171 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5172 border_width, pixel_height, pixel_width, line_height,
5173 internal_border_width, vertical_scroll_bar_extra,
5174 left_fringe_width, right_fringe_width, fringe_cols,
5175 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5176 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5177 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5178 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5179 (PIXEL_WIDTH, PIXEL_HEIGHT)
5180 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5181 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5182 frame.h and renamed [see frame.h changes].
5183 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5184 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5185 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5186 and renamed [see frame.h changes].
5187
5188 * macterm.c: Make (several) trivial substitutions for renamed and
5189 new macros in dispextern.h, frame.h and window.h.
5190 (x_draw_glyph_string_box): Adapt to per-window fringes and
5191 scroll-bars.
5192 (glyph_rect): Use window coordinates returned from
5193 window_from_coordinates rather than frame_to_window_pixel_xy.
5194 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5195 scroll-bars.
5196 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5197 (fringes are now inside margins, i.e. always in the clipping area).
5198 All callers changed.
5199 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5200 directly, then call compute_fringe_widths. Don't call
5201 frame_update_line_height.
5202
5203 * macfns.c: Make (several) trivial substitutions for renamed and
5204 new macros in dispextern.h, frame.h and window.h.
5205 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5206
5207 * macmenu.c: Make (few) trivial substitutions for renamed and
5208 new macros in dispextern.h, frame.h and window.h.
5209
5210 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5211 and line_height, and use corresponding new members in struct
5212 frame. All uses changed.
5213 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5214 superseeded by corresponding macros in frame.h.
5215
5216 * msdos.c: Make (several) trivial substitutions for renamed and
5217 new macros in dispextern.h, frame.h and window.h.
5218 (IT_note_mouse_highlight): Use updated window coordinates returned
5219 by window_from_coordinates, rather than adjusting them locally.
5220 (internal_terminal_init): No need to initialize line_height here;
5221 it now defaults to 1.
5222
5223 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5224
5225 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5226 dropping `down' events.
5227
5228 2003-05-24 Andreas Schwab <schwab@suse.de>
5229
5230 * coding.c (find_safe_codings): Fix last change.
5231
5232 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5233
5234 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5235
5236 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5237
5238 * xdisp.c (display_mode_element): Increase max depth.
5239 Simplify the error handling code. Use a different error string
5240 for the case where we hit the depth limit.
5241
5242 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5243
5244 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5245
5246 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5247
5248 * intervals.c (get_local_map): Don't get char-property of previous
5249 point any more: get_pos_property already does it and better.
5250
5251 2003-05-21 Dave Love <fx@gnu.org>
5252
5253 [Merged from unicode branch.]
5254
5255 * xfns.c (x_window, x_window): Use use_xim.
5256
5257 * xterm.c (use_xim): Initialize.
5258 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5259 (x_term_init): Maybe set use_xim.
5260
5261 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5262
5263 2003-05-21 Jason Rumney <jasonr@gnu.org>
5264
5265 * unexw32.c (_start): Remove _fmode initialization.
5266
5267 * emacs.c (main) [WINDOWSNT]: Move it here.
5268
5269 2003-05-20 Dave Love <fx@gnu.org>
5270
5271 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5272
5273 2003-05-19 Richard M. Stallman <rms@gnu.org>
5274
5275 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5276 as value for QCfont attribute.
5277 (realize_default_face): lface should already exist; crash if not.
5278 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5279
5280 * frame.c (Fignore_event): Doc fix.
5281
5282 2003-05-19 Kenichi Handa <handa@m17n.org>
5283
5284 * coding.c (decode_coding_string): Handle post-read-conversion
5285 even if the coding doesn't require decoding.
5286
5287 2003-05-18 Richard M. Stallman <rms@gnu.org>
5288
5289 * callproc.c (Fcall_process_region): Doc fix.
5290
5291 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5292
5293 * lread.c (Fload): Print a message if package is obsolete.
5294
5295 * window.c (Fselect_window): Add optional `norecord' arg.
5296 (select_window_1): Fold into Fselect_window.
5297 (select_window_norecord): New function.
5298 (temp_output_buffer_show): Use it. Preserve current buffer.
5299
5300 * window.h (Fselect_window): Update declaration.
5301
5302 * window.c (delete_window, Fother_window, Fset_window_configuration):
5303 * minibuf.c (read_minibuf):
5304 * macterm.c (x_new_focus_frame):
5305 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5306 * callint.c (Fcall_interactively):
5307 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5308
5309 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5310
5311 2003-05-17 David Kastrup <dak@gnu.org>
5312
5313 * process.c (read_process_output): Back out change from 2003-03-09.
5314
5315 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5316
5317 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5318
5319 * textprop.c (text_property_stickiness): New arg `buffer'.
5320
5321 * intervals.h (text_property_stickiness): New arg `buffer'.
5322 (get_pos_property): Declare.
5323
5324 * intervals.c (get_local_map): Use get_pos_property, to obey
5325 stickiness and empty overlays.
5326 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5327 (merge_properties, intervals_equal, merge_properties_sticky):
5328 Use XCAR, XCDR.
5329 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5330
5331 2003-05-17 Richard M. Stallman <rms@gnu.org>
5332
5333 * minibuf.c (read_minibuf): If buffer is empty, record the default
5334 in the history.
5335 (Fminibuffer_complete_word): When deleting the overlap, take account
5336 of its real position.
5337
5338 * fns.c (map_char_table): Fix previous change.
5339
5340 * syntax.c (find_defun_start):
5341 When open_paren_in_column_0_is_defun_start,
5342 return beginning of buffer.
5343
5344 * lisp.h (map_char_table): Declare added arg.
5345
5346 * fns.c (map_char_table): New arg TABLE gets the master table.
5347 All calls changed.
5348 Process default and inheritance, resorting to Faref if necessary.
5349
5350 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5351 (Faccessible_keymaps): Pass new arg to map_char_table.
5352
5353 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5354
5355 * casetab.c (set_case_table): Pass new arg to map_char_table.
5356
5357 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5358
5359 * lisp.h (specbinding_func): New typedef.
5360 (struct specbinding): Use specbinding_func, to put the `volatile'
5361 in the right place.
5362
5363 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5364 to avoid GCC warning.
5365
5366 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5367
5368 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5369
5370 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5371
5372 * keyboard.c (apply_modifiers): Don't fill the other cache.
5373
5374 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5375
5376 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5377
5378 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5379 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5380 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5381 (Fset_window_configuration, Fcurrent_window_configuration)
5382 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5383 (Fpos_visible_in_window_p, mark_window_cursors_off)
5384 (window_internal_height, window_internal_width, Frecenter)
5385 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5386 (replace_buffer_in_all_windows, init_window_once, init_window)
5387 (syms_of_window, keys_of_window): Move from lisp.h.
5388 * lisp.h: Move window.c declarations to window.h.
5389
5390 * bytecode.c: Include window.h.
5391 * emacs.c: Include window.h.
5392
5393 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5394 (keyremap): Add `parent' field.
5395 (keyremap_step): Use it. Remove `parent' argument.
5396 (read_key_sequence): Setup and use the new `parent' field.
5397
5398 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5399
5400 * keyboard.c (adjust_point_for_property): Ensure termination.
5401
5402 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5403
5404 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5405 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5406 duplicated handling of function-key-map and key-translation-map
5407 in read_key_sequence.
5408 (read_key_sequence): Use them.
5409
5410 * keyboard.c (adjust_point_for_property): Try harder to move point
5411 to the non-sticky end of an invisible property.
5412
5413 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5414 property intangible as well.
5415
5416 2003-05-10 Andreas Schwab <schwab@suse.de>
5417
5418 * xmenu.c (single_menu_item): Change last parameter to void* to
5419 avoid warning.
5420
5421 2003-05-09 Richard M. Stallman <rms@gnu.org>
5422
5423 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5424 Bind Qinhibit_modification_hooks to t so there will be no GC.
5425 Rename local `tem' to `save_deactivate_mark'.
5426
5427 * eval.c (specpdl_ptr): Declare volatile.
5428 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5429 before doing the work of unbinding it.
5430
5431 * lisp.h (struct specbinding): Declare elements volatile.
5432 (specpdl_ptr): Declare volatile.
5433
5434 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5435
5436 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5437 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5438
5439 2003-05-08 Dave Love <fx@gnu.org>
5440
5441 * coding.c (Vlast_coding_system_used): Doc fix.
5442
5443 2003-05-07 Jason Rumney <jasonr@gnu.org>
5444
5445 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5446 when system does not support them.
5447
5448 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5449
5450 * fileio.c (Qwrite_region_annotate_functions): New var.
5451 (build_annotations): Use it to process the global part of the hook.
5452 (syms_of_fileio): Init and staticpro it.
5453
5454 * keyboard.c (safe_run_hooks_error): Display a message instead of
5455 silently ignoring the error.
5456
5457 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5458
5459 * keyboard.c (input_available_signal): Mark static.
5460 (menu_bar_items): Use map_keymap.
5461 (menu_bar_one_keymap): Remove.
5462 (menu_bar_item): Adjust arglist (for use in map_keymap).
5463 Properly hide a second binding when not both are keymaps.
5464
5465 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5466 (single_keymap_panes): Use it and map_keymap.
5467 (single_menu_item): Use skp as well.
5468
5469 * keymap.h (map_keymap_function_t): New type.
5470 (map_keymap): Declare.
5471
5472 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5473 (map_keymap_call, Fmap_keymap): New functions.
5474 (syms_of_keymap): Defsubr map-keymap.
5475
5476 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5477
5478 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5479 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5480 ..._with_mnemonic functions for menu items.
5481
5482 2003-05-01 Kenichi Handa <handa@m17n.org>
5483
5484 * coding.c (coding_system_accept_latin_extra_p): Delete this
5485 function.
5486 (find_safe_codings): Pay attention to
5487 the property tranlsation-table-for-encode of each codings.
5488 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5489
5490 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5491
5492 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5493
5494 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5495
5496 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5497
5498 * lisp.h (CHECK): Wrap args in parenthesis.
5499 (specbind): Fix doc: symbol = Qnil is not supported any more.
5500
5501 * bytecode.c (Fbyte_code) <unwind-protect>:
5502 Use Fprogn rather than 0 and Qnil.
5503
5504 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5505 `double', and `triple' modifiers as well.
5506
5507 2003-04-30 Richard M. Stallman <rms@gnu.org>
5508
5509 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5510
5511 * alloc.c (abort_on_gc): New variable.
5512 (Fgarbage_collect): Abort if abort_on_gc is set.
5513
5514 * lisp.h (abort_on_gc): Add decl.
5515
5516 * eval.c (Fsignal): Clear abort_on_gc.
5517
5518 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
5519 Reinit FORMAT_START and END before second scan.
5520
5521 * xdisp.c (move_it_vertically_backward): Do the final big else
5522 even if nlines is 0.
5523
5524 * xdisp.c (redisplay_internal): Finish the per-frame loop
5525 even if redisplay is suspended by input.
5526
5527 2003-04-24 Andrew Choi <akochoi@shaw.ca>
5528
5529 * macterm.c (x_list_fonts): Return all fonts that match if
5530 maxnames = -1.
5531
5532 2003-04-25 Kenichi Handa <handa@m17n.org>
5533
5534 * syntax.c (skip_chars): Fix previous change.
5535
5536 2003-04-24 Kenichi Handa <handa@m17n.org>
5537
5538 * syntax.c (skip_chars): Make the code faster by using the common
5539 technique of *p, *stop, and *endp.
5540
5541 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5542
5543 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
5544 tool_bar_items so GTK tool bar expose callback does not access items
5545 being updated.
5546
5547 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5548
5549 * eval.c (Fapply): Undo last change and add a comment about why.
5550
5551 2003-04-18 Miles Bader <miles@gnu.org>
5552
5553 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5554 pickier PARSE_MULTIBYTE_SEQ.
5555
5556 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5557
5558 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5559 Use XCDR, XCAR, CONSP.
5560 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5561 (Fapply): Remove unnecessary GCPRO.
5562
5563 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5564
5565 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5566
5567 * buffer.h: Don't hardcode BEG==1.
5568
5569 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5570
5571 2003-04-16 Richard M. Stallman <rms@gnu.org>
5572
5573 * xdisp.c (try_window, try_window_reusing_current_matrix):
5574 When at end of window, set window_end_pos to Z-ZV.
5575
5576 * buffer.c (Foverlay_recenter): Doc fix.
5577
5578 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5579
5580 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5581
5582 2003-04-14 Andrew Choi <akochoi@shaw.ca>
5583
5584 * macterm.c (mac_check_for_quit_char): Don't check more often than
5585 once a second.
5586
5587 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5588
5589 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5590 specially, so that they can't hide an implicit switch-frame event.
5591 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5592 (head_table): Use switch-frame as event_kind for select-window.
5593 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5594
5595 * editfns.c (Fformat): Lisp_Object/int mixup.
5596 (format2): Remove unused var numargs.
5597
5598 2003-04-11 Kenichi Handa <handa@m17n.org>
5599
5600 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
5601 (Qafter_insert_file_set_coding): New variable.
5602 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5603 for after-insert-file-adjust-coding-function.
5604 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5605 instead of Vafter_insert_file_adjust_coding_function.
5606
5607 2003-04-11 Kenichi Handa <handa@m17n.org>
5608
5609 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5610
5611 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5612 string. Callers changed.
5613
5614 2003-04-10 Kenichi Handa <handa@m17n.org>
5615
5616 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
5617 (syms_of_fileio): Declare it as a lisp variable.
5618 (Finsert_file_contents):
5619 Call Vafter_insert_file_adjust_coding_function before calling
5620 decode-format.
5621
5622 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5623
5624 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5625 get GtkAdjustment as widget now is a GtkRange.
5626
5627 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5628 GtkRange to avoid memory leak.
5629
5630 2003-04-09 Kenichi Handa <handa@m17n.org>
5631
5632 * xfaces.c (Vface_font_rescale_alist): New variable.
5633 (struct font_name): New member rescale_ratio.
5634 (font_rescale_ratio): New function.
5635 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
5636 (better_font_p): On comparing point sized, pay attention to
5637 recale_ratio member of fonts.
5638 (build_scalable_font_name): Reflect font->rescale_ratio in the
5639 font name.
5640 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
5641
5642 * lread.c (read1): Before calling index, check if the 2nd
5643 arguemnt is in ASCII range.
5644
5645 2003-04-08 Richard M. Stallman <rms@gnu.org>
5646
5647 * fileio.c (Ffile_symlink_p): Doc fix.
5648
5649 * editfns.c (Fformat): Translate positions of text properties
5650 in the format string to apply them to the result.
5651
5652 * fileio.c (Finsert_file_contents): Doc fix.
5653 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5654
5655 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
5656
5657 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5658
5659 2003-04-08 Steven Tamm <steventamm@mac.com>
5660
5661 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5662 that self-contained application finds libexec files.
5663
5664 2003-04-08 Kenichi Handa <handa@m17n.org>
5665
5666 * coding.c (code_convert_region_unwind):
5667 Set Vlast_coding_system_used to the argument.
5668 (code_convert_region): If post-read-conversion function changed
5669 the value of last-coding-sytem, keep the new value in
5670 coding->symbol so that it won't be overridden.
5671 (run_pre_post_conversion_on_str): Likewise.
5672 (coding_system_accept_latin_extra_p): New function.
5673 (find_safe_codings): Pay attention to characters registered in
5674 latin-extra-code-table.
5675
5676 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5677
5678 * Makefile.in (md5.o): Add missing dependency info.
5679
5680 2003-04-06 Richard M. Stallman <rms@gnu.org>
5681
5682 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5683
5684 * marker.c (verify_bytepos): New function.
5685
5686 * intervals.c (set_intervals_multibyte_1): When becoming
5687 multibyte, adjust right and left child sizes to a whole set of
5688 characters. If an interval gets zero total-length, delete it.
5689 If an interval consists of just its children, delete one of them.
5690
5691 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5692 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
5693
5694 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5695 All calls deleted.
5696 (lisp_malloc): Do the work here directly.
5697
5698 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5699
5700 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5701 char tables.
5702
5703 2003-04-04 Kenichi Handa <handa@m17n.org>
5704
5705 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5706 destructively change "%S" to "%s".
5707
5708 2003-04-03 Miles Bader <miles@gnu.org>
5709
5710 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5711 always set.
5712
5713 2003-04-01 Dave Love <fx@gnu.org>
5714
5715 * xfns.c (xpm_lookup_color): Grok "opaque".
5716
5717 2003-03-31 Andrew Choi <akochoi@shaw.ca>
5718
5719 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5720 parent window ID.
5721
5722 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5723
5724 * macterm.h (struct mac_output): Define x_pixels_diff and
5725 y_pixels_diff.
5726
5727 2003-03-31 Juanma Barranquero <lektu@terra.es>
5728
5729 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5730 blockinput.h and files included from it.
5731
5732 2003-03-31 Kim F. Storm <storm@cua.dk>
5733
5734 The following changes consolidates the common code related to
5735 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5736 files into frame.c.
5737
5738 * frame.c: Include blockinput.h.
5739 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5740 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5741 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5742 related vars here.
5743 (struct frame_parm_table, frame_parms): New table for describing
5744 frame parameters and their associated Q-variable.
5745 The order of the parameters corresponds to the sequence of the
5746 frame_parm_handlers table in redisplay_interface.
5747 (x_fullscreen_move, x_set_frame_parameters)
5748 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5749 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5750 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5751 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5752 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5753 Generic functions for processing of frame parameters.
5754 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5755 (display_x_get_resource, x_get_resource_string): Functions for
5756 generic access to X resources.
5757 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5758 (x_default_parameter, Fx_parse_geometry): Functions for generic
5759 access to frame parameters.
5760 (x_figure_window_size): Generic calculation of frame size.
5761 Fixed to add space needed for tool bar. Also setup size_hint_flags.
5762 (syms_of_frame): Intern and staticpro frame parameter variables.
5763 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5764 Defsubr Sx_get_resource and Sx_parse_geometry.
5765
5766 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5767 parameter related vars defined in frame.c.
5768 (EMACS_CLASS): Define here.
5769 (enum FULLSCREEN_*): Define here.
5770 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5771 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5772 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5773 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5774 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5775 (x_set_visibility, x_set_autoraise, x_set_autolower)
5776 (x_set_unsplittable, x_set_vertical_scroll_bars)
5777 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5778 (x_figure_window_size): Add prototypes.
5779
5780 * dispextern.h (frame_parm_handler): New typedef.
5781 (struct redisplay_interface): New member frame_parm_handlers.
5782 (enum resource_types): Move declaration here.
5783 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5784 (x_default_parameter): Add prototypes.
5785
5786 * window.c: Remove extern decl for frame parameter vars.
5787 (change_window_heights): New generic function;
5788 replaces x_change_window_heights. All users changed.
5789
5790 * window.h (change_window_heights): Add prototype.
5791
5792 * xfaces.c: Remove extern decl for frame parameter vars.
5793
5794 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5795 (struct w32_display_info): Fix type of xrdb member.
5796 (enum FULLSCREEN_*): Remove.
5797 Remove prototypes for generic functions (in frame.h).
5798
5799 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5800 parameters now defined in frame.h and frame.c.
5801 (Vx_resource_name): Remove. Use generic var.
5802 (enum x_frame_parms): Remove (bogus, unused enum).
5803 (check_x_display_info): Make non-static (for frame.c).
5804 (struct x_frame_parm_table, x_frame_parms): Remove.
5805 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5806 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5807 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5808 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5809 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5810 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5811 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5812 Remove. Use generic functions instead.
5813 (enum resource_types): Remove.
5814 (x_set_scroll_bar_default_width): New global function (for frame.c).
5815 (Fx_create_frame): Depend on x_figure_window_size to add space for
5816 toolbar and setup size_hint_flags.
5817 (x_frame_parm_handlers): New table for redisplay_interface.
5818 (syms_of_xfns): Don't intern/staticpro removed vars.
5819
5820 * xterm.c: Remove unnecessary extern declarations.
5821 (x_fullscreen_adjust): Remove. Use generic instead.
5822 (x_redisplay_interface): Add x_frame_parm_handlers member.
5823
5824 * w32gui.h (XrmDatabase): New (dummy) typedef.
5825
5826 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5827 (struct w32_display_info): Fix type of xrdb member.
5828 (enum FULLSCREEN_*): Remove.
5829 (x_fullscreen_adjust): Remove prototype.
5830
5831 * w32fns.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 (w32_frame_parm_handlers): New table for redisplay_interface.
5850 (syms_of_w32fns): Don't intern/staticpro removed vars.
5851
5852 * w32term.c: Remove unnecessary extern declarations.
5853 (x_fullscreen_adjust): Remove. Use generic instead.
5854 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5855
5856 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5857
5858 * macgui.h (XrmDatabase): New (dummy) typedef.
5859
5860 * macterm.h (EMACS_CLASS): Remove.
5861 (struct mac_display_info): Add xrdb member.
5862 (struct mac_output): Add want_fullscreen member.
5863
5864 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5865 parameters now defined in frame.h and frame.c.
5866 (Vx_resource_name): Remove. Use generic var.
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 (mac_frame_parm_handlers): New table for redisplay_interface.
5880 (syms_of_macfns): Don't intern/staticpro removed vars.
5881
5882 * macterm.c: Remove unnecessary extern declarations.
5883 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5884
5885 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5886 included from it (atimer.h and systime.h).
5887
5888 2003-03-30 Andreas Schwab <schwab@suse.de>
5889
5890 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5891 parameters for shift_glyphs_for_insert.
5892
5893 * macterm.c (x_redisplay_interface): Add missing entry for
5894 draw_vertical_window_border.
5895
5896 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5897
5898 * fileio.c (Fexpand_file_name): In the no-handler case, after
5899 expanding, look again for a handler and invoke it. This is needed
5900 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5901 expansion produces "/user@host:/bar/../baz" which needs to be
5902 expanded again for the finame result "/user@host:/baz".
5903
5904 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5905
5906 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5907 of area to be redrawn for better performance.
5908
5909 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5910
5911 * xterm.c (take_vertical_position_into_account): Remove.
5912 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5913 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5914 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5915 (x_set_toolkit_scroll_bar_thumb): Simplify.
5916 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5917 (XTread_socket): Remove unused var.
5918 (x_make_frame_invisible): Replace goto with else.
5919
5920 * xdisp.c (set_vertical_scroll_bar): New fun.
5921 (redisplay_window): Use it.
5922
5923 2003-03-26 Richard M. Stallman <rms@gnu.org>
5924
5925 * xdisp.c (update_tool_bar): Recompute tool bar if
5926 update_mode_lines is set. Set w->update_mode_line
5927 only if the tool bar contents actually change.
5928 (update_menu_bar): Undo previous change.
5929
5930 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5931
5932 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5933 (xg_frame_set_char_size): Calculate scroll bar width before frame
5934 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5935 (xg_separator_p): Check for all documented separator types.
5936 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5937 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5938
5939 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5940 so tool bar gets updated.
5941
5942 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5943
5944 * data.c (store_symval_forwarding): Re-instate part of the code
5945 that was deleted with too much enthusiasm.
5946
5947 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5948
5949 * data.c (store_symval_forwarding): Delete special read-only
5950 hack for type == -1, since we now use ->constant instead.
5951 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5952
5953 * buffer.c (overlays_in): Declare static.
5954 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5955 `constant' field rather than the variable's `type' field.
5956
5957 2003-03-24 Andrew Choi <akochoi@shaw.ca>
5958
5959 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5960
5961 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5962
5963 * fns.c [MAC_OSX]: Do not redefine vector.
5964
5965 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5966
5967 * macgui.h: Remove definition of No_Cursor.
5968
5969 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
5970
5971 * xdisp.c: Define No_Cursor.
5972 (x_write_glyphs, notice_overwritten_cursor)
5973 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5974 (note_mouse_highlight): Remove Mac-specific code.
5975 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
5976
5977 2003-03-24 John Paul Wallington <jpw@gnu.org>
5978
5979 * xdisp.c (redisplay_window): If mini window's buffer is not
5980 empty, then redisplay it like other windows.
5981
5982 2003-03-23 Kim F. Storm <storm@cua.dk>
5983
5984 * w32term.c (w32_draw_window_cursor): Fix last change.
5985
5986 2003-03-23 Kenichi Handa <handa@m17n.org>
5987
5988 * alloc.c (make_string_from_bytes, make_specified_string):
5989 Add `const' for the arg CONTENTS.
5990
5991 * lisp.h (make_string_from_bytes, make_specified_string):
5992 Prototypes adjusted.
5993
5994 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5995
5996 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
5997
5998 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5999 (XG_SB_RANGE): New define.
6000
6001 * gtkutil.c (xg_fixed_handle_expose): New function.
6002 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6003 expose events.
6004 (xg_update_scrollbar_pos): Take two more arguments, left and width
6005 of scroll bar including borders.
6006 Clear left and right part outside scroll bar separately as some
6007 themes have bars that are not an even number of pixels.
6008 Don't set reallocate_redraws, don't call
6009 gdk_window_process_all_updates.
6010 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6011 so no need to change it. Calculate size and value with XG_SB_RANGE.
6012
6013 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6014 Pass left and width of scroll bar including borders to
6015 xg_update_scrollbar_pos.
6016
6017 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6018
6019 * Makefile.in: Make sure space precedes end-of-line backslashes.
6020
6021 2003-03-22 Kim F. Storm <storm@cua.dk>
6022
6023 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6024 Add generic versions here. Remove system specific versions
6025 defined elsewhere.
6026
6027 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6028 Add prototypes.
6029
6030 * xterm.h (STORE_NATIVE_RECT): New macro.
6031
6032 2003-03-21 Kim F. Storm <storm@cua.dk>
6033
6034 * xdisp.c (get_glyph_string_clip_rect):
6035 Use FRAME_INTERNAL_BORDER_WIDTH.
6036
6037 * dispextern.h (struct redisplay_interface): Add active_p
6038 argument to draw_window_cursor member. All uses changed.
6039
6040 2003-03-21 Kim F. Storm <storm@cua.dk>
6041
6042 The following changes consolidate code related to writing and
6043 inserting glyphs, exposing frame, the tool bar, the mouse face,
6044 the output cursor, and help echo from xterm.c, w32term.c and
6045 macterm.c into xdisp.c. It also generalizes the use of the
6046 window_part enum instead of using numeric values throughout.
6047
6048 * xdisp.c: Consolidate gui-independent code here.
6049 Include keymap.h.
6050 (Qhelp_echo): Import.
6051 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6052 (help_echo_string, help_echo_window, help_echo_object)
6053 (previous_help_echo_string, help_echo_pos): Declare here.
6054 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6055 (estimate_mode_line_height): Define here. Handle windowing
6056 systems directly (without using estimate_mode_line_height_hook).
6057 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6058 (update_window_cursor, update_cursor_in_window_tree)
6059 (fast_find_position, fast_find_string_pos)
6060 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6061 (expose_area, expose_line, expose_overlaps, expose_window)
6062 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6063 declared static as they are only used locally in xdisp.c.
6064 (draw_glyphs): Rename from x_draw_glyphs and make static.
6065 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6066 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6067 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
6068 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
6069 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6070 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6071 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6072 (note_mouse_highlight, x_clear_window_mouse_face)
6073 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6074 (x_intersect_rectangles): New generic functions for use by xdisp.c
6075 and GUI front-ends.
6076 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6077 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6078
6079 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6080 (NativeRectangle): Generic typedef for rectangle type.
6081 (enum window_part): Move here from window.c.
6082 (struct redisplay_interface): New members flush_display_optional,
6083 define_frame_cursor, clear_frame_area, draw_window_cursor,
6084 draw_vertical_window_border, shift_glyphs_for_insert.
6085 Rename member clear_mouse_face to clear_window_mouse_face.
6086 (estimate_mode_line_height_hook): Remove hook.
6087 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6088 (tool_bar_item_info): Remove prototype.
6089 (help_echo_string, help_echo_window, help_echo_object)
6090 (previous_help_echo_string, help_echo_pos)
6091 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6092 (x_stretch_cursor_p, output_cursor): Declare extern.
6093 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6094 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6095 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6096 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6097 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6098 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6099 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6100 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6101 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6102 Add prototypes.
6103 (mode_line_string, marginal_area_string): Fix prototypes.
6104
6105 * window.c (enum window_part): Move to dispextern.h.
6106 (coordinates_in_window): Use enum window_part member names
6107 instead of numbers to describe return value.
6108 (struct check_window_data): Change part member to window_part.
6109 (check_window_containing): Return window_part unaltered.
6110 (window_from_coordinates): Change part arg from int to enum
6111 window_part. Allow part arg to be null. All users changed.
6112
6113 * window.h (window_from_coordinates): Fix prototype.
6114
6115 * term.c (estimate_mode_line_height): Move to xdisp.c.
6116
6117 * keyboard.c (make_lispy_event): Use enum window_part.
6118
6119 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6120 window_part instead of int in arg list. Users changed.
6121
6122 * xterm.h (No_Cursor): Declare as None for X.
6123 (struct mac_output): Replace member cross_cursor by hand_cursor.
6124
6125 * xterm.c: Remove consolidated defines and code.
6126 (BETWEEN): Remove unused macro.
6127 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6128 (x_define_frame_cursor, x_clear_frame_area)
6129 (x_draw_window_cursor): New X-specific functions for RIF.
6130 (x_redisplay_interface): Add new members.
6131
6132 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6133
6134 * w32term.h (struct w32_output): Remove cross_cursor member.
6135
6136 * w32term.c: Remove consolidated defines and code.
6137 (BETWEEN): Remove unused macro.
6138 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6139 (w32_define_frame_cursor, w32_clear_frame_area)
6140 (w32_draw_window_cursor): New W32-specific functions for RIF.
6141 (w32_redisplay_interface): Add new members.
6142
6143 * w32gui.h (No_Cursor): Define as 0 for W32.
6144 (XRectangle): Add X compatible rectangle type.
6145 (NativeRectangle): Declare as RECT for W32.
6146 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6147
6148 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6149
6150 * w32console.c: Remove consolidated defines and code.
6151
6152 * msdos.h (Display_Info): Add generic typedef.
6153
6154 * msdos.c: Remove consolidated defines and code.
6155 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6156
6157 * macterm.h (struct mac_output): Replace member cross_cursor by
6158 hand_cursor.
6159 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6160
6161 * macterm.c: Remove consolidated defines and code.
6162 (BETWEEN): Remove unused macro.
6163 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6164 (mac_define_frame_cursor, mac_clear_frame_area)
6165 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6166 (x_redisplay_interface): Add new members.
6167
6168 * macgui.h (No_Cursor): Define as 0 for Mac.
6169 (XRectangle): Add X compatible rectangle type.
6170 (NativeRectangle): Declare as Rect for Mac.
6171 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6172
6173 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6174 (x_set_cursor_color): Use x_display_and_set_cursor.
6175
6176 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6177 included from it. Add dependency on keymap.h.
6178
6179 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6180
6181 2003-03-21 Kenichi Handa <handa@m17n.org>
6182
6183 * fileio.c (Fexpand_file_name): Fix previous change.
6184
6185 2003-03-19 Kenichi Handa <handa@m17n.org>
6186
6187 * fileio.c (Ffile_name_directory): Reconstruct file name by
6188 make_specified_string.
6189 (Ffile_name_nondirectory, Ffile_name_as_directory)
6190 (Fdirectory_file_name, Fexpand_file_name)
6191 (Fsubstitute_in_file_name): Likewise.
6192 (Fread_file_name): Compare decoded homedir with DIR and
6193 DEFAULT_FILENAME.
6194
6195 * alloc.c (make_specified_string): If NCHARS is negative, count
6196 the number of characters.
6197
6198 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6199
6200 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6201 all widgets.
6202
6203 * gtkutil.h: Removed xg_ignore_next_thumb.
6204
6205 2003-03-18 Kenichi Handa <handa@m17n.org>
6206
6207 * coding.c (Vchar_coding_system_table): Remove this variable.
6208 (Vcoding_system_safe_chars): New variable.
6209 (intersection): Remove this function.
6210 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6211 all codings in SAFE_CODINGS.
6212 (Ffind_coding_systems_region_internal): Adjust for the change of
6213 find_safe_codings. Get generic coding systems from
6214 Vcoding_system_safe_chars.
6215 (Fdefine_coding_system_internal): New function.
6216 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6217 Initialize and staticpro Vcoding_system_safe_chars.
6218
6219 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6220
6221 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6222 equal old values before updating.
6223
6224 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6225
6226 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6227
6228 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6229
6230 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6231 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6232 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6233 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6234 (xg_create_scroll_bar): Pass bar to button event callback.
6235 (xg_find_top_left_in_fixed): New function.
6236 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6237 whole scroll bar area. Get old position with
6238 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6239 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6240 dragging is in progress. Calculate whole as for Motif.
6241 Remove code that saved last values. Call gtk_range functions to
6242 set scroll bar sizes.
6243
6244 * gtkutil.h: Removed xg_ignore_next_thumb.
6245
6246 2003-03-17 Juanma Barranquero <lektu@terra.es>
6247
6248 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6249 and files included from it.
6250
6251 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6252
6253 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6254 multiple occurrences of the same keymap under different prefixes.
6255 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6256
6257 2003-03-16 Jason Rumney <jasonr@gnu.org>
6258
6259 * w32gui.h: Use HDC for Display.
6260
6261 * w32term.c (w32_encode_char): Prevent double-byte chars from
6262 crashing Emacs.
6263
6264 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6265 as binary.
6266
6267 2003-03-16 Juanma Barranquero <lektu@terra.es>
6268
6269 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6270
6271 2003-03-16 Kim F. Storm <storm@cua.dk>
6272
6273 The following changes consolidate some of the gui-independent
6274 parts of the processing and drawing of "glyph strings" from
6275 xterm.c, w32term.c, and macterm.c into xdisp.c.
6276
6277 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6278 21 bits (this reduces number of faces from 4M to 2M).
6279 Replace W32 specific w32_font_type member (2 bits) by generic
6280 font_type member (3 bits) for portability.
6281 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6282 (enum draw_glyphs_face): Define here.
6283 (struct glyph_string): Define here. Merge W32 and X versions.
6284 (struct redisplay_interface): New members per_char_metric,
6285 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6286 (VCENTER_BASELINE_OFFSET): Define here.
6287 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6288 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6289
6290 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6291 (dump_glyph_string): Moved here.
6292 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6293 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6294 (fill_composite_glyph_string, fill_glyph_string)
6295 (fill_image_glyph_string, fill_stretch_glyph_string)
6296 (left_overwritten, left_overwriting, right_overwritten)
6297 (right_overwriting, get_char_face_and_encoding)
6298 (set_glyph_string_background_width, compute_overhangs_and_x)
6299 (append_glyph, append_composite_glyph, produce_image_glyph)
6300 (take_vertical_position_into_account, append_stretch_glyph)
6301 (produce_stretch_glyph): New generic functions (based on X version).
6302 Call platform specific functions through rif.
6303 (INIT_GLYPH_STRING): New macro, hides W32 details.
6304 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6305 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6306 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6307 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6308 (notice_overwritten_cursor):
6309 Generic functions exported to platform modules. Users changed.
6310
6311 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6312 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6313 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6314 New macros for consolidated code.
6315
6316 * xterm.c: Remove consolidated defines and code.
6317 (x_per_char_metric, x_encode_char)
6318 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6319 (x_redisplay_interface): Add new members.
6320
6321 * w32gui.h (Display): Add dummy typedef for consolidation.
6322 (XChar2b): Define alias for wchar_t for consolidation.
6323 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6324
6325 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6326 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6327 New macros for consolidation.
6328
6329 * w32term.c: Remove consolidated defines and code.
6330 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6331 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6332 (w32_per_char_metric): Change font_type arg to int for RIF.
6333 (w32_encode_char): Return int according to RIF requirements.
6334 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6335 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6336 x_get_glyph_overhangs.
6337 (w32_redisplay_interface): Add new members.
6338
6339 * macgui.h (XChar2b): Move typedef here for consolidation.
6340 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6341
6342 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6343 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6344 consolidation.
6345
6346 * macterm.c: Remove consolidated defines and code.
6347 (mac_per_char_metric): New function for RIF.
6348 (mac_encode_char): Adapt to new RIF requirements.
6349 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6350 (x_redisplay_interface): Add new members.
6351
6352 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6353
6354 * keymap.c (Vmenu_events): New var.
6355 (syms_of_keymap): Initialize it.
6356 (where_is_internal): Check more carefully what is a menu event.
6357
6358 2003-03-14 Richard M. Stallman <rms@gnu.org>
6359
6360 * lread.c (read1): After #!, exit loop on eof.
6361
6362 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6363
6364 * gtkutil.h: Add declaration for xg_frame_cleared.
6365
6366 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6367
6368 * gtkutil.c (struct xg_last_sb_pos): New structure.
6369 (handle_fixed_child): New function.
6370 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6371 and force a redraw on them.
6372 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6373 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6374 so we can avoid unneeded redraws.
6375 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6376 and force a redraw on the scroll bar.
6377 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6378 if xg_last_sb_pos shows the positions are up to date.
6379 (xg_frame_cleared): New function.
6380
6381 2003-03-13 Kenichi Handa <handa@m17n.org>
6382
6383 * coding.c (Fdetect_coding_region): Fix docstring.
6384 (Fdetect_coding_string): Fix docstring.
6385
6386 2003-03-13 Andreas Schwab <schwab@suse.de>
6387
6388 * gtkutil.c: Add prototype for create_menus.
6389
6390 * data.c (long_to_cons): Fix type of top.
6391
6392 * xselect.c (selection_data_to_lisp_data): Use int instead of
6393 long for an integer of size 4.
6394
6395 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6396 (xg_tool_bar_help_callback): Likewise.
6397
6398 2003-03-12 Andreas Schwab <schwab@suse.de>
6399
6400 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6401
6402 2003-03-12 Kim F. Storm <storm@cua.dk>
6403
6404 The following changes consolidate the fringe handling from
6405 xterm.c, w32term.c, and macterm.c into xdisp.c.
6406
6407 * xdisp.c: Consolidate fringe handling code here.
6408 (left_bits, right_bits, continued_bits, continuation_bits)
6409 (ov_bits, zv_bits): Define fringe bitmaps.
6410 (fringe_bitmaps): New array holding fringe bitmaps.
6411 (draw_fringe_bitmap): Draw a specific bitmap; call display
6412 specific drawing routine via rif->draw_fringe_bitmap.
6413 (draw_row_fringe_bitmaps): Generic replacement for
6414 x_draw_row_fringe_bitmaps; all callers changed.
6415 (compute_fringe_widths): Generic replacement for
6416 x_compute_fringe_widths; all callers changed.
6417
6418 * dispextern.h (enum fringe_bitmap_type): Define here.
6419 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6420 (fringe_bitmaps): Declare extern.
6421 (struct redisplay_interface): New member draw_fringe_bitmap.
6422 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6423
6424 * xterm.c: Remove generic fringe code.
6425 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6426 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6427
6428 * w32term.c: Remove generic fringe code.
6429 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6430 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6431
6432 * macterm.c: Remove generic fringe code.
6433 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6434 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6435
6436 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6437
6438 * print.c (Fprin1_to_string): Return unibyte string if possible.
6439
6440 2003-03-09 David Kastrup <dak@gnu.org>
6441
6442 * process.c (read_process_output): We have allocated enough space
6443 for readmax and carryover, so actually use the alloted space.
6444
6445 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6446
6447 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6448 toolkit scrollbar click.
6449
6450 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6451 for USE_GTK.
6452 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6453 also.
6454 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6455 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6456
6457 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6458
6459 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6460 (xg_tool_bar_item_expose_callback): New function.
6461 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6462 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6463 on the tool bar widget.
6464 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6465 to expose on the tool bar item widgets.
6466
6467 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6468
6469 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6470 struct image* when deciding to update (struct image* may have been
6471 deleted from the image cache).
6472
6473 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6474 the event isn't for a frame (i.e. for dialogs).
6475
6476 2003-03-07 Kenichi Handa <handa@m17n.org>
6477
6478 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6479 composition components reaches the limit, terminate composing.
6480 (COMPOSITION_OK): New macro.
6481 (detect_coding_iso2022): Use it if an escape sequence for
6482 composition is found.
6483 (coding_restore_composition): Adjust the number of composition
6484 components if it is not sane.
6485
6486 2003-03-06 Juanma Barranquero <lektu@terra.es>
6487
6488 * w32term.h (struct w32_display_info): Add xrdb member to support
6489 passing resources via -xrm on Windows.
6490
6491 * w32term.c (w32_make_rdb): New function.
6492 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6493 struct. Delete leftover code.
6494
6495 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6496 for resources passed on the command line.
6497
6498 * w32reg.c (w32_get_rdb_resource): New function.
6499 (x_get_string_resource): Use it, so resources passed with -xrm
6500 supercede the ones in the registry.
6501
6502 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6503
6504 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6505 instead of x_top_window_to_frame.
6506
6507 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6508
6509 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6510 when restarting Emacs.
6511
6512 2003-03-03 Richard M. Stallman <rms@gnu.org>
6513
6514 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6515 to run kill-buffer-query-functions.
6516 (Qkill_buffer_query_functions): New var.
6517 (syms_of_buffer): Init and staticpro it.
6518
6519 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6520
6521 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6522
6523 2003-02-25 Kim F. Storm <storm@cua.dk>
6524
6525 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6526 If centering point failed to make whole line visible and vscroll
6527 is non-zero, disable vscroll and try centering point again.
6528
6529 * lread.c (read1): Accept `single space' syntax like (? x).
6530
6531 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6532
6533 * keyboard.c (cancel_hourglass_unwind): Surround with
6534 #ifdef HAVE_X_WINDOWS
6535
6536 2003-02-25 Kenichi Handa <handa@m17n.org>
6537
6538 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6539 process only when "subprocesses" is defined.
6540
6541 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6542
6543 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6544
6545 2003-02-24 Juanma Barranquero <lektu@terra.es>
6546
6547 * callint.c (fix_command): Declare as static void and move before
6548 Fcall_interactively.
6549
6550 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6551 (syms_of_xdisp): Don't initialize Qwhen.
6552
6553 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6554
6555 * keyboard.c (cancel_hourglass_unwind): New function.
6556 (command_loop_1): Cancel hourglass with unwind-protect.
6557
6558 2003-02-23 Richard M. Stallman <rms@gnu.org>
6559
6560 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6561 Detect (when ... (region-beginning)) etc.
6562 (Fcall_interactively): Call fix_command.
6563 (Qif, Qwhen): New variables.
6564 (syms_of_callint): Init and staticpro them.
6565
6566 * regex.c (print_partial_compiled_pattern): Output to stderr.
6567
6568 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6569
6570 * dired.c (directory_files_internal): Don't expand directory.
6571 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6572 instead. From Lars Hansen <larsh@math.ku.dk>.
6573
6574 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6575
6576 * fns.c (string_to_multibyte): Remove unused var i.
6577 (Flanginfo): Fix int/Lisp_Object mixup.
6578 (void_call2): New fun.
6579 (Fmap_char_table): Use it in place of call2.
6580
6581 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6582
6583 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6584
6585 * keymap.c (copy_keymap_1): Make it static.
6586
6587 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6588
6589 2003-02-22 David Ponce <david@dponce.com>
6590
6591 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6592
6593 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6594
6595 * process.h: Removed subtty field from struct Lisp_Process.
6596
6597 * process.c (create_process): Remove setting of subtty.
6598 (emacs_get_tty_pgrp): New function.
6599 (Fprocess_running_child_p, process_send_signal):
6600 Call emacs_get_tty_pgrp instead of ioctl.
6601 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6602
6603 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6604
6605 * keymap.c (Fdefine_key): Doc fix.
6606
6607 2003-02-21 Juanma Barranquero <lektu@terra.es>
6608
6609 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6610
6611 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6612 POLLING_PROBLEM_IN_SELECT.
6613
6614 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6615 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6616
6617 * s/hpux10-20.h: New file.
6618
6619 * process.c (wait_reading_process_input):
6620 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
6621
6622 2003-02-20 Kenichi Handa <handa@m17n.org>
6623
6624 * fontset.c (check_fontset_name): If NAME is nil, return the
6625 default fontset.
6626 (override_font_info): New function.
6627 (Fset_fontset_font): Document that NAME nil means the default fontset.
6628 (Ffontset_info): If FONTSET is not the default fontset, merge
6629 FONTSET onto the copy of the default fontset, and work on that
6630 copy. Document that NAME nil means the default fontset.
6631 (Ffontset_font): Document that NAME nil means the default fontset.
6632
6633 * process.c (setup_process_coding_systems): If the process's
6634 in/out descriptor is -1, do nothing.
6635
6636 2003-02-19 Andreas Schwab <schwab@suse.de>
6637
6638 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6639 Add prototypes.
6640
6641 2003-02-19 Kenichi Handa <handa@m17n.org>
6642
6643 * xfaces.c (try_alternative_families): Try all scalable fonts if
6644 Vscalable_fonts_allowed is not Qt.
6645
6646 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6647
6648 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6649
6650 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6651
6652 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6653 names.
6654
6655 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
6656 (sorted_font_list): Move allocation of struct font_name to
6657 x_face_list_fonts.
6658 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6659 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6660
6661 2003-02-18 Kim F. Storm <storm@cua.dk>
6662
6663 * lread.c (read1): Fix last change.
6664 "`" is not always special. Allow "?" after a character constant.
6665
6666 2003-02-18 Andrew Choi <akochoi@shaw.ca>
6667
6668 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6669
6670 2003-02-18 Andreas Schwab <schwab@suse.de>
6671
6672 * window.c (window_scroll_pixel_based): Move outside a
6673 multi-glyph character before setting new window start.
6674
6675 * xdisp.c (in_display_vector_p): New function.
6676 * dispextern.h (in_display_vector_p): Declare.
6677
6678 2003-02-18 Kim F. Storm <storm@cua.dk>
6679
6680 * lread.c (read1): Fix and relax read syntax.
6681 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6682 Only recognize "," after dotted-pair dot if inside backquote.
6683 Never include "`" or "," (inside backquote) in a symbol.
6684 Allow dotted-pair dot after a character constant.
6685 Allow "`" and "," (inside backquote) after a character constant.
6686
6687 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6688
6689 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6690 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6691 icons. Set name of tool bar to emacs-toolbar.
6692 (update_frame_tool_bar): Connect expose event to
6693 xg_tool_bar_expose_callback.
6694
6695 2003-02-17 Richard M. Stallman <rms@gnu.org>
6696
6697 * keyboard.c (this_command_key_count_reset): New variable.
6698 Initiatize to 0 where this_command_key_count is set.
6699 (read_char): Save and restore this_command_key_count_reset
6700 around input method code.
6701 (read_char): If this_command_key_count_reset, echo reread commands.
6702 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6703
6704 2003-02-17 Kenichi Handa <handa@m17n.org>
6705
6706 * fns.c (string_to_multibyte): Always return a multibyte string.
6707
6708 2003-02-16 Jason Rumney <jasonr@gnu.org>
6709
6710 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6711 Negative max_fonts parameter means list all.
6712
6713 2003-02-14 Dave Love <fx@gnu.org>
6714
6715 * fns.c (Flanginfo): Doc fix.
6716
6717 2003-02-13 Kim F. Storm <storm@cua.dk>
6718
6719 * lread.c (read_escape): Interpret \s as a SPACE character, except
6720 for \s-X in a character constant which still is the super modifier.
6721 (read1): Signal an `invalid read syntax' error if a character
6722 constant is immediately followed by a digit or symbol character.
6723
6724 * search.c (Fmatch_data): Doc fix. Explicitly state that
6725 match-data is undefined if last search failed.
6726
6727 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6728 All uses changed.
6729
6730 2003-02-12 Juanma Barranquero <lektu@terra.es>
6731
6732 * eval.c (Fdefmacro): Fix typo.
6733
6734 2003-02-12 Kim F. Storm <storm@cua.dk>
6735
6736 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6737 macro is a string, convert meta modifiers in string when copying
6738 the string into a vector.
6739
6740 2003-02-11 Kim F. Storm <storm@cua.dk>
6741
6742 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6743
6744 2003-02-11 Kenichi Handa <handa@m17n.org>
6745
6746 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6747
6748 2003-02-10 Kim F. Storm <storm@cua.dk>
6749
6750 * process.c: Doc fixes.
6751 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6752
6753 2003-02-10 Kenichi Handa <handa@m17n.org>
6754
6755 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6756
6757 * process.c (QCfilter_multibyte): New variable.
6758 (setup_process_coding_systems): New function.
6759 (Fset_process_buffer, Fset_process_filter):
6760 Call setup_process_coding_systems.
6761 (Fstart_process): Initialize the member `filter_multibyte' of
6762 struct Lisp_Process.
6763 (create_process): Call setup_process_coding_systems.
6764 (Fmake_network_process): New keyward `:filter-multibyte'.
6765 Initialize the member `filter_multibyte' of struct Lisp_Process.
6766 Call setup_process_coding_systems.
6767 (server_accept_connection): Call setup_process_coding_systems.
6768 (read_process_output): If the process has a filter, decide the
6769 multibyteness of a string to given to the filter by
6770 `filter_multibyte' member of the process. If the process doesn't
6771 have a filter and the result of conversion is unibyte, use
6772 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6773 multibyte form.
6774 (Fset_process_coding_system): Call setup_process_coding_systems.
6775 (Fset_process_filter_multibyte): New function.
6776 (Fprocess_filter_multibyte_p): New function.
6777 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6778 Defsubr Sset_process_filter_multibyte and
6779 Sprocess_filter_multibyte_p.
6780
6781 * process.h (struct Lisp_Process): New member filter_multibyte.
6782
6783 * lisp.h (setup_process_coding_systems): Add prototype.
6784
6785 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6786 process, update coding systems for the process.
6787
6788 2003-02-09 Kenichi Handa <handa@m17n.org>
6789
6790 * fns.c (string_to_multibyte): New function.
6791 (Fstring_to_multibyte): New function.
6792 (syms_of_fns): Defsubr it.
6793
6794 2003-02-08 Andreas Schwab <schwab@suse.de>
6795
6796 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6797 instead of the substitution.
6798
6799 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6800
6801 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6802
6803 * xmenu.c (menu_position_func): Adjust menu popup position so that
6804 the menu is fully visible.
6805
6806 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6807
6808 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
6809 (x_make_frame_invisible, x_wm_set_icon_position):
6810 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
6811
6812 * xfns.c (x_set_name, x_set_title): Ditto.
6813
6814 2003-02-04 Richard M. Stallman <rms@gnu.org>
6815
6816 * keyboard.c (echo_now): Update before_command_echo_length.
6817 (Freset_this_command_lengths): Reset this_command_key_count etc.
6818 immediately rather than arranging to do it later.
6819 (before_command_key_count_1, before_command_echo_length_1)
6820 (before_command_restore_flag): Vars deleted.
6821 (add_command_key): Don't handle before_command_restore_flag.
6822 (read_char, record_menu_key): Don't update before_command_key_count or
6823 before_command_echo_length.
6824 (read_char): Don't handle before_command_restore_flag.
6825
6826 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6827 in direct-output clauses if it wouldn't be called in the ordinary case.
6828
6829 2003-02-04 Kim F. Storm <storm@cua.dk>
6830
6831 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6832
6833 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6834
6835 * gtkutil.c (remove_from_container): Copying list is not needed.
6836 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6837 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6838 on list returned from gtk_container_get_children to avoid memory leak.
6839
6840 2003-02-01 Jason Rumney <jasonr@gnu.org>
6841
6842 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6843 local malloc.
6844 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6845 definitions in xpm.h.
6846 (init_xpm_functions): New function.
6847 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
6848 (init_external_image_libraries): Try to load libXpm.dll.
6849
6850 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6851 timestamp.
6852
6853 2003-01-31 Dave Love <fx@gnu.org>
6854
6855 * syntax.c (Fskip_chars_forward)
6856 (open-paren-in-column-0-is-defun-start): Doc fix.
6857
6858 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6859
6860 * fileio.c: Support // at start of name for Cygwin (just added proper
6861 preprocessor tests).
6862
6863 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6864
6865 * Makefile.in: Use @EXEEXT@ for Cygwin.
6866
6867 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6868
6869 * s/cygwin.h: Added for Cygwin port.
6870
6871 2003-01-31 Juanma Barranquero <lektu@terra.es>
6872
6873 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6874 when including gif_lib.h.
6875 (init_gif_functions, init_tiff_functions): New functions.
6876 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6877 Windows. Disable color table lookups. Call library functions
6878 through pointers determined at runtime.
6879 (init_external_image_libraries): Try to load libungif.dll and
6880 libtiff.dll.
6881
6882 2003-01-31 Kenichi Handa <handa@m17n.org>
6883
6884 * xdisp.c (SKIP_GLYPHS): New macro.
6885 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
6886
6887 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6888
6889 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
6890
6891 2003-01-30 Dave Love <fx@gnu.org>
6892
6893 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6894 (Fgarbage_collect): Use them.
6895 (init_alloc, syms_of_alloc): Set them up.
6896
6897 2003-01-30 Juanma Barranquero <lektu@terra.es>
6898
6899 * w32fns.c (init_external_image_libraries): Add missing operator.
6900
6901 2003-01-29 Jason Rumney <jasonr@gnu.org>
6902
6903 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6904 an alternative name for jpeg.dll.
6905
6906 2003-01-29 Kenichi Handa <handa@m17n.org>
6907
6908 * xdisp.c (set_cursor_from_row): Pay attention to string display
6909 properties.
6910
6911 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6912
6913 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6914 <escape>.
6915 (keycode_to_xkeysym_table): Reformat and add more comments.
6916 (XTread_socket): Drop special case for backspace.
6917
6918 2003-01-28 Andrew Choi <akochoi@shaw.ca>
6919
6920 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6921 values in old-style RGB specs.
6922
6923 2003-01-27 Juanma Barranquero <lektu@terra.es>
6924
6925 * w32fns.c (init_external_image_libraries): Try alternate names for the
6926 jpeg dll.
6927
6928 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6929
6930 * gtkutil.c (create_dialog, xg_separator_p)
6931 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6932 before calling strcmp or strlen.
6933
6934 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6935
6936 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6937 and handle image load failure.
6938
6939 2003-01-26 Jason Rumney <jasonr@gnu.org>
6940
6941 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6942 New functions.
6943 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6944 Disable color table lookups. Call jpeg library functions
6945 through pointers determined at runtime.
6946 (init_external_image_libraries): Try to load jpeg.dll.
6947
6948 2003-01-25 Richard M. Stallman <rms@gnu.org>
6949
6950 * lisp.h: Declare format2 instead of format1.
6951
6952 * fileio.c (barf_or_query_if_file_exists):
6953 Call format2 instead of format1.
6954
6955 * editfns.c (format2): New function, replaces format1
6956 but takes exactly two Lisp Objects as format args.
6957
6958 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6959
6960 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6961
6962 * xterm.h: Change to return value of x_dispatch_event to int.
6963
6964 * xterm.c (x_filter_event): New function.
6965 (event_handler_gdk, XTread_socket): Call x_filter_event.
6966 (x_dispatch_event): Change to return value of finish.
6967 (event_handler_gdk): Use return value from x_dispatch_event.
6968
6969 * xfns.c (x_window): Call create_frame_xic for GTK version to
6970 initialize input methods.
6971
6972 * gtkutil.h: Add (void) prototypes.
6973
6974 * gtkutil.c (create_menus): Remove code that puts the help menu to
6975 the right.
6976
6977 2003-01-25 Jason Rumney <jasonr@gnu.org>
6978
6979 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6980 [HAVE_PNG]: Sync with xfns.c version.
6981 (png_load): Adjust colors for Windows. Use Windows
6982 bitmaps. Disable color table lookups.
6983 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6984 (init_png_functions): New function.
6985 (png_read_from_memory, png_load): Call png library functions
6986 through pointers determined at runtime.
6987 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6988 (init_external_image_libraries): New function.
6989 (init_xfns): Call it.
6990
6991 2003-01-24 Andreas Schwab <schwab@suse.de>
6992
6993 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6994
6995 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6996
6997 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6998 of static initializer.
6999
7000 2003-01-24 Dave Love <fx@gnu.org>
7001
7002 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7003 architectures.
7004
7005 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7006 Use __alignof__.
7007
7008 2003-01-24 Kenichi Handa <handa@m17n.org>
7009
7010 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
7011 It it is nonzero, don't pretend that an invisible area doesn't exist.
7012 (command_loop_1): Call adjust_point_for_property with proper
7013 second arg.
7014
7015 2003-01-22 Jason Rumney <jasonr@gnu.org>
7016
7017 Sync changes with xterm.c and xfns.c.
7018
7019 * w32term.c (x_draw_glyph_string_foreground)
7020 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7021
7022 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7023 phys_cursor's hpos is overwritten. This is still not completely
7024 correct, as it doesn't really make sense to use hpos at all to
7025 get the cursor glyph (as that is relative to the width of the
7026 characters on the line, which may have changed during the update).
7027
7028 * w32term.c (notice_overwritten_cursor): Handle the special case
7029 of the cursor being in the first blank non-text line at the
7030 end of a window.
7031
7032 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7033 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7034 Compute from the x position returned by x_draw_glyphs.
7035
7036 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7037 except for NO_CURSOR and system caret, to make phys_cursor_width
7038 contain what its name suggests.
7039 (notice_overwritten_cursor): Consider the cursor image erased if
7040 the output area intersects the cursor image in y-direction.
7041
7042 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7043 note_mode_line_highlight and extend.
7044
7045 * w32term.c (last_window): New variable.
7046 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7047 (note_mouse_movement): Remove reimplemented code in #if 0.
7048
7049 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7050 not update_mode_lines, and always set it to 1.
7051
7052 2003-01-21 Jason Rumney <jasonr@gnu.org>
7053
7054 * w32fns.c (IDC_HAND): Define it if system headers don't.
7055
7056 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7057
7058 * w32term.h (struct w32_output): New member hand_cursor.
7059 (WM_EMACS_SETCURSOR): New message definition.
7060
7061 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7062 function w32_define_cursor.
7063 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7064 position, change member name output_data.x to output_data.w32 and
7065 add function w32_define_cursor.
7066 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7067 and change member name output_data.x to output_data.w32.
7068 (w32_initialize_display_info):
7069 Setup dpyinfo->vertical_scroll_bar_cursor.
7070
7071 * w32fns.c (Vx_hand_shape): New variable.
7072 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7073 WM_EMACS_SETCURSOR.
7074 (x-create-frame): Setup Cursor types.
7075
7076 2003-01-21 David Ponce <david@dponce.com>
7077
7078 * w32term.c (w32_encode_char): For DIM=1 charset, set
7079 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
7080 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7081 2002-09-30.)
7082 (w32_draw_relief_rect): Declare all args.
7083 (w32_define_cursor): New.
7084
7085 * w32fns.c (w32_load_cursor): New function.
7086 (w32_init_class): Use it.
7087 (x_put_x_image): Declare all args.
7088
7089 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7090
7091 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7092
7093 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7094
7095 * gtkutil.c: Must include stdio.h before termhooks.h
7096
7097 2003-01-21 Dave Love <fx@gnu.org>
7098
7099 * alloc.c (Fgc_status): Print zombie list.
7100 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7101 Fix assignment of zombies.
7102 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7103 Don't take car of non-cons.
7104
7105 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7106
7107 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7108
7109 2003-01-20 David Ponce <david@dponce.com>
7110
7111 * w32menu.c (digest_single_submenu): Declare all args.
7112
7113 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7114 changes in xmenu.c:
7115
7116 (parse_single_submenu): Use individual keymap's prompt
7117 string as pane name, if there is one.
7118 (set_frame_menubar): Save menu_items_n_panes from each call to
7119 parse_single_submenu and use it when calling digest_single_submenu.
7120
7121 2003-01-20 Steven Tamm <steventamm@mac.com>
7122
7123 * macterm.c (XTread_socket): Checks for valid, visible window
7124 before sending a scroll-wheel event.
7125
7126 2003-01-20 Richard M. Stallman <rms@gnu.org>
7127
7128 * xdisp.c (redisplay_window): If mini window's buffer is not
7129 a minibuffer, then redisplay it like other windows.
7130
7131 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7132
7133 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7134 external tool bar before setting tool bar height.
7135
7136 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7137
7138 * xterm.c (handle_one_xevent): Surround popup_activated
7139 with #ifdef:s for non-toolkit version.
7140
7141 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7142 (gtkutil.o): New file.
7143 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7144 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7145
7146 * gtkutil.c: New file for GTK version.
7147
7148 * gtkutil.h: New file for GTK version.
7149
7150 * xterm.h: Add xt_or_gtk_widget.
7151 Include gtk files for USE_GTK.
7152 (struct x_output): Add toolbar_height.
7153 (struct x_output): Add GTK widgets and Gdk size_hints.
7154 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7155 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7156 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7157
7158 * xterm.c: Include gtkutil.h for USE_GTK.
7159 Declare extern void free_frame_menubar for USE_GTK.
7160 (note_mouse_highlight): Check popup_activated for USE_GTK.
7161 (xt_action_hook): Don't compile if USE_GTK.
7162 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7163 (xg_scroll_callback): New function.
7164 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7165 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7166 for USE_GTK.
7167 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7168 xg_show_scroll_bar for USE_GTK.
7169 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7170 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7171 (event_handler_gdk): New function for USE_GTK.
7172 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7173 (handle_one_xevent): Make sure widget is mapped before
7174 calling x_real_positions for USE_GTK.
7175 (XTread_socket): Add GTK event loop for USE_GTK.
7176 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7177 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7178 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7179 (x_iconify_frame): Add code for USE_GTK.
7180 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7181 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7182 is in gtkutil.c.
7183 (x_term_init): Add initialization for GTK.
7184 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7185
7186 * xmenu.c: Include gtkutil.h for USE_GTK.
7187 (Fx_popup_menu): Use current position if x and y is NIL.
7188 (single_menu_item, single_menu_item, Fx_popup_dialog):
7189 Check for USE_GTK.
7190 (popup_widget_loop): New function for USE_GTK.
7191 (x_activate_menubar): Add code for USE_GTK.
7192 (popup_activate_callback, popup_deactivate_callback)
7193 (menu_highlight_callback, menubar_selection_callback):
7194 Add USE_GTK versions.
7195 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7196 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7197 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7198 is in gtkutil.c.
7199 (popup_selection_callback): New version for USE_GTK.
7200 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7201 one USE_X_TOOLKIT version.
7202 (xmenu_show): Call create_and_show_popup_menu.
7203 (dialog_selection_callback): New version for USE_GTK.
7204 (create_and_show_dialog): New fuction, one USE_GTK version and
7205 one USE_X_TOOLKIT version.
7206 (xdialog_show): Call create_and_show_dialog.
7207
7208 * xfns.c: Include gtkutil for USE_GTK.
7209 (x_window_to_frame, x_any_window_to_frame)
7210 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7211 (x_top_window_to_frame): Add code for USE_GTK.
7212 (x_set_background_color): Call xg_set_background_color for GTK.
7213 (x_set_menu_bar_lines): Check for USE_GTK.
7214 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7215 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7216 (x_window): Call xg_create_frame_widgets for USE_GTK.
7217 (Fx_create_frame): Check for USE_GTK
7218 (Fx_file_dialog): New implementation for USE_GTK.
7219
7220 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7221 (update_menu_bar): Add check for USE_GTK.
7222 (update_tool_bar): Add check for USE_GTK and external tool bar.
7223 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7224 (redisplay_internal): Add check for USE_GTK and popup_activated.
7225 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7226 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7227 (display_menu_bar): Add check for USE_GTK
7228
7229 * lisp.h: Declare Vx_resource_name extern.
7230
7231 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7232 for USE_GTK.
7233 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7234
7235 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7236 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7237 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7238
7239 * fileio.c (Fread_file_name): Add check for USE_GTK.
7240
7241 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7242 Add check for USE_GTK.
7243
7244 * config.in: Added HAVE_GTK
7245
7246 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7247
7248 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7249
7250 * charset.h (Funibyte_char_to_multibyte): Export.
7251
7252 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7253
7254 * xmenu.c (mouse_position_for_popup): New function.
7255 (Fx_popup_menu): Call mouse_position_for_popup for X and
7256 mouse_position_hook for others.
7257
7258 2003-01-17 Kim F. Storm <storm@cua.dk>
7259
7260 * editfns.c (Finsert): Mention `string-make-multibyte' and
7261 `string-as-multibyte' in doc string.
7262
7263 2003-01-17 Kenichi Handa <handa@m17n.org>
7264
7265 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7266
7267 * editfns.c (Fformat): Convert an unibyte char argument that is
7268 formatted by "%c" to multibyte if the total result must be a
7269 multibyte string.
7270
7271 2003-01-16 Kim F. Storm <storm@cua.dk>
7272
7273 * process.c (set-process-filter): Document unibyte/multibyte-ness
7274 of string argument.
7275
7276 2003-01-16 Kenichi Handa <handa@m17n.org>
7277
7278 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7279
7280 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7281 (re_search_2): Likewise.
7282
7283 2003-01-15 Kenichi Handa <handa@m17n.org>
7284
7285 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7286 buffer is unibyte.
7287
7288 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7289
7290 * fns.c (Fsubstring): Clarify doc string.
7291
7292 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7293 (Fprevious_char_property_change)
7294 (Fnext_single_char_property_change)
7295 (Fprevious_single_char_property_change, Fnext_property_change)
7296 (Fnext_single_property_change, Fprevious_property_change)
7297 (Fprevious_single_property_change, Fadd_text_properties)
7298 (Fput_text_property, Fset_text_properties)
7299 (Fremove_text_properties, Fremove_list_of_text_properties)
7300 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7301
7302 2003-01-14 Kim F. Storm <storm@cua.dk>
7303
7304 * process.h (struct Lisp_Process): New member plist replaces old
7305 member private_vars. All uses changed.
7306
7307 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7308 (QCplist): Rename from QCvars. Change all uses.
7309 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7310 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7311 (syms_of_process): Intern, staticpro, defsubr these.
7312 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7313
7314 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7315
7316 * m/delta.h: Remove (obsolete).
7317
7318 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7319
7320 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7321 behaviour in front of symlinks.
7322 (Fdelete_file): Raise an error on directories.
7323
7324 2003-01-13 Dave Love <fx@gnu.org>
7325
7326 * fns.c (Freverse): Use QUIT.
7327
7328 2003-01-13 Richard M. Stallman <rms@gnu.org>
7329
7330 * minibuf.c (minibuffer_completion_contents):
7331 Error if point is inside prompt.
7332
7333 * keyboard.c (command_loop_1): Don't redisplay directly
7334 if there's a post-command-hook.
7335
7336 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7337 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7338
7339 2003-01-12 Kim F. Storm <storm@cua.dk>
7340
7341 * process.h (struct Lisp_Process): New member private_vars.
7342
7343 * process.c (QCvars): New variable.
7344 (syms_of_process): Intern and staticpro it.
7345 (Fset_process_contact): Removed function.
7346 (Fprocess_variable, Fset_process_variable): New functions.
7347 (syms_of_process): Defsubr them.
7348 (Fstart_process): Initialize private_vars plist to nil.
7349 (Fmake_network_process): New arg :vars to setup the private
7350 variables for new network process.
7351 (server_accept_connection): Copy server's private variables to
7352 client process.
7353
7354 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7355 crashes). Code rewritten and simplified. Now directly aligns the
7356 pointer and recalculates pure_bytes_used, rather than aligning the
7357 size and adjusting the pointer.
7358
7359 2003-01-11 Kim F. Storm <storm@cua.dk>
7360
7361 * process.c (Fset_process_contact): New function.
7362 (syms_of_process): defsubr it.
7363 (make-network-process): Update doc.
7364
7365 2003-01-10 Andreas Schwab <schwab@suse.de>
7366
7367 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7368 Reported by Berthold Gunreben <b.gunreben@web.de>.
7369
7370 2003-01-10 Dave Love <fx@gnu.org>
7371
7372 * composite.c (syms_of_composite): Make composition_hash_table weak.
7373
7374 2003-01-09 Kim F. Storm <storm@cua.dk>
7375
7376 * process.c (Fmake_network_process): Convert new port number
7377 to host byte order for `:service t' case. From Mario Lang.
7378
7379 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7380
7381 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7382 instead of XtAppProcessEvent.
7383
7384 * xterm.c (handle_one_xevent): New function.
7385 (x_dispatch_event): New function.
7386 (XTread_socket): Call handle_one_xevent.
7387
7388 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7389
7390 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7391 call XQueryPointer to get coordinates.
7392 (popup_get_selection): Do not set popup_activated_flag to zero,
7393 let popup_deactivate_callback do that. Needed for Motif.
7394 Call x_dispatch_event instead of XtDispatchEvent.
7395 (xmenu_show): Calculate root coordinate from frame top/left position.
7396
7397 2003-01-08 Kim F. Storm <storm@cua.dk>
7398
7399 * process.c (server_accept_connection): Fix recording of new
7400 connection's local address in :local property of contact info.
7401 (Fmake_network_process): Record local network address for new
7402 client processes in :local property of contact info.
7403 (format-network-address): Add arg OMIT-PORT. Change callers.
7404
7405 2003-01-07 Dave Love <fx@gnu.org>
7406
7407 * Makefile.in (fns.o): Depend on coding.h.
7408
7409 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
7410
7411 * minibuf.c (Fread_variable): Doc fix.
7412
7413 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7414 use the same test as for custom-variable-p.
7415
7416 2003-01-05 Richard M. Stallman <rms@gnu.org>
7417
7418 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7419 Count LAST_LINE_MISFIT in scroll margin for end of window.
7420 Move label too_near_end before setting SCROLL_MARGIN_POS.
7421 Set LAST_LINE_MISFIT before jumping there.
7422
7423 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7424 scroll_conservatively case. If scrolling that much doesn't change
7425 STARTP, move it down one line.
7426
7427 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7428 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7429
7430 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7431 selected frame.
7432
7433 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7434 (syms_of_keymap): staticpro them.
7435 (Fapropos_internal): Initialize them and clear them out.
7436 Don't GCPRO them.
7437
7438 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7439 Doc fixes.
7440
7441 * lisp.h: New misc type Lisp_Save_Value.
7442 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7443 (XSAVE_VALUE): New macro.
7444 (struct Lisp_Save_Value): New data type.
7445 (union Lisp_Misc): Add u_save_value alternative.
7446 (make_save_value): Declared.
7447
7448 * alloc.c (make_save_value): New function.
7449
7450 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7451 (x_catch_errors_unwind): Call XSync.
7452
7453 2003-01-01 Richard M. Stallman <rms@gnu.org>
7454
7455 * window.c (window_scroll_pixel_based): Partially undo last change.
7456
7457 * keyboard.c (command_loop_1): Call adjust_point_for_property
7458 in direct action cases for Qforward_char and Qbackward_char.
7459 Set already_adjusted so it won't be done twice.
7460
7461 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7462
7463 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7464 type definition of size_t.
7465
7466 2003-01-02 Steven Tamm <steventamm@mac.com>
7467
7468 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7469 distinguish Carbon GUI builds from X11 builds on darwin.
7470
7471 2002-12-30 Steven Tamm <steventamm@mac.com>
7472
7473 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7474 to default to t.
7475
7476 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7477
7478 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7479
7480 2002-12-28 Steven Tamm <steventamm@mac.com>
7481
7482 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7483 allow building in a different directory than source. Uses some
7484 GNU Make extensions, but there is no other make on Mac OS X.
7485
7486 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
7487
7488 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7489 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7490 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7491 (Fstring_to_number): Mention the returned value in the doc strings.
7492
7493 2002-12-23 Richard M. Stallman <rms@gnu.org>
7494
7495 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7496 <scroll-down-aggressively>: Doc fix.
7497
7498 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7499 string as pane name, if there is one.
7500 (set_frame_menubar): Save menu_items_n_panes from each call to
7501 parse_single_submenu and use it when calling digest_single_submenu.
7502
7503 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7504 Don't try to make last line fully visible if it is past end of window.
7505
7506 2002-12-22 Steven Tamm <steventamm@mac.com>
7507
7508 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7509 (mac_menu_show): Add support for hierarchical popup menus.
7510 (add_menu_item): Remove indentation support.
7511 (fill_submenu, fill_menu): Create hierarchical menus
7512 instead of using indentation.
7513
7514 2002-12-22 Richard M. Stallman <rms@gnu.org>
7515
7516 * xdisp.c (try_cursor_movement): Don't call try_window here.
7517 (redisplay_window): Never redisplay minibuffer when inactive.
7518
7519 * window.c (select_window_1): Undo 9/21 change.
7520
7521 2002-12-22 Steven Tamm <steventamm@mac.com>
7522
7523 * macterm.c (XTread_socket): Call KeyTranslate for control and
7524 meta to deal correctly shifted non-alpha characters, like C-S-5
7525 being treated like C-%. Does not look for shift key to deal
7526 with masking off control-key with mac-reverse-ctrl-meta.
7527
7528 2002-12-21 Richard M. Stallman <rms@gnu.org>
7529
7530 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7531 If it is non-nil, run timers. Use an unwind-protect to requeue
7532 the events that were read ahead.
7533 (popup_get_selection_unwind): New subroutine.
7534 (popup_get_selection_queue): File-scope variable now holds that queue.
7535 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7536 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7537 Use an unwind-protect to pop down the dialog box.
7538 (xdialog_show_unwind): New subroutine implements that.
7539
7540 * xdisp.c (row_containing_pos): Change exit test using last_y.
7541 (try_window_id): Abort if row_containing_pos returns null.
7542
7543 * lread.c (load_error_handler): New function.
7544 (Fload): Handle errors in Fsubstitute_in_file_name.
7545 Don't expect Fsignal to return.
7546
7547 * eval.c: Errors and throws work right with interrupt blocking.
7548 (struct catchtag): New elt interrupt_input_blocked.
7549 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7550 (internal_catch, Fcondition_case, internal_condition_case)
7551 (internal_condition_case_1, internal_condition_case_2): Save it.
7552 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
7553
7554 * editfns.c (Fformat): Add parens.
7555
7556 * dired.c (file_name_completion): Fix that change.
7557 Delete special quit-handling code; just use QUIT.
7558
7559 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
7560
7561 * dired.c (file_name_completion): Close directory on error
7562 just as in directory_files_internal.
7563
7564 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
7565
7566 * window.c (Fset_window_configuration): Set old_point to correct
7567 value when new_current_buffer == current_buffer.
7568
7569 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
7570
7571 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7572 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7573 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7574
7575 These changes were in part based upon suggestions made by Peter
7576 'Luna' Runestig [peter@runestig.com].
7577
7578 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7579 g_b_init_get_token_information, g_b_init_lookup_account_sid,
7580 g_b_init_get_sid_identifier_authority ): Add several static
7581 global variables.
7582
7583 * w32.c (globals_of_w32): New function. Used to initialize those
7584 global variables that must always be initialized on startup even
7585 when the global variable initialized is non zero. Its primary
7586 purpose at this time is to set the global variables
7587 g_b_init_is_windows_9x, g_b_init_open_process_token,
7588 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7589 g_b_init_get_sid_identifier_authority to 0 on startup.
7590 Called from main.
7591
7592 * w32.c (is_windows_9x): Perform initialization only if
7593 g_b_init_is_windows_9x is equal to 0. On initialization set
7594 g_b_init_is_windows_9x equal to 1.
7595
7596 * w32.c (open_process_token): Perform initialization only if
7597 g_b_init_open_process_token is equal to 0. On initialization set
7598 g_b_init_open_process_token equal to 1.
7599
7600 * w32.c (get_token_information): Perform initialization only if
7601 g_b_init_get_token_information is equal to 0. On initialization
7602 set g_b_init_get_token_information equal to 1.
7603
7604 * w32.c (lookup_account_sid): Perform initialization only if
7605 g_b_init_lookup_account_sid is equal to 0. On initialization
7606 set g_b_init_lookup_account_sid equal to 1.
7607
7608 * w32.c (get_sid_identifier_authority): Perform initialization
7609 only if g_b_init_get_sid_identifier_authority is equal to 0.
7610 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
7611
7612 * w32fns.c (globals_of_w32fns): New function. Used to initialize
7613 those global variables that must always be initialized on startup
7614 even when the global variable initialized is non zero.
7615 Its primary purpose at this time is to initialize the global variable
7616 track_mouse_event_fn.
7617
7618 * w32fns.c (w32_wnd_proc): Remove initialization of
7619 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
7620
7621 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
7622
7623 * w32menu.c (globals_of_w32menu): New function. Used to
7624 initialize those global variables that must always be initialized
7625 on startup even when the global variable initialized is non zero.
7626 Its primary purpose at this time is to initialize the global
7627 variables get_menu_item_info and set_menu_item_info.
7628
7629 * w32menu.c (initialize_frame_menubar): Remove initialization of
7630 get_menu_item_info and set_menu_item_info.
7631
7632 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
7633
7634 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7635 Declare them.
7636
7637 * emacs.c (main): Call globals_of_w32 prior to calling
7638 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7639 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7640 is defined.
7641
7642 * w32term.c (x_update_window_begin): Fix Windows API error
7643 detected by BoundsChecker. Test to determine if
7644 w32_system_caret_hwnd is NULL prior to attempting to use
7645 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
7646
7647 * w32term.c (x_update_window_end): Fix Windows API error
7648 detected by BoundsChecker. Test to determine if
7649 w32_system_caret_hwnd is NULL prior to attempting to use
7650 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
7651
7652 2002-12-17 Kenichi Handa <handa@m17n.org>
7653
7654 * coding.c (coding_system_require_warning): New variable.
7655 (syms_of_coding): DEFVAR it.
7656
7657 * coding.h (coding_system_require_warning): Extern it.
7658
7659 * fileio.c (choose_write_coding_system): Even if
7660 Vcoding_system_for_write is non-nil, if
7661 coding_system_require_warning is nonzero, call
7662 Vselect_safe_coding_system_function.
7663
7664 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
7665
7666 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7667 (lisp): Add font-core.
7668
7669 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
7670
7671 * textprop.c (text_read_only): New arg `propval'.
7672 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7673 (verify_interval_modification): Use text_read_only's new arg.
7674
7675 2002-12-13 Kenichi Handa <handa@m17n.org>
7676
7677 * coding.c (Funencodable_char_position): Set pend correctly.
7678
7679 2002-12-12 Jason Rumney <jasonr@gnu.org>
7680
7681 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7682 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7683 Be more careful about when help_events are generated.
7684
7685 2002-12-12 Steven Tamm <steventamm@mac.com>
7686
7687 * macterm.c (mac_check_for_quit_char): Correctly set the
7688 modifiers of the event to 0.
7689 * mac.c (sys_select): Duplicate rfds before calling select to
7690 ensure that rfds survive the while loop.
7691
7692 2002-12-11 Kim F. Storm <storm@cua.dk>
7693
7694 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7695 row_containing_pos returned NULL.
7696
7697 2002-12-10 Steven Tamm <steventamm@mac.com>
7698
7699 * mac.c (sys_read): Fix sys_read to not call select if IO is
7700 non-blocking.
7701 (sys_select): Fix sys_select to not use a timeout larger than
7702 the one given.
7703
7704 2002-12-10 Juanma Barranquero <lektu@terra.es>
7705
7706 * editfns.c (Fformat): Use alloca, not _alloca.
7707
7708 2002-12-09 Richard M. Stallman <rms@gnu.org>
7709
7710 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7711 as the last thing.
7712
7713 2002-12-09 Dave Love <fx@gnu.org>
7714
7715 * s/sol2-8.h: Removed. (Not necessary.)
7716
7717 2002-12-09 Matthew Swift <swift@alum.mit.edu>
7718
7719 * editfns.c (Fformat): Handle precision in string conversion
7720 specifiers like libc functions do (ie, print at most that many
7721 characters).
7722
7723 2002-12-08 Richard M. Stallman <rms@gnu.org>
7724
7725 * xdisp.c (row_containing_pos): Check more carefully
7726 whether charpos is really in the row before returning it.
7727
7728 2002-12-07 Steven Tamm <steventamm@mac.com>
7729
7730 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
7731
7732 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7733 each stack frame. This may change as it could be time consuming.
7734
7735 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7736 (init_quit_char_handler, mac_determine_quit_char_modifiers)
7737 (mac_initialize): Add code to check for pressing of quit_char
7738 in the OS event queue.
7739
7740 * mac.c (sys_select): Call mac_check_for_quit_char every second
7741 while blocking on select.
7742
7743 * mac.c (sys_read): Use sys_select to test for input first
7744 before calling read, to allow C-g to break.
7745
7746 2002-12-07 Richard M. Stallman <rms@gnu.org>
7747
7748 * minibuf.c (Fcompleting_read): Doc fix.
7749
7750 * lread.c (syms_of_lread) <load-history>: Doc fix.
7751
7752 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
7753
7754 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7755 autoload.
7756
7757 * data.c (Fdefalias): Record in load-history redefining an autoload.
7758
7759 * alloca.c: Undo ifdef change accidentally made on 12-04.
7760
7761 2002-12-06 Francesco Potorti` <pot@gnu.org>
7762
7763 * xfns.c (png_load): Avoid double gamma correction for PNG images.
7764
7765 2002-12-04 Richard M. Stallman <rms@gnu.org>
7766
7767 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
7768
7769 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
7770
7771 * alloca.c: Don't use #error.
7772
7773 2002-12-03 Dave Love <fx@gnu.org>
7774
7775 * buffer.c (Qucs_set_table_for_input): New.
7776 (Fget_buffer_create): Use it.
7777 (Qset_buffer_major_mode_hook): Deleted.
7778 (Fset_buffer_major_mode): Revert previous change.
7779 (init_buffer_once): Intern ucs-set-table-for-input.
7780 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7781 Add &Qucs_set_table_for_input.
7782
7783 2002-12-03 Andreas Schwab <schwab@suse.de>
7784
7785 * callint.c (Fcall_interactively): Use next_event only if less
7786 than key_count.
7787
7788 2002-12-02 Andrew Choi <akochoi@shaw.ca>
7789
7790 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7791 names to 255 characters.
7792
7793 * macterm.c (XTread_socket): If all frames have been collapsed,
7794 expand the first one before handling drag-and-drop events.
7795
7796 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7797 which is detected by autoconf.
7798
7799 2002-12-01 Steven Tamm <steventamm@mac.com>
7800
7801 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7802 offset in two hints table to allow prebinding to be redone and
7803 allow the executable to be stripped.
7804
7805 2002-11-29 Dave Love <fx@gnu.org>
7806
7807 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7808 already provided.
7809
7810 2002-11-29 Richard M. Stallman <rms@gnu.org>
7811
7812 * xdisp.c (start_display): Check more intelligently for
7813 whether the line is continued.
7814 (move_it_vertically_backward): Clear it->continuation_lines_width.
7815
7816 2002-11-28 Dave Love <fx@gnu.org>
7817
7818 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7819 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
7820
7821 2002-11-27 Steven Tamm <steventamm@mac.com>
7822
7823 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7824 more descriptive error output from lread.c:Fload upon most require
7825 cycles during boostrapping.
7826
7827 2002-11-27 Jason Rumney <jasonr@gnu.org>
7828
7829 * fileio.c (Finsert_file_contents): Give a more appropriate error
7830 for files bigger than 2Gb when off_t is 32 bit.
7831
7832 * dired.c (Ffile_attributes): Don't return negative file sizes for
7833 files bigger than 2Gb when off_t is 32 bit.
7834
7835 2002-11-27 Dave Love <fx@gnu.org>
7836
7837 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7838
7839 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7840 Test GETPGRP_VOID instead.
7841 [BSD_TERMIOS]: Remove definitions (never used).
7842
7843 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7844 Don't define.
7845 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7846
7847 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
7848
7849 2002-11-25 Jason Rumney <jasonr@gnu.org>
7850
7851 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7852 supported.
7853
7854 2002-11-25 Dave Love <fx@gnu.org>
7855
7856 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
7857
7858 * Makefile.in (TEMACS_LDFLAGS): Update last change.
7859
7860 2002-11-25 Andreas Schwab <schwab@suse.de>
7861
7862 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
7863
7864 2002-11-24 Steven Tamm <steventamm@mac.com>
7865
7866 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7867 determine the size of pointers alloced in unexed space instead
7868 of using possibly invalid emacs_zone pointers. This fixes the
7869 binary incompatibility problems caused by updates to libSystem.B.
7870
7871 2002-11-24 Richard M. Stallman <rms@gnu.org>
7872
7873 * search.c (Fstring_match): Doc fix.
7874
7875 * callint.c (Fcall_interactively): If a command fails because
7876 `*' detects a read-only buffer, but RECORD_FLAG is set,
7877 record it anyway if the args don't actually do tty input.
7878
7879 2002-11-22 Dave Love <fx@gnu.org>
7880
7881 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
7882
7883 * keyboard.c (interrupt_signal): Provide forward declaration.
7884 (kbd_buffer_store_event): Don't declare interrupt_signal.
7885
7886 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
7887
7888 2002-11-21 Richard M. Stallman <rms@gnu.org>
7889
7890 * eval.c (interactive_p): Skip any number of bytecode
7891 and special form frames, in any order.
7892
7893 2002-11-20 Jason Rumney <jasonr@gnu.org>
7894
7895 * w32fns.c (convert_mono_to_color_image): New function.
7896 (xbm_load, xbm_load_image): Use it when foreground or background
7897 is explicitly set.
7898
7899 2002-11-19 Dave Love <fx@gnu.org>
7900
7901 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
7902
7903 2002-11-18 Jason Rumney <jasonr@gnu.org>
7904
7905 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7906 (XPutPixel): Swap blue and red.
7907 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7908 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7909 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7910 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
7911
7912 2002-11-18 Dave Love <fx@gnu.org>
7913
7914 * m/orion105.h (HAVE_ALLOCA): Don't define.
7915
7916 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
7917
7918 * m/intel386.h: Don't include alloca.h or define alloca.
7919
7920 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7921 malloc, realloc, calloc.
7922
7923 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7924 (bcmp): Don't define.
7925
7926 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
7927
7928 * m/amdahl.h: Don't define LIB_STANDARD.
7929
7930 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
7931
7932 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
7933
7934 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7935 Don't include alloca.h.
7936
7937 * s/aix3-2.h (HAVE_FSYNC): Don't define.
7938
7939 * regex.c (_GNU_SOURCE): Don't define.
7940
7941 * process.c (_GNU_SOURCE): Don't define.
7942
7943 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
7944
7945 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
7946
7947 * s/sol2-8.h: Include sol2-6.h.
7948
7949 2002-11-18 Miles Bader <miles@gnu.org>
7950
7951 * dispextern.h (struct face): Add `overstrike' field.
7952 * xterm.c (x_draw_glyph_string_foreground)
7953 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7954 * xfaces.c (load_face_font): Set `face->overstrike' based on
7955 result from choose_face_font.
7956 (best_matching_font, choose_face_font): Add `needs_overstrike'
7957 argument, and use it to return whether overstriking is desirable
7958 for this face/font combo.
7959 (set_font_frame_param: Pass new argument to choose_face_font.
7960
7961 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
7962
7963 This change is my fix for the following entry in etc/PROBLEMS:
7964 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7965 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7966
7967 * w32.c: Added wrapper functions around the win32 API functions
7968 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7969 GetSidIdentifierAuthority. These wrapper functions serve two
7970 purposes:
7971 1. They ensure that the wrapped function can never be called
7972 when Emacs is running on an operating system on which they are
7973 not supported (Microsoft Windows 95 / 98 / ME).
7974 2. They call the wrapped functions via function pointers rather
7975 than calling them directly. This avoids taking advantage of the
7976 undocumented fact that although these functions are not supported
7977 in the 9x branch of Microsoft Windows, the functions do exist in
7978 the version of advapi32.dll that is found in the 9x branch of
7979 Microsoft Windows.
7980
7981 * w32.c (init_user_info): Replace the calls to the win32 API
7982 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7983 and GetSidIdentifierAuthority with calls to the newly added
7984 wrapper functions.
7985
7986 * w32.h: Added extern declarations for the following functions:
7987 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7988 syms_of_w32menu, and void syms_of_fontset.
7989
7990 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
7991 function pointer track_mouse_event_fn in the handler for the
7992 WM_SETFOCUS message.
7993
7994 * w32menu.c (initialize_frame_menubar): Add code to
7995 reinitialize the function pointers set_menu_item_info and
7996 get_menu_item_info.
7997
7998 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
7999
8000 * sound.c: Added a partial implementation of play-sound-internal
8001 for Microsoft Windows. Added various #ifdef / #else / #endif
8002 code blocks to separate the code that will compile under
8003 Microsoft Windows from the code that is specific to Gnu/Linux.
8004 Moved several blocks of code around to make this separation of code
8005 into Windows compatible and Gnu/Linux compatible code blocks easier.
8006
8007 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8008
8009 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8010 added support for play-sound-internal under Windows would be
8011 included in the build of Emacs.
8012
8013 2002-11-16 Jason Rumney <jasonr@gnu.org>
8014
8015 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
8016
8017 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
8018
8019 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
8020
8021 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8022 (adjust_point_for_property): Move out of display and invisible even if
8023 we were already inside before (in case a property was added while
8024 we weren't looking). Be more careful when handling invisible props.
8025 Skip invisible text as if it really wasn't there at all.
8026
8027 2002-11-15 Jason Rumney <jasonr@gnu.org>
8028
8029 * w32term.c (x_draw_image_foreground)
8030 (w32_draw_image_foreground_1): Use standard copy and invert
8031 operations to draw images.
8032
8033 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8034 depth of 1.
8035 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8036 (XPutPixel): Don't invert bits here.
8037
8038 2002-11-15 Jason Rumney <jasonr@gnu.org>
8039
8040 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8041 (w32_draw_image_foreground_1): Handle image masks.
8042 (x_draw_image_glyph_string): Don't BitBlt transparently.
8043
8044 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8045 (x_from_xcolors): Adjust RGB values for W32.
8046 (image_background, image_background_transparent)
8047 (postprocess_image, x_to_xcolors, x_disable_image)
8048 (x_build_heuristic_mask): Adapt for W32 and enable.
8049 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8050 (xbm_load): Remove unused variable.
8051
8052 2002-11-14 Richard M. Stallman <rms@gnu.org>
8053
8054 * buffer.c (syms_of_buffer): Doc fix.
8055
8056 2002-11-14 Dave Love <fx@gnu.org>
8057
8058 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
8059
8060 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8061 * xmenu.c (unuse_menu_items, digest_single_submenu):
8062 * xfns.c (x_put_x_image):
8063 * xdisp.c (message2_nolog, set_message):
8064 * undo.c (record_point):
8065 * terminfo.c (tparam):
8066 * syntax.c (scan_sexps_forward):
8067 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8068 * composite.c (update_compositions):
8069 * cm.c (calccost, cmgoto):
8070 * charset.c (c_string_width): Declare all args (per C99).
8071
8072 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
8073
8074 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8075 Don't declare.
8076
8077 * emacs.c (main) [!VMS]: Avoid third arg.
8078
8079 * fns.c (Fcopy_sequence): Doc fix.
8080 (Fmap_char_table): Cast `call2'.
8081
8082 2002-11-14 Francesco Potorti` <pot@gnu.org>
8083
8084 * s/sol2-8.h: New file.
8085
8086 2002-11-14 Kim F. Storm <storm@cua.dk>
8087
8088 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8089 dependency on `risky-local-variable' and the :propertize form.
8090
8091 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8092
8093 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8094
8095 * syntax.c (scan_sexps_forward): Undo last patch.
8096 Use a more obvious fix: check eob before updating the syntax table.
8097
8098 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8099
8100 * syntax.c (scan_sexps_forward): Update syntax table before reading
8101 a char rather than after so we don't update the table past eob.
8102
8103 2002-11-09 Dave Love <fx@gnu.org>
8104
8105 * buffer.c (Fset_buffer_major_mode): Fix last change.
8106
8107 * regex.c (regexec): Fix pmatch declaration.
8108
8109 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8110
8111 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8112 to self-inserting characters.
8113 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8114
8115 * coding.c (Vtranslation_table_for_input): New.
8116 (syms_of_coding): DEFVAR it.
8117
8118 2002-11-08 Juanma Barranquero <lektu@terra.es>
8119
8120 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8121 window.
8122
8123 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8124
8125 * process.c (Fformat_network_address): Remove unused locals p,
8126 cp, and i.
8127
8128 2002-11-06 Dave Love <fx@gnu.org>
8129
8130 * buffer.c (Qset_buffer_major_mode_hook): New.
8131 (Fset_buffer_major_mode): Use it.
8132
8133 2002-11-06 Richard M. Stallman <rms@gnu.org>
8134
8135 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8136 and stop_polling.
8137
8138 * process.c (wait_reading_process_input):
8139 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8140 Avoid initialization for auto Lisp_Object var.
8141
8142 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8143
8144 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8145
8146 2002-11-05 Richard M. Stallman <rms@gnu.org>
8147
8148 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8149
8150 * callint.c (Fcall_interactively): New local filter_specs.
8151 (Fcall_interactively): Check for progn as well as let.
8152 Add a gcpro.
8153 (Qprogn): New variable.
8154 (syms_of_callint): Staticpro and init Qprogn.
8155
8156 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8157
8158 * lread.c (Feval_buffer): Doc fix.
8159
8160 2002-11-04 Dave Love <fx@gnu.org>
8161
8162 * keyboard.c (read_char): Always translate iff
8163 Vkeyboard_translate_table is a char table and c is valid.
8164
8165 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8166 and fix C types.
8167
8168 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8169
8170 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8171
8172 * editfns.c (get_pos_property): Don't hardcode Qfield.
8173
8174 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8175 overlays. Also handle `invisible' prop.
8176
8177 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8178
8179 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8180 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8181
8182 2002-11-01 Andreas Schwab <schwab@suse.de>
8183
8184 * editfns.c (Fmessage): Revert last change to properly handle %%.
8185
8186 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8187
8188 * xmenu.c (unuse_menu_items): New fun.
8189 (menu_items_inuse): New var.
8190 (syms_of_xmenu): Initialize it.
8191 (init_menu_items): Use it to detect re-entrance.
8192 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8193 (Fx_popup_menu): Remove spurious XSETFRAME.
8194
8195 * editfns.c (find_field): Make an exception for nil fields.
8196
8197 2002-11-01 Dave Love <fx@gnu.org>
8198
8199 * m/gec63.h: Deleted.
8200
8201 2002-10-31 Dave Love <fx@gnu.org>
8202
8203 * xterm.c (XTread_socket): Fix last change.
8204 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8205
8206 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8207
8208 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8209
8210 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8211
8212 * editfns.c (overlays_around, get_pos_property): New funs.
8213 (find_field): Use them.
8214 Also be careful not to modify POS before its last use.
8215 (Fmessage): Don't Fformat if there's nothing to format.
8216
8217 2002-10-30 Dave Love <fx@gnu.org>
8218
8219 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8220 [HAVE_PTY_H]; Include pty.h.
8221
8222 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8223
8224 * xterm.c (Qeql): Declare.
8225 (Vx_keysym_table): New.
8226 (syms_of_xterm): Initialize it.
8227 (XTread_socket): Use it. Deal with ASCII keysyms.
8228 (XSetIMValues) [HAVE_X11R6]: Prototype.
8229
8230 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8231 (lispy_kana_keys): Comment out.
8232 (make_lispy_event) [XK_kana_A]: Comment out.
8233 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8234 Fix sprintf call.
8235
8236 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8237 regexp.h change).
8238 (TERMINFO, LIBS_TERMCAP): Define.
8239
8240 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8241 (bcmp): Define conditional on HAVE_BCMP.
8242 (NO_SIOCTL_H): Don't define.
8243 (TIOCSIGSEND): Don't make conditional on IRIX6.
8244
8245 * s/sol2-5.h: Don't include strings.h.
8246 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8247
8248 * s/irix6-0.h (IRIX6): Don't define.
8249 (bcopy, bcmp, bzero): Don't undef.
8250
8251 * s/irix6-5.h: Don't include strings.h.
8252 (IRIX6): Don't define.
8253 (bcopy, bcmp, bzero): Don't undef.
8254
8255 * syntax.c (Fforward_comment): Doc fix.
8256
8257 2002-10-29 Kim F. Storm <storm@cua.dk>
8258
8259 * process.c (Fsignal_process): Allow PROCESS to be specified by
8260 name in addition to pid (as integer or string).
8261
8262 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8263
8264 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8265 environments.
8266
8267 2002-10-27 Kim F. Storm <storm@cua.dk>
8268
8269 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8270
8271 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8272
8273 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8274
8275 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8276
8277 2002-10-26 Richard M. Stallman <rms@gnu.org>
8278
8279 * editfns.c (Fformat): Detect invalid format letters for floats.
8280
8281 2002-10-25 Kenichi Handa <handa@m17n.org>
8282
8283 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8284 (x_set_title): Likewise.
8285
8286 2002-10-25 Juanma Barranquero <lektu@terra.es>
8287
8288 * macgui.h:
8289 * w32gui.h: Remove definition of XColor.
8290
8291 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8292
8293 2002-10-24 Kim F. Storm <storm@cua.dk>
8294
8295 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8296 Callers changed (supply dummy arg).
8297
8298 * lisp.h (get_window_cursor_type): Update prototype.
8299
8300 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8301 get_window_cursor_type to track system caret.
8302
8303 2002-10-24 Kim F. Storm <storm@cua.dk>
8304
8305 * process.c (Fformat_network_address): New function.
8306 (syms_of_process): Defsubr it.
8307 (list_processes_1): Use it to format :local/:remote address if
8308 service/host is not set; before Emacs would crash in that case.
8309 (Fmake_network_process): Don't use Ffind_operation_coding_system
8310 to setup coding system if host or service is not set.
8311
8312 2002-10-23 Juanma Barranquero <lektu@terra.es>
8313
8314 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8315
8316 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8317 COLORREF.
8318
8319 * macgui.h:
8320 * w32gui.h: Add definition of XColor.
8321
8322 * macfns.c:
8323 * w32fns.c:
8324 * xfaces.c: Remove definition of XColor.
8325
8326 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8327
8328 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8329
8330 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8331 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8332 window if it is dedicated.
8333 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8334 (Vspecial_display_function): Update docstring.
8335
8336 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8337 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8338 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8339
8340 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8341
8342 * casefiddle.c (casify_region): Don't treat a prefix char as part
8343 of a word when at the beginning.
8344
8345 2002-10-17 Juanma Barranquero <lektu@terra.es>
8346
8347 * lread.c (syms_of_lread): Fix typos.
8348
8349 2002-10-17 Dave Love <fx@gnu.org>
8350
8351 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8352
8353 2002-10-16 Richard M. Stallman <rms@gnu.org>
8354
8355 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8356
8357 2002-10-14 Juanma Barranquero <lektu@terra.es>
8358
8359 * w16select.c (syms_of_win16select): Fix docstring for
8360 `selection-coding-system'.
8361
8362 * w32select.c (syms_of_w32select): Likewise.
8363
8364 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8365
8366 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8367 a backslash-quoted char.
8368 (scan_lists, scan_sexps_forward): Pacify the compiler.
8369
8370 2002-10-13 Richard M. Stallman <rms@gnu.org>
8371
8372 * window.c (window_scroll): Set immediate_quit.
8373
8374 * print.c (print): When backquote form is the car of a list,
8375 output in old style. Use old_backquote_output to output all
8376 comma forms inside it in old style too.
8377
8378 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8379
8380 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
8381
8382 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8383 batch mode).
8384
8385 * lread.c (Fload): Doc fix (load-suffixes).
8386
8387 2002-10-10 Steven Tamm <steventamm@mac.com>
8388
8389 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8390 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8391 Also switch the default to Qnil from Qt.
8392
8393 2002-10-08 Kenichi Handa <handa@m17n.org>
8394
8395 * coding.c (code_convert_region): When we need more GAP for
8396 conversion, pay attention to the case that coding->produced is not
8397 greater than coding->consumed.
8398
8399 2002-10-07 Richard M. Stallman <rms@gnu.org>
8400
8401 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8402
8403 2002-10-06 Andrew Choi <akochoi@shaw.ca>
8404
8405 * macmenu.c (mac_menu_show): Add j to count menu items; match
8406 menu_item_selection to it to find selected item.
8407
8408 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8409
8410 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8411 cases. The correct fix is to pass ReparentNotify to Xt.
8412 The shell widget interprets ConfigureNotify differently depending
8413 on if it has been reparented or not.
8414
8415 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
8416
8417 * editfns.c (Fformat_time_string): Doc fix.
8418
8419 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8420
8421 * fns.c (Flength): Doc fix.
8422
8423 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8424
8425 * keyboard.c (keyremap): New struct.
8426 (read_key_sequence): Use it: globally replace keytran_foo with
8427 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8428 keytran_next and fkey_next to just `next'.
8429
8430 2002-10-04 Steven Tamm <steventamm@mac.com>
8431
8432 * macterm.c (keycode_to_xkeysym_table): Change return to be
8433 treated like an X keysym.
8434
8435 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8436
8437 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8438 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8439 This is to also handle x/y changes that occur because of a resize.
8440
8441 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8442
8443 * frame.c (Vdelete_frame_functions): New variable.
8444 (syms_of_frame): Initialize and defvar it.
8445 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8446 it when frame's `tooltip' parameter is non-nil.
8447
8448 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8449
8450 * w32fns.c (x_create_tip_frame): Likewise.
8451
8452 * macfns.c (x_create_tip_frame): Likewise.
8453
8454 2002-09-30 Kenichi Handa <handa@m17n.org>
8455
8456 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8457 -1 before calling ccl_driver.
8458
8459 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8460 Only when it is non-nil, handle composition sequence.
8461 (setup_coding_system) <0>: Don't force composition handling.
8462
8463 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8464
8465 2002-09-29 Richard M. Stallman <rms@gnu.org>
8466
8467 * search.c (Freplace_match): Adjust match data for the substitution
8468 just made in the buffer.
8469
8470 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8471 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8472
8473 2002-09-27 Richard M. Stallman <rms@gnu.org>
8474
8475 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8476 (read_char): Use them. Do all exits thru the end of the function.
8477
8478 2002-09-27 Kenichi Handa <handa@etl.go.jp>
8479
8480 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8481 is nil.
8482
8483 2002-09-26 Richard M. Stallman <rms@gnu.org>
8484
8485 * regex.h (__restrict_arr): Don't define if already defined.
8486
8487 * coding.c (run_pre_post_conversion_on_str):
8488 Save and restore Vdeactivate_mark.
8489
8490 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8491
8492 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8493
8494 2002-09-26 Kenichi Handa <handa@etl.go.jp>
8495
8496 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8497 nonzero, try face's family at first. Otherwise try FAMILY at first.
8498 (choose_face_font): If C is a single byte char or latin-1, call
8499 try_font_list with PREFER_FACE_FAMILY 1.
8500
8501 2002-09-21 Richard M. Stallman <rms@gnu.org>
8502
8503 * window.c (select_window_1): Don't select frame.
8504 Set frame's selected window only when frame itself is selected.
8505 (Fselect_window): Doc fix.
8506
8507 2002-09-18 Kim F. Storm <storm@cua.dk>
8508
8509 * process.c (make-network-process): Doc fix (there is no
8510 network-server-log-function hook).
8511
8512 2002-09-18 Richard M. Stallman <rms@gnu.org>
8513
8514 * print.c (print): Clear out the unused parts of Vprint_number_table.
8515 (syms_of_print): Doc fix for `print-number-table'.
8516
8517 * unexelf.c (unexec): Undo previous change.
8518
8519 2002-09-17 Andreas Schwab <schwab@suse.de>
8520
8521 * m/alpha.h [LINUX]: Don't define DATA_START.
8522
8523 2002-09-16 Dave Love <fx@gnu.org>
8524
8525 * unexelf.c (unexec): Deal with .got, reinstating change from
8526 25-08-1999.
8527
8528 2002-09-13 Richard M. Stallman <rms@gnu.org>
8529
8530 * s/sol2-6.h (UNEXEC): Comment out definition.
8531
8532 * unexsol.c (unexec): Don't downcase first letter of error msg.
8533
8534 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8535
8536 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
8537
8538 * unexsol.c: Include buffer.h, charset.h, coding.h.
8539
8540 2002-09-11 Richard M. Stallman <rms@gnu.org>
8541
8542 * unexsol.c: Don't use report_file_error; do it by hand
8543 using dlerror.
8544
8545 * process.c (wait_reading_process_input, both versions):
8546 Before calling turn_on_atimers, call stop_polling.
8547
8548 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8549
8550 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8551 we go to too_near_end, call clear_glyph_matrix.
8552 (redisplay_window): After make_cursor_line_fully_visible,
8553 call clear_glyph_matrix and bypass `goto done'.
8554
8555 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8556 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8557
8558 2002-09-10 Richard M. Stallman <rms@gnu.org>
8559
8560 * fileio.c (Fdo_auto_save): Catch error making directory.
8561 Only call push_message if we need to.
8562 At the same time, make an unwind-protect to pop it.
8563 Rename local message_p to old_message_p.
8564 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8565 (do_auto_save_unwind): Don't call pop_message.
8566
8567 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8568
8569 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8570
8571 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8572
8573 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8574
8575 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8576
8577 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8578 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8579 (re_match_2_internal): Be more careful with infinite loops.
8580
8581 2002-09-10 Kim F. Storm <storm@cua.dk>
8582
8583 * macros.c (end_kbd_macro): New function.
8584 (Fend_kbd_macro): Use it.
8585
8586 * macros.h (end_kbd_macro): Declare extern.
8587
8588 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8589 end and save it instead of discarding it.
8590
8591 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
8592
8593 * s/sol2-6.h: Fix typo. Add comment.
8594
8595 2002-09-09 Richard M. Stallman <rms@gnu.org>
8596
8597 * regex.c (regnum_t): Use signed int, not unsigned int.
8598
8599 * s/sol2-6.h: New file.
8600
8601 * s/sol2-5.h (UNEXEC): Definition deleted.
8602
8603 2002-09-08 Kim F. Storm <storm@cua.dk>
8604
8605 * macros.c (executing_macro_index): Change type to EMACS_INT.
8606 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8607
8608 * macros.h (executing_macro_index): Change type to EMACS_INT.
8609
8610 2002-09-06 Richard M. Stallman <rms@gnu.org>
8611
8612 * casetab.c (set_case_table): Make canon table point to eqv table.
8613
8614 2002-09-06 Juanma Barranquero <lektu@terra.es>
8615
8616 * coding.c (syms_of_coding): Fix spacing.
8617
8618 * composite.c (Fcompose_region_internal)
8619 (Fcompose_string_internal): Likewise.
8620
8621 * data.c (Flsh): Likewise.
8622
8623 * fontset.c (Fset_fontset_font): Likewise.
8624
8625 * macfns.c (Fx_server_max_request_size): Likewise.
8626
8627 * w16select.c (syms_of_win16select): Likewise.
8628
8629 * w32select.c (syms_of_w32select): Likewise.
8630
8631 * xselect.c (syms_of_xselect): Likewise.
8632
8633 2002-09-05 Richard M. Stallman <rms@gnu.org>
8634
8635 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8636 call EXTEND_RANGE_TABLE and return a proper value.
8637 (set_image_of_range): Don't call set_image_of_range_1
8638 if no TRANSLATE or if range includes all of Latin-1.
8639 Only call it for the Latin-1 part of the range.
8640 For other cases, make two separate ranges,
8641 one for the original specified characters and one for
8642 their case-conversions.
8643
8644 2002-09-04 Richard M. Stallman <rms@gnu.org>
8645
8646 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8647
8648 * window.c (displayed_window_lines): Correct for one-off bug
8649 in HEIGHT on non-window displays.
8650
8651 * regex.c (set_image_of_range_1): New function.
8652 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8653 Return a value to indicate running out of memory.
8654 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8655 (extend_range_table_work_area): New subroutine.
8656 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8657 Different calling conventions, and used from set_image_of_range{,_1}.
8658 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8659
8660 2002-09-04 Juanma Barranquero <lektu@terra.es>
8661
8662 * makefile.w32-in: All dependencies updated.
8663
8664 2002-09-01 Richard M. Stallman <rms@gnu.org>
8665
8666 * unexsol.c: New file.
8667
8668 * xfns.c (Qbox): Declare external, don't define.
8669
8670 * xdisp.c (redisplay_window) <force-start case>:
8671 If point is on semi-visible last line, reposition
8672 it at previous line.
8673
8674 * alloc.c (display_malloc_warning): Use display-warning.
8675 (malloc_warning_1): Function deleted.
8676
8677 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8678
8679 * lread.c (read1): Handle #! by skipping the line.
8680
8681 2002-08-31 Richard M. Stallman <rms@gnu.org>
8682
8683 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8684 Don't include LDFLAGS.
8685 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8686
8687 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8688
8689 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8690 member of x_display_info unless we compile for some window system.
8691
8692 2002-08-31 Kim F. Storm <storm@cua.dk>
8693
8694 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8695 (get_window_cursor_type): Don't use them.
8696 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8697
8698 2002-08-30 Kenichi Handa <handa@etl.go.jp>
8699
8700 * xdisp.c (get_next_display_element): Fix previous change.
8701
8702 2002-08-30 Andrew Choi <akochoi@shaw.ca>
8703
8704 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8705 (expose_window): Use it to fix the display of overlapping
8706 rows (merge code from xterm.c).
8707
8708 * macfns.c (Qbox): Add extern declaration.
8709
8710 2002-08-30 Juanma Barranquero <lektu@terra.es>
8711
8712 * w32fns.c (Qbox): Make extern.
8713 (syms_of_w32fns): Remove initialization of Qbox.
8714
8715 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8716
8717 * xfns.c (Fx_open_connection): Fix error message.
8718
8719 2002-08-30 Kim F. Storm <storm@cua.dk>
8720
8721 The following changes consolidates the handling of the cursor
8722 type in xdisp.c, moving duplicate code and functionality from
8723 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8724
8725 * frame.h (enum text_cursor_kinds): Consolidated here.
8726 Added DEFAULT_CURSOR value.
8727 (struct frame) <desired_cursor, cursor_width>
8728 <blink_off_cursor, blink_off_cursor_width>: New fields.
8729 Consolidated from output_x, output_w32 and output_mac structs.
8730 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8731 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8732
8733 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8734 Variables consolidated here.
8735 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8736 (Vcursor_in_non_selected_windows): Renamed from
8737 cursor_in_non_selected_windows and changed to Lisp_Object.
8738 (syms_of_xdisp): Define and staticpro new and moved variables.
8739 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8740 consolidated here. Recognize Qhollow setting.
8741 (set_frame_cursor_types): New function to set frame cursor types
8742 based on the frame parameters.
8743 (get_window_cursor_type): New function to calculate new cursor
8744 type and width for the specified window. Based on duplicated
8745 code consolidated here.
8746 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8747 check buffer-local alternate-cursor-type and blink-cursor-alist
8748 before using built-in blink off methods.
8749
8750 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8751
8752 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8753 (get_specified_cursor_type, get_window_cursor_type)
8754 (set_frame_cursor_types): Added prototypes.
8755
8756 * macfns.c (x_specified_cursor_type): Removed.
8757 (x_set_cursor_type): Use set_frame_cursor_types.
8758 (Qbar, Qbox): Removed.
8759 (syms_of_macfns): Don't intern or staticpro them.
8760
8761 * macterm.c (x_specified_cursor_type): Remove prototype.
8762 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8763 (x_display_and_set_cursor): Use get_window_cursor_type.
8764 Remove unused local variables cursor_non_selected, active_cursor.
8765 Redraw cursor if hbar cursor width changes.
8766 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8767
8768 * macterm.h (enum text_cursor_kinds): Removed.
8769 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8770 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8771 (FRAME_DESIRED_CURSOR): Macro removed.
8772
8773 * w32fns.c (Vblink_cursor_alist): Removed.
8774 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8775 (syms_of_w32fns): Don't intern, staticpro, or define them.
8776 (x_specified_cursor_type): Removed.
8777 (x_set_cursor_type): Use set_frame_cursor_types.
8778
8779 * w32term.c (x_specified_cursor_type): Remove prototype.
8780 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8781 (x_display_and_set_cursor): Use get_window_cursor_type.
8782 Remove unused local variables cursor_off_state.
8783 Redraw cursor if hbar cursor width changes.
8784 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8785
8786 * w32term.h (enum text_cursor_kinds): Removed.
8787 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8788 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8789 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8790 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8791 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8792 w32_highlight_frame.
8793
8794 * xfns.c (Vblink_cursor_alist): Removed.
8795 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8796 (syms_of_xfns): Don't intern, staticpro, or define them.
8797 (x_specified_cursor_type): Removed.
8798 (x_set_cursor_type): Use set_frame_cursor_types.
8799
8800 * xterm.c (x_specified_cursor_type): Remove prototype.
8801 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8802 (x_display_and_set_cursor): Use get_window_cursor_type.
8803 Remove unused local variables cursor_off_state.
8804 Redraw cursor if hbar cursor width changes.
8805
8806 * xterm.h (enum text_cursor_kinds): Removed.
8807 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8808 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8809 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8810 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8811 (x_specified_cursor_type): Remove prototype.
8812
8813 2002-08-28 Richard M. Stallman <rms@gnu.org>
8814
8815 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8816 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8817 (Vblink_cursor_alist): New variable.
8818 (syms_of_w32fns): Initialize and defvar it.
8819 (x_specified_cursor_type): Recognize Qbox for filled box.
8820 Exceptions are hollow boxes.
8821 (Qbox, Qhollow): New variables.
8822 (syms_of_w32fns): Initialize and staticpro them.
8823
8824 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8825 New macros.
8826 (struct w32_output): New fields blink_off_cursor,
8827 blink_off_cursor_width.
8828 (FRAME_CURSOR_WIDTH): New macro.
8829
8830 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8831 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8832
8833 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8834 for bar cursor.
8835
8836 * w32term.c (expose_overlaps): New function.
8837 (expose_window): Use it to fix the display of overlapping rows.
8838
8839 2002-08-28 Simon Josefsson <jas@extundo.com>
8840
8841 * xfns.c (Fx_open_connection): Improve help when X connection
8842 fails, xhost is insecure and xauth is better.
8843
8844 2002-08-28 Juanma Barranquero <lektu@terra.es>
8845
8846 * makefile.w32-in: Add missing dependencies on w32term.h and
8847 composite.h.
8848
8849 * emacs.c (USAGE1): Add missing newline.
8850
8851 2002-08-27 Andrew Choi <akochoi@shaw.ca>
8852
8853 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8854
8855 2002-08-27 Richard M. Stallman <rms@gnu.org>
8856
8857 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8858 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8859 (Vblink_cursor_alist): New variable.
8860 (syms_of_xfns): Initialize and defvar it.
8861 (x_specified_cursor_type): Recognize Qbox for filled box.
8862 Exceptions are hollow boxes.
8863 (Qbox, Qhollow): New variables.
8864 (syms_of_xfns): Initialize and staticpro them.
8865
8866 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8867 New macros.
8868 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8869
8870 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8871 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8872
8873 * emacs.c (main): Handle --script.
8874 (USAGE1): Mention --script.
8875 (standard_args): Define sort order for --script.
8876
8877 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8878
8879 * xdisp.c (redisplay_updating_p): Variable removed.
8880 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8881 New variables.
8882 (init_iterator): Don't free realized faces if
8883 inhibit_free_realized_faces is set.
8884 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8885 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8886 initialize Qinhibit_free_realized_faces.
8887
8888 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8889 when iterator is adding glyphs to a glyph matrix.
8890
8891 2002-08-27 Kenichi Handa <handa@etl.go.jp>
8892
8893 * xdisp.c (get_next_display_element): In unibyte case, don't use
8894 octal form for such eight-bit characters that can be converted to
8895 multibyte char.
8896
8897 2002-08-26 Kim F. Storm <storm@cua.dk>
8898
8899 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8900 and background colors. From Joe Buehler (tiny change).
8901
8902 2002-08-26 Miles Bader <miles@gnu.org>
8903
8904 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8905
8906 2002-08-25 Andrew Choi <akochoi@shaw.ca>
8907
8908 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8909 defined instead of MAC_OSX.
8910
8911 * s/darwin.h (select): Define select to sys_select only if
8912 HAVE_CARBON is defined.
8913 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8914 (DONT_REOPEN_PTY): #def it.
8915
8916 * macterm.c (XTread_socket): Remove code to call
8917 SendEventToEventTarget for keys with command modifiers when
8918 mac_command_key_is_meta is nil.
8919
8920 2002-08-24 Andreas Schwab <schwab@suse.de>
8921
8922 * eval.c (Fdefvar): Fix last change.
8923
8924 2002-08-23 Richard M. Stallman <rms@gnu.org>
8925
8926 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8927 Record variables in load history as (defvar . VAR).
8928 (Fdefvar): Don't record in load history if no initial value.
8929 (Qdefvar): New variable.
8930 (syms_of_eval): Init and staticpro it.
8931
8932 * lread.c (syms_of_lread): Doc fix.
8933 (build_load_history): Use Fmember to see if a definition
8934 is already in the Vload_history element.
8935
8936 * process.c (Fstart_process): Remove /: from program name.
8937
8938 * emacs.c (decode_env_path): Don't add /: if file name handler
8939 has a `safe-magic' property.
8940
8941 * callproc.c (Fcall_process): Remove /: from program name.
8942
8943 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8944
8945 * regex.c (PATFETCH): Remove the translating fetch.
8946 (PATFETCH_RAW): Rename to PATFETCH.
8947 (set_image_of_range): New fun.
8948 (SET_RANGE_TABLE_WORK_AREA): Use it.
8949 (regex_compile): Don't translate the pattern chars so eagerly.
8950 Only do it when inserting an `exactn' bytecode or when handling
8951 a char-range.
8952 (mutually_exclusive_p): Avoid empty statement.
8953
8954 2002-08-22 Kim F. Storm <storm@cua.dk>
8955
8956 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8957 end up on a partially visible line; this reverts a specific part
8958 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8959 display error which has been reported several times now.
8960 However it introduces the problem that changes was supposed to fix.
8961 See my comments in the source if you want to debug this further.
8962
8963 2002-08-20 Kenichi Handa <handa@etl.go.jp>
8964
8965 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8966
8967 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8968
8969 * msdos.c (croak): Add `void' to definition.
8970
8971 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
8972 Don't define them, they are defined in msdos.c.
8973
8974 * mem-limits.h [MSDOS]: Declare etext.
8975
8976 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8977 `const' since CORRECT_DIR_SEPS modifies its target.
8978
8979 2002-08-19 Kim F. Storm <storm@cua.dk>
8980
8981 * keyboard.c (Fclear_this_command_keys): Add optional arg
8982 KEEP-RECORD to avoid clearing lossage when we just want to clear
8983 the current key sequence (kmacro needs this).
8984
8985 2002-08-19 Kenichi Handa <handa@localhost>
8986
8987 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8988
8989 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8990 cons, return Qnil.
8991
8992 2002-08-17 Richard M. Stallman <rms@gnu.org>
8993
8994 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8995
8996 * sysdep.c [!VMS]: Include sys/files.h.
8997
8998 * editfns.c (save_restriction_restore): Defend from unchained marker.
8999
9000 * buffer.c (overlays_at): Handle extending vec uniformly.
9001 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9002
9003 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9004
9005 * mac.c (init_mac_osx_environment): New function.
9006
9007 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9008
9009 2002-08-14 Kim F. Storm <storm@cua.dk>
9010
9011 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9012 executing macro before appending to it (when used from Lisp).
9013 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9014 which is called prior to each iteration of macro (for kmacro.el).
9015 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9016
9017 * lisp.h (Fexecute_kbd_macro): Update prototype.
9018
9019 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9020
9021 2002-08-14 Kenichi Handa <handa@etl.go.jp>
9022
9023 * xselect.c (QUTF8_STRING): New variable.
9024 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9025 (x_atom_to_symbol): Likewise.
9026 (x_get_local_selection): New argument local_request. If it is
9027 nonzero, call handler_fn with the second arg nil.
9028 (x_handle_selection_request): Call x_get_local_selection with
9029 local_request 0.
9030 (lisp_data_to_selection_data): Don't encode the string here.
9031 (Fx_get_selection_internal): Call x_get_local_selection with
9032 local_request 1.
9033 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9034
9035 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9036
9037 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9038
9039 2002-08-13 Richard M. Stallman <rms@gnu.org>
9040
9041 * minibuf.c (Fminibufferp): New function.
9042 (syms_of_minibuf): Defsubr it.
9043 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9044
9045 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9046
9047 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9048
9049 2002-08-12 Richard M. Stallman <rms@gnu.org>
9050
9051 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9052 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9053 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9054 already.
9055
9056 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9057
9058 2002-08-11 Andrew Choi <akochoi@shaw.ca>
9059
9060 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9061 (Vmac_pass_command_to_system): New variable.
9062 (Vmac_pass_control_to_system): New variable.
9063 (do_mouse_moved): Check wp with is_emacs_window.
9064 (XTread_socket): Check window_ptr with is_emacs_window.
9065 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9066 events back to Mac Toolbox for processing, depending on values of
9067 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9068 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9069 Vmac_pass_control_to_system.
9070
9071 2002-08-10 Kenichi Handa <handa@etl.go.jp>
9072
9073 * coding.c (unencodable_char_position): New function.
9074 (Funencodable_char_position): New function.
9075 (syms_of_coding): Defsubr Funencodable_char_position.
9076
9077 2002-08-10 Andrew Choi <akochoi@shaw.ca>
9078
9079 * mac.c (sys_select) [MAC_OSX]: New function.
9080
9081 * macterm.c (MakeMeTheFrontProcess): New function.
9082 (mac_initialize): Call MakeMeTheFrontProcess.
9083
9084 * s/darwin.h: Define select to sys_select.
9085
9086 2002-08-09 Richard M. Stallman <rms@gnu.org>
9087
9088 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9089
9090 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9091
9092 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9093 end of the buffer.
9094
9095 2002-08-08 Ken Raeburn <raeburn@mit.edu>
9096
9097 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9098
9099 * puresize.h (BASE_PURESIZE): Increase to 910000.
9100
9101 2002-08-08 Kenichi Handa <handa@etl.go.jp>
9102
9103 * coding.c (Ffind_operation_coding_system): For write-region, if
9104 VISIT is a filename, make it the target.
9105
9106 2002-08-07 Richard M. Stallman <rms@gnu.org>
9107
9108 * alloc.c (mark_object): Detect long lists for debugging.
9109 (mark_object_loop_halt): New variable.
9110
9111 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9112
9113 * data.c (Fmake_variable_frame_local): Doc fix.
9114
9115 2002-08-01 David Ponce <david@dponce.com>
9116
9117 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9118 (malloc_widget_value, free_widget_value)
9119 (w32_free_submenu_strings): Use them.
9120
9121 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9122 (push_menu_pane, push_menu_item, single_keymap_panes)
9123 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9124 (single_submenu, set_frame_menubar)
9125 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9126
9127 (Fx_popup_menu): Don't show pop up menu until preceding one is
9128 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9129
9130 * w32menu.c: Changes adapted from xmenu.c
9131 (set_frame_menubar): First parse all submenus,
9132 then make widget_value trees from them.
9133 Don't allocate any widget_value objects
9134 until we are done with the parsing.
9135 (parse_single_submenu): New function.
9136 (digest_single_submenu): New function.
9137 (single_submenu): Function deleted, replaced by those two.
9138
9139 2002-08-04 Andrew Choi <akochoi@shaw.ca>
9140
9141 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9142 returns a valid window pointer before proceeding for keyDown and
9143 autoKey events.
9144
9145 2002-08-03 Andrew Choi <akochoi@shaw.ca>
9146
9147 * macterm.c (USE_CARBON_EVENTS): New macro.
9148 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9149 (x_iconify_frame): Call CollapseWindow.
9150 (Vmac_reverse_ctrl_meta): New variable.
9151 (Vmac_wheel_button_is_mouse_2): New variable.
9152 (init_mac_drag_n_drop): New function.
9153 (mac_do_receive_drag): New function.
9154 (mac_handle_service_event): New function.
9155 (init_service_handler): New function.
9156 (mac_to_emacs_modifiers): New function.
9157 (mac_event_to_emacs_modifiers): New function.
9158 (mac_get_mouse_btn): New function.
9159 (mac_convert_event_ref): New function.
9160 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9161 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9162 mac_get_mouse_btn.
9163 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9164
9165 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9166 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9167 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9168 TOOL_BAR_EVENT for MAC_OS as well.
9169 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9170 as for WINDOWS_NT.
9171 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9172
9173 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9174
9175 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9176
9177 * xdisp.c (forward_to_next_line_start): Fix a condition that
9178 lead to a newline being skipped.
9179
9180 2002-08-02 Andrew Choi <akochoi@shaw.ca>
9181
9182 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9183
9184 2002-08-01 Richard M. Stallman <rms@gnu.org>
9185
9186 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9187
9188 2002-07-31 Andrew Choi <akochoi@shaw.ca>
9189
9190 * macfns.c: #undef init_process before #define-ing it.
9191
9192 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9193 HAVE_CARBON is defined.
9194
9195 2002-07-31 Richard M. Stallman <rms@gnu.org>
9196
9197 * xmenu.c (set_frame_menubar): First parse all submenus,
9198 then make widget_value trees from them.
9199 Don't allocate any widget_value objects
9200 until we are done with the parsing.
9201 (parse_single_submenu): New function.
9202 (digest_single_submenu): New function.
9203 (single_submenu): Function deleted, replaced by those two.
9204
9205 2002-07-30 Juanma Barranquero <lektu@terra.es>
9206
9207 * w32proc.c (syms_of_ntproc): Fix docstring of
9208 `w32-get-true-file-attributes'.
9209
9210 2002-07-28 Richard M. Stallman <rms@gnu.org>
9211
9212 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9213 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9214
9215 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9216
9217 * keyboard.c (make_lispy_event):
9218 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9219 Explicitly clear up_modifier in event->modifiers.
9220
9221 2002-07-27 Richard M. Stallman <rms@gnu.org>
9222
9223 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9224
9225 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9226 for bar cursor.
9227
9228 2002-07-26 Kenichi Handa <handa@etl.go.jp>
9229
9230 * coding.c (detect_coding_iso2022): While checking a byte sequence
9231 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9232 it in the normal loop.
9233
9234 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9235
9236 * xterm.c (expose_overlaps): New function.
9237 (expose_window): Use it to fix the display of overlapping rows.
9238
9239 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9240
9241 2002-07-23 Ken Raeburn <raeburn@gnu.org>
9242
9243 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9244 since it only depends on XUINT.
9245
9246 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9247 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9248 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9249 Macros deleted.
9250
9251 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9252 its value over other approaches.
9253 * sysdep.c (start_of_data): Don't define the function if a macro
9254 form has been defined.
9255
9256 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9257
9258 * xdisp.c (redisplay_updating_p): New variable.
9259 (init_iterator): Don't free realized faces when
9260 redisplay_updating_p is set.
9261 (redisplay_internal): Set redisplay_updating_p while updating
9262 the display.
9263
9264 2002-07-23 Richard M. Stallman <rms@gnu.org>
9265
9266 * editfns.c (Fmessage): Treat "" like nil.
9267
9268 2002-07-23 Kenichi Handa <handa@etl.go.jp>
9269
9270 * xdisp.c (face_before_or_after_it_pos):
9271 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9272
9273 2002-07-22 Juanma Barranquero <lektu@terra.es>
9274
9275 * callproc.c (init_callproc) [DOS_NT]:
9276 Initialize Vshared_game_score_directory to nil.
9277 (syms_of_callproc) [DOS_NT]: Likewise.
9278
9279 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9280
9281 * xdisp.c (display_line): Replace an abort with xassert.
9282
9283 2002-07-21 Richard M. Stallman <rms@gnu.org>
9284
9285 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9286 and END_UNCHANGED when setting buffer_unchanged_p.
9287 Use current_matrix_up_to_date_p to decide whether to use
9288 try_cursor_movement.
9289
9290 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9291
9292 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9293
9294 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9295 Set to nil if dir does not exist.
9296 (syms_of_callproc): Init unconditionally and simply.
9297
9298 * buffer.c (Fbuffer_list): Doc fix.
9299
9300 2002-07-21 Ken Raeburn <raeburn@gnu.org>
9301
9302 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9303
9304 * buffer.c (mmap_realloc): When shrinking, make sure number of
9305 pages to unmap is rounded towards zero.
9306
9307 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9308 (XSETINT): Deleted.
9309
9310 * m/att3b.h (XINT): Don't define.
9311 (VALBITS, VALMASK, XTYPE): Deleted.
9312 (DATA_SEG_BITS): Define.
9313 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9314 ARRAY_MARK_FLAG): Deleted.
9315 (DATA_SEG_BITS): Define.
9316 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9317 (DATA_SEG_BITS): Define.
9318
9319 2002-07-20 Richard M. Stallman <rms@gnu.org>
9320
9321 * print.c (print_error_message): New args CONTEXT and CALLER.
9322 Calls changed.
9323
9324 * lisp.h (print_error_message): Declare new args.
9325
9326 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9327 and CONTEXT to print_error_message, don't print them here.
9328 For a Quit, don't use Vsignaling_function.
9329 Call message_log_maybe_newline.
9330
9331 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9332
9333 2002-07-20 Kim F. Storm <storm@cua.dk>
9334
9335 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9336
9337 2002-07-19 Ken Raeburn <raeburn@gnu.org>
9338
9339 * bytecode.c (struct byte_stack): Pointers into byte string now
9340 point to const.
9341 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9342 const.
9343 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9344 * coding.c (encode_eol, detect_coding, detect_eol):
9345 (decode_coding, encode_coding, detect_coding_system):
9346 Source strings now treated as const.
9347 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9348 modify Lisp string contents.
9349 * coding.h (decode_coding, encode_coding, detect_coding,
9350 detect_eol): Declarations updated.
9351 * composite.c (compose_chars_in_text): Treat Lisp string contents
9352 as const.
9353 * dispnew.c (safe_bcopy): Source pointer now points to const.
9354 * lisp.h (STRING_COPYIN): New macro.
9355 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9356 (internal_with_output_to_temp_buffer): Declarations updated.
9357 * print.c (temp_output_buffer_setup):
9358 (internal_with_output_to_temp_buffer): Buffer name argument is now
9359 pointer to const.
9360 * sound.c (struct sound_device): Function pointer field "write"
9361 buffer argument now points to const.
9362 (vox_write): Buffer argument points to const.
9363 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9364 contents as const.
9365 * sysdep.c (emacs_write): Buffer pointer now const.
9366 * term.c (encode_terminal_code): Buffer pointer now const.
9367 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9368 (x_face_list_fonts, x_update_menu_appearance):
9369 (hash_string_case_insensitive): Treat Lisp string contents as const.
9370
9371 2002-07-19 Juanma Barranquero <lektu@terra.es>
9372
9373 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9374
9375 * fileio.c (syms_of_fileio): Likewise.
9376 (Ffile_name_as_directory): Fix argument name in docstring.
9377 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9378
9379 2002-07-18 Richard M. Stallman <rms@gnu.org>
9380
9381 * data.c (Fdefalias): Doc fix.
9382
9383 2002-07-17 Dave Love <fx@gnu.org>
9384
9385 * intervals.h (text_property_stickiness): Use P_.
9386
9387 * ccl.c: Remove `emacs' conditionals.
9388 (ccl_backtrace_table): Fix size spec.
9389 (ccl_driver): Fix type errors.
9390
9391 2002-07-16 Ken Raeburn <raeburn@gnu.org>
9392
9393 * alloc.c (xstrdup, make_string, make_unibyte_string)
9394 (make_multibyte_string, build_string): String pointer args now
9395 point to const.
9396 * charset.c (find_charset_in_text, c_string_width):
9397 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9398 * fileio.c (report_file_error):
9399 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9400 (count_combining_before, count_combining_after, insert_1_both):
9401 (insert, insert_and_inherit, insert_string):
9402 (insert_before_markers, insert_before_markers_and_inherit):
9403 * lread.c (intern, oblookup, hash_string):
9404 * minibuf.c (temp_echo_area_glyphs):
9405 * search.c (fast_c_string_match_ignore_case):
9406 * sysdep.c (emacs_open, set_file_times):
9407 * xfaces.c (xstricmp):
9408 * xdisp.c (store_frame_title, string_char_and_length):
9409 (message_dolog, message2, message2_nolog, set_message): Likewise.
9410 (set_message_1): Cast message string argument to const pointer.
9411 * editfns.c (general_insert_function): Insertion function now
9412 takes pointer to const for input data.
9413 * charset.h (find_charset_in_text, c_string_width):
9414 (parse_str_as_multibyte): Declarations updated.
9415 * dispextern.h (xstricmp): Declaration updated.
9416 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9417 (count_size_as_multibyte, count_combining_before):
9418 (count_combining_after, insert_1, insert_1_both, message_dolog):
9419 (insert, insert_and_inherit, insert_before_markers)
9420 (insert_before_markers_and_inherit, set_message, message2):
9421 (message2_dolog, build_string, make_string, make_unibyte_string):
9422 (make_multibyte_string, intern, oblookup, report_file_error):
9423 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9424 (emacs_open, xstrdup): Declarations updated.
9425 * systime.h (set_file_times): Declaration updated.
9426
9427 * charset.c (find_charset_in_text, lisp_string_width): Use const
9428 for pointer to lisp string data.
9429 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9430 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9431 * coding.c (Ffind_coding_systems_region_interval):
9432 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9433 (Fmake_directory_internal, Fdelete_directory):
9434 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9435 * fontset.c (font_family_registry, fs_query_fontset):
9436 (list_fontsets):
9437 * frame.c (Fframe_parameter):
9438 * keyboard.c (cmd_error_internal):
9439 * keymap.c (Fdescribe_buffer_bindings):
9440 * lread.c (complete_filename_p, openp):
9441 * minibuf.c (Fminibuffer_complete_word):
9442 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9443 (face_before_or_after_it_pos, next_element_from_string):
9444 (get_overlay_arrow_glyph_row, display_mode_element):
9445 (decode_mode_spec_coding):
9446 * xterm.c (same_x_server): Likewise.
9447
9448 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9449 settings of non-existent fields.
9450
9451 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9452 copy a lisp value.
9453
9454 * lread.c (Fintern_soft): Use string macros instead of
9455 Lisp_String fields.
9456 * keyboard.c (echo_char, parse_modifiers_uncached):
9457 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9458 * textprop.c (validate_interval_range, interval_of): Likewise.
9459
9460 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9461
9462 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9463 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9464 XSTRING()->size_byte.
9465
9466 * lisp.h (SDATA, SREF): Produce rvalue.
9467 (SSET): New macro.
9468 * alloc.c (make_event_array): Use SSET for storing into a string.
9469 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9470 a string.
9471 * casefiddle.c (casify_object): Use SSET.
9472 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9473 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9474 address of string contents.
9475 * data.c (Faref): Use SDATA.
9476 (Faset): Use SDATA, SSET.
9477 * dired.c (directory_files_internal): Use SSET.
9478 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9479 (Fread_file_name): Use SREF, SSET.
9480 * fns.c (concat): Use SSET.
9481 (concat, Fdelete): Use SDATA.
9482 * insdel.c (insert_from_string_1): Use SDATA.
9483 * keyboard.c (Fevent_convert_list): Use SREF.
9484 * lread.c (Fload): Use SDATA, SSET.
9485 * macfns.c (validate_x_resource_name): Use SSET.
9486 * process.c (status_message): Use SSET.
9487 * search.c (wordify): Use SDATA.
9488 (Freplace_match): Use SREF.
9489 * w32fns.c (validate_x_resource_name): Use SSET.
9490 * xfns.c (validate_x_resource_name): Use SSET.
9491 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9492
9493 2002-07-16 Richard M. Stallman <rms@gnu.org>
9494
9495 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9496
9497 * xdisp.c (reconsider_clip_changes):
9498 Don't test prevent_redisplay_optimizations_p.
9499 (redisplay_internal): Test prevent_redisplay_optimizations_p
9500 along with clip_changed in some cases.
9501 (try_window_id): Likewise.
9502 (redisplay_window): New local var buffer_unchanged_p.
9503
9504 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9505
9506 * process.c (create_process): Test USG_SUBTTY_WORKS.
9507 (process_send_signal): Clean up handling of GID.
9508 Detect errors in ioctls meant to set GID.
9509
9510 * window.c (temp_output_buffer_show):
9511 Don't set prevent_redisplay_optimizations_p.
9512
9513 2002-07-15 Juanma Barranquero <lektu@terra.es>
9514
9515 * eval.c (Fdefvaralias): Add docstring argument.
9516
9517 2002-07-15 Ken Raeburn <raeburn@gnu.org>
9518
9519 * lisp.h (STRING_INTERVALS): Produce rvalue.
9520 (STRING_SET_INTERVALS): New macro.
9521 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9522 * fns.c (Fstring_as_multibyte): Likewise.
9523 * intervals.c (balance_possible_root_interval, delete_interval)
9524 (create_root_interval, copy_intervals_to_string): Likewise.
9525 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9526 instead of 0.
9527
9528 2002-07-14 Ken Raeburn <raeburn@gnu.org>
9529
9530 * lisp.h (STRING_SET_CHARS): New macro.
9531 (SCHARS, SBYTES): Produce rvalues.
9532 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9533 * fns.c (concat): Likewise.
9534 * lread.c (read_vector): Likewise.
9535
9536 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9537 (STRING_SET_UNIBYTE): New macro.
9538 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9539 length of -1) changed to use STRING_SET_UNIBYTE.
9540 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9541 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9542 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9543 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9544 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9545 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9546 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9547 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9548 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9549 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9550 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9551 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9552 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9553 unchanged for now.
9554
9555 2002-07-13 Kim F. Storm <storm@cua.dk>
9556
9557 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9558
9559 2002-07-12 Richard M. Stallman <rms@gnu.org>
9560
9561 * fileio.c (Fwrite_region): Doc fix.
9562
9563 * print.c (print_error_message): Don't handle Vsignaling_function here.
9564
9565 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9566 (command_loop_1): Avoid certain actions after memory-full error.
9567
9568 * eval.c (Fsignal): Don't call cancel_hourglass.
9569 For a memory-full error, don't call Vsignal_hook_function
9570 and don't set Vsignaling_function.
9571
9572 * process.c (process_send_signal): Add abort call.
9573
9574 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
9575
9576 * keymap.c (Fkey_binding): Fix typo.
9577
9578 2002-07-11 Richard M. Stallman <rms@gnu.org>
9579
9580 * alloc.c (Vmemory_full): New variable.
9581 (Vmemory_signal_data): Renamed from memory_signal_data.
9582 Uses changed.
9583 (syms_of_alloc): Defvar them.
9584 (memory_full, buffer_memory_full): Set Vmemory_full.
9585
9586 * lisp.h (Vmemory_full): Add declaration.
9587 (current_column, indented_beyond_p): Change declaration.
9588
9589 * indent.c (last_known_column): Declare as double, not float.
9590 (current_column, current_column_1, string_display_width)
9591 (position_indentation): Return `double'.
9592 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9593
9594 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9595 (back_to_previous_visible_line_start)
9596 (reseat_at_next_visible_line_start, next_element_from_buffer):
9597 Use `double', not `float', when calling indented_beyond_p.
9598
9599 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9600
9601 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9602
9603 2002-07-11 Juanma Barranquero <lektu@terra.es>
9604
9605 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
9606 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9607 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9608 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9609 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9610 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
9611
9612 2002-07-10 Juanma Barranquero <lektu@terra.es>
9613
9614 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9615 All callers changed.
9616
9617 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9618
9619 * data.c (Fdefalias): Add an optional `docstring' argument.
9620 (set_internal, Fsetq_default): Use XCAR/XCDR.
9621
9622 * composite.c (HASH_VALUE, HASH_KEY):
9623 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9624
9625 2002-07-09 Kenichi Handa <handa@etl.go.jp>
9626
9627 * callproc.c (Fcall_process): Fix previous change.
9628
9629 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9630
9631 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9632 Add support for hash-tables.
9633 (Ftry_completion): Return t even if the string appears multiple times.
9634
9635 * fns.c (Fnconc): Use XCDR.
9636 (Fprovide): Use CONSP and XCDR.
9637 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9638 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9639 (Fmake_hash_table): Accept `:size nil'.
9640 (Fmakehash): Delete: moved to subr.el.
9641 (syms_of_fns): Don't defsubr makehash.
9642
9643 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9644 (HASH_TABLE_SIZE): Move from fns.c.
9645
9646 2002-07-07 Richard M. Stallman <rms@gnu.org>
9647
9648 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9649 Instead just return 0 when there is something to be done.
9650 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9651 retry scrolling as if cursor were off the bottom.
9652 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9653 return CURSOR_MOVEMENT_MUST_SCROLL.
9654 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9655 go to try_to_scroll.
9656
9657 * buffer.c (Fbuffer_local_value): Store current value into its binding
9658 so we get the up-to-date value for the binding that is loaded.
9659
9660 * eval.c (Fdefmacro): Doc fix.
9661
9662 2002-07-05 Dave Love <fx@gnu.org>
9663
9664 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9665 correctly.
9666
9667 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9668 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9669 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9670 CCL_LookupCharConstTbl.
9671 (syms_of_ccl): Defvar translation-hash-table-vector.
9672
9673 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9674
9675 * xdisp.c: Remove unused variable `face'.
9676
9677 2002-07-04 Juanma Barranquero <lektu@terra.es>
9678
9679 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9680 obsolescence information.
9681
9682 2002-07-03 Andrew Choi <akochoi@shaw.ca>
9683
9684 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9685 pattern. Search cache first.
9686 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9687 for Japanese font.
9688 (XLoadQueryFont): Use it.
9689
9690 2002-07-02 Richard M. Stallman <rms@gnu.org>
9691
9692 * keymap.c (Fdefine_key): Doc fix.
9693
9694 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9695
9696 2002-07-02 Juanma Barranquero <lektu@terra.es>
9697
9698 * keymap.c (syms_of_keymap): Fix typo.
9699
9700 2002-07-01 Andrew Choi <akochoi@shaw.ca>
9701
9702 * s/darwin.h: Define POSIX_SIGNALS.
9703
9704 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9705 and FSRefMakePath to convert FSSpec returned with Apple Event to
9706 Posix pathname.
9707 (mac_initialize) [TARGET_API_MAC_CARBON]:
9708 Call init_required_apple_events and disable the `Quit' menu item
9709 provided automatically by the Carbon Toolbox.
9710
9711 2002-07-01 Dave Love <fx@gnu.org>
9712
9713 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9714 for K&R.
9715
9716 * xterm.c: Fix prototype for K&R.
9717
9718 * term.c (costs_set): Declare static, non-initialized for pcc.
9719
9720 2002-07-01 Richard M. Stallman <rms@gnu.org>
9721
9722 * keyboard.c (timer_last_idleness_start_time): New variable.
9723 (timer_start_idle): Set that.
9724 (read_key_sequence): Use that to reset timer_idleness_start_time
9725 to previous value.
9726
9727 * window.c (Frecenter): With arg, set optional_new_start.
9728
9729 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9730
9731 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9732 buffer for completion.
9733
9734 2002-06-29 Ken Raeburn <raeburn@gnu.org>
9735
9736 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9737
9738 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9739
9740 * keyboard.c (readable_filtered_events): New function that filters
9741 FOCUS_IN_EVENT depending on parameter.
9742 (readable_events): Calls readable_filtered_events, not filtering
9743 FOCUS_IN_EVENT.
9744 (get_filtered_input_pending): New function, filtering parameter passed
9745 to readable_filtered_events.
9746 (get_input_pending): Calls get_filtered_input_pending, not filtering
9747 FOCUS_IN_EVENT.
9748 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9749 FOCUS_IN_EVENT.
9750
9751 * xterm.h (struct x_output): Add focus_state.
9752
9753 * xterm.c (x_focus_changed): New function.
9754 (x_detect_focus_change): New function.
9755 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9756 EnterNotify and LeaveNotify to track X focus changes.
9757
9758 2002-06-28 Andreas Schwab <schwab@suse.de>
9759
9760 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9761
9762 2002-06-27 Kim F. Storm <storm@cua.dk>
9763
9764 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9765 (mode_line_string_face_prop): New variables.
9766 (store_mode_line_string): New function.
9767 (display_mode_element): Use store_mode_line_string to
9768 add mode-line string elements to mode_line_string_list
9769 when mode_line_string_list is non-nil.
9770 (Fformat_mode_line): Now returns propertized string by
9771 default. New arg NO-PROPS to ignore properties.
9772 (decode_mode_spec): Only add two dashes for %- in propertized
9773 mode-line string.
9774 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9775
9776 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9777
9778 * minibuf.c (minibuffer_completion_contents): Add return type.
9779
9780 2002-06-27 Juanma Barranquero <lektu@terra.es>
9781
9782 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9783
9784 2002-06-26 Juanma Barranquero <lektu@terra.es>
9785
9786 * fileio.c (read_file_name_cleanup): Add missing return.
9787
9788 2002-06-26 Richard M. Stallman <rms@gnu.org>
9789
9790 * window.c (Frecenter): Don't set force_start flag.
9791
9792 * minibuf.c (do_completion, Fminibuffer_complete_word)
9793 (Fminibuffer_completion_help): Complete just the text before point.
9794 (minibuffer_completion_contents): New function.
9795
9796 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9797
9798 * frame.c (frames_bury_buffer): Function deleted.
9799
9800 2002-06-25 Miles Bader <miles@gnu.org>
9801
9802 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9803 the end of callint_message, allow for a terminating '\0'.
9804
9805 2002-06-24 Juanma Barranquero <lektu@terra.es>
9806
9807 * w32select.c: Include composite.h
9808
9809 * w16select.c: Likewise.
9810
9811 2002-06-24 Kenichi Handa <handa@etl.go.jp>
9812
9813 * callproc.c (Fcall_process): If code detection is necessary,
9814 call detect_coding directly here.
9815
9816 * coding.c (detect_eol): Preserve coding->cmp_data.
9817
9818 * w16select.c (Fw16_get_clipboard_data):
9819 * w32fns.c (w32_to_x_font):
9820 * w32select.c (Fw32_get_clipboard_data):
9821 * xselect.c (selection_data_to_lisp_data):
9822 * xterm.c (XTread_socket): Disable composition handling.
9823
9824 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9825
9826 * print.c (temp_output_buffer_setup): Kill all local variables.
9827
9828 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9829
9830 * lread.c (Fread): Remove redundant and imprecise declaration.
9831
9832 * xfns.c (check_x_display_info): Use check_x_frame.
9833
9834 * .gdbinit (xprintsym): Use the new `xname' field.
9835 (xsymbol): Use it.
9836
9837 2002-06-22 Jason Rumney <jasonr@gnu.org>
9838
9839 * w32fns.c (file_dialog_callback): New function.
9840 (Fx_file_dialog): Allow selecting directories as well as files.
9841
9842 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9843
9844 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
9845 OpenBSD. Add support for mipseb-*-netbsd* machines.
9846
9847 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9848
9849 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9850 black and white before scrolling. Restore frame background and
9851 foreground color after scrolling.
9852 (do_window_update): Call XClearWindow before calling expose_frame.
9853 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9854 FRAME_FOREGROUND_PIXEL of frame.
9855
9856 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9857 test Mac command key as <ALT> key.
9858
9859 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9860
9861 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9862
9863 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9864 Lookup keys in function-key-map immediately so that key-translation-map
9865 can be applied earlier.
9866 Remove function_key_possible and key_translation_possible, replaced
9867 by checking `keytran_start < t'.
9868
9869 * .gdbinit (xsymbol): Use the new `xname' field.
9870
9871 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9872
9873 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9874 test Mac command key as <ALT> key.
9875
9876 * mac.c (do_applescript): Call initialize_applescript if necessary
9877 when first called. Dispose of result_desc only when there is no error.
9878 (Fdo_applescript): Use %d format specifier instead of %ld.
9879
9880 2002-06-16 Andrew Choi <akochoi@shaw.ca>
9881
9882 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9883 of FrontWindow for cases keyDown and autoKey.
9884
9885 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9886 Vdefault_fontset to Monaco with mac-roman coding.
9887
9888 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9889 init_process before and after inclusion of Carbon/Carbon.h, resp.
9890
9891 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9892 cursor_gc.
9893 (add_font_name_table_entry): New function.
9894 (init_font_name_table): Use add_font_name_table_entry; add italic,
9895 bold, and bold-italic entries for truetype fonts.
9896
9897 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9898 for Mac too.
9899 (try_font_list) [MAC_OS]: If no font matches given registry, try
9900 fonts with any registry matching face_family.
9901 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9902
9903 * s/darwin.h: If autoconf detects the Ncurses library, define
9904 LIBS_TERMCAP to -lncurses to use it.
9905
9906 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9907
9908 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9909
9910 2002-06-15 Richard M. Stallman <rms@gnu.org>
9911
9912 * window.c (Fset_window_configuration): Explicitly preserve
9913 the point value that new_current_buffer had at the start.
9914
9915 2002-06-14 Juanma Barranquero <lektu@terra.es>
9916
9917 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9918 Fix typos.
9919
9920 2002-06-14 Kim F. Storm <storm@cua.dk>
9921
9922 * insdel.c (insert_1_both, insert_from_string_1)
9923 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9924 insert happened in the end_unchanged region. Otherwise, the
9925 redisplay may be confused and duplicate the last line in the
9926 buffer [seen after save-buffer when require-final-newline==t].
9927
9928 2002-06-13 Jason Rumney <jasonr@gnu.org>
9929
9930 * w32.c (init_environment): Remove EMACSLOCKDIR.
9931 (stat): Swap _S_IFDIR and _S_IFREG.
9932
9933 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9934
9935 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9936 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9937 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9938 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9939 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9940 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9941 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9942 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9943 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9944 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9945 SELECTION_REQUEST_EVENT, selection_clear_event to
9946 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9947 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9948 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9949 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9950 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9951 no_event to NO_EVENT.
9952
9953 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9954
9955 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9956
9957 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9958
9959 * intervals.c (textget): Don't forget to `return'.
9960 (lookup_char_property): Use XCAR/XCDR.
9961
9962 2002-06-12 Juanma Barranquero <lektu@terra.es>
9963
9964 * xdisp.c (Fformat_mode_line): Fix typo.
9965
9966 2002-06-12 Kim F. Storm <storm@cua.dk>
9967
9968 * xdisp.c (Fformat_mode_line): New function.
9969 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9970 (store_frame_title_char, store_frame_title): Use unconditionally.
9971 (init_xdisp): Defsubr Fformat_mode_line.
9972 Initialize frame_title_buf etc. unconditionally.
9973
9974 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9975
9976 * keyboard.c (read_key_sequence):
9977 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9978 things through those maps after downcasing events.
9979 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9980 applies after function-key-map.
9981 Make sure that keytran can be done in the middle in the sequence.
9982 Be careful not to throw away events past the one we downcase.
9983
9984 * lread.c (read_integer): Remove unused var `tem'.
9985 (read1): Fix int/Lisp_Object mixup.
9986
9987 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9988
9989 2002-06-11 Richard M. Stallman <rms@gnu.org>
9990
9991 * keyboard.c (readable_events): Ignore any number of
9992 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9993
9994 2002-06-09 Miles Bader <miles@gnu.org>
9995
9996 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9997 (parse_rgb_list, tty_lookup_color): New functions.
9998 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9999 (color_distance, Fcolor_distance): New functions.
10000 (TTY_SAME_COLOR_THRESHOLD): New macro.
10001 (Qtty_color_standard_values): New variable.
10002 (syms_of_xfaces): Initialize new vars & functions.
10003
10004 2002-06-08 Colin Walters <walters@verbum.org>
10005
10006 * textprop.c (Vchar_property_alias_alist): New variable.
10007 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10008
10009 * intervals.c (lookup_char_property): New function for looking up
10010 overlay and text properties, created from textget.
10011 (textget): Use it.
10012
10013 * intervals.h (lookup_char_property): Declare.
10014 (Vchar_property_alias_alist): Declare.
10015
10016 * buffer.c (Foverlay_get): Use lookup_char_property.
10017
10018 2002-06-07 Sam Steingold <sds@gnu.org>
10019
10020 * xselect.c (lisp_data_to_selection_data): Fix last change:
10021 *data_ret is not a Lisp string, while unibyte_string is.
10022
10023 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10024
10025 * xselect.c (lisp_data_to_selection_data): Fix last change:
10026 set size_ret.
10027
10028 2002-06-07 Andreas Schwab <schwab@suse.de>
10029
10030 * m/amdx86-64.h: New file.
10031
10032 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10033
10034 * fns.c (Fstring_make_unibyte): Doc fix.
10035
10036 * xselect.c (lisp_data_to_selection_data): If the requested type
10037 is STRING, call string_make_unibyte to encode the selected text
10038 as a string.
10039
10040 * window.c (Fset_window_hscroll): Doc fix.
10041
10042 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10043
10044 * fileio.c (choose_write_coding_system):
10045 Call select-safe-coding-system properly.
10046
10047 2002-06-03 Richard M. Stallman <rms@gnu.org>
10048
10049 * xdisp.c (message_with_string): Error if STRING is not a string.
10050
10051 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10052
10053 * fileio.c (choose_write_coding_system): Pass FILE arg to
10054 Vselect_safe_coding_system_function.
10055
10056 2002-06-03 Ken Raeburn <raeburn@gnu.org>
10057
10058 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10059
10060 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10061
10062 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10063 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10064 * keymap.c (describe_command): Likewise.
10065 * minibuf.c (read_minibuf): Likewise.
10066
10067 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10068 Cast `current_column' return value to int.
10069 (back_to_previous_visible_line_start)
10070 (reseat_at_next_visible_line_start, next_element_from_buffer):
10071 Cast `indented_beyond_p' 3rd arg to float.
10072
10073 * indent.c (last_known_column): Now a float.
10074 (current_column_1, position_indentation, current_column)
10075 (string_display_width): Return float.
10076 (Fcurrent_column): Cast `current_column' return value to int.
10077 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10078 (indented_beyond_p): Third arg now a float.
10079 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10080
10081 * lisp.h (current_column): Now returns float.
10082 (indented_beyond_p): 3rd arg now a float.
10083
10084 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10085
10086 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10087 is Qcompound_text_with_extensions.
10088
10089 * xselect.c (lisp_data_to_selection_data): Always set selection
10090 type as string if x_encode_text returns streingp non-NULL.
10091
10092 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10093
10094 2002-05-30 Richard M. Stallman <rms@gnu.org>
10095
10096 * window.c (Fset_window_configuration): Correct the handling
10097 of point in current buffer, to work with multiple windows.
10098
10099 2002-05-29 Colin Walters <walters@verbum.org>
10100
10101 * lread.c (Fread_from_string): Don't depend on order of evaluation
10102 for C function parameters.
10103
10104 2002-05-28 Richard M. Stallman <rms@gnu.org>
10105
10106 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10107 way for blinked-off state and for a nonselected window.
10108
10109 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10110 instead, see if the new start pos is at beginning of line.
10111
10112 * fileio.c (Fwrite_region): If START is a string, don't
10113 make any annotations.
10114
10115 * eval.c (syms_of_eval): Doc fix.
10116
10117 2002-05-28 Colin Walters <walters@debian.org>
10118
10119 * emacs.c (USAGE1): Add --no-splash.
10120 (standard_args): Ditto.
10121
10122 2002-05-28 Colin Walters <walters@gnu.org>
10123
10124 * lread.c (readchar_count): New variable.
10125 (readchar): Increment it.
10126 (unreadchar): Decrement it.
10127 (read_multibyte): Decrement it.
10128 (Vread_with_symbol_positions): New variable.
10129 (Vread_symbol_positions_list): New variable.
10130 (read_internal_start): New function, created from Fread and
10131 Fread_from_string. Handle Vread_symbol_positions_list and
10132 Vread_with_symbol_positions.
10133 (readevalloop, Fread, Fread_from_string): Use it.
10134 (read1): Use readchar_count to add symbol positions to
10135 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10136 (syms_of_lread): DEFVAR_LISP and initialize them.
10137
10138 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10139 (substitute_object_recurse, substitute_object_in_subtree)
10140 (substitute_in_interval): Prototype.
10141 (read_multibyte): Return c if it's less than zero.
10142
10143 2002-05-28 Kim F. Storm <storm@cua.dk>
10144
10145 * fileio.c (Fread_file_name_internal): Added brute-force
10146 speed up for using predicate file-directory-p.
10147
10148 2002-05-28 Kim F. Storm <storm@cua.dk>
10149
10150 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10151 New variables.
10152 (syms_of_fileio): DEFVAR_LISP them.
10153 (read_file_name_cleanup): New unwind function.
10154 (Fread_file_name_internal): Only return completions satifying
10155 Vread_file_name_predicate. Temporarily unwind protect and rebind
10156 default-directory while checking completions against the predicate.
10157 (Fread_file_name): Added PREDICATE argument. Specbind it to
10158 Vread_file_name_predicate during completion.
10159 Call Vread_file_name_function to read the file name if non-nil.
10160
10161 * lisp.h (Fread_file_name): Now has 6 args.
10162
10163 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10164 predicate for Fread_file_name when reading directory name.
10165 Supply Qnil for predicate in other calls to Fread_file_name.
10166
10167 2002-05-26 Miles Bader <miles@gnu.org>
10168
10169 * term.c (tty_capable_p): New function.
10170 * dispextern.h (tty_capable_p): New function declaration.
10171 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10172 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10173
10174 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10175
10176 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10177 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10178 (Vwrite_region_annotate_functions): Docstring fix.
10179
10180 2002-05-23 Kim F. Storm <storm@cua.dk>
10181
10182 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10183 phys_cursor's hpos is overwritten. This is still not completely
10184 correct, as it doesn't really make sense to use hpos at all to
10185 get the cursor glyph (as that is relative to the width of the
10186 characters on the line, which may have changed during the update).
10187
10188 2002-05-22 Jason Rumney <jasonr@gnu.org>
10189
10190 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10191 Lisp_Object.
10192 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10193 Use modified enumfont_t struct.
10194
10195 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10196
10197 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10198 Handle the `hbar' cursor type.
10199 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10200
10201 * w32fns.c (Qhbar): New variable.
10202 (x_specified_cursor_type): Use it.
10203
10204 2002-05-21 Ken Raeburn <raeburn@gnu.org>
10205
10206 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10207 now, when the address is needed.
10208
10209 2002-05-21 Colin Walters <walters@gnu.org>
10210
10211 * Makefile.in (shortlisp): Add font-core.el.
10212
10213 2002-05-20 Richard M. Stallman <rms@gnu.org>
10214
10215 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10216
10217 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10218 equivalent key bindings here.
10219
10220 2002-05-20 Ken Raeburn <raeburn@gnu.org>
10221
10222 Change symbol structure to contain a lisp object for the symbol
10223 name:
10224 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10225 object field named "xname".
10226 (SYMBOL_NAME): New macro.
10227 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10228 name field.
10229 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10230 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10231 instead of name field.
10232 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10233 SYMBOL_NAME instead of XSYMBOL and name field.
10234 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10235 instead of XSYMBOL and name field.
10236 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10237 and SYMBOL_NAME instead of XSYMBOL and name field.
10238 * coding.c (Fread_coding_system, code_convert_region1)
10239 (code_convert_string1, code_convert_string_norecord)
10240 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10241 XSYMBOL and name field.
10242 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10243 (Fmake_variable_buffer_local, Fmake_local_variable)
10244 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10245 of XSYMBOL and name field.
10246 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10247 XSYMBOL and name field.
10248 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10249 instead of XSYMBOL and name field.
10250 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10251 XSYMBOL and name field.
10252 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10253 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10254 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10255 instead of XSYMBOL and name field.
10256 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10257 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10258 (parse_solitary_modifier, Fexecute_extended_command):
10259 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10260 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10261 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10262 of XSYMBOL and name field.
10263 (describe_command, describe_translation): Use SYMBOL_NAME and
10264 assignment instead of XSYMBOL and name field and XSETSTRING.
10265 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10266 instead of XSYMBOL and name field.
10267 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10268 name field and XSETSTRING.
10269 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10270 of XSYMBOL and name field.
10271 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10272 assignment instead of XSYMBOL and name field and XSETSTRING.
10273 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10274 XSTRING instead of XSYMBOL and name field.
10275 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10276 and XSTRING instead of XSYMBOL and name field.
10277 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10278 and XSTRING instead of XSYMBOL and name field.
10279 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10280 XSTRING instead of XSYMBOL and name field.
10281 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10282 of XSYMBOL and name field.
10283 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10284 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10285
10286 2002-05-19 Ken Raeburn <raeburn@gnu.org>
10287
10288 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10289 and XCDR real rvalues in most configurations.
10290
10291 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10292 Don't take the address of the cdr part of a cons cell; instead, track
10293 the parent cell and call XSETCDR, or set the variable for the head
10294 of the list if we haven't started down the list yet.
10295
10296 2002-05-19 Richard M. Stallman <rms@gnu.org>
10297
10298 * doc.c (reread_doc_file): Don't ask for confirmation.
10299
10300 2002-05-18 Jason Rumney <jasonr@gnu.org>
10301
10302 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10303 (xbm_load_image): Use it.
10304 (xbm_load): Ditto.
10305 (xbm_read_bitmap_data): Reverted to xfns.c version.
10306 From David Ponce <david@dponce.com>.
10307
10308 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10309
10310 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10311 2.02 and later.
10312
10313 2002-05-16 Juanma Barranquero <lektu@terra.es>
10314
10315 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10316
10317 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10318
10319 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10320 meaningful test.
10321 (read_char_minibuf_menu_prompt): Fix typo.
10322
10323 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10324
10325 * eval.c (Fcommandp): Doc fix.
10326
10327 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10328
10329 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10330 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10331 (Fset_keymap_parent): Gcpro a bit more.
10332 (access_keymap): Gcpro around meta_map call and around the main loop.
10333 (get_keyelt): Gcpro when following indirect references.
10334 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10335 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10336 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10337 Remove useless ad-hoc remap code.
10338
10339 2002-05-13 Richard M. Stallman <rms@gnu.org>
10340
10341 * search.c (search_buffer): Give up boyer moore search if inverse
10342 translation change charset_base.
10343
10344 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10345
10346 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10347 characters is carried over from the previous block of text, adjust
10348 coding->produced to account for the extra character.
10349
10350 2002-05-11 Andreas Schwab <schwab@suse.de>
10351
10352 * coding.c (intersection): Keep the elements of the returned list
10353 in the same order as in the first list.
10354
10355 2002-05-11 Kim F. Storm <storm@cua.dk>
10356
10357 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10358 only update cmm_size if realloc actually succeeds.
10359 Testing with initial size of 2 elements revealed that using
10360 realloc on GNU/Linux would cause a random trap in xmalloc
10361 later on, so I rewrote the code to use malloc/bcopy/free instead
10362 of realloc.
10363
10364 2002-05-10 Jason Rumney <jasonr@gnu.org>
10365
10366 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10367
10368 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10369
10370 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10371 parens, to ensure correct evaluation order.
10372
10373 2002-05-10 Kim F. Storm <storm@cua.dk>
10374
10375 * keymap.c (Vemulation_mode_map_alists): New variable.
10376 (syms_of_keymap): DEFVAR_LISP it.
10377 (current_minor_maps): Process keymap alists in that list before
10378 minor-mode-overriding-map-alist and minor-mode-map-alist.
10379
10380 2002-05-09 Richard M. Stallman <rms@gnu.org>
10381
10382 * search.c (Freplace_match): Doc fix.
10383
10384 2002-05-09 Kim F. Storm <storm@cua.dk>
10385
10386 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10387 Enlarge cursor rectangle drawn around image with non-zero relief.
10388
10389 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10390 Enlarge cursor rectangle drawn around image with non-zero relief.
10391
10392 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10393 Enlarge cursor rectangle drawn around image with non-zero relief.
10394
10395 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10396
10397 * xselect.c (lisp_data_to_selection_data): Don't set selection
10398 type if comes from the Lisp object's car. If the selection
10399 contains a pure ASCII text, always return QSTRING as its type.
10400
10401 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10402
10403 * mac.c (mac-cut-function): Doc fix.
10404
10405 2002-05-05 Richard M. Stallman <rms@gnu.org>
10406
10407 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10408
10409 2002-05-04 Jason Rumney <jasonr@gnu.org>
10410
10411 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10412 for event-click-count.
10413
10414 * process.c (init_process): Only add server subfeature if we can
10415 use non-blocking I/O.
10416
10417 2002-05-04 Andrew Choi <akochoi@shaw.ca>
10418
10419 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10420 repeatedly.
10421
10422 2002-05-03 Jason Rumney <jasonr@gnu.org>
10423
10424 * process.c (Fmake_network_process): Only support server sockets
10425 when we can make them non-blocking.
10426
10427 * s/ms-w32.h (HAVE_SELECT): Define.
10428
10429 * w32.h (FILE_NDELAY): New flag.
10430
10431 * w32.c (sys_getpeername, fcntl): New functions.
10432 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10433
10434 * w32proc.c: include sys/file.h.
10435
10436 2002-05-03 Colin Walters <walters@verbum.org>
10437
10438 * callproc.c (Vgame_score_directory): Renamed to
10439 Vshared_game_score_directory.
10440
10441 2002-04-30 Richard M. Stallman <rms@gnu.org>
10442
10443 * s/gnu.h [emacs]: Include stdio.h.
10444 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10445
10446 * eval.c (do_autoload): Error if called while preparing to dump.
10447
10448 * fns.c (Frequire): Error if need to load while preparing to dump.
10449
10450 2002-04-28 Colin Walters <walters@verbum.org>
10451
10452 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10453 Default to "~/.emacs.d/games".
10454
10455 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10456
10457 * lread.c (openp): Change arg exec_only to predicate.
10458 (build_load_history): Use XCAR/XCDR.
10459 (Flocate_file_internal): New fun.
10460 (syms_of_lread): Defsubr it.
10461 (Fload): Update call to openp.
10462
10463 * lisp.h (openp): Update prototype.
10464
10465 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10466 * w32proc.c (sys_spawnve):
10467 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10468 * w32.c (check_windows_init_file):
10469 * sound.c (Fplay_sound_internal):
10470 * process.c (Fstart_process):
10471 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10472 * mac.c (run_mac_command):
10473 * emacs.c (init_cmdargs):
10474 * callproc.c (Fcall_process): Update call to openp.
10475
10476 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10477
10478 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10479
10480 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10481
10482 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10483 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10484
10485 2002-04-28 Richard M. Stallman <rms@gnu.org>
10486
10487 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10488
10489 * eval.c (Fcommandp): New arg for_call_interactively.
10490 * lisp.h (Fcommandp): Declare new arg.
10491
10492 2002-04-28 Jason Rumney <jasonr@gnu.org>
10493
10494 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10495
10496 * w32.c (stat, fstat): Use file index information to generate
10497 inodes for directories where available.
10498
10499 2002-04-26 Andrew Choi <akochoi@shaw.ca>
10500
10501 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10502 [HAVE_CARBON]: Include Mac object files.
10503
10504 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10505 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10506 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10507 MAC_OSX, and MAC_OS instead of macintosh.
10508
10509 * editfns.c [MAC_OS8]: Include stdio.h.
10510
10511 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10512
10513 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10514 Apple Monaco.
10515
10516 * process.c: Declare QCfamily and QCfilter as extern.
10517 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10518 calling select.
10519
10520 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10521
10522 * tparam.c [MAC_OSX]: Don't define BC and UP.
10523
10524 * config.in [HAVE_CARBON]: Add.
10525
10526 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10527 Move here from mac/src and mac/inc.
10528
10529 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10530
10531 2002-04-26 Gerd Moellmann <gerd@gnu.org>
10532
10533 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10534 Compute phys_cursor_width from the x position returned
10535 by x_draw_glyhs, which is cheaper.
10536 (x_display_and_set_cursor): Compute the buffer-local value
10537 of `cursor-in-non-selected-windows' only when needed.
10538
10539 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10540
10541 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10542 cursor on a stretch glyph has a width that depends on
10543 x_stretch_cursor_p.
10544
10545 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10546
10547 * abbrev.c (abbrev-start-location): Doc fix.
10548
10549 * indent.c (Fvertical_motion): Fix last change.
10550
10551 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10552
10553 * indent.c (Fvertical_motion): Move to the start of the line
10554 containing PT before moving up or down.
10555
10556 2002-04-24 Gerd Moellmann <gerd@gnu.org>
10557
10558 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10559 case of writing a whole row, more or less analogous to the case of
10560 writing only parts of a row.
10561
10562 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10563 0 for NO_CURSOR.
10564
10565 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10566
10567 2002-04-23 Colin Walters <walters@verbum.org>
10568
10569 * buffer.c (syms_of_buffer): Doc fix.
10570
10571 2002-04-23 Gerd Moellmann <gerd@gnu.org>
10572
10573 * xterm.c (notice_overwritten_cursor): Handle the special case
10574 of the cursor being in the first blank non-text line at the
10575 end of a window.
10576
10577 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10578 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10579 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10580 bar cursors only, to make phys_cursor_width contain what its name
10581 suggests.
10582 (notice_overwritten_cursor): Consider the cursor image erased if
10583 the output area intersects the cursor image in y-direction.
10584
10585 2002-04-23 Simon Marshall <simon@gnu.org>
10586
10587 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10588 to XC_hand2.
10589
10590 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10591
10592 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10593
10594 2002-04-22 Kim F. Storm <storm@cua.dk>
10595
10596 * textprop.c (remove_properties): Fixed trap for malformed plist.
10597
10598 2002-04-22 Richard M. Stallman <rms@gnu.org>
10599
10600 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10601
10602 * window.c (make_window): Initialize height_fixed_p,
10603 last_cursor_off_p, and p->cursor_off_p slots.
10604
10605 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10606
10607 * fns.c (use-dialog-box): Doc fix.
10608
10609 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10610
10611 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10612 variables `row', `i' and `area'.
10613 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10614 toolkit library.
10615
10616 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10617
10618 * xfaces.c (clear_font_table): Don't free the default font of
10619 a frame even if it's on another display.
10620 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10621 that could be Qt.
10622
10623 2002-04-19 Juanma Barranquero <lektu@terra.es>
10624
10625 * indent.c (Fmove_to_column): Remove unused local variable
10626 `next_boundary_byte'.
10627 (current_column_1): Likewise.
10628
10629 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10630
10631 * msdos.c (Qhbar): New variable.
10632 (syms_of_msdos): Intern and staticpro it.
10633 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10634 cursor type.
10635
10636 2002-04-19 Dave Lambert <dlambert@acm.org>
10637
10638 Theses change implement an underscore-like (`hbar') cursor.
10639
10640 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10641
10642 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10643 Handle the `hbar' cursor type.
10644 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10645
10646 * xfns.c (Qhbar): New variable.
10647 (syms_of_xfns): Intern and staticpro it.
10648 (x_specified_cursor_type): Handle `hbar' cursor.
10649
10650 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10651 not defined.
10652
10653 2002-04-18 Richard M. Stallman <rms@gnu.org>
10654
10655 * textprop.c (remove_properties): New arg LIST allows scanning
10656 either a list or a plist.
10657 (interval_has_some_properties_list): New function, like
10658 interval_has_some_properties using list instead of plist.
10659 All callers changed.
10660 (Fremove_list_of_text_properties): New function.
10661 (syms_of_textprop): Defsubr it.
10662
10663 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10664
10665 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10666
10667 2002-04-17 Juanma Barranquero <lektu@terra.es>
10668
10669 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10670
10671 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10672
10673 * window.c (coordinates_in_window): Don't report on margin area
10674 if its width is zero.
10675
10676 2002-04-16 Jason Rumney <jasonr@gnu.org>
10677
10678 * w32fns.c (Fx_file_dialog): Decode file name before using.
10679
10680 * w32term.c (construct_drag_n_drop): Likewise.
10681
10682 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10683
10684 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10685 store load-history in pure space.
10686
10687 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10688
10689 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10690
10691 * xterm.c (Qlatin_1, Qutf_8): New vars.
10692 (syms_of_xterm): Initialize them.
10693 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10694 decoding the output of X*LookupString.
10695 Always use latin-1 to decode the output of XLookupString.
10696 Try Xutf8LookupString if XmbLookupString failed.
10697
10698 * region-cache.c (new_region_cache): Use BEG.
10699
10700 2002-04-16 Gerd Moellmann <gerd@gnu.org>
10701
10702 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10703 configuration files.
10704 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10705 returns 0.
10706
10707 2002-04-15 Andreas Schwab <schwab@suse.de>
10708
10709 * config.in: Regenerated using autoheader.
10710
10711 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10712 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10713 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10714 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10715 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10716 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10717 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10718 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10719 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10720 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10721 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10722 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10723 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10724 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10725 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10726 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10727 STACK_DIRECTION, now set by autoconf.
10728
10729 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10730
10731 * dispnew.c (marginal_area_string): Sort arguments.
10732
10733 * dispextern.h (marginal_area_string): Add prototype.
10734
10735 2002-04-13 Richard M. Stallman <rms@gnu.org>
10736
10737 * fileio.c (Finsert_file_contents):
10738 Don't call temp_output_buffer_setup--do just part, by hand.
10739
10740 * coding.c (run_pre_post_conversion_on_str):
10741 Don't call temp_output_buffer_setup--do just part, by hand.
10742
10743 * keyboard.c (command_loop_1): Don't call start_hourglass
10744 or cancel_hourglass when executing a macro.
10745
10746 * marker.c (count_markers): New function.
10747
10748 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10749 grow without limit. Move recently used elements to the front.
10750
10751 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10752
10753 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10754
10755 2002-04-12 Gerd Moellmann <gerd@gnu.org>
10756
10757 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10758 rows marginal areas.
10759 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10760 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10761
10762 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10763
10764 2002-04-12 Dave Love <fx@gnu.org>
10765
10766 * dispnew.c (marginal_area_string): New.
10767
10768 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10769 (Qleft_margin, Qright_margin): Declare.
10770 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10771
10772 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10773 note_mode_line_highlight and extended.
10774
10775 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10776 (make_lispy_event): Deal with mouse events in margins.
10777
10778 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10779
10780 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10781
10782 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10783 than deactivating the mark if tmm is set to `lambda'.
10784 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10785 Use a single event for HELP_EVENT.
10786 (Fexecute_extended_command): Save last_point_position.
10787
10788 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10789
10790 * lisp.h (Fpropertize): Add prototype.
10791
10792 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10793
10794 2002-04-10 Colin Walters <walters@verbum.org>
10795
10796 * config.in: Add HAVE_SHARED_GAME_DIR.
10797
10798 * callproc.c: (Vgame_score_directory): New variable.
10799 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10800
10801 2002-04-10 Richard M. Stallman <rms@gnu.org>
10802
10803 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10804
10805 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10806
10807 * minibuf.c (read_minibuf): Use empty_string.
10808 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10809 Short-circuit the search as soon as it "failed".
10810 (Fall_completions): Allow lambda forms and lists of strings for alist.
10811 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10812 when require_match is nil.
10813 (Ftest_completion): Rename from `test_completion' and export to elisp.
10814 Call the predicate also when alist is a list.
10815 Obey Vcompletion_regexp_list.
10816 (do_completion, Fminibuffer_complete_and_exit): Use it.
10817 (Fassoc_string): Rename from `assoc_for_completion'.
10818 Allow list of strings as well and export to elisp.
10819
10820 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10821
10822 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10823
10824 2002-04-08 Juanma Barranquero <lektu@terra.es>
10825
10826 * w32.c (sys_accept): Don't hide variable `s'.
10827
10828 2002-04-05 Gerd Moellmann <gerd@gnu.org>
10829
10830 * callint.c (Fcall_interactively): Use INTEGERP instead of
10831 NUMBERP for checking Vhistory_length.
10832
10833 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10834
10835 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10836 Doc fix to reflect it.
10837
10838 2002-04-04 Richard M. Stallman <rms@gnu.org>
10839
10840 * xdisp.c (display_mode_element): New arg RISKY.
10841 Disregard text props found or specified within a variable
10842 that isn't marked risky-local-variable.
10843 (Qrisky_local_variable): New variable.
10844 (syms_of_xdisp): Init and staticpro it.
10845
10846 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10847
10848 * undo.c (record_point): New fun.
10849 (record_delete, record_insert): Use it.
10850
10851 2002-04-03 Juanma Barranquero <lektu@terra.es>
10852
10853 * doc.c (Fdocumentation): Add missing parentheses.
10854 (Fdocumentation_property): Likewise.
10855
10856 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10857
10858 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10859 data is 0, just return nil.
10860
10861 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10862
10863 * msdos.c (syms_of_msdos): Fix last change with
10864 mouse_autoselect_window.
10865
10866 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10867
10868 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10869 mouse_autoselect_window.
10870
10871 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10872
10873 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10874 with system-specific keysyms. Use it also for unknown function keys.
10875
10876 * doc.c (reread_doc_file): Return whether reload was attempted.
10877 (Fdocumentation, Fdocumentation_property): Don't try to reload
10878 if the doc is 0 and only ask once.
10879
10880 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10881
10882 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10883
10884 * keyboard.c (read_char): If the event was Qselect_window,
10885 restore timer_idleness_start_time to its previous value.
10886
10887 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10888
10889 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10890
10891 * region-cache.c (new_region_cache): Use BEG.
10892
10893 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10894 Use BEG and BEG_BYTE.
10895
10896 * doc.c (get_doc_string): Return nil if the location is wrong.
10897 (reread_doc_file): New fun.
10898 (Fdocumentation, Fdocumentation_property):
10899 Call it if get_doc_string fails.
10900 (Fsnarf_documentation): Make it work for a dumped Emacs.
10901
10902 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10903 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10904
10905 * charset.c (Fstring): Allow 0 arguments.
10906
10907 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10908
10909 * process.c (DATAGRAM_CONN_P, list_processes_1)
10910 (Fprocess_datagram_address, Fset_process_datagram_address)
10911 (Fset_network_process_options, server_accept_connection):
10912 Fix some int/Lisp_Object confusions (thank you union types).
10913
10914 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10915
10916 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10917
10918 * w32term.c: Likewise.
10919 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10920
10921 * keyboard.c (Qselect_window): New symbol.
10922 (head_table): Use it.
10923 (keys_of_keyboard): Bound select-window event to handle-select-window.
10924 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10925
10926 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10927 (last_window): New variable.
10928 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10929 (note_mouse_movement): Remove reimplemented code in #if 0.
10930 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10931 Emacs windows.
10932
10933 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10934
10935 2002-03-31 Gerd Moellmann <gerd@gnu.org>
10936
10937 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10938 Callers changed.
10939
10940 2002-03-30 Richard M. Stallman <rms@gnu.org>
10941
10942 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10943 loop whenever it stops making progress.
10944
10945 * widget.c (set_frame_size): Don't call change_frame_size.
10946
10947 2002-03-30 Gerd Moellmann <gerd@gnu.org>
10948
10949 * dispnew.c (direct_output_for_insert):
10950 Call mark_window_display_accurate.
10951
10952 2002-03-29 Jason Rumney <jasonr@gnu.org>
10953
10954 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10955
10956 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10957
10958 * Makefile.in (lread.o): Depend on coding.h.
10959
10960 * lread.c (openp, Fload): Encode the file name before passing it
10961 to `stat', `access', and `emacs_open'.
10962 (openp): GCPRO the encoded file name. Don't recompute Lisp
10963 strings unnecessarily.
10964
10965 2002-03-29 Kim F. Storm <storm@cua.dk>
10966
10967 * fns.c (Flax_plist_put): Doc fix.
10968
10969 2002-03-28 Miles Bader <miles@gnu.org>
10970
10971 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10972
10973 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10974
10975 * process.c (set-network-process-options): Add usage.
10976 (make-network-process): Doc fix.
10977
10978 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10979
10980 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10981
10982 2002-03-26 Richard M. Stallman <rms@gnu.org>
10983
10984 * fns.c (Fsubstring_no_properties): New function.
10985 (Flax_plist_get, Flax_plist_put): New functions.
10986 (syms_of_fns): defsubr them.
10987
10988 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10989 don't test or alter w->update_mode_line.
10990
10991 * window.c (Fdisplay_buffer): Doc fix.
10992
10993 2002-03-24 Richard M. Stallman <rms@gnu.org>
10994
10995 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10996
10997 2002-03-24 Gerd Moellmann <gerd@gnu.org>
10998
10999 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11000 (Fdefmacro): Handle `(declare ...)'.
11001 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11002 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11003
11004 2002-03-24 Jason Rumney <jasonr@gnu.org>
11005
11006 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11007 (xbm_file_p): Add prototypes.
11008 (xbm_format, xbm_image_p): Sync with xfns.c.
11009 (reflect_byte): New function.
11010 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11011 (xbm_load_image): Create bitmaps with a depth of 1.
11012 (init_xfns): Enable XBM images.
11013
11014 2002-03-23 Jason Rumney <jasonr@gnu.org>
11015
11016 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11017 correctly. Do not pass up_modifier to keyboard buffer.
11018
11019 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11020
11021 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11022
11023 * Makefile.in (bootstrapclean): New target.
11024 (bootstrap-temacs, bootstrap-doc): Remove.
11025 (bootstrap-emacs): Use a bog-standard `temacs'.
11026 Don't bother to build a DOC file.
11027
11028 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11029
11030 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11031 in temacs even if !CANNOT_DUMP.
11032 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11033
11034 * alloc.c (check_pure_size): Only output a warning.
11035
11036 2002-03-22 Jason Rumney <jasonr@gnu.org>
11037
11038 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11039 supported.
11040
11041 * w32term.c (zv_bits): Declare as short, for word alignment.
11042 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11043 (syms_of_w32term): Define x-use-underline-position-properties.
11044
11045 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11046 (clear_image_cache): Block input, fix logic, clear matrices in
11047 all frames that share this cache.
11048
11049 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11050
11051 * emacs.c (main): Update the Copyright year in the blurb printed
11052 by "emacs --version".
11053
11054 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11055
11056 * xterm.c (XTread_socket): If XK_ISO_Lock and
11057 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11058 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11059
11060 2002-03-21 Kim F. Storm <storm@cua.dk>
11061
11062 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11063 menu-bar bindings in keymap and local-map properties _are_ used.
11064 But try keymap property first in accordance with 2002-01-03 patch.
11065 Added comment describing why this is not always reliable.
11066 (tool_bar_items): Ditto for tool-bar.
11067
11068 2002-03-21 Jason Rumney <jasonr@gnu.org>
11069
11070 * w32fns.c (x_clear_image_1): Disable color table code.
11071
11072 2002-03-21 Kim F. Storm <storm@cua.dk>
11073
11074 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11075 removed the wrong version of the DEFUN macro; fixed it.
11076
11077 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11078 Fmember rather than Fmemq).
11079 (Fprovide): Check that subfeatures is a list.
11080
11081 * process.c (QCfeature, QCdatagram): Removed variables.
11082 (QCtype, Qdatagram): New variables.
11083 (network_process_featurep): Removed function.
11084 (Fmake_network_process): Removed :feature check.
11085 Use :type 'datagram instead of :datagram t to create a datagram
11086 socket. This allows us to add other connection types (e.g. raw
11087 sockets) later in a consistent manner.
11088 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11089 supported subfeatures for feature make-network-process.
11090 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11091 Intern and staticpro QCtype and Qdatagram.
11092 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11093
11094 * xfns.c: (QCtype): Remove duplicate declaration and
11095 initialization (is now declared in process.c).
11096
11097 * w32fns.c: (QCtype): Remove duplicate declaration and
11098 initialization (is now declared in process.c).
11099
11100 2002-03-21 Richard M. Stallman <rms@gnu.org>
11101
11102 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11103 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11104 when jumping to `fail' to avoid undoing reg changes in the
11105 last iteration of the loop.
11106 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11107
11108 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11109 Depend on process.h.
11110
11111 2002-03-20 Jason Rumney <jasonr@gnu.org>
11112
11113 Most of the following changes are still conditional on HAVE_IMAGES
11114 which is not set by default on Windows.
11115
11116 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11117
11118 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11119 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11120 (four_corners_best, x_clear_image_1, x_clear_image)
11121 (x_alloc_image_color, postprocess_image)
11122 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11123 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11124 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11125
11126 * w32gui.h (struct XImage): Define.
11127
11128 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11129 extract mouse co-ordinates.
11130
11131 2002-03-20 Jason Rumney <jasonr@gnu.org>
11132
11133 * w32.c (init_winsock): Dynamically load new server and UDP
11134 socket functions.
11135 (socket_to_fd): New function.
11136 (sys_socket): Use it.
11137 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11138 (sys_recvfrom, sys_sendto): New wrapper functions.
11139
11140 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11141 and initialization.
11142
11143 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11144
11145 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11146
11147 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11148 Don't use "sun" as a variable, it's a predefined constant on Sun
11149 machines.
11150
11151 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11152
11153 * bytecode.c (Fbyte_code): Revert last change.
11154
11155 2002-03-19 Kim F. Storm <storm@cua.dk>
11156
11157 * makefile.w32-in (LIBS): Add $(WSOCK32).
11158 From David Ponce <dponce@voila.fr>.
11159
11160 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11161
11162 * process.c (wait_reading_process_input): Move variables `pname'
11163 and `pnamelen' down where they are used.
11164
11165 * bytecode.c (Fbyte_code): Discard unused computed value to
11166 prevent gcc warning.
11167
11168 * lisp.h (Fplist_member): Add prototype.
11169
11170 2002-03-18 Kim F. Storm <storm@cua.dk>
11171
11172 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11173 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11174
11175 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11176 Remove explicit GNU_LINUX settings for datagram support.
11177
11178 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11179
11180 * process.c (Fmake_network_process): Remove unused variable `sa'.
11181 Doc fix. Add usage:.
11182 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11183
11184 2002-03-17 Richard M. Stallman <rms@gnu.org>
11185
11186 * xdisp.c (cursor_type_changed): New variable.
11187 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11188 Clear it when clearing windows_or_buffers_changed.
11189 (try_cursor_movement, redisplay_window, try_window_id)
11190 (try_window_reusing_current_matrix): Test cursor_type_changed
11191 along with windows_or_buffers_changed.
11192
11193 * window.h (cursor_type_changed): New variable.
11194
11195 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11196 not update_mode_lines, and always set it to 1.
11197
11198 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11199 if no frames needed redrawing.
11200
11201 2002-03-17 Kim F. Storm <storm@cua.dk>
11202
11203 The following changes add support for network server processes,
11204 datagram connections, and local (unix) sockets.
11205
11206 * process.h (struct Lisp_Process): New member log.
11207 Doc fix: Member command used to indicate stopped network process.
11208 Doc fix: Member childp contains plist for network process.
11209 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11210
11211 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11212 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11213 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11214 New variables.
11215 (NETCONN1_P): New macro.
11216 (DATAGRAM_SOCKETS): New conditional symbol.
11217 (datagram_address): New array.
11218 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11219 (status_message): Use concat3.
11220 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11221 for a stopped network process.
11222 (Fset_process_buffer): Update contact plist for network process.
11223 (Fset_process_filter): Ditto. Don't enable input for stopped
11224 network processes. Server must listen, even if filter is t.
11225 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11226 New functions.
11227 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11228 (Fprocess_contact): Added KEY argument. Handle datagrams.
11229 (list_processes_1): Optionally show only processes with the query
11230 on exit flag set. Dynamically adjust column widths. Omit tty
11231 column if not needed. Report stopped network processes.
11232 Identify server and datagram network processes.
11233 (Flist_processes): New optional arg `query-only'.
11234 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11235 (conv_lisp_to_sockaddr, set_socket_options)
11236 (network_process_featurep, unwind_request_sigio): New helper functions.
11237 (Fprocess_datagram_address, Fset_process_datagram_address):
11238 (Fset_network_process_options): New lisp functions.
11239 (Fopen_network_stream): Removed. Now defined in simple.el.
11240 (Fmake_network_process): New lisp function. Code is based on previous
11241 Fopen_network_stream, but heavily reworked with new property list based
11242 argument list, support for datagrams, server processes, and local
11243 sockets in addition to old client-only functionality.
11244 (server_accept_connection): New function.
11245 (wait_reading_process_input): Use it to handle incoming connects.
11246 Do not enable input on a new connection if process is stopped.
11247 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11248 (send_process): Handle datagram sockets.
11249 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11250 network process is indicated by setting command field to t .
11251 (Fprocess_send_eof): No-op if datagram connection.
11252 (Fstatus_notify): Don't read input for a stream server socket or a
11253 stopped network process.
11254 (init_process): Initialize datagram_address array.
11255 (syms_of_process): Intern and staticpro new variables, defsubr new
11256 functions.
11257
11258 2002-03-16 Jason Rumney <jasonr@gnu.org>
11259
11260 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11261 startup case.
11262
11263 2002-03-16 Richard M. Stallman <rms@gnu.org>
11264
11265 * xdisp.c (redisplay_internal, redisplay_windows):
11266 Use list_of_error to call internal_condition_case_1.
11267 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11268 so as to catch all errors with no possibility of debugger redisplay.
11269 (list_of_error): New variable.
11270 (syms_of_xdisp): Init and staticpro it.
11271
11272 * print.c (print_object): Delete `\ ' from printed rep of frame.
11273
11274 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11275
11276 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11277 until its implementation is fixed.
11278
11279 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11280
11281 * xfns.c (png_load): Remove unused variable `gamma_str'.
11282
11283 2002-03-14 Richard M. Stallman <rms@gnu.org>
11284
11285 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11286
11287 2002-03-14 Miles Bader <miles@gnu.org>
11288
11289 * intervals.c (adjust_for_invis_intang): New function.
11290 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11291 work for dealing with invisible+intangible regions. Do so before
11292 and after both forward and backward movements, to handle both
11293 front-sticky and rear-sticky cases.
11294 * textprop.c (text_property_stickiness): Function moved here from
11295 `editfns.c'.
11296 * intervals.h (text_property_stickiness): New declaration.
11297 * editfns.c (char_property_eq): Function removed.
11298 (text_property_stickiness): Function moved to `textprop.c'.
11299
11300 2002-03-13 Jason Rumney <jasonr@gnu.org>
11301
11302 * config.in: Add STRFTIME_NO_POSIX2.
11303
11304 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11305 and %OX when underlying strftime does not.
11306
11307 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11308
11309 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11310 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11311 line) to avoid annoying flicker.
11312 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11313 (XTread_socket): Mark it static.
11314
11315 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11316
11317 2002-03-13 Kim F. Storm <storm@cua.dk>
11318
11319 * puresize.h (BASE_PURESIZE): Increase to 775000.
11320
11321 2002-03-12 Juanma Barranquero <lektu@terra.es>
11322
11323 * editfns.c (syms_of_editfns): Fix typo.
11324
11325 2002-03-12 Gerd Moellmann <gerd@gnu.org>
11326
11327 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11328 Include termopt.h for interrupt_input.
11329
11330 2002-03-11 Andreas Schwab <schwab@suse.de>
11331
11332 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11333
11334 2002-03-11 Gerd Moellmann <gerd@gnu.org>
11335
11336 * xterm.c (note_mouse_movement): Put code for
11337 x_autoselect_window_p in #if 0.
11338
11339 * lread.c (Fload): Don't assume that message_with_string uses the
11340 string it is given like a C string.
11341
11342 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11343
11344 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11345
11346 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11347 x_session_have_connection.
11348 (x_initialize): Add call to x_session_initialize.
11349
11350 * termhooks.h (enum event_kind): Add save_session_event.
11351
11352 * keyboard.c: Add Emacs event save_session_event.
11353
11354 * emacs.c (main): Add call to syms_of_xsmfns.
11355
11356 * lisp.h: Declare syms_of_xsmfns as extern.
11357
11358 * config.in: Add HAVE_X_SM.
11359
11360 * Makefile.in (LIBXT): Add -lSM -lICE
11361 if HAVE_X_SM and not USE_X_TOOLKIT.
11362 (XOBJ): New file xsmfns.c added.
11363
11364 * xsmfns.c: New file for X session management.
11365
11366 2002-03-09 Jason Rumney <jasonr@gnu.org>
11367
11368 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11369 read-only when setting modified time.
11370
11371 2002-03-08 Gerd Moellmann <gerd@gnu.org>
11372
11373 * xdisp.c (move_it_vertically_backward): At the end of the function,
11374 when moving forward by lines, treat terminal frames specially.
11375
11376 * keyboard.c (echo_char): Make sure to add a separator between
11377 keys even if echo_dash hasn't been called.
11378
11379 * xdisp.c: Use new string macros.
11380 (update_echo_area): Pass number of bytes to message3 instead of
11381 number of chars.
11382 (set_message_1): Don't access a string's size_byte directly.
11383 (decode_mode_spec_coding): Use number of bytes of eoltype string
11384 instead number of chars.
11385
11386 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11387
11388 2002-03-08 Juanma Barranquero <lektu@terra.es>
11389
11390 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11391 24-bit.
11392
11393 2002-03-06 Jason Rumney <jasonr@gnu.org>
11394
11395 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11396
11397 2002-03-06 Gerd Moellmann <gerd@gnu.org>
11398
11399 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11400 (cancel_echoing, echo_length, echo_truncate): Changed to
11401 work with new kboard definition.
11402 (echo_now): Use message3_nolog instead of message2_nolog.
11403
11404 * alloc.c (mark_kboards): Mark echo_string.
11405
11406 * keyboard.h (ECHOBUFSIZE): Removed.
11407 (struct kboard): Member echoptr removed, member echobuf renamed
11408 to echo_string.
11409
11410 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11411 message3 instead of message2 to display the message using STRING's
11412 text properties.
11413
11414 2002-03-05 Andreas Schwab <schwab@suse.de>
11415
11416 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11417
11418 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11419
11420 * frame.c (default-frame-alist): Explain that setting it doesn't
11421 affect existing frames.
11422
11423 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11424
11425 * indent.c (skip_invisible): Fix my brain fart.
11426
11427 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11428
11429 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11430
11431 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11432 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11433 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11434 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11435 and variables to use EMACS_INT instead of just int.
11436
11437 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11438
11439 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11440
11441 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11442 environment, pass it down with corrected value.
11443
11444 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11445
11446 * lread.c (read_filtered_event): Do not call start_hourglass
11447 before returning.
11448
11449 2002-03-04 Juanma Barranquero <lektu@terra.es>
11450
11451 * w32term.c (x_display_and_set_cursor): Fix typo.
11452
11453 2002-03-03 Richard M. Stallman <rms@gnu.org>
11454
11455 * fileio.c (Fmake_temp_name): Doc fix.
11456
11457 2002-03-03 Gary Wong <gtw@gnu.org>
11458
11459 * termcap.c [!emacs]: Replace ospeed for building standalone
11460 libtermcap, for binary compatibility.
11461
11462 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11463
11464 2002-03-03 Richard M. Stallman <rms@gnu.org>
11465
11466 * xrdb.c (file_p): Rename arg `path' to `filename'.
11467
11468 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11469 only if it is an integer.
11470
11471 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11472 If png_get_sRGB gives an answer, call png_set_gamma
11473 using the default image gamma value.
11474
11475 * lread.c (read1): When reading from a file, default string to
11476 multibyte only if it has some multibyte characters.
11477
11478 * print.c (print_object): Output multibyte chars 128...255
11479 using \x even if ! print_escape_multibyte.
11480
11481 * xdisp.c (display_mode_element): Move the places where
11482 bytepos, charpos, this, and lisp_string are set.
11483 Use lisp_string to set bytepos.
11484
11485 * xdisp.c (redisplay_internal):
11486 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11487
11488 * xdisp.c (display_mode_element): Merge properties specified with
11489 :propertize onto those that come with the string.
11490
11491 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11492
11493 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11494 automatic-hscrolling. Users changed.
11495 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11496 Users changed.
11497 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11498
11499 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11500
11501 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11502
11503 2002-03-02 Kim F. Storm <storm@cua.dk>
11504
11505 * window.c (Fminibuffer_selected_window): New function.
11506 (syms_of_window): Defsubr it.
11507
11508 2002-03-01 Kim F. Storm <storm@cua.dk>
11509
11510 * window.h (struct window): New member phys_cursor_width.
11511
11512 * window.c (make_window, replace_window): Init phys_cursor_width.
11513
11514 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11515 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11516
11517 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11518 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11519
11520 * lisp.h (GCPRO6): New macro.
11521
11522 * process.c (Fopen_network_stream): Use GCPRO6.
11523
11524 2002-03-01 Kim F. Storm <storm@cua.dk>
11525
11526 * process.c (Qconnect, Qfailed): New variables.
11527 (syms_of_process): Intern and staticpro them.
11528 (Fprocess_status): Document connect and failed return values.
11529 [NON_BLOCKING_CONNECT]: New conditional.
11530 (connect_wait_mask, num_pending_connects): New variables.
11531 (status_message): Convert Qfailed status.
11532 (Fopen_network_stream): Added support for non-blocking connect.
11533 New optional args: filter, sentinel, non_blocking. Doc updated.
11534 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11535 (deactivate_process): Handle pending non-blocking connect.
11536 (wait_reading_process_input): Poll for status of non-blocking
11537 connects. Exec sentinel directly when connect succeeds.
11538 (status_notify): Don't read process output if not yet connected.
11539
11540 2002-02-28 Kim F. Storm <storm@cua.dk>
11541
11542 * window.c: (minibuf_selected_window): Renamed from
11543 Vminibuf_selected_window. Users changed.
11544 (syms_of_window): Staticpro it.
11545
11546 2002-02-26 Kim F. Storm <storm@cua.dk>
11547
11548 The following changes add a new Vminibuf_selected_window variable
11549 which is similar to Vminibuf_scroll_window, but which is only set
11550 on entry to the minibuffer (from a non-minibuffer window):
11551
11552 * window.c: (Vminibuf_selected_window): New variable.
11553 (struct save_window_data): New member minibuf_selected_window.
11554 (Fset_window_configuration): Restore Vminibuf_selected_window.
11555 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11556 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11557 (compare_window_configurations): Compare minibuf_selected_window.
11558
11559 * window.h: (Vminibuf_selected_window): Declare extern.
11560
11561 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11562 entry to minibuffer or on entry from a non-minibuffer window.
11563
11564 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11565 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11566
11567 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11568 instead of Vminibuf_scroll_window when deciding in which window
11569 the region should be highlighted. Consequently, the region remains
11570 highlighteded even when a completion buffer is also displayed.
11571
11572 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11573
11574 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11575
11576 * xselect.c (Qcompound_text_with_extensions): Renamed from
11577 Qcompound_text_no_extensions.
11578 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11579
11580 2002-02-26 Juanma Barranquero <lektu@terra.es>
11581
11582 * w32proc.c (syms_of_ntproc): Doc fix.
11583
11584 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11585
11586 * intervals.h: Include "dispextern.h" unconditionally.
11587
11588 2002-02-24 Jason Rumney <jasonr@gnu.org>
11589
11590 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11591 and disp-table.elc.
11592 (lisp): Add emacs-lisp/backquote.elc.
11593
11594 2002-02-24 Kim F. Storm <storm@cua.dk>
11595
11596 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11597 The validation of the event type was too strict as it didn't
11598 allow string events; buffer names are used in bindings for
11599 menu-bar-select-buffer (see `menu-bar-update-buffers').
11600
11601 2002-02-23 Kim F. Storm <storm@cua.dk>
11602
11603 The following changes rework my patch of 2002-02-06 which
11604 added command remapping by entering the commands directly into
11605 the keymaps. Now, command remapping uses an explicit `remap'
11606 prefix in the keymaps, i.e. [remap COMMAND].
11607
11608 * keymap.c (Qremap, remap_command_vector): New variables.
11609 (is_command_symbol): Removed function.
11610 (Fdefine_key): No longer accept a symbol for KEY.
11611 Added validation of [remap COMMAND] argument for KEY.
11612 The DEF is no longer required to be a symbol when remapping a command.
11613 (Fremap_command): New function to remap command through keymaps.
11614 (Flookup_key): Perform command remapping initiated by
11615 Fremap_command directly for speed.
11616 (Fkey_binding): Use Fremap_command for command remapping.
11617 (where_is_internal): Handle new command remapping representation.
11618 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11619 staticpro them. Defsubr Fremap_command.
11620
11621 * keymap.h (Fremap_command): Declare extern.
11622 (is_command_symbol): Remove extern.
11623
11624 * keyboard.c (command_loop_1): Use Fremap_command for command
11625 remapping; now try command remapping for all symbols.
11626
11627 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11628
11629 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11630
11631 2002-02-23 Jason Rumney <jasonr@gnu.org>
11632
11633 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11634 on the string before encoding it.
11635 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11636 after decoding it.
11637
11638 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11639
11640 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11641
11642 * w32term.c (enter_timestamp): Remove unused static variable to
11643 prevent warning.
11644
11645 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11646
11647 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11648
11649 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11650
11651 * xselect.c (selection_data_to_lisp_data): Fix last change.
11652
11653 2002-02-22 Jason Rumney <jasonr@gnu.org>
11654
11655 * w32term.h (struct w32_output): New member menu_command_in_progress.
11656
11657 * w32menu.c (menubar_selection_callback): Free the menu and
11658 clear the menu_command_in_progress flag.
11659
11660 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11661 (menu_free_timer): New variable.
11662 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11663 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11664 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11665 menu command is in progress.
11666 <WM_COMMAND>: Set the menu_command_in_progress flag.
11667 Kill any menu_free_timer that is running.
11668
11669 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11670 Call ExtTextOutA rather than ExtTextOut.
11671
11672 2002-02-22 Eli Zaretskii <eliz@gnu.org>
11673
11674 * puresize.h (BASE_PURESIZE): Increase to 755000.
11675
11676 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11677
11678 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11679 on the string before encoding it.
11680 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11681 after decoding it.
11682
11683 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11684
11685 Support for ICCCM Extended Segments in X selections:
11686
11687 * xselect.c <Qcompound_text_no_extensions>: New variable.
11688 (syms_of_xselect): Intern and staticpro it.
11689 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11690 selection text.
11691 (lisp_data_to_selection_data): If next-selection-coding-system is
11692 compound-text-no-extensions, set the type of selection to be
11693 compound-text.
11694
11695 * xterm.h (x_encode_text): Update prototype.
11696
11697 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11698 callers changed. If SELECTIONP is non-zero, run the
11699 pre-write-conversion function before encoding the selection text.
11700
11701 2002-02-21 Kim F. Storm <storm@cua.dk>
11702
11703 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11704
11705 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11706 Correct composing of language-change event.
11707
11708 2002-02-20 Kim F. Storm <storm@cua.dk>
11709
11710 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11711 bindings at PT when building menu (the menu is not updated often
11712 enough for this to work reliable).
11713 (tool_bar_items): Likewise.
11714 (current_active_maps): Removed unused (and buggy) function.
11715
11716 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11717
11718 * xfns.c (gif_load): Use correct width and height for GIF images.
11719
11720 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11721
11722 * floatfns.c (Fatan): Accept an optional second arg and call
11723 atan2 if passed 2 args.
11724
11725 2002-02-18 Jason Rumney <jasonr@gnu.org>
11726
11727 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11728
11729 2002-02-17 Jason Rumney <jasonr@gnu.org>
11730
11731 * w32term.c (x_autoselect_window_p): New variable.
11732 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11733 (note_mouse_movement): Use it.
11734
11735 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11736
11737 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11738
11739 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11740 New variables.
11741 (syms_of_w32fns): Intern and staticpro them.
11742 (x_frame_parms) <"fullscreen">: New parameter.
11743 (x_fullscreen_move, x_set_fullscreen): New functions.
11744 (x_set_frame_parameters): Support Qfullscreen.
11745 (x_real_positions): Save x/y_pixels_diff frame params.
11746 (x_figure_window_size): Support full-screen frames.
11747 (Fx_create_frame): Default the fullscreen parameter.
11748
11749 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11750 (x_fullscreen_adjust): New functions.
11751 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11752 fullscreen. Call x_check_fullscreen_move, and set the
11753 want_fullscreen member of output_data.w32
11754 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11755
11756 * w32term.h: New enum for FULLSCREEN_* constants.
11757 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11758 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11759 (x-fullscreen-adjust): New prototype.
11760
11761 2002-02-17 Kim F. Storm <storm@cua.dk>
11762
11763 * frame.c: (Vmouse_highlight): New variable.
11764 (syms_of_frame): DEFVAR_LISP it.
11765
11766 * frame.h: (Vmouse_highlight): Declare extern.
11767
11768 * xterm.h (struct x_display_info): Add mouse_face_hidden.
11769
11770 * xterm.c (disable_mouse_highlight): Removed variable.
11771 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11772 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11773 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11774 and on after keyboard input.
11775 (x_term_init): Initialize mouse_face_hidden.
11776
11777 * msdos.h (struct display_info): Add mouse_face_hidden.
11778
11779 * msdos.c (disable_mouse_highlight): Removed variable.
11780 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11781 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11782 (internal_terminal_init): Initialize mouse_face_hidden.
11783 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11784 and on after keyboard input.
11785
11786 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
11787
11788 * w32term.c (disable_mouse_highlight): Removed variable.
11789 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11790 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11791 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11792 and on after keyboard input.
11793 (w32_initialize_display_info): Initialize mouse_face_hidden.
11794
11795 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
11796
11797 * msdos.c (last_mouse_window): New variable.
11798 (dos_rawgetc): Fix last change--if the mouse is in the same window
11799 as recorded in last_mouse_window, don't select this window.
11800
11801 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
11802
11803 * msdos.c (x_autoselect_window_p): New variable.
11804 (syms_of_msdos): Defvar it.
11805 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11806 which the last mouse movement occured, unless it is already selected.
11807
11808 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11809 New variables.
11810 (syms_of_xdisp): DEVFAR them.
11811 (hscroll_window_tree): Use automatic_hscroll_margin and
11812 Vautomatic_hscroll_step to compute the amount of window scrolling.
11813
11814 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11815
11816 * xterm.c (x-autoselect-window): New variable.
11817 (note_mouse_movement): Use it.
11818
11819 * keyboard.c: Do not include "systime.h" twice.
11820
11821 2002-02-15 Andreas Schwab <schwab@suse.de>
11822
11823 * puresize.h (BASE_PURESIZE): Increase to 9/5.
11824
11825 * alloc.c (NSTATICS): Increase to 1280.
11826
11827 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
11828
11829 * alloc.c (NSTATICS): Bump to 1026.
11830
11831 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11832 (Vx_super_keysym): New variables.
11833 (syms_of_xterm): DEFVAR_LISP them.
11834 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11835 variables to determine which keys to use for the various modifiers.
11836
11837 2002-02-13 Kim F. Storm <storm@cua.dk>
11838
11839 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11840 (mode_line_in_non_selected_windows): New variable.
11841 (syms_of_window): DEFVAR_BOOL it.
11842
11843 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11844 Use mode_line_in_non_selected_windows.
11845 (mode_line_in_non_selected_windows): Declare extern.
11846 (Vmode_line_in_non_selected_windows): Removed extern.
11847
11848 2002-02-13 Richard M. Stallman <rms@gnu.org>
11849
11850 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11851 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11852 (Fclear_this_command_keys): Doc fixes.
11853
11854 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11855 (update_face_from_frame_parameter): Increment face_change_count
11856 and windows_or_buffers_changed to force redisplay using changed faces.
11857
11858 * xdisp.c (QCpropertize): New variable.
11859 (mode_line_proptrans_alist): New variable.
11860 (display_mode_element): New arg PROPS; all calls changed.
11861 Implement this, for strings.
11862 Handle literal output of strings by sharing the
11863 main-line code for strings, using local var `literal'.
11864 Handle :propertize feature.
11865 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11866 mode_line_proptrans_alist.
11867
11868 2002-02-11 Kim F. Storm <storm@cua.dk>
11869
11870 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11871 (syms_of_window): DEFVAR_LISP it.
11872
11873 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11874 (CURRENT_MODE_LINE_FACE_ID): Use it.
11875 (Vmode_line_in_non_selected_windows): Declare extern.
11876
11877 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11878 to get mode line face.
11879
11880 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
11881
11882 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11883 variables; cus-start.el doesn't need them anymore.
11884
11885 2002-02-09 Kim F. Storm <storm@cua.dk>
11886
11887 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11888 reduction. This fixes a display problem where stray newlines were
11889 inserted in the window (corrected by C-l). Clarified code (IMHO).
11890
11891 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
11892
11893 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
11894
11895 * xdisp.c (display_mode_lines): Fix last change.
11896
11897 2002-02-09 Jason Rumney <jasonr@gnu.org>
11898
11899 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11900 match each other.
11901 (w32_load_system_font): Prevent Cleartype fonts from loading.
11902 (Fx_show_tip): Ensure tip frames are above other topmost windows.
11903
11904 2002-02-09 Kim F. Storm <storm@cua.dk>
11905
11906 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11907 (CURRENT_MODE_LINE_HEIGHT): Use it.
11908 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
11909
11910 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11911 (pos_visible_p, handle_face_prop): Likewise.
11912 (display_mode_lines): Likewise, but for the real selected window.
11913 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
11914
11915 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11916 in non-selected windows.
11917 (realize_basic_faces): Realize it.
11918 (syms_of_term): Intern and staticpro it.
11919
11920 2002-02-08 Kim F. Storm <storm@cua.dk>
11921
11922 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11923 Changed mail addresses to emacs-devel@gnu.org.
11924
11925 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
11926
11927 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11928 ~user, and there's no such user, don't discard everything before ~user.
11929
11930 * floatfns.c (Fround): Doc fix.
11931
11932 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11933
11934 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
11935
11936 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
11937
11938 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
11939
11940 2002-02-07 Kim F. Storm <storm@cua.dk>
11941
11942 * keymap.c (where_is_internal): Only check whether definition is
11943 remapped if it fulfills is_command_symbol.
11944
11945 2002-02-07 Andreas Schwab <schwab@suse.de>
11946
11947 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
11948
11949 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
11950
11951 2002-02-06 Kim F. Storm <storm@cua.dk>
11952
11953 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11954 defining command remapping. Doc updated.
11955 (Flookup_key): Remap command through keymap if KEY is a symbol.
11956 (is_command_symbol): New function.
11957 (Fkey_binding): Use it. New optional argument NO-REMAP.
11958 Doc updated. Callers changed. Perform command remapping via
11959 recursive call unless that arg is non-nil.
11960 (where_is_internal): New argument no_remap. Callers changed.
11961 Call recursively to find original key bindings for a remapped
11962 comand unless that arg is non-nil.
11963 (Fwhere_is_internal): New optional argument NO-REMAP.
11964 Doc updated. Callers changed. Pass arg to where_is_internal.
11965
11966 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11967 (is_command_symbol): Added prototype.
11968
11969 * keyboard.c (Vthis_original_command): New variable.
11970 (syms_of_keyboard): DEFVAR_LISP it.
11971 (command_loop_1): Set it, and perform command remapping.
11972
11973 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11974
11975 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
11976
11977 2002-02-06 Jason Rumney <jasonr@gnu.org>
11978
11979 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
11980
11981 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
11982
11983 * charset.c (get_charset_id): Use if-else instead of ?:.
11984
11985 2002-02-06 Richard M. Stallman <rms@gnu.org>
11986
11987 * filelock.c (S_ISLNK): Define if not defined.
11988
11989 2002-02-03 Richard M. Stallman <rms@gnu.org>
11990
11991 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
11992
11993 * lread.c (read1): Redesign strategy for force_multibyte and
11994 force_singlebyte. Now is_multibyte records whether read_buffer
11995 is multibyte. Encountering any multibyte character makes it so.
11996
11997 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
11998
11999 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12000 with the same sequence, map that sequence to f10 rather than f0.
12001
12002 2002-02-03 Andreas Schwab <schwab@suse.de>
12003
12004 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12005 latter never being defined on GNU/Linux.
12006
12007 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12008
12009 * xfaces.c (realize_default_face): Don't set the weight and slant of
12010 the default face to Qnormal, unless these attributes are unspecified.
12011
12012 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12013
12014 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12015 Call cancel_hourglass unconditionally.
12016
12017 * eval.c (Fsignal): Remove duplicated declaration of
12018 the variable `display_hourglass_p'.
12019
12020 2002-01-31 Richard M. Stallman <rms@gnu.org>
12021
12022 * editfns.c (region_limit): Nicer error message.
12023
12024 * coding.c (decode_composition_emacs_mule):
12025 Give up if NCOMPONENT gets too large to index `component'.
12026
12027 * callint.c (check_mark): New arg to specify clearer error message.
12028 Callers changed.
12029
12030 2002-01-27 Richard M. Stallman <rms@gnu.org>
12031
12032 * minibuf.c (Fcompleting_read): Doc fix.
12033
12034 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12035
12036 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12037 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12038 Fix doc-strings.
12039
12040 2002-01-26 Richard M. Stallman <rms@gnu.org>
12041
12042 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
12043
12044 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12045 and scroll_up_aggressively.
12046
12047 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12048
12049 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
12050
12051 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
12052
12053 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12054 (Fprevious_property_change, Fprevious_single_property_change):
12055 Stay within the narrowed-buffer boundaries.
12056
12057 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
12058
12059 * term.c (Ftty_display_color_cells): New function.
12060 (syms_of_term): Defsubr it.
12061 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12062 argument name to DISPLAY. Doc fix.
12063
12064 * dispextern.h: Add prototype for set_tty_color_mode and
12065 tty_setup_colors.
12066
12067 2002-01-24 Jason Rumney <jasonr@gnu.org>
12068
12069 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12070 If region left to draw is not what was expected, mark the frame as
12071 garbaged.
12072
12073 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12074 Combine the regions returned by BeginPaint and GetUpdateRect.
12075
12076 2002-01-23 Jason Rumney <jasonr@gnu.org>
12077
12078 * w32term.c (x_update_window_begin): Only hide caret if
12079 w32_use_visible_system_caret is set.
12080 (x_update_window_end): Only show caret if
12081 w32_use_visible_system_caret is set.
12082 (syms_of_w32term): Handle SystemParametersInfo call failing.
12083
12084 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12085
12086 2002-01-22 Richard M. Stallman <rms@gnu.org>
12087
12088 * unexelf.c (unexec): Define n so as to cause compilation error
12089 for the code where people have often written n instead of nn.
12090
12091 * .gdbinit (hookpost-run): Defined.
12092
12093 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12094
12095 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12096
12097 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12098
12099 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12100 if fullscreen is being set.
12101
12102 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12103
12104 * minibuf.c (Fminibuffer_contents)
12105 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12106 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12107
12108 2002-01-21 Richard M. Stallman <rms@gnu.org>
12109
12110 * window.c (check_frame_size): Fix minimum height calculation.
12111
12112 2002-01-20 Ken Raeburn <raeburn@gnu.org>
12113
12114 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12115 height before comparison.
12116 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12117
12118 2002-01-20 Jason Rumney <jasonr@gnu.org>
12119
12120 * w32term.c (w32_system_caret_width): Remove.
12121 (w32_use_visible_system_caret): New user flag.
12122 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12123 Windows reports a screen reader running.
12124 (x_update_window_begin): Hide the system caret.
12125 (x_update_window_end): Show the system caret.
12126 (x_display_and_set_cursor): Don't draw a cursor when
12127 w32_use_visible_system_caret is set. Do not adjust width.
12128
12129 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12130 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12131 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12132 the user requests it. Use system default width when creating.
12133 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12134
12135 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12136 New window messages.
12137
12138 2002-01-20 Richard M. Stallman <rms@gnu.org>
12139
12140 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12141
12142 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12143
12144 * doprnt.c (doprnt1): Fix typos in error call.
12145
12146 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12147
12148 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12149
12150 2002-01-20 Jason Rumney <jasonr@gnu.org>
12151
12152 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12153 that Windows returns. If a double check fails, try to guess how
12154 ExtTextOut is going to act.
12155
12156 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12157 in place of stricmp.
12158 (w32_list_synthesized_fonts): Removed.
12159 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12160 (struct enumfont_t): New element; list.
12161 (enum_font_cb2): List all style and charset variations of a font.
12162 (Fw32_select_font): New optional argument; include_proportional.
12163 Exclude vertical fonts. Exclude proportional fonts unless
12164 include_proportional is non-nil.
12165 (w32_enable_synthesized_fonts): Change to a boolean.
12166 (Fw32_send_sys_command): Doc fix.
12167
12168 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12169
12170 * dispnew.c (update_frame): Move the variable `tem' to the block
12171 where it is used.
12172
12173 2002-01-19 Jason Rumney <jasonr@gnu.org>
12174
12175 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12176 call to face-set-after-frame-default.
12177
12178 2002-01-18 Richard M. Stallman <rms@gnu.org>
12179
12180 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12181 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12182
12183 2002-01-17 Richard M. Stallman <rms@gnu.org>
12184
12185 * window.c (enlarge_window): When exceeding size of parent,
12186 directly delete all the siblings instead of trying to resize it.
12187
12188 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12189
12190 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12191
12192 2002-01-16 Henrik Enberg <henrik@enberg.org>
12193
12194 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12195
12196 2002-01-16 Kim F. Storm <storm@cua.dk>
12197
12198 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12199 is invisible. This can happen if cursor is on top line of a
12200 window, and we switch to a buffer with a header line.
12201
12202 * w32term.c (x_erase_phys_cursor): Ditto.
12203
12204 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12205
12206 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12207 `dont_resize' only when used.
12208
12209 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12210
12211 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12212
12213 * xdisp.c (display_mode_element): When computing charpos, depend
12214 on multibyteness of elt, not the text in field.
12215
12216 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12217
12218 * buffer.c (Fkill_all_local_variables):
12219 Increment `update_mode_lines' only once.
12220
12221 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12222
12223 * lisp.h (adjust_after_replace_noundo)
12224 (Fupdate_coding_systems_internal): Add prototypes.
12225
12226 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12227
12228 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12229
12230 Support for the --color command-line argument and tty-color-mode
12231 frame parameter:
12232
12233 * term.c (tty_default_color_capabilities, tty_setup_colors)
12234 (set_tty_color_mode): New functions.
12235 (term_init): Call tty_default_color_capabilities.
12236 (Qtty_color_mode_alist): New variable.
12237 (syms_of_term): Intern and staticpro it.
12238
12239 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12240 frames.
12241 (do_switch_frame): For termcap frames, switch the tty
12242 color mode as specified by the frame's parameters.
12243 (Qtty_color_mode): New variable.
12244 (syms_of_frame): Intern and staticpro it.
12245
12246 * emacs.c (USAGE2): Add the --color option.
12247 (standard_args): Ditto.
12248
12249 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12250
12251 * xterm.h (struct x_output): New members want_fullscreen,
12252 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12253 y_pixels_outer_diff.
12254 New enum for FULLSCREEN_* constants.
12255 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12256 is NULL.
12257 (x_fullscreen_adjust): Add prototype.
12258
12259 * emacs.c (USAGE2): Add the new full-screen arguments.
12260 (standard_args): Ditto.
12261
12262 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12263 New variables.
12264 (syms_of_xfns): Intern and staticpro them.
12265 (x_frame_parms) <"fullscreen">: New parameter.
12266 (x_fullscreen_move, x_set_fullscreen): New functions.
12267 (x_set_frame_parameters): Support for Qfullscreen.
12268 (x_real_positions): More accurate computation of the frame position.
12269 (x_figure_window_size): Support full-screen frames.
12270 (Fx_create_frame): Default the fullscreen parameter.
12271
12272 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12273 (XTread_socket) <Expose>: Call x_check_fullscreen.
12274 <ConfigureNotify>: Don't resize to fullscreen.
12275 Call x_check_fullscreen_move, and set the want_fullscreen member of
12276 output_data.x.
12277
12278 2002-01-13 Jason Rumney <jasonr@gnu.org>
12279
12280 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12281 for mice with more than 3 buttons.
12282
12283 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12284 (w32_read_socket): Handle new "XBUTTON" messages.
12285
12286 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12287 (syms_of_w32fns): DEFVAR_BOOL it.
12288 (w32_wnd_proc): Handle new "XBUTTON" messages.
12289
12290 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12291
12292 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12293
12294 2002-01-13 Andreas Schwab <schwab@suse.de>
12295
12296 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12297
12298 2002-01-12 Andreas Schwab <schwab@suse.de>
12299
12300 * .gdbinit (xbuffer): Remove address operator since data is now a
12301 pointer.
12302
12303 2002-01-11 Richard M. Stallman <rms@gnu.org>
12304
12305 * insdel.c (adjust_after_replace_noundo): New function.
12306
12307 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12308
12309 2002-01-09 Jason Rumney <jasonr@gnu.org>
12310
12311 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12312 when checking for multiple frames.
12313
12314 2002-01-08 Richard M. Stallman <rms@gnu.org>
12315
12316 * window.c (delete_window): Rewrite the code for changing the
12317 selected window to handle the case where WINDOW is not a leaf.
12318
12319 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12320
12321 * process.c (send_process): Set src_multibyte to 1 after the call
12322 top setup_coding_system, not before the call.
12323
12324 2002-01-07 Jason Rumney <jasonr@gnu.org>
12325
12326 * xmenu.c (set_frame_menubar, xmenu_show):
12327 (xdialog_show): Initialize wv->help to Qnil.
12328
12329 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12330 (w32_dialog_show): Initialize wv->help to Qnil.
12331
12332 2002-01-06 Jason Rumney <jasonr@gnu.org>
12333
12334 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12335
12336 * w32menu.c (w32_menu_display_help): Revert last change.
12337
12338 * xmenu.c (menu_highlight_callback): Revert last change.
12339
12340 2002-01-06 Andreas Schwab <schwab@suse.de>
12341
12342 * insdel.c (make_gap_larger): Make sure buffer size does not
12343 overflow range of int.
12344
12345 2002-01-05 Jason Rumney <jasonr@gnu.org>
12346
12347 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12348 OVERLAPS_P.
12349
12350 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12351
12352 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12353 to the left or to the right of the pointer, put it against
12354 the left screen edge.
12355 (x_frame_parms): Add missing braces around initializer.
12356
12357 * w32term.c (x_setup_relief_colors): Don't compute an image's
12358 background color if it doesn't have a Pixmap.
12359 (notice_overwritten_cursor): Don't depend on
12360 output_cursor and updated_area. Compare pixel coordinates with
12361 window's cursor pixel coordinates.
12362 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12363 Call notice_overwritten_cursor with new arg list.
12364 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12365 unconditionally.
12366 (x_draw_image_relief): Use predefined macro instead of
12367 constant when the value of `tool_bar_button_relief' is negative.
12368
12369 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12370
12371 2002-01-04 Richard M. Stallman <rms@gnu.org>
12372
12373 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12374
12375 2002-01-03 Richard M. Stallman <rms@gnu.org>
12376
12377 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12378 (Fkey_binding): Try the `keymap' property map first.
12379 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12380 minor mode bindings.
12381
12382 2002-01-03 Kim F. Storm <storm@cua.dk>
12383
12384 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12385
12386 2002-01-02 Richard M. Stallman <rms@gnu.org>
12387
12388 * keyboard.c (read_key_sequence): Handle the keymap property
12389 before minor mode maps.
12390
12391 * editfns.c (Fformat): Update thissize from field_width
12392 based on the actual width, in the string case.
12393
12394 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12395
12396 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12397 when used as truth value to prevent gcc warnings.
12398
12399 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12400 * w32proc.c: Include <config.h>.
12401
12402 2002-01-01 Andreas Schwab <schwab@suse.de>
12403
12404 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12405 not EMACS_INT, to make them compatible with DEFVAR_INT.
12406 * lisp.h (max_specpdl_size): Adjust declaration.
12407
12408 2002-01-01 Richard M. Stallman <rms@gnu.org>
12409
12410 * print.c (print_object): Test print_escape_nonascii only for
12411 unibyte strings.
12412 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12413 when outputting to a multibyte buffer.
12414
12415 2001-12-29 Richard M. Stallman <rms@gnu.org>
12416
12417 * print.c (print_object): In multibyte string, use hex escapes.
12418 Use octal only for unibyte strings.
12419 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12420
12421 * lread.c (read_escape): New arg BYTEREP for reporting whether
12422 escape forces unibyte or multibyte.
12423 (read1): When reading a string, take note of that info.
12424
12425 2001-12-29 Ken Raeburn <raeburn@gnu.org>
12426
12427 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12428 comparison to test lisp value returned by Fget.
12429
12430 2001-12-29 Richard M. Stallman <rms@gnu.org>
12431
12432 * lisp.h (max_specpdl_size): Add declaration.
12433
12434 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12435
12436 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12437 Handle modifier bits. Correct typo in error message.
12438
12439 2001-12-28 Richard M. Stallman <rms@gnu.org>
12440
12441 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12442 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12443 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12444 Update calls to Fdefine_abbrev.
12445 (write_abbrev): Update for changed data format.
12446 Don't list "system" abbrevs.
12447 (Fexpand_abbrev): Update use count with new data format.
12448 (describe_abbrev): Update for changed data format.
12449 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12450
12451 * config.in (HAVE_MBSINIT): Add #undef.
12452
12453 * strftime.c (mbsinit): Define as no-op if not available.
12454
12455 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12456 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12457
12458 * keymap.c (Flookup_key): Error message if key has wrong data type.
12459 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12460 (exclude_key): New variable.
12461
12462 2001-12-28 Gerd Moellmann <gerd@gnu.org>
12463
12464 * xterm.c (x_setup_relief_colors): Don't compute an image's
12465 background color if it doesn't have a Pixmap.
12466
12467 * xterm.c (notice_overwritten_cursor): Don't depend on
12468 output_cursor and updated_area. Compare pixel coordinates with
12469 window's cursor pixel coordinates.
12470 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12471 Call notice_overwritten_cursor with new arg list.
12472 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12473 unconditionally.
12474
12475 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12476 height of the cursor line to the amount to scroll.
12477
12478 2001-12-27 Richard M. Stallman <rms@gnu.org>
12479
12480 * intervals.c (set_point_both): The position after an invisible,
12481 intangible character is not an acceptable stopping point.
12482
12483 2001-12-27 Ken Raeburn <raeburn@gnu.org>
12484
12485 * window.c (enlarge_window): In new preserve_before code, convert
12486 CURBEG from lisp object to integer before doing arithmetic.
12487
12488 2001-12-27 Richard M. Stallman <rms@gnu.org>
12489
12490 * bytecode.c (Fbyte_code): Undo previous change.
12491
12492 2001-12-26 Kim F. Storm <storm@cua.dk>
12493
12494 * keyboard.c (record_char): Ignore duplicate help-echo events only
12495 separated by mouse-movement. When tracking mouse, only record
12496 first and last mouse-movement event in same window.
12497 Don't record mouse-movement events in keyboard macros.
12498
12499 2001-12-25 Richard M. Stallman <rms@gnu.org>
12500
12501 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12502 (Fenlarge_window): New arg PRESERVE_BEFORE.
12503
12504 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12505 instead of Fstring_as_unibyte.
12506
12507 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12508
12509 The following changes remove mocklisp support:
12510
12511 * mocklisp.h, mocklisp.c: Files removed.
12512
12513 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12514 `Qmocklisp' and `Qmocklisp_arguments'.
12515 Remove prototype of syms_of_mocklisp.
12516
12517 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
12518
12519 * callint.c: Do not include mocklisp.h.
12520 (Fcall_interactively): Do not test for mocklisp case.
12521
12522 * eval.c: Remove variables `Qmocklisp_arguments',
12523 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12524 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12525 Do not test for mocklisp case.
12526 (Fwhile): Remove unused variable `tem'.
12527 (syms_of_eval): Remove variable `moclisp-arguments'.
12528
12529 * data.c (wrong_type_argument): Remove mocklisp case.
12530
12531 * doc.c (Fdocumentation): Remove mocklisp case.
12532
12533 * emacs.c (main): Do not call syms_of_mocklisp.
12534
12535 2001-12-21 Richard M. Stallman <rms@gnu.org>
12536
12537 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12538 to the left or to the right of the pointer, put it against
12539 the left screen edge.
12540
12541 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
12542
12543 * Makefile.in (distclean): Remove .gdbinit if we are building
12544 outside the source tree.
12545
12546 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
12547
12548 * w32.c (emacs_root_dir): New function.
12549
12550 * msdos.c (emacs_root_dir): New function.
12551
12552 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12553 of the current drive as the fallback for default_directory.
12554
12555 * dired.c (file_name_completion): Run the elements of
12556 completion-ignored-extensions through ENCODE_FILE.
12557
12558 * lisp.h (scmp): Remove prototype, since it's now a static
12559 function private to dired.c.
12560
12561 2001-12-18 Richard M. Stallman <rms@gnu.org>
12562
12563 * dired.c (scmp): Function moved from minibuf.c.
12564 Delete multibyte handling--used only on encoded strings.
12565
12566 * minibuf.c (scmp): Function moved to dired.c.
12567
12568 * fns.c (merge): Add QUIT call.
12569
12570 2001-12-18 Dave Love <fx@gnu.org>
12571
12572 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12573 language/georgian.el.
12574
12575 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
12576
12577 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12578 lisp/Makefile.in:DONTCOMPILE.
12579
12580 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12581
12582 * xdisp.c (window_box_height): Do not return negative values.
12583 From Gerd Moellmann <gerd@gnu.org>.
12584
12585 * keyboard.c (head_table): Add missing braces around initializer.
12586
12587 * term.c (keys): Likewise.
12588
12589 * xfns.c (x_frame_parms, visual_classes): Likewise.
12590
12591 2001-12-17 Sam Steingold <sds@gnu.org>
12592
12593 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12594 patch (COMPOSING_P, not COMPOSING).
12595
12596 2001-12-17 Richard M. Stallman <rms@gnu.org>
12597
12598 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
12599
12600 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12601 before calling decode_coding.
12602
12603 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
12604
12605 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12606 instead of only for COMPOSITION_DISABLED.
12607
12608 2001-12-16 Richard M. Stallman <rms@gnu.org>
12609
12610 * alloc.c (pure_alloc): After overflow, allocate just a small block.
12611
12612 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
12613
12614 * buffer.h (struct buffer): New field `display_error_modiff'.
12615 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
12616
12617 * window.c (Frecenter): Clear display_error_modiff field.
12618
12619 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12620 Call redisplay_window, but not if display_error_modiff field says no.
12621 (redisplay_window_error): New function.
12622 (displayed_buffer): New variable.
12623 (redisplay_internal, redisplay_windows): Call the new functions
12624 instead of redisplay_window directly.
12625
12626 2001-12-15 Richard M. Stallman <rms@gnu.org>
12627
12628 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
12629
12630 2001-12-14 Andrew Innes <andrewi@gnu.org>
12631
12632 * makefile.w32-in (EMACSLOADPATH): Define.
12633 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
12634 (bootstrap-temacs): Remove dependency on bootstrap-clean.
12635
12636 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
12637
12638 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12639 parameter have a numeric value all the time.
12640
12641 * w32fns.c (x_report_frame_params): Likewise.
12642
12643 2001-12-12 Richard M. Stallman <rms@gnu.org>
12644
12645 * fileio.c (Fwrite_region): Doc fix.
12646
12647 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12648 (redisplay_internal): Call clear_image_cache only for window terminals.
12649
12650 2001-12-12 Gerd Moellmann <gerd@gnu.org>
12651
12652 * xdisp.c (move_it_vertically_backward): Change heuristic
12653 for the case that we didn't move far enough initially.
12654
12655 * window.c (Frecenter): Simplify computation in the case of window
12656 system frames and ARG < 0; use window_box_height.
12657
12658 2001-12-11 Richard M. Stallman <rms@gnu.org>
12659
12660 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12661 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
12662
12663 2001-12-11 Andrew Innes <andrewi@gnu.org>
12664
12665 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12666 arg is negative.
12667
12668 2001-12-11 Richard M. Stallman <rms@gnu.org>
12669
12670 * m/hp800.h: Split the __hpux conditional into the parts
12671 that are right for GNU/Linux too and the parts that are not.
12672 Use the former if GNU_LINUX.
12673 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
12674
12675 * s/gnu-linux.h (GNU_LINUX): Defined.
12676
12677 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12678
12679 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12680 `new style' [w/`doc:' keyword].
12681
12682 2001-12-10 Jason Rumney <jasonr@gnu.org>
12683
12684 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12685 before using.
12686
12687 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12688
12689 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12690 keyword].
12691
12692 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
12693
12694 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
12695
12696 * s/hpux10.h (srand48): Don't undefine.
12697
12698 2001-12-09 Jason Rumney <jasonr@gnu.org>
12699
12700 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12701 Add comment to explain where the struct came from.
12702 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12703 (add_menu_item): Process pop-up menus first to avoid memory leak.
12704 (add_menu_item, w32_menu_display_help): Use `help' field as
12705 Lisp_Object.
12706 (w32_free_submenu_strings): Only free owner-drawn strings.
12707
12708 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12709
12710 * COPYING: Moved back.
12711
12712 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12713 Add parentheses around && within ||.
12714
12715 * indent.c (compute_motion): Likewise.
12716
12717 * intervals.c (merge_properties_sticky): Likewise.
12718
12719 * coding.c (setup_coding_system, shrink_encoding_region)
12720 (Fdecode_sjis_char): Likewise.
12721
12722 2001-12-07 Andreas Schwab <schwab@suse.de>
12723
12724 * xdisp.c (display_mode_element): Don't read past end of string if
12725 it ends with '%'.
12726
12727 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12728 can hold.
12729
12730 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12731 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12732 type changed to Lisp_Object.
12733 (syms_of_data): DEFVAR_LISP them.
12734
12735 2001-12-07 Richard M. Stallman <rms@gnu.org>
12736
12737 * callproc.c (init_callproc): Set Vdata_directory based on the source
12738 location whenever Emacs was run uninstalled.
12739
12740 2001-12-06 Paul Eggert <eggert@twinsun.com>
12741
12742 * config.in (HAVE_WORKING_VFORK): New #undefs.
12743 * process.c (create_process):
12744 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12745 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12746 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12747 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12748 * m/intel386.h (HAVE_VFORK): Likewise.
12749 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12750 * m/mips.h (HAVE_VFORK): Likewise.
12751 * s/freebsd.h (vfork): Remove #define.
12752 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12753 * s/usg5-4-2.h: Fix comment about vfork.
12754
12755 2001-12-06 Richard M. Stallman <rms@gnu.org>
12756
12757 * s/hpux10.h (random): Add undef.
12758 (HAVE_RANDOM): Define it just once.
12759
12760 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
12761
12762 * eval.c: Undo last change: the standard syntax is not wanted.
12763
12764 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
12765
12766 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12767 scroll bars of the frame before deleting the frame itself. If the
12768 frame has a widget, delete the frame with XtDestroyWidget, and do
12769 not call XDestroyWindow before that.
12770
12771 2001-12-06 Kim F. Storm <storm@cua.dk>
12772
12773 * xfns.c (x_report_frame_params): Return actual fringe widths.
12774
12775 * w32fns.c (x_report_frame_params): Return actual fringe widths.
12776
12777 2001-12-05 Andrew Innes <andrewi@gnu.org>
12778
12779 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12780 excessively large.
12781
12782 * insdel.c (make_gap_larger): New function.
12783 (make_gap_smaller): New function.
12784 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12785 Call make_gap_smaller if arg is negative.
12786
12787 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
12788
12789 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12790 Pass a dummy argument when calling interrupt_signal.
12791 (parse_menu_item): Mark disabled items before checking for empty def.
12792 (read_char_minibuf_menu_prompt): Make safety more visible.
12793 (read_key_sequence): Add a `first_unbound' variable.
12794 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12795 unbound prefix as soon as we can detect it.
12796
12797 * doc.c (Fsnarf_documentation): Add prototype.
12798 (get_doc_string): Handle negative arguments.
12799 (Fdocumentation): Use AREF and ASIZE.
12800 Move the calls to get_doc_string to a single place.
12801 Don't confuse an interactive-spec for a docstring reference.
12802 (Fdocumentation_property): Take advantage of the fact that
12803 get_doc_string now ignores the sign of the docstring position.
12804
12805 * eval.c: Use standard syntax for usage in docstrings.
12806
12807 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12808
12809 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
12810
12811 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12812
12813 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12814 constant when the value of `tool_bar_button_relief' is negative.
12815
12816 2001-12-02 Richard M. Stallman <rms@gnu.org>
12817
12818 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12819 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
12820
12821 * fileio.c (read_non_regular): Delete Fsignal call.
12822
12823 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
12824
12825 * lisp.h (run_hook_list_with_args): Undo last change.
12826
12827 2001-12-01 Gerd Moellmann <gerd@gnu.org>
12828
12829 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
12830
12831 2001-12-01 Jason Rumney <jasonr@gnu.org>
12832
12833 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
12834
12835 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12836 [!WM_MOUSELEAVE]: Define.
12837
12838 * w32menu.c (current_popup_menu, get_menu_item_info):
12839 (set_menu_item_info): New vars.
12840 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12841 (w32_menu_show): Set current_popup_menu.
12842 (add_menu_item): Allocate new strings for owner-drawn menu items
12843 and help strings.
12844 Use owner-draw for disabled menu items again.
12845 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12846 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
12847
12848 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12849 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12850 <WM_EXITMENULOOP>: Free menu strings.
12851 <WM_MOUSELEAVE>: Stop tracking mouse.
12852 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
12853
12854 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12855 and mouse face.
12856
12857 2001-12-01 Kim F. Storm <storm@cua.dk>
12858
12859 The following changes add left-fringe and right-fringe
12860 frame parameters to adjust fringe widths, or remove one or
12861 both fringes.
12862
12863 * frame.h (struct frame): Remove trunc_area_pixel_width and
12864 trunc_area_cols fields.
12865 (Qleft_fringe, Qright_fringe): Declare.
12866 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
12867
12868 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12869 (syms_of_frame): Initialize them.
12870
12871 * window.c (coordinates_in_window): Handle separate left and right
12872 fringe widths.
12873
12874 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12875 and fringe_cols fields.
12876 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12877 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12878 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12879 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12880 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12881 (x_compute_fringe_widths): Add prototype.
12882
12883 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12884 fill fringe evenly with small dashes.
12885 (x_draw_fringe_bitmap): Clear background if necessary. Align and
12886 clip the new ZV bitmap to avoid jitter between rows.
12887 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12888 background. Don't draw fringe bitmaps if fringe width is zero.
12889 (x_compute_fringe_widths): New function.
12890 (x_new_font, x_set_window_size_1): Use it.
12891
12892 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12893 (x_set_frame_parameters): Process `font' parameter before other
12894 parameters as fringe widths depend on it.
12895 (x_set_fringe_width): New function.
12896 (x_figure_window_size): Use x_compute_fringe_widths.
12897 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12898 parameters.
12899
12900 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12901 (EmacsFrameSetCharSize): Ditto.
12902
12903 * w32term.h: Merged changes from xterm.h.
12904 * w32term.c: Merged changes from xterm.c.
12905 * w32fns.c: Merged changes from xfns.c.
12906
12907 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12908
12909 * COPYING: Removed.
12910
12911 2001-11-29 Dave Love <fx@gnu.org>
12912
12913 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12914 extra extra slot.
12915 (detect_coding_mask): Fix call of detect_coding_iso2022.
12916
12917 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12918
12919 * fileio.c (file-name-coding-system)
12920 (default-file-name-coding-system): Doc fix (links to referenced
12921 variables added).
12922
12923 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12924
12925 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12926 Add dummy uses of gcproN variables.
12927
12928 * category.c (describe_category, describe_category_1)
12929 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12930 (syms_of_category): Don't defsubr Sdescribe_categories.
12931
12932 2001-11-28 Richard M. Stallman <rms@gnu.org>
12933
12934 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
12935
12936 * Makefile.in (lispdir): New variable, referring to build dir.
12937 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
12938
12939 2001-11-28 Andrew Innes <andrewi@gnu.org>
12940
12941 * w32menu.c (w32_menu_display_help): Actually add the new argument
12942 OWNER.
12943
12944 2001-11-28 Jason Rumney <jasonr@gnu.org>
12945
12946 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12947 menu items. From David Ponce <dponce@wanadoo.fr>.
12948 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12949 conditionally.
12950 (w32_menu_display_help): New argument OWNER. Rewritten to store a
12951 help event in the owner frame's keyboard buffer.
12952
12953 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12954 (Fx_show_tip): Don't subtract last width from row width.
12955
12956 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12957 (w32_read_socket): Use EQ to compare frames.
12958
12959 2001-11-28 Gerd Moellmann <gerd@gnu.org>
12960
12961 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12962 OVERLAPS_P.
12963
12964 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12965
12966 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12967 `gcpro3' and `gcpro4'.
12968
12969 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
12970
12971 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12972
12973 * ccl.c: Use AREF and ASIZE.
12974
12975 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
12976
12977 * lisp.h (run_hook_list_with_args): Remove.
12978 (LIST_END_P): Fix call to wrong_type_argument.
12979 (make_fixnum_or_float): Use EMACS_INT rather than int.
12980
12981 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
12982
12983 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12984 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
12985
12986 * eval.c: Use AREF and ASIZE.
12987 (Ffetch_bytecode): Add the file name to the error message.
12988
12989 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12990 which match the end of the file-name.
12991 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12992 is not a valid env var, but leave it as is instead.
12993
12994 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12995 Make nil bindings in char-tables transparent.
12996 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
12997
12998 2001-11-26 Richard M. Stallman <rms@gnu.org>
12999
13000 * textprop.c (set_text_properties_1): Allow START, END in either order.
13001 Do nothing if range is empty.
13002
13003 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13004
13005 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13006 (clean): Not here.
13007
13008 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13009
13010 * textprop.c (set_text_properties_1): Clearly mark that the
13011 interval should not be empty.
13012
13013 * intervals.c (graft_intervals_into_buffer):
13014 Don't call set_text_properties_1 on an empty interval.
13015
13016 2001-11-25 Richard M. Stallman <rms@gnu.org>
13017
13018 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
13019
13020 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13021 don't lose the data in it.
13022
13023 2001-11-25 Juanma Barranquero <lektu@terra.es>
13024
13025 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
13026
13027 * buffer.c (Fkill_buffer): Likewise.
13028
13029 * print.c (temp_output_buffer_setup): Likewise.
13030
13031 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13032
13033 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
13034
13035 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
13036
13037 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13038 Niemitalo <kon@iki.fi>.
13039
13040 2001-11-25 Jason Rumney <jasonr@gnu.org>
13041
13042 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
13043
13044 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13045 (Fx_show_tip): Block input during frame creation.
13046 (Fx_show_tip, Fx_hide_tip): Enable.
13047
13048 2001-11-24 Richard M. Stallman <rms@gnu.org>
13049
13050 * lread.c (Fload): Detect recursive load error for more than 3
13051 nestings of the same file.
13052 (Vrecursive_load_depth_limit): Variable deleted.
13053 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
13054
13055 2001-11-24 Jason Rumney <jasonr@gnu.org>
13056
13057 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13058 mouse position if either left or top is not specified.
13059
13060 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13061 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13062 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13063 (my_create_tip_window): Assign tip_window.
13064 (x_create_tip_frame): Use same defaults as X.
13065 (compute_tip_xy): Remove unused variable. Use full screen width.
13066 (Fx_show_tip): Do not double height. Call ShowWindow directly.
13067
13068 * w32term.c (x_after_update_window_line): Doc fix.
13069 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13070 frames.
13071 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
13072
13073 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13074 for all Windowed systems.
13075
13076 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
13077
13078 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13079 realized, use the initial screen colors to clear the screen.
13080
13081 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13082
13083 * textprop.c (Fset_text_properties): Remove unused variables
13084 `unchanged', `prev_changed', `s' and `len'.
13085
13086 * search.c (Freplace_match): Remove unused variable `inslen'.
13087
13088 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13089
13090 2001-11-22 Jason Rumney <jasonr@gnu.org>
13091
13092 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13093 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13094 (my_create_tip_window): New function.
13095 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13096 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13097
13098 2001-11-20 Jason Rumney <jasonr@gnu.org>
13099
13100 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13101 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13102
13103 * w32fns.c (Vw32_system_coding_system): Remove.
13104 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13105
13106 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13107
13108 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13109 after build_annotations.
13110
13111 * syntax.c (describe_syntax): Add dummy arg.
13112 (describe_syntax_1): Update call to describe_vector.
13113
13114 * category.c (describe_category): Add dummy arg.
13115 (describe_category_1): Update call to describe_vector.
13116
13117 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13118 (describe_command, describe_translation): Add dummy second param.
13119 (describe_map): Call elt_describer with two arguments.
13120 (describe_vector_princ): Add `fun' parameter.
13121 Call it instead of the hardcoded `princ'.
13122 (describe_vector): Add arg `args'.
13123 Pass it as a new second argument to elt_describer.
13124
13125 * keymap.h (describe_vector): Update prototype.
13126
13127 * frame.c: Don't include keymap.h any more.
13128 (keys_of_frame): Remove.
13129
13130 * lisp.h (keys_of_frame): Remove declaration.
13131
13132 * emacs.c (main): Don't call `keys_of_frame' any more.
13133
13134 2001-11-14 Andreas Schwab <schwab@suse.de>
13135
13136 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13137 if defined, 0 otherwise.
13138 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13139 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13140
13141 2001-11-19 Richard M. Stallman <rms@gnu.org>
13142
13143 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13144
13145 2001-11-18 Jason Rumney <jasonr@gnu.org>
13146
13147 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13148 (x_draw_bar_cursor): If the background color of the glyph under
13149 the cursor equals the frame's cursor color, use the glyph's
13150 foreground color for drawing the bar cursor.
13151 (x_after_update_window_line): Clear internal border in different
13152 circumstances.
13153 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13154 (w32_draw_relief_rect): Correct relief by 1 pixel.
13155 (x_set_glyph_string_background_width):
13156 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13157 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13158 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13159 if cursor_in_non_selected_windows is false.
13160 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13161 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13162 Notice if cursor gets overwritten.
13163 (notice_overwritten_cursor): Renamed from
13164 note_overwritten_text_cursor. Rewritten to take glyph widths
13165 into account, and to take X positions as parameters.
13166 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13167 around call to x_draw_glyphs.
13168 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13169 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13170 color to use for image glyph reliefs.
13171 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13172 (glyph_rect): Remove unused variable `area'.
13173
13174 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13175 some items.
13176 (x_set_internal_border_width): Set frame garbaged when window
13177 doesn't exist yet.
13178 (Fx_create_frame): Accept zero tool_bar_button_relief.
13179 (x_clear_image_1, four_corners_best, image_background)
13180 (image_background_transparent): New functions.
13181 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13182 (gs_format): Add `:background' entry.
13183 (lookup_image): Set IMG's background color if specified.
13184 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13185 when appropriate.
13186 (x_clear_image_1): Reset `background_valid' and
13187 `background_transparent_valid' fields.
13188 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13189 calculating it here. Set IMG's background_transparent field.
13190 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13191 (enum png_keyword_index): Add PNG_BACKGROUND.
13192 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13193 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13194 (enum gif_keyword_index): Add GIF_BACKGROUND.
13195 (enum gs_keyword_index): Add GS_BACKGROUND.
13196 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13197 Pre-calculate image background color where necessary.
13198 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13199 Use display info's n_cbits entry for screen depth.
13200 (Fx_show_tip): Remove unused variables `buffer', `top',
13201 `left', `max_width' and `max_height'.
13202
13203 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13204
13205 2001-11-18 Gerd Moellmann <gerd@gnu.org>
13206
13207 * puresize.h (BASE_PURESIZE): Increase to 750000.
13208
13209 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13210
13211 * frame.c (Fframe_live_p): Doc fix.
13212
13213 2001-11-18 Richard M. Stallman <rms@gnu.org>
13214
13215 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13216 (message_dolog_marker3): New static variables hold three markers.
13217 (syms_of_xdisp): Initialize and staticpro them.
13218 (message_dolog): Use message_dolog_marker1..3 instead of
13219 allocating markers each time. Unchain them when done.
13220
13221 2001-11-17 Richard M. Stallman <rms@gnu.org>
13222
13223 * doc.c (Fsnarf_documentation): Doc fix.
13224
13225 2001-11-17 Andreas Schwab <schwab@suse.de>
13226
13227 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13228
13229 2001-11-17 Richard M. Stallman <rms@gnu.org>
13230
13231 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13232
13233 2001-11-17 Jason Rumney <jasonr@gnu.org>
13234
13235 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13236
13237 2001-11-17 Gerd Moellmann <gerd@gnu.org>
13238
13239 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13240 with invalid position.
13241
13242 2001-11-16 Richard M. Stallman <rms@gnu.org>
13243
13244 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13245
13246 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13247 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13248 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13249
13250 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13251
13252 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13253
13254 * fileio.c (build_annotations): Split off the tail.
13255 (build_annotations_2): New fun. Extracted from build_annotations.
13256 (Fwrite_region): Split the call to build_annotations into two
13257 calls to build_annotations and build_annotations_2.
13258
13259 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13260
13261 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13262 clear_waiting_for_input with argument.
13263
13264 * xterm.h (x_update_cursor): Remove duplicated prototype.
13265
13266 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13267
13268 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13269
13270 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13271
13272 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13273
13274 * fileio.c (choose_write_coding_system): New fun, extracted
13275 from Fwrite_region.
13276 (Fwrite_region): Use it.
13277
13278 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13279 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13280 (ml_apply, find_handler_clause): Add prototype.
13281
13282 2001-11-16 Eli Zaretskii <eliz@gnu.org>
13283
13284 * config.in: Add #undef HAVE_COFF_H.
13285
13286 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13287 Required for ISC 4.1.
13288
13289 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13290
13291 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13292 Andrew Wiseman <a.wiseman@btclick.com>.
13293
13294 2001-11-16 Kim F. Storm <storm@cua.dk>
13295
13296 The following changes are made to clean up the various internal
13297 references to the fringes to actually use the term `fringe' for
13298 them. Previously, they were called `flags areas', `bitmap areas',
13299 `left/right side of windows', or implicitly as `flags' or
13300 `bitmaps':
13301
13302 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13303 Comments fixed. Use renamed symbols.
13304
13305 * dispnew.c: Comment fix. Use renamed symbols.
13306
13307 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13308 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13309 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13310
13311 * msdos.c: Comment fix.
13312
13313 * w32fns.c: Use renamed symbols.
13314
13315 * w32term.c: Comment fixes. Use renamed symbols.
13316 (fringe_bitmap_type): Renamed from bitmap_type.
13317 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13318 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13319 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13320
13321 * w32term.h: Comment fixes. Use renamed symbols.
13322 (fringes_extra): Renamed from flags_areas_extra.
13323 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13324 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13325 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13326 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13327 (FRAME_X_LEFT_FRINGE_WIDTH):
13328 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13329 (FRAME_X_RIGHT_FRINGE_WIDTH):
13330 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13331
13332 * widget.c: Use renamed symbols.
13333
13334 * window.c: Comment fixes. Use renamed symbols.
13335 (coordinates-in-window-p): Doc fix.
13336
13337 * xdisp.c: Comment fixes. Use renamed symbols.
13338
13339 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13340
13341 * xfns.c: Use renamed symbols.
13342
13343 * xterm.c: Comment fixes. Use renamed symbols.
13344 (fringe_bitmap_type): Renamed from bitmap_type.
13345 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13346 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13347 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13348
13349 * xterm.h: Comment fixes. Use renamed symbols.
13350 (fringes_extra): Renamed from flags_areas_extra.
13351 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13352 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13353 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13354 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13355 (FRAME_X_LEFT_FRINGE_WIDTH):
13356 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13357 (FRAME_X_RIGHT_FRINGE_WIDTH):
13358 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13359
13360 2001-11-15 Jason Rumney <jasonr@gnu.org>
13361
13362 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13363 work for most menu items. From David Ponce
13364 <david.ponce@wanadoo.fr>.
13365
13366 2001-11-15 Gerd Moellmann <gerd@gnu.org>
13367
13368 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13369 Some x_set_* function expect to be called even if old and new
13370 value are equal.
13371
13372 * xdisp.c (build_desired_tool_bar_string): Accept zero
13373 tool_bar_button_relief.
13374
13375 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13376
13377 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13378
13379 * xterm.c (x_draw_bar_cursor): If the background color of the
13380 glyph under the cursor equals the frame's cursor color, use
13381 the glyph's foreground color for drawing the bar cursor.
13382
13383 * dispnew.c (direct_output_forward_char): Fix character/byte
13384 position comparison.
13385
13386 2001-11-15 Miles Bader <miles@gnu.org>
13387
13388 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13389 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13390 Update arguments to find_field.
13391 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13392 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13393 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13394 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13395
13396 2001-11-14 Richard M. Stallman <rms@gnu.org>
13397
13398 * editfns.c (Fpropertize): Allow call with 1 arg.
13399
13400 * dispextern.h (image_background, image_background_transparent):
13401 Conditionalize on HAVE_X_WINDOWS.
13402
13403 2001-11-13 Richard M. Stallman <rms@gnu.org>
13404
13405 * print.c (Fprin1_to_string): Doc fix.
13406
13407 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13408
13409 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13410
13411 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13412
13413 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13414
13415 * eval.c (syms_of_eval): Doc fix.
13416
13417 * coding.c (syms_of_coding): Doc fix.
13418
13419 * doc.c (Fsnarf_documentation): Doc fix.
13420
13421 * dispnew.c (syms_of_display): Doc fix.
13422
13423 * category.c (Fget_unused_category): Doc fix.
13424
13425 * buffer.c (syms_of_buffer): Doc fixes.
13426
13427 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13428
13429 * print.c (prin1, print): Doc fix.
13430
13431 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13432
13433 * fontset.h: Remove declarations of variables
13434 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13435
13436 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13437 `Vclip_large_size_font'.
13438
13439 2001-11-13 Jason Rumney <jasonr@gnu.org>
13440
13441 * w32fns.c: Doc fix.
13442
13443 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13444
13445 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13446
13447 * fns.c: Doc fix.
13448
13449 * emacs.c: Doc fix.
13450
13451 * coding.c: Doc fix.
13452
13453 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13454 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13455 `new style' [w/`doc:' keyword].
13456
13457 2001-11-12 Richard M. Stallman <rms@gnu.org>
13458
13459 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13460 LeaveNotify events. Only FocusIn and FocusOut do that now.
13461 (x_display_and_set_cursor): Do display hollow cursors in active
13462 minibuffer windows when they are not selected.
13463
13464 2001-11-12 Jason Rumney <jasonr@gnu.org>
13465
13466 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13467 * w32term.c: Change doc-string comments to `new style'
13468 [w/`doc:' keyword]. Doc fixes.
13469
13470 * w32fns.c: Don't define max.
13471 (Fx_open_connection): Only execute once.
13472
13473 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13474
13475 * ccl.c: Change macros to use do-while block instead of if-else.
13476 Use braces to follow GNU Coding Standards.
13477
13478 2001-11-11 Richard M. Stallman <rms@gnu.org>
13479
13480 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13481
13482 * lread.c (read_escape): Use end_of_file_error for reporting eof.
13483
13484 * insdel.c (replace_range): Use adjust_markers_for_replace
13485 instead of adjust_markers_for_delete and adjust_markers_for_insert.
13486
13487 * intervals.h: Declare set_text_properties and set_text_properties_1.
13488
13489 * textprop.c (set_text_properties_1): New subroutine
13490 broken out of set_text_properties.
13491 (set_text_properties): Use set_text_properties_1.
13492
13493 * intervals.c (graft_intervals_into_buffer):
13494 Use set_text_properties_1 to clear out properties.
13495
13496 * search.c (Freplace_match): Use replace_range to insert
13497 and delete. Don't request property inheritance from
13498 surrounding text.
13499
13500 2001-11-10 Jason Rumney <jasonr@gnu.org>
13501
13502 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
13503 vertical fonts. Allow them if face name is explicitly specified.
13504 Do not give up if we find a font that cannot be converted to an xlfd.
13505
13506 2001-11-10 Gerd Moellmann <gerd@gnu.org>
13507
13508 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13509 instead of malloc/free.
13510
13511 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13512
13513 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13514 Coding Standards.
13515 (Finternal_set_lisp_face_attribute): Likewise.
13516
13517 * buffer.c (Fbury_buffer): Likewise.
13518
13519 * indent.c (current_column_1): Remove unused variable `prev_col'.
13520
13521 * coding.c (encode_coding): Use precomputed value of `src'.
13522 (encode_coding): Remove unused variable `src_end'.
13523 (code_convert_region): Remove unused variables `count'.
13524
13525 2001-11-07 Jason Rumney <jasonr@gnu.org>
13526
13527 * w32term.c (x_display_and_set_cursor): Do not move system caret
13528 if cursor_glyph is NULL.
13529
13530 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13531
13532 * keymap.c (access_keymap): Fix compilation error.
13533
13534 2001-11-07 Miles Bader <miles@gnu.org>
13535
13536 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
13537
13538 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13539
13540 * intervals.c (graft_intervals_into_buffer):
13541 Remove #ifdef'd-out code.
13542 (graft_intervals_into_buffer): Remove unused variable `middle'.
13543
13544 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13545 code (eval-current-buffer).
13546 Change doc-string comments to `new style' [w/`doc:' keyword].
13547
13548 2001-11-06 Richard M. Stallman <rms@gnu.org>
13549
13550 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
13551
13552 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
13553
13554 * lread.c (read1): Fix behavior with nested backquoting.
13555
13556 * keyboard.c (make_lispy_event): Check integerness and fix
13557 Lisp_Object/int mixup.
13558
13559 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13560
13561 * fns.c (copy_hash_table): Remove unused variable `v'.
13562
13563 * fontset.c (fontset_font_pattern): Remove unused variable
13564 `family_registry'.
13565
13566 * indent.c (current_column_1): Remove unused variable `prev_col'.
13567
13568 2001-11-05 Richard M. Stallman <rms@gnu.org>
13569
13570 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
13571
13572 * buffer.c (Fkill_buffer): Don't delete auto save file
13573 if buffer is modified.
13574
13575 2001-11-05 Andrew Innes <andrewi@gnu.org>
13576
13577 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13578 CHECK_NUMBER_CDR.
13579
13580 2001-11-05 Richard M. Stallman <rms@gnu.org>
13581
13582 * unexelf.c (unexec): Minor changes; clean up comments.
13583
13584 2001-11-05 Sam Steingold <sds@gnu.org>
13585
13586 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
13587
13588 2001-11-05 Andreas Schwab <schwab@suse.de>
13589
13590 * sound.c (sound_perror): Save errno from being clobbered.
13591
13592 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
13593
13594 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13595 the program image directly.
13596
13597 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13598
13599 * buffer.h (Fbuffer_local_value): Add prototype.
13600
13601 2001-11-04 Richard M. Stallman <rms@gnu.org>
13602
13603 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13604 and CHECK_BUFFER.
13605
13606 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13607 (record_char): Likewise.
13608
13609 * keyboard.c (make_lispy_event): Don't insist a drag event must
13610 move to a different buffer position. Instead, check for moving at
13611 least double_click_fuzz.
13612
13613 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
13614
13615 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
13616
13617 * indent.c (current_column_1, Fmove_to_column): Separate the code
13618 for display-table glyphs from the code for buffer text, to fix
13619 bugs in the former.
13620
13621 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
13622
13623 * buffer.c (Fbuffer_local_value): New function.
13624 (syms_of_buffer): Defsubr it.
13625
13626 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13627 value of `cursor-in-non-selected-windows'.
13628
13629 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13630 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13631 (syms_of_xdisp): Initialize it.
13632
13633 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13634
13635 * xfns.c (Fx_create_frame): Doc fix.
13636
13637 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13638 keyword].
13639
13640 * eval.c (top_level_value, top_level_set): Remove commented and
13641 #ifdef'd-out code.
13642 (Fdefvar): Fix usage in doc-string.
13643
13644 2001-11-03 Richard M. Stallman <rms@gnu.org>
13645
13646 * xfns.c: Include unistd.h, if it exists.
13647
13648 * editfns.c: Move the include of ctype.h after unistd.h.
13649
13650 * gmalloc.c: Test BROKEN_PROTOTYPES.
13651
13652 2001-11-03 Ken Raeburn <raeburn@gnu.org>
13653
13654 * lisp.h (CHECK_STRING_CAR): New macro.
13655 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13656 treating XCAR and XCDR as lvalues.
13657 (openp): Use CHECK_STRING_CAR.
13658 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
13659
13660 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
13661
13662 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13663 (SIGMASKTYPE): Define.
13664
13665 * syssignal.h (sigunblock): Don't define if already defined.
13666
13667 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13668
13669 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13670 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13671 Fix typos in comments.
13672
13673 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13674 and #ifdef'd-out code.
13675 Fix and reindent comments.
13676
13677 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
13678
13679 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13680 argument `i' in macros.
13681
13682 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13683 `i' in macros.
13684
13685 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13686 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13687 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13688 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13689 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13690 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13691 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13692 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13693 in macros.
13694
13695 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13696 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13697 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13698 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13699 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13700 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13701 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13702 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13703 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13704 (remove unused second argument).
13705
13706 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
13707
13708 * syntax.c (describe_syntax): New wrapper.
13709 (Finternal_describe_syntax_value): Rename from describe_syntax.
13710 Don't insert space at front and \n at the end.
13711 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
13712
13713 * regex.c (re_wctype): Try to fix some warnings.
13714 (regcomp, regexec): Don't forget the __restrict.
13715
13716 2001-11-02 Richard M. Stallman <rms@gnu.org>
13717
13718 * textprop.c (Fget_char_property): Doc fix.
13719
13720 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13721
13722 * process.c (Fstart_process): Add usage to doc-string.
13723
13724 * data.c (Fsetq_default): Ditto.
13725
13726 * callint.c (Finteractive): Ditto.
13727
13728 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
13729
13730 * macros.c: Don't include keymap.h any more.
13731
13732 2001-11-01 Richard M. Stallman <rms@gnu.org>
13733
13734 * data.c (Fmake_local_variable): Doc fix.
13735
13736 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13737 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
13738
13739 * keymap.c (Fdescribe_buffer_bindings): Print character property
13740 bindings along with or instead of the buffer local map.
13741 Make the overriding maps override what they should.
13742
13743 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13744
13745 * window.c (grow_mini_window): Fix typo in comment.
13746
13747 2001-11-01 Gerd Moellmann <gerd@gnu.org>
13748
13749 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13750 (XTset_vertical_scroll_bar): Likewise.
13751
13752 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13753 instead of IMAGE_BACKGROUND.
13754
13755 * xfns.c (four_corners_best): Reindent.
13756
13757 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
13758 Handle :box so that it is possible to specify sexprs.
13759
13760 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13761
13762 * s/hpux11.h: New file.
13763
13764 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13765
13766 * emacs.c (USAGE1): Show command line option --no-window-system
13767 instead of --no-windows in usage.
13768 (standard_args): Rename --no-windows to --no-window-system.
13769 (bug_reporting_address): Follow Emacs coding conventions.
13770
13771 * eval.c (Fcommandp): Doc fix.
13772 Change doc-string comments to `new style' [w/`doc:' keyword].
13773
13774 * frame.c (Fframe_live_p): Doc fix.
13775
13776 * buffer.c (selective-display-ellipses): Doc fix.
13777
13778 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13779
13780 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13781
13782 * xfaces.c (realize_x_face): If C is not a single-byte character,
13783 set the face's colors_copied_bitwise_p instead of the defaulted_p
13784 members which have a different meaning.
13785 (free_face_colors): Do nothing for a face whose colors have been
13786 copied bitwise.
13787
13788 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
13789
13790 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13791
13792 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13793 [w/`doc:' keyword].
13794
13795 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13796
13797 * fns.c (require_unwind): Return Lisp_Object.
13798
13799 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13800
13801 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13802 (last-input-char): Revert doc-string to be the same as the
13803 doc-string of `last-input-event'.
13804
13805 * xdisp.c: Fix typos in comments.
13806
13807 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13808
13809 * window.c (grow_mini_window): Handle case that the root
13810 window is already smaller than the nominal mininum height.
13811
13812 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13813
13814 * emacs.c (main): Don't call keys_of_macros any more.
13815
13816 * lisp.h (keys_of_macros): Remove.
13817
13818 * macros.c (keys_of_macros): Remove.
13819
13820 * xfaces.c (Fface_attribute_relative_p): Declare args.
13821
13822 2001-10-30 Jason Rumney <jasonr@gnu.org>
13823
13824 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13825 (enum_font_cb2): Ignore fonts with vertical orientation.
13826
13827 2001-10-30 Richard M. Stallman <rms@gnu.org>
13828
13829 * keyboard.c (Finput_pending_p): Doc fix.
13830
13831 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13832
13833 * xterm.c (x_after_update_window_line): Don't run the code
13834 clearing in borders for rows whose visible height is 0.
13835
13836 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13837 resized_p flag is set. If not set, use the much less flickering
13838 method previously used.
13839
13840 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13841
13842 * frame.h (struct frame) <resized_p>: New member.
13843
13844 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13845 as large as the number of bytes to convert.
13846
13847 * lread.c (to_multibyte): New function.
13848 (read1): Use it.
13849
13850 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13851
13852 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13853
13854 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13855
13856 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
13857 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13858 if the row's fill_line_p is set and drawing the last glyph with
13859 DRAW_IMAGE_{RAISED,SUNKEN}.
13860
13861 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13862
13863 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13864
13865 * xmenu.c: Include coding.h and charset.h.
13866 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13867 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13868 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13869 Explicitly set wv->help. Use `TRUE' rather than `True'.
13870 (menu_help_callback): Use empty_string.
13871
13872 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13873 (Fx_popup_dialog): Explicitly init f.
13874 (w32_menu_display_help): Use empty_string.
13875
13876 2001-10-29 Richard M. Stallman <rms@gnu.org>
13877
13878 * fns.c (Frequire): Detect recursive try to require the same
13879 feature 3 or more levels deep, and get error.
13880 (require_unwind): New subroutine.
13881 (require_nesting_list): New variable.
13882 (syms_of_fns): Init and staticpro it.
13883
13884 * print.c (print_object): Clarify indication of insertion type.
13885
13886 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13887
13888 * coding.c (syms_of_coding): Document that locale-coding-system is
13889 used for decoding input on X.
13890
13891 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13892
13893 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13894
13895 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13896 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13897
13898 2001-10-29 Gerd Moellmann <gerd@gnu.org>
13899
13900 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13901 use NO_CURSOR if cursor_in_non_selected_windows is false.
13902
13903 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13904 the slant attribute if FRAME is t.
13905
13906 * xfns.c (x_set_internal_border_width): Set frame garbaged
13907 when X window doesn't exist yet.
13908
13909 * xterm.c (x_after_update_window_line): Clear internal border
13910 in different circumstances.
13911
13912 * xterm.c (XTread_socket) <KeyPress>: Don't use
13913 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13914 <handa@etl.go.jp>.
13915
13916 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13917
13918 * m/ibms390.h: New file. From Adam Thornton
13919 <athornton@sinenomine.net>.
13920
13921 2001-10-28 Gerd Moellmann <gerd@gnu.org>
13922
13923 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
13924
13925 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13926 a loop counter.
13927
13928 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13929
13930 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
13931
13932 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13933 keyword].
13934 Fix typos in comments.
13935
13936 * emacs.c (bug_reporting_address): New function.
13937 Use it when displaying usage message.
13938
13939 * minibuf.c (read_minibuf): Remove unused external declaration of
13940 variable `Qread_only'.
13941
13942 * keymap.c (access_keymap): Remove unused variable `charset'.
13943
13944 2001-10-28 Miles Bader <miles@gnu.org>
13945
13946 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13947 Remove #ifdef'd-out code.
13948 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13949 (syms_of_xfaces): Initialize them.
13950
13951 2001-10-27 Jason Rumney <jasonr@gnu.org>
13952
13953 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13954 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13955 position using the system caret.
13956
13957 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13958 (w32_system_caret_height, w32_system_caret_x)
13959 (w32_system_caret_y): New variables for tracking system caret.
13960 (w32_initialize): Initialize them.
13961 (x_display_and_set_cursor): Make system caret follow the active cursor.
13962
13963 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13964 New messages types.
13965
13966 * w32term.c (note_mouse_highlight): Clear old help_echo.
13967
13968 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13969
13970 * xterm.c: Fix typo in a comment.
13971
13972 * emacs.c: Fix typos in comments.
13973 Remove unnecessary spaces.
13974 Change doc-string comments to `new style' [w/`doc:' keyword].
13975 (USAGE2): Fix typos in usage string.
13976
13977 * xterm.c: Fix typo in a comment.
13978
13979 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13980 emacs.c.
13981
13982 2001-10-27 Gerd Moellmann <gerd@gnu.org>
13983
13984 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
13985 instead of 1/2 line_height in the heuristic for skipping
13986 farther backward when target_y was not reached.
13987
13988 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13989 Display errno only if non-zero.
13990 (sound_warning): New function.
13991 (vox_configure): Don't treat failing to set sample rate as error.
13992 (various places): Improve error messages.
13993
13994 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13995
13996 * fileio.c (Faccess_file): Run the argument filename through
13997 Fexpand_file_name, before using it.
13998
13999 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14000 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14001
14002 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14003
14004 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14005
14006 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14007 Fix clearing in the case of scroll bars on the right.
14008
14009 2001-10-26 Juanma Barranquero <lektu@terra.es>
14010
14011 * w32gui.h (XImage): Add a dummy typedef.
14012
14013 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14014
14015 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
14016
14017 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14018
14019 * frame.c (Fframe_parameter): Fix last change.
14020
14021 * fileio.c: Revert last change (which removed old commented-out
14022 version of expand-file-name). Add a comment that explains why
14023 this old version should not be removed.
14024
14025 2001-10-25 Gerd Moellmann <gerd@gnu.org>
14026
14027 * frame.c (Fframe_parameter): Fix a bug whereby some
14028 ``artificial'' frame parameters, like `minibuffer' were not
14029 obtained by calling Fframe_parameters.
14030
14031 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14032 cursor differently.
14033
14034 * xdisp.c (move_it_vertically_backward): Compute line height
14035 differently. Add heuristic to try to be more compatible to 20.x.
14036
14037 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14038
14039 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14040
14041 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14042 boolean.
14043
14044 2001-10-25 Miles Bader <miles@gnu.org>
14045
14046 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14047 BG is a pointer to a structure, not a structure.
14048 (gif_format, png_format): Add missing commas.
14049
14050 2001-10-24 Richard M. Stallman <rms@gnu.org>
14051
14052 * xfaces.c (Fface_attributes_as_vector): New function.
14053 (syms_of_xfaces): Defsubr it.
14054
14055 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14056
14057 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14058 variable `area'.
14059
14060 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14061
14062 * search.c (scan_newline): Remove unused variable `selective_display'.
14063
14064 2001-10-25 Miles Bader <miles@gnu.org>
14065
14066 * dispextern.h (struct image): Add `background',
14067 `background_valid', and `background_transparent' fields.
14068 (image_background, image_background_transparent): New declarations.
14069 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14070 * xfns.c (image_background, image_background_transparent)
14071 (four_corners_best): New functions.
14072 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14073 (gs_format): Add `:background' entry.
14074 (lookup_image): Set IMG's background color if specified.
14075 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14076 when appropriate.
14077 (x_clear_image_1): Reset `background_valid' and
14078 `background_transparent_valid' fields.
14079 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14080 calculating it here. Set IMG's background_transparent field.
14081 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14082 (enum png_keyword_index): Add PNG_BACKGROUND.
14083 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14084 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14085 (enum gif_keyword_index): Add GIF_BACKGROUND.
14086 (enum gs_keyword_index): Add GS_BACKGROUND.
14087 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14088 Pre-calculate image background color where necessary.
14089 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14090 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14091 color to use for image glyph reliefs.
14092
14093 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14094
14095 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14096 in full-width rows.
14097
14098 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14099 Fix clearing of area not covered by scroll bar.
14100
14101 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14102
14103 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14104 and `real_start'.
14105 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14106 (glyph_rect): Remove unused variable `area'.
14107
14108 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14109
14110 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14111
14112 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14113 (row_containing_pos): Take additional argument DY.
14114 Treat rows ending in middle of char differently.
14115 (display_line): Handle tabs on window systems differently.
14116
14117 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14118 with additional argument.
14119
14120 * dispextern.h (row_containing_pos): Adjust prototype.
14121
14122 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14123 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14124 (try_window_id, try_window_reusing_current_matrix)
14125 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14126 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14127
14128 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14129
14130 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14131 gnuemacs).
14132 (HAVE_BOXES): Fix typo in comment.
14133 (push_menu_pane): Fix typo in comment.
14134
14135 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14136 of `Qwhen'.
14137 (single_display_prop_string_p): Remove unused local declarations
14138 of `Qwhen' and `Qmargin'.
14139 (string_buffer_position): Remove unused variable `around'.
14140 (store_frame_title): Remove unused variable `width'.
14141
14142 * window.c: Don't define max.
14143 (coordinates_in_window): Remove unused variable `uy'.
14144
14145 * widget.c: Don't define max.
14146
14147 * process.c: Don't define max.
14148 (create_process): Remove unused variable `buffer'.
14149
14150 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14151
14152 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14153
14154 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14155
14156 * xfaces.c (Finternal_set_lisp_face_attribute)
14157 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14158 frame is on a windowed display.
14159
14160 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14161
14162 * dispnew.c (sync_window_with_frame_matrix_rows):
14163 Fix handling of windows which aren't full-width, fix handling
14164 of marginal areas.
14165
14166 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14167
14168 2001-10-23 Andreas Schwab <schwab@suse.de>
14169
14170 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14171 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14172
14173 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14174
14175 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14176 REAL_END. Notice if cursor gets overwritten.
14177 (notice_overwritten_cursor): Take X positions as parameters.
14178 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14179 around call to x_draw_glyphs.
14180
14181 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14182
14183 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14184 instead of C) and usage.
14185
14186 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14187 of C) and usage.
14188
14189 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14190 `left', `max_width' and `max_height'.
14191
14192 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14193
14194 * xdisp.c (display_line): For a tab continued to the next line,
14195 set row's ends_in_middle_of_char_p.
14196
14197 2001-10-22 Gerd Moellmann <gerd@gnu.org>
14198
14199 * xdisp.c (display_line): Fix computation of continuation lines
14200 width for TABs.
14201
14202 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14203
14204 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14205 `Qlaplace'.
14206
14207 * fileio.c: Remove unused code.
14208
14209 2001-10-22 Miles Bader <miles@gnu.org>
14210
14211 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14212 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14213 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14214
14215 2001-10-21 Jason Rumney <jasonr@gnu.org>
14216
14217 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14218
14219 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14220
14221 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14222 (Finsert_string): Avoid the multi-line string literals warning.
14223
14224 2001-10-22 Miles Bader <miles@gnu.org>
14225
14226 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14227 (Fdocumentation): Don't use it.
14228 (syms_of_doc): Don't initialize it.
14229
14230 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14231 * print.c (Fwith_output_to_temp_buffer): Likewise.
14232 * window.c (Fsave_window_excursion): Likewise.
14233 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14234 (Fsave_restriction): Likewise.
14235 * eval.c (Frun_hooks, Frun_hook_with_args)
14236 (Frun_hook_with_args_until_failure)
14237 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14238 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14239 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14240 (Funwind_protect, Fcondition_case): Likewise.
14241 * coding.c (Ffind_operation_coding_system): Likewise.
14242 * keyboard.c (Ftrack_mouse): Likewise.
14243
14244 2001-10-21 Miles Bader <miles@gnu.org>
14245
14246 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14247 (Fmake_hash_table): Add usage: string to doc string.
14248 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14249 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14250 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14251 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14252 (Fml_prefix_argument_loop): Likewise.
14253
14254 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14255
14256 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14257
14258 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14259 style' [w/`doc:' keyword].
14260
14261 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14262 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14263 comments to `new style' [w/`doc:' keyword].
14264
14265 2001-10-21 Jason Rumney <jasonr@gnu.org>
14266
14267 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14268
14269 * w32term.c (remember_mouse_glyph): New function.
14270 (w32_mouse_position): Use it.
14271 (note_mouse_movement): If the mouse moved off the glyph, remember
14272 its new position.
14273
14274 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14275 (w32_display_info): Add mouse_face_overlay.
14276
14277 * w32term.c (notice_overwritten_cursor): Renamed from
14278 note_overwritten_text_cursor. Rewritten to take glyph widths into
14279 account.
14280 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14281 (fast_find_string_pos): New function.
14282 (fast_find_position): Return the correct vpos. Add parameter
14283 STOP. In the final row, stop before glyphs having STOP as object.
14284 Don't consider glyphs that are not from a buffer.
14285 (fast_find_position) [0]: Add a presumably more correct version
14286 for after 21.1.
14287 (expose_window_tree, expose_frame): Don't compute intersections here.
14288 (expose_window): Do it here instead.
14289 (expose_window_tree, expose_window, expose_line): Return 1 when
14290 overwriting mouse-face.
14291 (expose_window): If W is the window currently being updated, mark
14292 the frame garbaged.
14293 (expose_frame): If mouse-face was overwritten, redo it.
14294 (x_use_underline_position_properties): New variable.
14295 (syms_of_xterm): DEFVAR_BOOL it.
14296 (x_draw_glyph_string): Add comment to use it in future.
14297 (x_draw_glyph_string): Restore clipping after drawing box.
14298 Fix a computation of the underline position.
14299 (w32_get_glyph_string_clip_rect): Minor cleanup.
14300 (x_fill_stretch_glyph_string): Remove an assertion.
14301 (x_produce_glyphs): Don't convert multibyte characters
14302 to unibyte characters in unibyte buffers.
14303 (cursor_in_mouse_face_p): New function.
14304 (x_draw_stretch_glyph_string): Use it to choose a different GC
14305 when drawing a cursor within highlighted text. Don't draw
14306 background again if it has already been drawn.
14307 (x_draw_glyph_string_box): Don't draw a full-width
14308 box just because the glyph row's full_width_p flag is set.
14309 (x_draw_glyphs): Fix computation of rightmost x for
14310 full-width rows.
14311 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14312 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14313 change bottom shadow accordingly. Some cleanup.
14314 (x_update_window_end): Handle overwritten mouse face
14315 also for tool bar windows.
14316 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14317 DRAW is DRAW_IMAGE_RAISED.
14318 (clear_mouse_face): Return 1 if text with mouse face was
14319 actually redrawn. Make the function static.
14320 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14321 optimize away highlighting if we pass over that same overlay again.
14322 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14323 to detect a case where we have to highlight a different region
14324 despite not having left the currently highlighted region.
14325 Set mouse_face_overlay in the x_display_info. Avoid changing the
14326 mouse pointer shape when show_mouse_face has already done it, or
14327 there is no need. Handle mouse-face and help-echo in strings.
14328 (glyph_rect): New function.
14329 (w32_mouse_position): Use it to raise the threshold for mouse
14330 movement event generation.
14331 (w32_initialize_display_info): Initialize the x_display_info's
14332 mouse_face_overlay.
14333 (w32_set_vertical_scroll_bar): Don't clear a zero height
14334 or width area.
14335 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14336 a widget to zero height.
14337
14338 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14339 Protect unibyte strings created by replacing their multibyte
14340 equivalents in menu_items.
14341 (w32_menu_show): Don't overwrite an item's name with its key
14342 description in case the description is a multibyte string.
14343 (single_submenu): Some cleanup.
14344
14345 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14346 (postprocess_image): New function.
14347 (lookup_image): Call it for all image types except PostScript.
14348 (x_kill_gs_process): Call postprocess_image.
14349 (tiff_error_handler, tiff_warning_handler): New functions.
14350 (tiff_load): Install them as handlers.
14351 (x_kill_gs_process): Recognize if someone has cleared the image
14352 cache under us.
14353 (valid_image_p): Protect better against invalid image
14354 specifications. Previous code could signal an error.
14355 (Fx_hide_tip, Fshow_tip): Doc fix.
14356 (Fv_max_tooltip_size): New variable.
14357 (syns_of_xfns): DEFVAR_LISP it.
14358 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14359 window buffer to *tip* right after creating the frame. Set frame's
14360 window_width. Use a maximum tooltip size specified by
14361 Vx_max_tooltip_size, if that has valid contents.
14362 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14363 Make sure the tooltip is completely visible.
14364 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14365 (Fx_create_frame): Adjust the frame's height for presence
14366 of the tool bar before calling x_figure_window_size.
14367 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14368 when the window gets smaller.
14369 (x_set_foreground_color): Set frame's cursor_pixel.
14370 (x_set_foreground_color, x_set_background_color): Cleaned up.
14371 (x_set_font): Handle case of x_new_fontset returning the same name
14372 as before, although there was a change in fontsets.
14373
14374 2001-10-21 Miles Bader <miles@gnu.org>
14375
14376 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14377 (Flogxor): Add usage: string to doc string.
14378 * charset.c (Fstring): Likewise.
14379 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14380 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14381
14382 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14383
14384 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14385
14386 * alloc.c: Reindent DEFUNs with doc: keywords.
14387
14388 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14389
14390 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14391 keyword].
14392
14393 See ChangeLog.9 for earlier changes.
14394
14395 ;; Local Variables:
14396 ;; coding: iso-2022-7bit
14397 ;; End:
14398
14399 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14400 Copying and distribution of this file, with or without modification,
14401 are permitted provided the copyright notice and this notice are preserved.
14402
14403 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4