*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
1 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
2
3 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
4
5 2004-07-06 John Paul Wallington <jpw@gnu.org>
6
7 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
8
9 * fns.c (Fclear_string): Signal an error if STRING is not a string.
10
11 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
14 instead of CGMainDisplayID (only in OSX 10.2 and later).
15
16 2004-07-04 John Paul Wallington <jpw@gnu.org>
17
18 * fileio.c (read_file_name_completion_ignore_case): New variable.
19 (syms_of_fileio): Declare and initialise it.
20 (Fread_file_name): Bind `completion-ignore-case' to respect it.
21
22 2004-07-03 Eli Zaretskii <eliz@gnu.org>
23
24 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
25 for event.x and event.y.
26
27 2004-07-01 Kenichi Handa <handa@m17n.org>
28
29 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
30 after getting a new string by pre-write-conversion.
31
32 2004-06-30 Stefan <monnier@iro.umontreal.ca>
33
34 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
35 (x_calc_absolute_position): Remove unused var `child'.
36
37 * xfaces.c (x_supports_face_attributes_p)
38 (Fdisplay_supports_face_attributes_p): YAILOM.
39 (tty_supports_face_attributes_p): Remove unused var `i'.
40
41 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
42 back_unibyte_ok.
43
44 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
45
46 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
47
48 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
49
50 2004-06-30 Andreas Schwab <schwab@suse.de>
51
52 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
53 (Finit_image_library): Pass LIBRARIES through to
54 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
55 (lookup_image_type): Pass Qnil as second argument to
56 Finit_image_library.
57
58 * lisp.h: Declare Finit_image_library.
59
60 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
61
62 * macterm.c (do_window_activate, do_window_deactivate): Remove.
63 (XTread_socket): Send mouse button events to the toolbox
64 dispatcher even when the mouse is grabbed. Don't process window
65 activate events for non-Emacs windows. Replace function calls to
66 do_window_activate and do_window_deactivate with their contents.
67 Reset mouse grabbing status when a window is deactivated.
68
69 2004-06-29 Steven Tamm <steventamm@mac.com>
70
71 * macterm.c (mac_get_emulated_btn)
72 (mac_event_to_emacs_modifiers): Fix emulated mouse button
73 support to correctly mask out modifiers.
74
75 2004-06-29 David Kastrup <dak@gnu.org>
76
77 * search.c (Fset_match_data): Allow buffer before end of list
78 which can happen if set-match-data is using a pre-consed list.
79
80 2004-06-28 Steven Tamm <steventamm@mac.com>
81
82 * macterm.c (XTread_socket): Correctly set the frame position
83 after the window is moved.
84
85 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
86
87 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
88 gpix and gmask just before return to avoid memory leak.
89 (xg_get_image_for_pixmap): Add workaround for monochrome displays
90 so insensitive and activated icons look ok.
91
92 2004-06-27 Jason Rumney <jasonr@gnu.org>
93
94 * w32fns.c (file_dialog_callback): Disable edit control if set
95 to directories only on CDN_INITDONE message.
96 (Fx_file_dialog): Default to directories only when prompt starts
97 with "Dired".
98
99 2004-06-25 Kim F. Storm <storm@cua.dk>
100
101 * alloc.c (allocate_misc): Update total_free_markers.
102 (free_misc): New function.
103 (safe_alloca_unwind, free_marker): Use it.
104
105 * lisp.h (free_misc): Add prototype.
106
107 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
108
109 2004-06-24 Richard M. Stallman <rms@gnu.org>
110
111 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
112 (syms_of_emacs): Lisp variables deleted.
113
114 2004-06-23 David Kastrup <dak@gnu.org>
115
116 * search.c (Freplace_match): Adjust the match-data more thoroughly
117 when replacing strings in the buffer.
118 (Fmatch_data): When INTEGERS is non-nil and the last match was in
119 a buffer, add the buffer as last element to the match data.
120 (Fset_match_data): If an additional element of the match-data is a
121 buffer, restore it to last_thing_searched.
122 (save_search_regs): Save last_thing_searched as part of the match data.
123 (restore_match_data): Restore it again.
124
125 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
126
127 * keymap.c (Ftext_char_description): Doc fix.
128 * doc.c (Fsnarf_documentation): Doc fix.
129
130 2004-06-22 Kim F. Storm <storm@cua.dk>
131
132 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
133
134 * lisp.h (struct Lisp_Save_Value): New member dogc.
135 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
136 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
137 (SAFE_FREE_LISP): New macro.
138
139 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
140 (make_save_value): Init new dogc member.
141 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
142
143 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
144 SAFE_FREE_LISP macros.
145
146 2004-06-22 Kim F. Storm <storm@cua.dk>
147
148 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
149 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
150 in that memory area are unknown to GC. Add comments.
151
152 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
153
154 2004-06-21 Kim F. Storm <storm@cua.dk>
155
156 * lisp.h (MAX_ALLOCA): Define here.
157 (safe_alloca_unwind): Add prototype.
158 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
159
160 * alloc.c (safe_alloca_unwind): New function.
161
162 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
163
164 * charset.c (Fstring): Use SAFE_ALLOCA.
165
166 * coding.c (MAX_ALLOCA): Remove define.
167
168 * data.c (MAX_ALLOCA): Remove define.
169 (Faset): Use SAFE_ALLOCA.
170
171 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
172
173 * fns.c (string_make_multibyte, string_to_multibyte)
174 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
175 (MAX_ALLOCA): Remove define.
176 (Fbase64_encode_region, Fbase64_encode_string)
177 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
178 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
179 memory leak if encoding fails.
180
181 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
182
183 2004-06-21 Eli Zaretskii <eliz@gnu.org>
184
185 * print.c (Fwith_output_to_temp_buffer): Doc fix.
186
187 2004-06-20 Richard M. Stallman <rms@gnu.org>
188
189 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
190
191 * search.c (match_limit): Cleaner err msg when no match data available.
192
193 * window.c (syms_of_window): Doc fix.
194
195 * keyboard.c (command_loop_1): Handle values `only' and `identity'
196 for Vtransient_mark_mode.
197
198 * buffer.c (syms_of_buffer): Doc fix.
199
200 2004-06-21 David Kastrup <dak@gnu.org>
201
202 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
203 and unbinding of `case-fold-search' according to
204 `completion-ignore-case' around calls of string-match and
205 predicates, respectively. Should give satisfactory performance
206 in all relevant cases.
207
208 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
209
210 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
211 clip_x/y_origin.
212
213 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
214
215 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
216
217 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
218 on Mac OSX.
219
220 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
221
222 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
223
224 2004-06-16 Kim F. Storm <storm@cua.dk>
225
226 * dispextern.h (Vimage_types): Remove extern.
227
228 2004-06-16 Miles Bader <miles@gnu.org>
229
230 * image.c (lookup_image_type): Initialize image type if necessary.
231
232 2004-06-15 Kim F. Storm <storm@cua.dk>
233
234 * xdisp.c (try_cursor_movement): Exclude header line from scroll
235 margin at top of window.
236 (try_window_reusing_current_matrix): Calculate proper cursor position
237 after scrolling up with non-zero scroll margin, as the old cursor
238 position corresponds to value of PT before executing this command.
239 (try_window_id): Consider scroll margin at bottom of window too;
240 otherwise we fail to scroll when hl-line-mode is enabled.
241
242 * syntax.c (skip_chars): Only recognize [:class:] when it has the
243 proper format and class is a lower-case word.
244
245 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
246
247 * gtkutil.c (xg_get_image_for_pixmap): New function.
248 (xg_get_gdk_pixmap_and_mask): Remove.
249 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
250 xg_get_gdk_pixmap_and_mask.
251
252 * xterm.h (struct x_display_info): Typo in comment fixed.
253
254 2004-06-14 Juanma Barranquero <lektu@terra.es>
255
256 * dispextern.h (Vimage_types): Make it conditional on
257 HAVE_WINDOW_SYSTEM.
258
259 * image.c (Vimage_types): Move from xdisp.c.
260 (Vimage_type_cache): New variable.
261 (define_image_type): New argument indicating whether an image
262 library was loaded; cache loaded status and return t on success,
263 nil otherwise.
264 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
265 (w32_delayed_load): New function to load an image library from a
266 list of possible filenames.
267 (init_xpm_functions, init_png_functions, init_jpeg_functions)
268 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
269 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
270 (Finit_image_library): New function, extracted from `init_image'.
271 Try to initialize an image library on demand and cache whether we
272 were successful or not.
273 (syms_of_image): Initialize `Vimage_types' and
274 `Vimage_type_cache'. Add recognized image types to Vimage_types.
275 Export `init-image-library'.
276 (init_image): Remove initialization of all image types, except xbm
277 and pbm.
278
279 * xdisp.c (Vimage_types): Delete (moved to image.c).
280
281 2004-06-14 Andreas Schwab <schwab@suse.de>
282
283 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
284 Avoid calling specbind when completion-regexp-list is empty.
285
286 2004-06-13 Richard M. Stallman <rms@gnu.org>
287
288 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
289 (re_wctype, re_iswctype, re_wctype_to_bit):
290 Non-function definitions moved here from regex.c.
291
292 * regex.c (re_wctype, re_iswctype): Function defs longer static.
293 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
294 (re_wctype, re_iswctype, re_wctype_to_bit):
295 Non-function definitions moved to regex.h.
296
297 * window.c (Fselect_window): Doc fix.
298
299 * syntax.c: Include regex.h.
300 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
301 If requested, make a list of classes, then check the scanned
302 chars for membership in them.
303 (in_classes): New function.
304 Doc fix.
305
306 * keyboard.c (cmd_error): Don't call any_kboard_state
307 if inside a recursive edit level.
308
309 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
310
311 * keyboard.c (command_loop): Call any_kboard_state before
312 command_loop_2 when at top level.
313
314 2004-06-13 Andreas Schwab <schwab@suse.de>
315
316 * print.c (print_object): Always use %ld for printing EMACS_INT.
317
318 * keyboard.c (cancel_hourglass_unwind): Return a value.
319 (modify_event_symbol): Always use %ld for printing EMACS_INT.
320 (Fexecute_extended_command): Likewise.
321
322 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
323 avoid clashes.
324 (SYNTAX): Likewise.
325 (SYNTAX_WITH_FLAGS): Likewise.
326 (SYNTAX_MATCH): Likewise.
327
328 * syntax.c (char_quoted): Avoid warning about undefined operation.
329 (find_defun_start): Likewise.
330 (scan_lists): Likewise.
331 (INC_FROM): Likewise.
332 (scan_sexps_forward): Likewise.
333
334 * image.c: Include <ctype.h>.
335
336 * xfaces.c (face_attr_equal_p): Declare parameters.
337
338 2004-06-13 Kenichi Handa <handa@m17n.org>
339
340 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
341
342 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
343
344 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
345
346 2004-06-12 Kenichi Handa <handa@m17n.org>
347
348 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
349 ccl_prog_stack_struct and update it.
350 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
351 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
352 ccl->eof_ic on EOF.
353 (ccl_debug_hook): New function.
354 (struct ccl_prog_stack): New member eof_ic.
355 (ccl_driver): Handle EOF in subrountine call correctly.
356
357 2004-06-11 Kenichi Handa <handa@m17n.org>
358
359 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
360
361 2004-06-11 Kim F. Storm <storm@cua.dk>
362
363 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
364
365 2004-06-11 Juanma Barranquero <lektu@terra.es>
366
367 * keyboard.c (Fposn_at_point): Doc fix.
368
369 2004-06-11 David Kastrup <dak@gnu.org>
370
371 * search.c (match_limit): Don't flag an error if match-data
372 exceeding the allocated search_regs.num_regs gets requested, just
373 return Qnil.
374
375 2004-06-08 Miles Bader <miles@gnu.org>
376
377 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
378
379 2004-06-07 Juanma Barranquero <lektu@terra.es>
380
381 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
382 (Fcurrent_time_string, Fcurrent_time_zone)
383 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
384
385 2004-06-07 Miles Bader <miles@gnu.org>
386
387 * xfaces.c (struct named_merge_point): New type.
388 (push_named_merge_point): New function.
389 (merge_named_face): New function.
390 (merge_face_ref, face_at_buffer_position, face_at_string_position):
391 Use `merge_named_face'.
392 (merge_face_inheritance): Function removed.
393 (merge_face_ref): Rename from `merge_face_vector_with_property'.
394 Add new `err_msgs' and `named_merge_points' args. Return error
395 status. Only print error messages if ERR_MSGS is true. Don't try to
396 do :inherit attribute validation.
397 (merge_face_heights): Handle `unspecified' in both directions.
398 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
399 Call `merge_face_ref' instead of `merge_face_inheritance'.
400 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
401 (compute_char_face, face_at_buffer_position)
402 (face_at_string_position): Call `merge_face_ref' instead of
403 `merge_face_vector_with_property'.
404
405 2004-06-07 Kenichi Handa <handa@m17n.org>
406
407 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
408 the necessary places.
409
410 2004-06-07 Kim F. Storm <storm@cua.dk>
411
412 * process.c (Fdelete_process): Undo 2004-05-28 change.
413 Instead, call status_notify also for network process.
414 (status_message): Use process instead of status as arg.
415 Give messages "deleted" or "connection broken by remote peer" for
416 an exited network process.
417 (status_notify): Change call to status_message.
418 (read_process_output): Increase readmax to 4096. Do not increase
419 buffer size for datagram channels (default is now large enough).
420
421 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
422
423 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
424 problem due to newly defined variable.
425
426 2004-06-06 Miles Bader <miles@gnu.org>
427
428 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
429 immediately if non-interactive or not initialized.
430
431 2004-06-05 Richard M. Stallman <rms@gnu.org>
432
433 * minibuf.c (Fcompleting_read): Doc fix.
434
435 2004-06-05 Andreas Schwab <schwab@suse.de>
436
437 * macfns.c (x_create_tip_frame): Fix declaration after statement.
438
439 2004-06-05 Juanma Barranquero <lektu@terra.es>
440
441 * keymap.c (Fdescribe_vector): Fix docstring.
442 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
443
444 2004-06-05 Miles Bader <miles@gnu.org>
445
446 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
447 attributes have different values than the default face.
448
449 2004-06-04 Eli Zaretskii <eliz@gnu.org>
450
451 * xfaces.c (x_supports_face_attributes_p): Make this function
452 conditional on HAVE_WINDOW_SYSTEM.
453 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
454 Don't call x_supports_face_attributes_p if it was not compiled in.
455
456 2004-06-04 Miles Bader <miles@gnu.org>
457
458 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
459 from Ftty_supports_face_attributes_p.
460 (x_supports_face_attributes_p): New function.
461 (Ftty_supports_face_attributes_p): Function deleted.
462 (Fdisplay_supports_face_attributes_p): New function.
463 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
464 (face_attr_equal_p): New function.
465 (lface_equal_p): Use it.
466
467 2004-06-03 Juanma Barranquero <lektu@terra.es>
468
469 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
470 (Vw32_color_map): Fix typo in docstring.
471 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
472 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
473 Make argument names match their use in docstring.
474
475 2004-06-02 Juanma Barranquero <lektu@terra.es>
476
477 Work around bugs/problems with MinGW builds of graphics libraries
478 called from MSVC builds of Emacs.
479
480 * image.c (lookup_image): Make pointer to img static.
481 (png_read_from_memory): Disable "global" optimization.
482
483 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
484
485 * eval.c (Fcondition_case): Fix usage. Simplify.
486
487 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
488
489 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
490
491 * macfns.c: Don't include ccl.h.
492 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
493 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
494 TextUtils.h.
495 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
496 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
497 display height/width.
498 (compute_tip_xy, Vx_max_tooltip_size): Declare.
499 (unwind_create_tip_frame, compute_tip_xy): New functions.
500 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
501 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
502 and last_show_tip_args.
503
504 * macgui.h [!MAC_OSX]: Include Gestalt.h.
505 (Cursor, No_Cursor): New defines.
506 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
507 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
508
509 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
510
511 * macterm.c: Don't include Gestalt.h.
512 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
513 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
514 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
515 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
516 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
517 (construct_mouse_click, XTmouse_position)
518 (x_scroll_bar_report_motion, x_calc_absolute_position)
519 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
520 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
521 (note_mouse_movement): Clear the mouse face and reset the pointer
522 shape when the pointer goes outside the frame without grabbing.
523 (mac_front_window): New function.
524 (mac_window_to_frame): New macro.
525 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
526 (do_window_activate, do_window_deactivate, do_app_resume)
527 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
528 (do_zoom_window, mac_do_receive_drag, XTread_socket)
529 (mac_check_for_quit_char): Use mac_front_window and/or
530 mac_window_to_frame.
531 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
532 scroll-bar click event.
533 (mac_define_frame_cursor): Change the pointer shape.
534 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
535 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
536 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
537 (do_window_update): Don't do anything if the updated window is the
538 tooltip window.
539 (do_mouse_moved): Handle mouse movement events here (previously in
540 XTread_socket). Clear the mouse face if
541 dpyinfo->mouse_face_hidden is set.
542 (do_os_event, do_events): Remove (now in XTread_socket).
543 (XTread_socket): Immediately return if interrupt_input_blocked.
544 Loop until all the events in the queue are processed.
545 Rearrange codes for mouse grabbing. Add tooltip support. Include the
546 contents of do_os_event and do_events. Remove mouse movement
547 handling (now in do_mouse_moved). Add the case where
548 Vmouse_highlight has an integer value.
549 (NewMacWindow): Remove.
550 (make_mac_frame): Do what NewMacWindow previously did. Don't do
551 excess initializations.
552 (make_mac_terminal_frame): Previous initializations in
553 make_mac_frame are moved here.
554 (mac_initialize_display_info):
555 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
556
557 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
558 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
559
560 2004-05-29 Richard M. Stallman <rms@gnu.org>
561
562 * lisp.h (truncate_undo_list): Update decl.
563
564 * alloc.c (undo_outer_limit): New variable.
565 (syms_of_alloc): Defvar it.
566 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
567
568 * undo.c (truncate_undo_list): New arg LIMITSIZE.
569
570 * alloc.c (lisp_align_malloc): Check for base == 0
571 regardless of HAVE_POSIX_MEMALIGN.
572 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
573
574 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
575
576 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
577 (marker_blocks_pending_free): Remove.
578 (Fgarbage_collect): Sweep after cleaning up undo-lists.
579 Mark the undo lists after claning them up.
580 Don't free block in marker_blocks_pending_free.
581 (mark_buffer): Don't mark undo_list.
582 (gc_sweep): Sweep hash-tables and strings first.
583 Do free marker blocks that are empty.
584
585 2004-05-28 Jim Blandy <jimb@redhat.com>
586
587 * regex.c (print_partial_compiled_pattern): Add missing 'break'
588 after 'case wordend'. For symbeg and symend, print to stderr,
589 like the other cases.
590
591 2004-05-28 Noah Friedman <friedman@splode.com>
592
593 * process.c (Fdelete_process): Do not call remove_process.
594
595 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
596
597 * alloc.c (struct backtrace): Remove.
598 (Fgarbage_collect): Use the new mark_backtrace.
599
600 * eval.c (mark_backtrace): New function.
601
602 * minibuf.c (run_exit_minibuf_hook): New function.
603 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
604 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
605
606 2004-05-27 Kim F. Storm <storm@cua.dk>
607
608 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
609 over display properties, e.g. images, that replace buffer text.
610
611 2004-05-25 Kim F. Storm <storm@cua.dk>
612
613 * alloc.c (marker_blocks_pending_free): New var.
614 (gc_sweep): Store free marker blocks on that list.
615 (Fgarbage_collect): Free them after undo-list cleanup.
616
617 * process.c (wait_reading_process_input): Check connect_wait_mask
618 before actually accepting connection in case it has already been
619 accepted due to recursion.
620
621 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
622
623 * coding.c (Fset_safe_terminal_coding_system_internal):
624 Set suppress_error in safe_terminal_coding, not terminal_coding.
625
626 2004-05-22 Richard M. Stallman <rms@gnu.org>
627
628 * alloc.c (Fmake_string): Doc fix.
629
630 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
631 and the alist pairs too.
632
633 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
634
635 * emacs.c (main): Update copyright year.
636
637 * fileio.c (Fread_file_name): Expand DIR if not absolute.
638
639 * insdel.c (del_range_2, replace_range): Don't write an anchor
640 if the gap is empty.
641
642 * xdisp.c (try_scrolling): If scroll-up-aggressively or
643 scroll-down-aggressively is small but positive, put point
644 near the screen edge.
645
646 2004-05-22 Juanma Barranquero <lektu@terra.es>
647
648 * keymap.c (Fdefine_key): Doc fix.
649
650 2004-05-22 Kim F. Storm <storm@cua.dk>
651
652 * alloc.c (struct backtrace): Add debug_on_exit member.
653 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
654 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
655 the removed cons cells.
656 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
657 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
658 any cons cells pointing to unallocated stings.
659 Do not lisp_free any marker blocks, as there may still be pointers
660 to them from buffer undo lists at this stage of GC.
661
662 * keyboard.c (struct backtrace): Add debug_on_exit member.
663 (Fcommand_execute): Clear it.
664
665 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
666
667 * intervals.c (lookup_char_property): Do not prematurely return nil.
668
669 2004-05-19 Jim Blandy <jimb@redhat.com>
670
671 Add support for new '\_<' and '\_>' regexp operators, matching the
672 beginning and end of symbols.
673
674 * regex.c (enum syntaxcode): Add Ssymbol.
675 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
676 (re_opcode_t): New opcodes `symbeg' and `symend'.
677 (print_partial_compiled_pattern): Print the new opcodes properly.
678 (regex_compile): Parse the new operators.
679 (analyse_first): Skip sym(beg|end) (they match only the empty string).
680 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
681 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
682 (re_match_2_internal): Match symbeg and symend.
683
684 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
685
686 2004-05-19 Kim F. Storm <storm@cua.dk>
687
688 * .gdbinit (xsymbol): Fix last change.
689
690 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
691
692 * .gdbinit (xprintstr): New fun.
693 (xstring, xprintsym): Use it.
694
695 * w32proc.c (create_child): Use INTMASK.
696
697 * alloc.c (Fgarbage_collect): Do all the marking before flushing
698 unmarked elements of the undo list.
699
700 2004-05-18 David Ponce <david@dponce.com>
701
702 * print.c (print): Reset print_depth before to call print_object.
703
704 2004-05-18 Jason Rumney <jasonr@gnu.org>
705
706 * w32console.c: Prefix RIF functions with w32con_ to avoid
707 namespace clash with functions in term.c and w32term.c.
708
709 * w32menu.c (add_menu_item, w32_menu_display_help)
710 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
711
712 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
713
714 2004-05-18 Eli Zaretskii <eliz@gnu.org>
715
716 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
717
718 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
719 with make_number.
720 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
721 with XINT.
722
723 2004-05-18 Kim F. Storm <storm@cua.dk>
724
725 * blockinput.h (INPUT_BLOCKED_P): New macros.
726
727 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
728 (Ftop_level): Unblock input if blocked.
729
730 * buffer.h (GET_OVERLAYS_AT): New macro.
731 * msdos.c (IT_note_mouse_highlight): Use it.
732 * textprop.c (get_char_property_and_overlay): Use it.
733 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
734 * xfaces.c (face_at_buffer_position): Use it.
735
736 * print.c (print_object): Increase buf size.
737
738 2004-05-17 Jason Rumney <jasonr@gnu.org>
739
740 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
741 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
742 Lisp_Object using i member.
743 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
744 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
745 consistently.
746
747 * w32proc.c (create_child): Use make_number instead of masking pid.
748
749 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
750 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
751 Use EQ to compare Lisp_Objects.
752 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
753
754 * w32term.c (w32_num_mouse_buttons): Rename from
755 Vw32_num_mouse_buttons and make it an int.
756
757 * w32.c (init_environment): Use it.
758
759 * w32fns.c (w32_wnd_proc): Likewise.
760
761 * w32proc.c (w32_pipe_read_delay): Rename from
762 Vw32_pipe_read_delay and make it an int.
763
764 * w32.c (_sys_read_ahead): Use it.
765
766 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
767
768 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
769
770 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
771 (key_event): Don't mix Lisp_Object and int.
772
773 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
774
775 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
776 modifiers in language change event.
777
778 2004-05-17 Kim F. Storm <storm@cua.dk>
779
780 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
781 Such objects may be freed markers which still exist on an undo list.
782
783 2004-05-16 Juanma Barranquero <lektu@terra.es>
784
785 * data.c (Fset_default): Make argument names match their use in
786 docstring.
787
788 2004-05-15 Andreas Schwab <schwab@suse.de>
789
790 * emacs.c (gdb_array_mark_flag): Define.
791 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
792
793 2004-05-15 Eli Zaretskii <eliz@gnu.org>
794
795 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
796 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
797 defined for the MS-DOS build.
798
799 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
800
801 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
802
803 2004-05-14 Kenichi Handa <handa@m17n.org>
804
805 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
806
807 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
808
809 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
810 section to frame.c section.
811 (Fxw_display_color_p, Fx_file_dialog): Declare if
812 HAVE_WINDOW_SYSTEM defined.
813
814 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
815
816 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
817
818 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
819 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
820 (XTread_socket): Fix int/Lisp_Object mixup.
821 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
822
823 * macterm.h (struct frame, struct face, struct image)
824 (display_x_get_resource, Fx_display_color_p)
825 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
826 Add prototypes.
827
828 2004-05-14 Kim F. Storm <storm@cua.dk>
829
830 * process.c (wait_reading_process_input): Make reentrant.
831 Make Available and Connecting non-static. Save and restore value
832 of waiting_for_user_input_p.
833
834 2004-05-13 Kim F. Storm <storm@cua.dk>
835
836 * keyboard.c (mark_kboards): Don't mark x and y members
837 that are overloaded in selection request events.
838
839 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
840
841 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
842
843 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
844
845 * window.c (Fdisplay_buffer, Fsplit_window)
846 (split-height-threshold): Doc fix.
847
848 2004-05-13 Juanma Barranquero <lektu@terra.es>
849
850 * xfaces.c (Ftty_supports_face_attributes_p)
851 (Finternal_copy_lisp_face): Fix typo in docstring.
852 (Finternal_get_lisp_face_attribute): Fix docstring.
853
854 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
855
856 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
857
858 2004-05-11 Steven Tamm <steventamm@mac.com>
859
860 * macfns.c (Fx_create_frame): Default to using tool-bar by
861 setting tool-bar-lines to 1 in default-frame-alist.
862
863 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
864
865 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
866 (xpm_get_color_table_v, xpm_make_color_table_h)
867 (xpm_put_color_table_h, xpm_get_color_table_h)
868 (xpm_str_to_color_key, xpm_load_image, xpm_load)
869 (syms_of_image): Support XPM on Carbon Emacs. Does not
870 depend on libXpm, but only supports XPM version 3 without extensions.
871
872 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
873
874 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
875 instead of FRAME_X_P
876
877 2004-05-11 Kim F. Storm <storm@cua.dk>
878
879 * process.c (read_process_output): Grow decoding_buf when needed;
880 this could cause a crash in allocate_string and compact_small_strings.
881
882 2004-04-29 Jim Blandy <jimb@redhat.com>
883
884 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
885 against proper opcode.
886
887 2004-05-10 Juanma Barranquero <lektu@terra.es>
888
889 * process.c (Fstart_process): Fix docstring.
890
891 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
892 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
893 (Fsplit_char, Fchar_charset): Make argument names match their use
894 in docstring.
895
896 2004-05-10 Richard M. Stallman <rms@gnu.org>
897
898 * print.c (print_preprocess): Use being_printed, loop_count and
899 halftail to detect overdeep nesting and cyclic cdr chains.
900
901 2004-05-10 Andreas Schwab <schwab@suse.de>
902
903 * lisp.h: Declare Fmake_symbolic_link.
904
905 * fileio.c (Frename_file): Remove extra argument in call to
906 Fmake_symbolic_link.
907
908 2004-05-10 Kim F. Storm <storm@cua.dk>
909
910 * xdisp.c (calc_line_height_property): Use string position when
911 object is a string.
912
913 2004-05-10 Kenichi Handa <handa@m17n.org>
914
915 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
916 inhibit-modification-hooks to t temporarily before calling
917 Ferase_buffer.
918
919 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
920 inhibit-modification-hooks to t temporarily before calling
921 Ferase_buffer.
922
923 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
924 inhibit-modification-hooks to t temporarily before calling
925 Ferase_buffer.
926
927 * fns.c (count_combining): Delete it.
928 (concat): Don't check combining bytes.
929
930 2004-05-09 Jason Rumney <jasonr@gnu.org>
931
932 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
933 (globals_of_w32fns): Set it.
934
935 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
936
937 * data.c (Fquo): Simplify.
938
939 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
940
941 * data.c (Fquo): If any argument is float, do the computation in
942 floating point.
943
944 2004-05-08 Juanma Barranquero <lektu@terra.es>
945
946 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
947 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
948 Fix spelling of Emacs on docstring.
949 (Fset_process_coding_system, Fprocess_coding_system)
950 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
951 Make argument names match their use in docstring.
952 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
953 Fix docstring.
954
955 * editfns.c (Finsert_buffer_substring): Make argument names match their
956 use in docstring.
957
958 * syntax.c (Fmodify_syntax_entry): Fix docstring.
959
960 2004-05-07 Steven Tamm <steventamm@mac.com>
961
962 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
963 around call to ReceiveEvent to avoid certain crashes.
964
965 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
966
967 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
968 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
969 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
970 Save/restore the current graphics port and device handle when
971 drawing into an offscreen graphics world.
972
973 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
974 (gif_load): Likewise.
975
976 2004-05-07 Juanma Barranquero <lektu@terra.es>
977
978 * window.c (Fset_window_buffer): Fix docstring.
979
980 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
981
982 * emacs.c (main) [VMS]: Fix var ref.
983
984 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
985
986 * data.c (Fsetq_default): Fix docstring.
987
988 2004-05-06 Jason Rumney <jasonr@gnu.org>
989
990 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
991 to avoid name clash.
992
993 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
994
995 * fileio.c (barf_or_query_if_file_exists): Use lstat.
996 (Frename_file): Handle renaming of symlinks across file systems.
997 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
998
999 2004-05-04 Kim F. Storm <storm@cua.dk>
1000
1001 * xdisp.c (Qtotal): New var.
1002 (syms_of_xdisp): Intern and staticpro it.
1003 (calc_line_height_property): New arg total. Set it if
1004 line-spacing property has format (total . VALUE).
1005 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1006 Handle total line-spacing property.
1007
1008 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1009
1010 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1011 "under" scroll bar when size/position changes.
1012
1013 2004-05-03 Jason Rumney <jasonr@gnu.org>
1014
1015 * makefile.nt: Remove.
1016
1017 2004-05-02 Eli Zaretskii <eliz@gnu.org>
1018
1019 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1020 Avoid compiler warnings.
1021
1022 * Makefile.in (region-cache.o): Depend on config.h.
1023
1024 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1025
1026 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1027 with continuation lines, too.
1028
1029 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1030
1031 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1032
1033 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1034
1035 * xdisp.c (calc_line_height_property): YAILOM (yet another
1036 int/Lisp_Object mixup).
1037
1038 2004-05-01 Eli Zaretskii <eliz@gnu.org>
1039
1040 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1041 undo bad effect of pack(4) in some versions of system headers.
1042
1043 2004-05-01 Jason Rumney <jasonr@gnu.org>
1044
1045 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1046
1047 2004-04-30 Kim F. Storm <storm@cua.dk>
1048
1049 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
1050 (syms_of_buffer) <cursor-type>: Doc fix.
1051
1052 * dispextern.h (struct it): Remove member use_default_face.
1053 Add members override_ascent, override_descent, override_boff.
1054
1055 * xdisp.c (init_iterator): Handle line-spacing float value.
1056 Initialize override_ascent member.
1057 (append_space_for_newline): Reset override_ascent.
1058 Remove use_default_face.
1059 (calc_line_height_property): New function to calculate value of
1060 line-height and line-spacing properties. Look at overlays, too.
1061 Set override_ascent, override_descent, override_boff members when
1062 using another face than the current face. Float values are now
1063 relative to the frame default font, by default; accept a cons
1064 of ratio and face name to specify value relative to a specific face.
1065 (x_produce_glyphs): Use calc_line_height_property.
1066 Use override_ascent etc. when set to handle different face heights.
1067 A negative line-spacing property value is interpreted as a total
1068 line height, rather than inter-line spacing.
1069 (note_mouse_highlight): Allocate room for 40 overlays initially.
1070
1071 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1072
1073 * data.c (Fsubr_name): New fun.
1074 (syms_of_data): Defsubr it.
1075
1076 2004-04-29 Kim F. Storm <storm@cua.dk>
1077
1078 * xdisp.c (null_glyph_slice): New var.
1079 (append_glyph, append_composite_glyph, append_stretch_glyph):
1080 Use it to initialize glyph slice.
1081
1082 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1083
1084 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1085 (on_hot_spot_p): Make sure we always return a value.
1086 (Flookup_image_map): Remove unused var ix and iy.
1087 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1088
1089 2004-04-27 Eli Zaretskii <eliz@gnu.org>
1090
1091 * msdos.c (init_environment): If one of the TMP... environment
1092 variables is set to a drive letter without a trailing slash,
1093 append a slash.
1094
1095 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1096
1097 * editfns.c (lisp_time_argument): Provide externally.
1098
1099 * fileio.c (Fset_file_times): New function.
1100 (syms_of_fileio): Intern and staticpro it.
1101
1102 2004-04-27 Kim F. Storm <storm@cua.dk>
1103
1104 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1105 header line strings.
1106
1107 * dispextern.h (struct it): New member use_default_face.
1108
1109 * xdisp.c (Qline_height): New variable.
1110 (syms_of_xdisp): Intern and staticpro it.
1111 (append_space_for_newline): Partially undo 2004-04-25 change;
1112 add default_face_p arg, and restore callers.
1113 Clear it->use_default_face after use.
1114 (x_produce_glyphs): Set default font for ascii char if
1115 it->use_default_font is set. Change line-spacing property to set
1116 just extra line spacing. Handle new line-height property.
1117
1118 2004-04-26 Andreas Schwab <schwab@suse.de>
1119
1120 * print.c (print_object): Print non-ascii characters in bool
1121 vector representation as octal escapes.
1122
1123 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1124 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1125 bool vectors.
1126 * lread.c (read1): Likewise.
1127 * alloc.c (Fmake_bool_vector): Likewise.
1128 * data.c (Faref, Faset): Likewise.
1129 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1130 (mapcar1): Likewise.
1131
1132 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1133
1134 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1135
1136 2004-04-26 Miles Bader <miles@gnu.org>
1137
1138 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1139
1140 2004-04-26 Juanma Barranquero <lektu@terra.es>
1141
1142 * buffer.c (Fpop_to_buffer): Fix docstring.
1143
1144 2004-04-26 Steven Tamm <steventamm@mac.com>
1145
1146 * lread.c (init_lread): Don't display missing lisp directory
1147 warnings with Carbon Emacs because self-contained bundled Emacs
1148 may be built without correct installation path.
1149
1150 2004-04-25 Kim F. Storm <storm@cua.dk>
1151
1152 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1153
1154 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1155
1156 * xdisp.c (append_space_for_newline): Rename from append_space.
1157 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1158 (x_produce_glyphs): Handle line-spacing property on newline char.
1159 If value is t, adjust ascent and descent to fit current row height.
1160 If value is an integer or float, set extra_line_spacing to integer
1161 value, or to float value x current line height.
1162
1163 2004-04-23 Kenichi Handa <handa@m17n.org>
1164
1165 * fontset.c (Finternal_char_font): If POSITION is nil, return
1166 font for displaying CH with the default face.
1167
1168 2004-04-23 Juanma Barranquero <lektu@terra.es>
1169
1170 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1171
1172 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1173
1174 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1175 Don't make assumptions about the relative place of i and val.
1176 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1177
1178 2004-04-21 Kim F. Storm <storm@cua.dk>
1179
1180 * dispextern.h (struct glyph_slice): New struct.
1181 (struct glyph): New member slice.
1182 (GLYPH_SLICE_EQUAL_P): New macro.
1183 (GLYPH_EQUAL_P): Use it.
1184 (struct glyph_string): New member slice.
1185 (struct it_slice): New struct.
1186 (struct it): New member slice, add member to stack too.
1187 New member constrain_row_ascent_descent_p.
1188 (image_ascent): Add prototype.
1189
1190 * dispnew.c (buffer_posn_from_coords): Return full image width
1191 and height even for image slices (posn is relative to full image).
1192 (marginal_area_string): Adjust x0,y0 for image slice.
1193
1194 * image.c (image_ascent): Add slice arg; calculate ascent for
1195 image slice (or full image).
1196
1197 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1198 (syms_of_keyboard): Defsubr them.
1199
1200 * lisp.h (pos_visible_p): Fix prototype.
1201
1202 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1203 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1204 (x_draw_image_foreground, x_draw_image_relief)
1205 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1206 Draw sliced images.
1207
1208 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1209 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1210 (x_draw_image_foreground, x_draw_image_relief)
1211 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1212 Draw sliced images.
1213
1214 * w32term.h (image_ascent): Remove prototype.
1215
1216 * window.c (Fpos_visible_in_window_p): Return pixel position if
1217 PARTIALLY arg is non-nil. Simplify. Doc fix.
1218 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1219 to return/set vscroll in pixels.
1220
1221 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1222
1223 * xdisp.c (Qslice): New variable.
1224 (syms_of_xdisp): Intern and staticpro it.
1225 (pos_visible_p): Return pixel position in new x and y args.
1226 (init_iterator): Reset it->slice info.
1227 (handle_display_prop): Parse (slice ...) property.
1228 (push_it, pop_it): Save/restore slice info.
1229 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1230 force repositioning of tall row if window is vscrolled, as that
1231 would reset vscroll.
1232 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1233 increasing row height if row is non-empty.
1234 (fill_image_glyph_string): Copy slice info.
1235 (take_vertical_position_into_account): Simplify.
1236 (produce_image_glyph): Handle iterator slice info, setup glyph
1237 slice info. Do not force minimum line height.
1238 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1239 do not increase height (ascent/descent) of non-empty row when
1240 adding normal character glyph; instead reduce glyph ascent/descent
1241 appropriately; if row is higher than current glyph, adjust glyph
1242 descent/ascent to reposition glyph within the existing row.
1243 Likewise, when char is newline, only set ascent/descent if row is
1244 currently empty.
1245 (note_mouse_highlight): Handle hotspots with sliced image.
1246
1247 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1248 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1249 (x_draw_image_foreground, x_draw_image_relief)
1250 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1251 Draw sliced images.
1252
1253 * xterm.h (image_ascent): Remove prototype.
1254
1255 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1256
1257 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1258
1259 2004-04-20 John Paul Wallington <jpw@gnu.org>
1260
1261 * fns.c (Fassoc, Feql): Fix indentation.
1262
1263 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1264
1265 2004-04-19 John Paul Wallington <jpw@gnu.org>
1266
1267 * fns.c (Feql): New function.
1268 (syms_of_fns): Defsubr it.
1269
1270 2004-04-18 Jason Rumney <jasonr@gnu.org>
1271
1272 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1273 after closing the clipboard.
1274
1275 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1276
1277 * buffer.c (Fbuffer_base_buffer): Doc fix.
1278
1279 2004-04-17 Kim F. Storm <storm@cua.dk>
1280
1281 * keymap.c (Fkey_description): Add optional PREFIX arg.
1282 Combine prefix with KEYS to make up the full key sequence to describe.
1283 Correlate meta_prefix_char and following (simple) key to describe
1284 as meta modifier. All callers changed.
1285 (describe_map): Rename arg `keys' to `prefix'. Remove local
1286 `elt_prefix' var. Use Fkey_description with prefix instead of
1287 elt_prefix combined with Fsingle_key_description.
1288 (describe_vector): Declare static. Replace arg `elt_prefix' with
1289 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1290 if !KEYMAP_P. Use Fkey_description with prefix instead of
1291 Fsingle_key_description.
1292
1293 * keymap.h (Fkey_description): Fix prototype.
1294 (describe_vector): Remove prototype.
1295
1296 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1297
1298 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1299 (png_load): Fix calculation of transparent background color on X
1300 and W32 platforms.
1301
1302 2004-04-16 Juanma Barranquero <lektu@terra.es>
1303
1304 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1305 not too large before computing how much to scroll.
1306
1307 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1308
1309 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1310
1311 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1312
1313 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1314 Add hyperlink to Elisp manual to the docstring.
1315
1316 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1317
1318 * callint.c (fix_command): Use XDCR.
1319
1320 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
1321
1322 * window.c (Fget_lru_window): Doc fix.
1323
1324 2004-04-14 Kim F. Storm <storm@cua.dk>
1325
1326 * editfns.c (Fformat): Fix allocation size of precision array.
1327
1328 * dispnew.c (update_window): Only set changed_p if
1329 scrolling_window actually did scroll.
1330 (scrolling_window): Only return 1 if we actually did scroll.
1331
1332 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1333 height to glyph height when cursor row is not fully visible.
1334 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1335 failure in case row is higher than window. Callers changed.
1336 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1337 Try to scroll partially visible, higher-than-window cursor row.
1338 (redisplay_window): Always try to scroll partially visible,
1339 higher-than-window cursor row - both initially and again with
1340 centering_position = 0.
1341 Clear desired matrix before retrying with centering_position = 0.
1342
1343 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1344
1345 * syntax.c (scan_lists): Simplify backward string scan.
1346 Fix off-by-one boundary check for string and comment fences.
1347
1348 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
1349
1350 * sheap.c, unexcw.c: New files.
1351
1352 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1353
1354 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1355 base buffer has been killed. Correct the error message if the
1356 base buffer does not exist.
1357
1358 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
1359
1360 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1361 Cygwin itself. Add support for Xaw3d scrollbars.
1362
1363 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1364
1365 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1366
1367 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1368 before Cygwin unexec.
1369
1370 * Makefile.in: Link changes for Cygwin unexec() support.
1371
1372 2004-04-12 Andreas Schwab <schwab@suse.de>
1373
1374 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1375
1376 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1377
1378 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1379 IGNORE argument equals NAME. Doc fix.
1380
1381 2004-04-11 Masatake YAMATO <jet@gyve.org>
1382
1383 * buffer.c (fix_start_end_in_overlays): Make overlays
1384 empty if they are backwards.
1385
1386 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1387
1388 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1389
1390 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1391
1392 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1393
1394 2004-04-06 Kim F. Storm <storm@cua.dk>
1395
1396 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1397 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1398
1399 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1400 clearing highlight.
1401
1402 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1403
1404 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1405 clearing highlight.
1406
1407 * indent.c (vmotion): Do not reserve one column for continuation
1408 marks on window frames.
1409
1410 2004-04-04 Eli Zaretskii <eliz@gnu.org>
1411
1412 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1413 from GCC.
1414
1415 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1416
1417 * .gdbinit-union: Remove.
1418
1419 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1420 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1421 ($nonvalbits): Remove.
1422 ($valmask): Set it by calling xreload to avoid redundancy.
1423
1424 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1425 (gdb_emacs_intbits): Remove.
1426
1427 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1428
1429 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1430
1431 2004-03-30 Kenichi Handa <handa@m17n.org>
1432
1433 * editfns.c (Fformat): Fix initialization of the array info.
1434
1435 2004-03-30 Kim F. Storm <storm@cua.dk>
1436
1437 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1438 (syms_of_xterm): DEFVAR_BOOL it.
1439 (ignore_next_mouse_click_timeout): New var.
1440 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1441 Use it to filter mouse clicks following focus event.
1442
1443 2004-03-29 David Ponce <david@dponce.com>
1444
1445 * callint.c (Fcall_interactively): Fix last change.
1446
1447 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1448
1449 * eval.c (Fcommandp): Simplify.
1450
1451 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1452 Extend to handle all kinds of functions.
1453
1454 * lisp.h (Finteractive_form): Declare.
1455
1456 * callint.c (Fcall_interactively): Use it.
1457
1458 2004-03-26 Kim F. Storm <storm@cua.dk>
1459
1460 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1461 to catch errors in calc_pixel_width_or_height during redisplay.
1462
1463 2004-03-26 Masatake YAMATO <jet@gyve.org>
1464
1465 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1466
1467 * lisp.h (fix_start_end_in_overlays): Likewise.
1468
1469 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1470
1471 * editfns.c (Ftranspose_regions): Likewise.
1472
1473 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1474
1475 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1476
1477 2004-03-19 Richard M. Stallman <rms@gnu.org>
1478
1479 * s/sol2-6.h: Delete previous change.
1480
1481 2004-03-19 Kim F. Storm <storm@cua.dk>
1482
1483 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1484 to_charpos corresponds to newline in right fringe. Use local
1485 BUFFER_POS_REACHED_P macro.
1486
1487 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1488
1489 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1490 to compile on non-window system.
1491
1492 2004-03-19 Kim F. Storm <storm@cua.dk>
1493
1494 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1495
1496 * image.c (Qcenter): Move to xdisp.c.
1497
1498 * xdisp.c (Qcenter): Declare here.
1499 (syms_of_xdisp): Intern and staticpro it.
1500 (handle_single_display_prop): Allow space display property on all
1501 platforms.
1502 (display_mode_line): Set mode_line_p before displaying line.
1503 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1504 handling. Remove complex cases for fringes and scroll-bars.
1505 Add left, right, and center alignment positions. Add text (area)
1506 width/height. Return width or height for image specs.
1507 (produce_stretch_glyph): Improve handling of :align-to. Is now
1508 relative to left of text area by default, but other base offsets
1509 can be specified -- also for text lines.
1510
1511 * term.c (produce_glyphs): Handle IT_STRETCH.
1512 (produce_stretch_glyph): New function to handle space width and
1513 align-to display properties on non-window systems.
1514
1515 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1516
1517 * fileio.c (Fread_file_name): Set completion-ignore-case for
1518 case-insensitive systems.
1519
1520 2004-03-14 Masatake YAMATO <jet@gyve.org>
1521
1522 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1523 when keymap and cursor are setup.
1524
1525 2004-03-14 Steven Tamm <steventamm@mac.com>
1526
1527 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1528
1529 2004-03-14 Kim F. Storm <storm@cua.dk>
1530
1531 * dispextern.h (x_find_image_file): Add prototype.
1532
1533 * image.c (x_find_image_file): Make extern.
1534
1535 * xfns.c (x_find_image_file): Remove prototype.
1536
1537 2004-03-13 Eli Zaretskii <eliz@gnu.org>
1538
1539 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1540
1541 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1542
1543 2004-03-12 Richard M. Stallman <rms@gnu.org>
1544
1545 * fns.c (internal_equal): New arg PROPS controls comparing
1546 text properties. All callers changed.
1547 (Fequal_including_properties): New function.
1548 (syms_of_fns): defsubr it.
1549
1550 2004-03-12 Kim F. Storm <storm@cua.dk>
1551
1552 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1553
1554 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1555 (image_background, image_background_transparent): Fix prototypes.
1556
1557 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1558
1559 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1560 (x_query_font, x_find_ccl_program, x_set_window_size)
1561 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1562 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1563 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1564
1565 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1566 (x_query_font, x_find_ccl_program, x_set_window_size)
1567 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1568 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1569 (mac_draw_line_to_pixmap): Add prototypes.
1570
1571 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1572
1573 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1574
1575 2004-03-11 Kim F. Storm <storm@cua.dk>
1576
1577 * dispextern.h: Move image related prototypes from xfns.c section
1578 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1579 HAVE_X_WINDOWS.
1580
1581 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1582 Move gtkutil.o to new GTK_OBJ list.
1583 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1584 (GTK_OBJ) [USE_GTK]: New declaration.
1585 (obj): Add $(GTK_OBJ) to list.
1586
1587 2004-03-11 Steven Tamm <steventamm@mac.com>
1588
1589 * image.c [MAC_OSX]: Include sys/stat.h
1590
1591 * macfns.c (syms_of_macfns): Remove definitions of things now
1592 defined in image.c
1593
1594 2004-03-11 Kim F. Storm <storm@cua.dk>
1595
1596 The following changes consolidates the identical/similar image
1597 support code previously found in xfns.c, w32fns.c, and macfns.c
1598 into a new file image.c.
1599
1600 * makefile.w32-in (OBJ1): Add image.o.
1601 ($(BLD)/image.$(O)): Add dependencies.
1602
1603 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1604 (image.o): Add dependencies.
1605
1606 * image.c: New file with consolidated image support code.
1607 (COLOR_TABLE_SUPPORT): New define to control whether
1608 color table support is available (X only).
1609 (Bitmap_Record): Common name for x_bitmap_record,
1610 w32_bitmap_record, and mac_bitmap_record.
1611 (XImagePtr): Common name for pointer to XImage or equivalent.
1612 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1613 to XImagePtr on X+MAC, and to HDC on W32.
1614 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1615 (NO_PIXMAP): Common name for "None" or equivalent.
1616 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1617 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1618 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
1619 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1620 Define with suitable equivalents on W32 and MAC for code sharing.
1621 (XDrawLine): Define on MAC for code sharing.
1622 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1623 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1624 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1625 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1626 (x_reference_bitmap, x_create_bitmap_from_data)
1627 (x_create_bitmap_from_file, x_destroy_bitmap)
1628 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1629 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1630 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1631 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1632 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1633 (define_image_type, lookup_image_type, valid_image_p)
1634 (image_error, enum image_value_type, struct image_keyword)
1635 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1636 (make_image, free_image, prepare_image_for_display, image_ascent)
1637 (four_corners_best, image_background, image_background_transparent)
1638 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1639 (make_image_cache, free_image_cache, clear_image_cache)
1640 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1641 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1642 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1643 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1644 (init_image_func_pointer, image_load_quartz2d)
1645 (struct ct_color, init_color_table, free_color_table)
1646 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1647 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1648 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1649 (x_disable_image, x_build_heuristic_mask)
1650 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1651 (TIFF support, GIF support, Ghostscript support): Consolidate image
1652 code from xfns.c, w32fns.c, and macfns.c.
1653 (syms_of_image): Consolidate image related symbol setup here.
1654 (init_image): Consolidate image related initializations here.
1655
1656 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1657 and init_image. Remove call to init_xfns.
1658
1659 * macterm.h (struct mac_bitmap_record): Add file member.
1660 Not currently used, but simplifies code sharing.
1661
1662 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1663 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1664 (x_reference_bitmap, x_create_bitmap_from_data)
1665 (x_create_bitmap_from_file, x_destroy_bitmap)
1666 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1667 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1668 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1669 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1670 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1671 (define_image_type, lookup_image_type, valid_image_p)
1672 (image_error, enum image_value_type, struct image_keyword)
1673 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1674 (make_image, free_image, prepare_image_for_display, image_ascent)
1675 (four_corners_best, image_background, image_background_transparent)
1676 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1677 (make_image_cache, free_image_cache, clear_image_cache)
1678 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1679 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1680 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1681 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1682 (init_image_func_pointer, image_load_quartz2d)
1683 (struct ct_color, init_color_table, free_color_table)
1684 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1685 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1686 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1687 (x_disable_image, x_build_heuristic_mask)
1688 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1689 (TIFF support, GIF support, Ghostscript support): Merge with image
1690 code from xfns.c and macfns.c into image.c.
1691 (syms_of_xfns): Move image related symbols to image.c.
1692 (init_external_image_libraries, init_xfns): Remove; initialization
1693 moved to init_image in image.c.
1694
1695 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1696 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1697 (x_reference_bitmap, x_create_bitmap_from_data)
1698 (x_create_bitmap_from_file, x_destroy_bitmap)
1699 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1700 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1701 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1702 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1703 (define_image_type, lookup_image_type, valid_image_p)
1704 (image_error, enum image_value_type, struct image_keyword)
1705 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1706 (make_image, free_image, prepare_image_for_display, image_ascent)
1707 (four_corners_best, image_background, image_background_transparent)
1708 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1709 (make_image_cache, free_image_cache, clear_image_cache)
1710 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1711 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1712 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1713 (struct ct_color, init_color_table, free_color_table)
1714 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1715 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1716 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1717 (x_disable_image, x_build_heuristic_mask)
1718 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1719 (TIFF support, GIF support, Ghostscript support): Merge with image
1720 code from xfns.c and macfns.c into image.c.
1721 (syms_of_xfns): Move image related symbols to image.c.
1722 (init_external_image_libraries, init_xfns): Remove; initialization
1723 moved to init_image in image.c.
1724
1725 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1726 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1727 (x_reference_bitmap, x_create_bitmap_from_data)
1728 (x_create_bitmap_from_file, x_destroy_bitmap)
1729 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1730 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1731 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1732 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1733 (define_image_type, lookup_image_type, valid_image_p)
1734 (image_error, enum image_value_type, struct image_keyword)
1735 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1736 (make_image, free_image, prepare_image_for_display, image_ascent)
1737 (four_corners_best, image_background, image_background_transparent)
1738 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1739 (make_image_cache, free_image_cache, clear_image_cache)
1740 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1741 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1742 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1743 (struct ct_color, init_color_table, free_color_table)
1744 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1745 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1746 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1747 (x_disable_image, x_build_heuristic_mask)
1748 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1749 (TIFF support, GIF support, Ghostscript support): Merge with
1750 w32fns.c and macfns.c image code into image.c.
1751 (syms_of_xfns): Move image related symbols to image.c.
1752 (init_xfns): Remove; initialization moved to init_image in image.c.
1753
1754 * lisp.h (syms_of_image, init_image): Add protoypes.
1755 (init_xfns): Remove prototype.
1756
1757 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1758 (x_reference_bitmap, x_create_bitmap_from_data)
1759 (x_create_bitmap_from_file, x_destroy_bitmap)
1760 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1761 (gamma_correct) [MAC_OS]: Add prototype.
1762
1763 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1764 (x_reference_bitmap, x_create_bitmap_from_data)
1765 (x_create_bitmap_from_file, x_destroy_bitmap)
1766 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1767
1768 2004-03-09 Kenichi Handa <handa@etlken2>
1769
1770 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1771 correctly.
1772
1773 2004-03-04 Richard M. Stallman <rms@gnu.org>
1774
1775 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1776
1777 * window.c (Fdisplay_buffer): Doc fix.
1778
1779 * buffer.c (Fpop_to_buffer): Doc fix.
1780
1781 2004-03-03 Kim F. Storm <storm@cua.dk>
1782
1783 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1784
1785 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1786
1787 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1788
1789 2004-03-02 Richard M. Stallman <rms@gnu.org>
1790
1791 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1792
1793 2004-03-02 Kenichi Handa <handa@m17n.org>
1794
1795 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1796
1797 2004-03-02 Kim F. Storm <storm@cua.dk>
1798
1799 * window.h (struct window): New member overlay_arrow_bitmap.
1800
1801 * window.c (make_window): Initialize overlay_arrow_bitmap.
1802
1803 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1804 implement and integrate multiple overlay arrows with redisplay.
1805 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1806 (last_arrow_position, last_arrow_string): Replace by properties.
1807 (Qlast_arrow_position, Qlast_arrow_string)
1808 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1809 (syms_of_xdisp): Intern and staticpro them.
1810 (overlay_arrow_string_or_property, update_overlay_arrows)
1811 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1812 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1813 (redisplay_internal): Use them instead of directly accessing
1814 Voverlay_arrow_position etc. for multiple overlay arrows.
1815 (mark_window_display_accurate): Use update_overlay_arrows.
1816 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1817 (try_window_id): Use overlay_arrows_changed_p.
1818 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1819 (display_line): Use overlay_arrow_at_row to check multiple
1820 overlay arrows, and get relevant overlay-arrow-string and
1821 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
1822 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1823 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1824
1825 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1826 (update_window_fringes): Remove unused code.
1827
1828 2004-03-01 Jason Rumney <jasonr@gnu.org>
1829
1830 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1831
1832 2004-03-01 Juanma Barranquero <lektu@terra.es>
1833
1834 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1835
1836 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1837
1838 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1839
1840 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1841 how many colors can be displayed.
1842
1843 2004-03-01 Kenichi Handa <handa@m17n.org>
1844
1845 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1846 correctly.
1847
1848 2004-02-28 Kim F. Storm <storm@cua.dk>
1849
1850 * dispnew.c (update_window): Update header line also if there are
1851 no other changes in window (move code after set_cursor label).
1852
1853 * lisp.h (mark_window_display_accurate): Remove prototype.
1854
1855 * window.c (window_loop, Fforce_window_update): Force mode line
1856 updates by setting prevent_redisplay_optimizations_p and
1857 update_mode_lines.
1858
1859 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1860
1861 * xfns.c (x_window): Fix indentation.
1862
1863 * xterm.c (x_calc_absolute_position): Call x_real_positions
1864 to get WM window sizes and use those to calculate position.
1865 (x_set_offset): Remove code commented out.
1866
1867 2004-02-28 Miles Bader <miles@gnu.org>
1868
1869 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1870
1871 2004-02-28 Kim F. Storm <storm@cua.dk>
1872
1873 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1874 an event into kbd fifo, but with special handling of quit event;
1875 a quit event is saved for later, and further events are discarded
1876 until the saved quit event has been processed.
1877 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1878 (gen_help_event): Store help event in kbd fifo.
1879 (NREAD_INPUT_EVENTS): Remove.
1880 (read_avail_input): Adapt to new read_socket_hook interface.
1881 Remove allocation and initialization of local input_event buffer,
1882 as read_socket_hook stores events directly in fifo. Allocate and
1883 initialize local hold_quit event to handle postponed quit event
1884 (and store it if set by kbd_buffer_store_event_hold).
1885
1886 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1887 (gen_help_event): Fix prototype.
1888
1889 * macterm.c (XTread_socket): Remove bufp_r and
1890 numcharsp args. Add hold_quit arg.
1891 Rework to use just one, local, inev input_event. Store inev
1892 directly in fifo using kbd_buffer_store_event_hold.
1893
1894 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1895 (read_input_waiting): Adapt to new read_socket_hook interface.
1896 Remove allocation and initialization of local input_event buffer,
1897 as read_socket_hook stores events directly in fifo. Allocate and
1898 initialize local hold_quit event to handle postponed quit event
1899 (and store it if set by kbd_buffer_store_event_hold).
1900
1901 * term.c (read_socket_hook): Fix arg list.
1902
1903 * termhooks.h (read_socket_hook): Fix prototype.
1904
1905 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1906 numcharsp args. Add hold_quit arg.
1907 Rework to use just one, local, inev input_event. Store inev
1908 directly in fifo using kbd_buffer_store_event_hold.
1909
1910 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1911
1912 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
1913 Add hold_quit arg. Rework to use just one, local, inev
1914 input_event. Store inev directly in fifo using
1915 kbd_buffer_store_event_hold. Update count in one place.
1916 Postpone call to gen_help_event until inev is stored; use new
1917 local do_help for this.
1918 Remove local emacs_event in handing of ButtonPress event; just use
1919 inev instead (so no reason to copy it later).
1920
1921 * xsmfns.c (x_session_check_input): Remove numchars arg.
1922
1923 * xterm.c (x_focus_changed, x_detect_focus_change):
1924 Remove numchars arg. Always store event into bufp arg.
1925 Return nothing. Callers changed accordingly.
1926 (glyph_rect): Simplify.
1927 (STORE_KEYSYM_FOR_DEBUG): New macro.
1928 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1929 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1930 (current_hold_quit) [USE_GTK]: Add.
1931 (event_handler_gdk): Adapt to new handle_one_xevent.
1932 (handle_one_xevent): Remove bufp_r and numcharsp args.
1933 Add hold_quit arg. Rework to use just one, local, inev
1934 input_event. Store inev directly in fifo using
1935 kbd_buffer_store_event_hold. Update count in one place.
1936 Postpone call to gen_help_event until inev is stored; use new
1937 local do_help for this.
1938 Simplify handling of keysyms (consolidate common code). Fix bug
1939 where count was updated with nchars instead of nbytes.
1940 Remove local emacs_event in handing of ButtonPress event; just use
1941 inev instead (so no reason to copy it later).
1942 Remove `out' label. Rename label `ret' to `done'; add various
1943 `goto done' to clarify code flow in deeply nested blocks.
1944 (x_dispatch_event): Simplify as handle_one_xevent now calls
1945 kbd_buffer_store_event itself.
1946 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
1947 arg. Call handle_one_xevent with new arglist. Store event from
1948 x_session_check_input in fifo.
1949 [USE_GTK]: Setup current_hold_quit.
1950 Decrement handling_signal before unblocking input.
1951 (x_initialize) [USE_GTK]: Initialize current_count.
1952
1953 * xterm.h (x_session_check_input): Fix prototype.
1954
1955 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1956
1957 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
1958
1959 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1960 macgui.h).
1961
1962 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
1963
1964 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1965 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1966 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1967 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1968 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1969 (Bitmap): Remove typedef.
1970 (Pixmap): Change int to GWorldPtr.
1971
1972 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1973
1974 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1975 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1976 New #define to extract 16-bit depth color components from unsigned
1977 long representation.
1978 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1979 colors used for masks.
1980 (struct mac_display_info): Add color_p. Remove n_cbits.
1981
1982 * macfns.c: Include sys/types.h and sys/stat.h.
1983 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1984 Include QuickTime/QuickTime.h.
1985 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1986 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1987 functions defined in macterm.c.
1988 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1989 (ZPixmap): New #define for compatibility with xfns.c.
1990 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1991 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
1992 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1993 New functions.
1994 (four_corners_best, x_create_x_image_and_pixmap)
1995 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1996 (x_edge_detection, init_color_table, colors_in_color_table)
1997 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1998 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1999 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2000 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2001 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2002 long mixup.
2003 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2004 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2005 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2006 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2007 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2008 (x_alloc_image_color, clear_image_cache, lookup_image)
2009 (x_find_image_file, xbm_read_bitmap_file_data)
2010 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2011 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2012 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2013 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2014 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
2015 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
2016 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2017 #if 0.
2018 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2019 #if 0. Free white_relief.gc and black_relief.gc.
2020 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2021 New functions (from xfns.c).
2022 (Fx_create_frame): Record unwind_create_frame.
2023 (Fxw_display_color_p): Use dpyinfo->color_p.
2024 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2025 dpyinfo->n_cbits.
2026 (Fx_display_color_cells): Use dpyinfo->n_planes;
2027 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2028 (Qheuristic, cross_disabled_images, emboss_matrix)
2029 (laplace_matrix): New variables (from xfns.c).
2030 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2031 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2032 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
2033 (image_background_transparent): New function (from xfns.c).
2034 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2035 (image_load_quicktime): Add declaration.
2036 [MAC_OSX] (image_load_quartz2d): Likewise.
2037 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2038 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
2039 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
2040 (xbm_load_image_from_file, x_laplace_read_row)
2041 (x_laplace_write_row, pbm_read_file): Remove functions.
2042 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2043 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2044 (colors_in_color_table): Sync with xfns.c (although not used).
2045 (lookup_rgb_color): Don't lookup color table. Just do gamma
2046 correction.
2047 (COLOR_INTENSITY): New #define (from xfns.c).
2048 (x_disable_image): New function (from xfns.c).
2049 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2050 (x_build_heuristic_mask): Sync with xfns.c.
2051 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2052 (HAVE_PBM): Remove #ifdef.
2053 (pbm_load): Sync with xfns.c. Set img->width and img->height
2054 before IMAGE_BACKGROUND.
2055 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
2056 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2057 Don't enclose with #if HAVE_PNG.
2058 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
2059 symbol _CGImageCreateWithPNGDataProvider is defined.
2060 Otherwise use image_load_quicktime.
2061 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
2062 [HAVE_PNG] (png_load): Sync with xfns.c.
2063 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2064 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2065 HAVE_JPEG.
2066 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2067 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2068 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2069 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2070 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2071 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2072 HAVE_TIFF.
2073 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2074 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2075 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
2076 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2077 New functions (from xfns.c).
2078 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
2079 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
2080 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2081 Don't enclose with #if HAVE_GIF.
2082 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2083 animated gif. Otherwise use image_load_quicktime.
2084 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2085 gif_DrawText to avoid conflict with QuickdrawText.h.
2086 [HAVE_GIF] (gif_load): Sync with xfns.c.
2087 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2088 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2089 Ghostscript is not supported yet).
2090 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2091 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2092 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2093 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2094 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2095 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2096 HAVE_PNG. Call EnterMovies to support animated gifs.
2097 Call init_image_func_pointer to bind a symbol
2098 _CGImageCreateWithPNGDataProvider if it is defined.
2099
2100 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2101 (x_draw_bar_cursor): Sync declaration with xterm.c.
2102 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2103 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2104 graphics).
2105 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2106 (mac_draw_line_to_pixmap, XCreatePixmap)
2107 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
2108 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2109 New functions.
2110 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2111 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2112 Cast bits to char *.
2113 (reflect_byte): New function (from w32fns.c).
2114 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2115 due to byte alignment.
2116 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2117 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2118 (XSetForeground): Remove static (now used in macfns.c).
2119 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2120 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2121 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2122 (x_draw_glyph_string_box, x_draw_image_foreground)
2123 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2124 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2125 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2126 Sync with xterm.c.
2127 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2128 than the xterm.c version when a strictly horizontal or vertical
2129 line is drawn.
2130 (XTset_terminal_window): Add static.
2131 (x_make_frame_visible): Add UNBLOCK_INPUT.
2132 (x_free_frame_resources): New funcion (from xterm.c).
2133 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2134 occurs in tool bar area.
2135 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2136 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
2137 Initialize image cache.
2138 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2139 Enclose unused functions with #if 0.
2140 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2141 (decode_mac_font_name): New function to apply code conversions
2142 from a mac font name to an XLFD font name according to its script code.
2143 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
2144 font name to a mac font name according to REGISTRY and ENCODING fields.
2145 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2146 whose name starts with `.'.
2147 (init_font_name_table): Use decode_mac_font_name. Add both
2148 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2149 of a font is smJapanese.
2150 (mac_do_list_fonts): New function to list fonts that match a given
2151 pattern.
2152 (x_list_fonts, XLoadQueryFont): Use it.
2153 (XLoadQueryFont): Set rbearing field for each variable width
2154 character to avoid needless redraw.
2155 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2156
2157 2004-02-26 Kim F. Storm <storm@cua.dk>
2158
2159 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2160 as read_socket_hook handler on X aborts if buffer is too small
2161 and W32 handler doesn't always check buffer limit.
2162
2163 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2164 right-fringe similar to a display margin image. Specifically,
2165 the characters having the fringe prop are no longer shown, and
2166 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2167 do this. Set fringe bitmap face_id in it->face_id.
2168 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2169 still realize it->face (i.e. the fringe bitmap face).
2170
2171 2004-02-25 Miles Bader <miles@gnu.org>
2172
2173 * xdisp.c (check_it): Check string/string_pos consistency.
2174 (init_iterator): Initialize string-related fields properly.
2175
2176 2004-02-11 Miles Bader <miles@gnu.org>
2177
2178 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2179
2180 2004-02-10 Miles Bader <miles@gnu.org>
2181
2182 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2183 BLOCK_INPUT can be nested, so it doesn't make much sense.
2184
2185 2004-02-24 Michael Mauger <mmaug@yahoo.com>
2186
2187 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2188 (xbm_read_bitmap_data): Use unsigned char for image data.
2189
2190 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2191
2192 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2193
2194 2004-02-22 Jason Rumney <jasonr@gnu.org>
2195
2196 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2197 correctly over other bitmaps.
2198
2199 2004-02-21 Eli Zaretskii <eliz@gnu.org>
2200
2201 * emacs.c (USAGE1): Split into two halves.
2202 (USAGE2): Second half of the old USAGE1.
2203 (USAGE3): Rename from USAGE2.
2204 (USAGE4): Rename from USAGE3.
2205
2206 2004-02-21 Juri Linkov <juri@jurta.org>
2207
2208 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2209 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2210 --file. Fix -f, -l. Sort options. Untabify.
2211 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2212
2213 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2214
2215 * category.c (Fdefine_category, Fcategory_docstring)
2216 (Fget_unused_category, Fset_category_table)
2217 (Fcategory_set_mnemonics): Doc fixes.
2218
2219 2004-02-20 Kim F. Storm <storm@cua.dk>
2220
2221 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2222 The following changes are relative to the 2004-01-21 revision.
2223 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2224 in one call to read_socket_hook. Value is 8.
2225 (read_avail_input): Separate and rework handling of read_socket_hook
2226 and non-read_socket_hook cases. Use smaller input_event buffer
2227 in read_socket_hook case, and repeat if full buffer is read.
2228 Use new local variable 'discard' to skip input after C-g.
2229 In non-read_socket_hook case, just use a single input_event, and
2230 call kbd_buffer_store_event on the fly for each character.
2231
2232 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2233
2234 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2235 Remove unused `gu' alternative.
2236
2237 2004-02-19 Andreas Schwab <schwab@suse.de>
2238
2239 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2240 warning.
2241
2242 2004-02-18 Kim F. Storm <storm@cua.dk>
2243
2244 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2245 Fix last change.
2246
2247 2004-02-17 Kim F. Storm <storm@cua.dk>
2248
2249 * xdisp.c (fast_find_position): Fix return value of new version;
2250 it was inverted compared to the 21.1 version.
2251 (get_window_cursor_type): Don't look at glyph if NULL.
2252 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2253
2254 * keyboard.c: Rework previous change; it didn't consider that the
2255 buf array was allocated on the stack.
2256 (prev_read): Remove variable.
2257 (read_avail_input_buf): New static event buffer array.
2258 (in_read_avail_input): New static variable to handle re-entrancy.
2259 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2260 Use in_read_avail_input to handle re-entrance; when re-entered,
2261 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2262 Do not initialize read_avail_input_buf in full here; instead assume it
2263 is always cleared on entry. To ensure that, we clear (just) the
2264 entries that were used before we return.
2265 (init_keyboard): Initialize read_avail_input_buf here.
2266
2267 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2268
2269 * cmds.c (Fend_of_line): Doc fix.
2270
2271 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2272
2273 * keyboard.c (prev_read): New static variable.
2274 (read_avail_input): Use it to zero out only those slots in buf[]
2275 that were used last time we were called.
2276
2277 2004-02-16 Eli Zaretskii <eliz@gnu.org>
2278
2279 * Makefile.in (obj): Move fringe.o from here...
2280 (XOBJ, MAC_OBJ): ...to here.
2281
2282 2004-02-16 Stephen Eglen <stephen@gnu.org>
2283
2284 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2285
2286 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2287
2288 * data.c (Fbyteorder):
2289 * fringe.c (Fdefine_fringe_bitmap):
2290 * xdisp.c (handle_single_display_prop):
2291 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2292
2293 2004-02-16 Jason Rumney <jasonr@gnu.org>
2294
2295 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2296
2297 2004-02-15 Steven Tamm <steventamm@mac.com>
2298
2299 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2300 controlling emulation of a three button mouse with option and
2301 command keys.
2302 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2303 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2304
2305 2004-02-15 Kim F. Storm <storm@cua.dk>
2306
2307 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2308
2309 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2310 Perform byte-swapping.
2311
2312 2004-02-14 Kim F. Storm <storm@cua.dk>
2313
2314 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2315 bits from char to short to facilitate wider bitmaps.
2316 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2317 member.
2318
2319 * fringe.c (struct fringe_bitmap): Change member bits from char to
2320 short to facilitate 16 bits wide bitmaps. Modify all standard
2321 bitmaps accordingly.
2322 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2323 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2324 (draw_fringe_bitmap): Ditto.
2325 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2326 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2327 handle up to 16 bits wide bitmaps.
2328 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2329 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2330
2331 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2332 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2333 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2334
2335 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2336 so it is no longer necessary to expand them here.
2337
2338 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2339
2340 2004-02-12 Kim F. Storm <storm@cua.dk>
2341
2342 * window.c (Fwindow_fringes): Doc fix.
2343
2344 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2345
2346 * xselect.c (x_get_foreign_selection): Add new optional parameter
2347 time_stamp.
2348 (Fx_get_selection_internal): Ditto, pass time_stamp to
2349 x_get_foreign_selection.
2350
2351 * data.c (Fbyteorder): New function.
2352
2353 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2354
2355 * atimer.c: Move include stdio.h to same place as in other files.
2356
2357 * region-cache.c: Ditto.
2358
2359 * sysdep.c: Ditto.
2360
2361 * xfaces.c: Ditto.
2362
2363 2004-02-09 Sam Steingold <sds@gnu.org>
2364
2365 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2366
2367 2004-02-09 Kim F. Storm <storm@cua.dk>
2368
2369 * fringe.c: New file. Move original fringe related declarations
2370 and code from dispextern.h and xdisp.c here.
2371 Rework code to support user defined fringe bitmaps, redefining
2372 standard bitmaps, ability to overlay user defined bitmap with
2373 overlay arrow bitmap, and add faces to bitmaps.
2374 (Voverflow_newline_into_fringe): Declare here.
2375 (enum fringe_bitmap_align): New enum.
2376 (..._bits): All bitmaps are now defined without bitswapping; that
2377 is now done in init_fringe_once (if necessary).
2378 (standard_bitmaps): New array with specifications for the
2379 standard fringe bitmaps.
2380 (fringe_faces): New array.
2381 (valid_fringe_bitmap_id_p): New function.
2382 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2383 (draw_fringe_bitmap): New function which draws fringe bitmap,
2384 possibly overlaying bitmap with cursor in right fringe or the
2385 overlay arrow in the left fringe.
2386 (update_window_fringes): Do not handle overlay arrow here.
2387 Compare and copy fringe bitmap faces.
2388 (init_fringe_bitmap): New function.
2389 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2390 define and destroy user defined fringe bitmaps.
2391 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2392 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2393 (syms_of_fringe): New function. Defsubr new DEFUNs.
2394 DEFVAR_LISP Voverflow_newline_into_fringe.
2395 (init_fringe_once, init_fringe): New functions.
2396 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2397
2398 * Makefile.in (obj): Add fringe.o.
2399 (fringe.o): New dependencies.
2400
2401 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2402 bits allocated to hold a fringe number. Increase number of bits
2403 from 4 to 8 to allow user defined fringe bitmaps.
2404 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2405 left_user_fringe_face_id, right_user_fringe_bitmap,
2406 right_user_fringe_face_id.
2407 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2408 Move to new file fringe.c.
2409 (MAX_FRINGE_BITMAPS): Define here.
2410 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2411 and overlay_p. Change member which to int.
2412 (struct redisplay_interface): New members define_fringe_bitmap
2413 and destroy_fringe_bitmap.
2414 (valid_fringe_bitmap_id_p): Add prototype.
2415 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2416
2417 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2418 arrows.
2419 (update_frame): Do flush_display if force_flush_display_p to
2420 ensure display (specifically fringes) are updated in a timely
2421 manner when resizing the frame by dragging the mouse.
2422 (update_window_line): Update row if overlay arrow changed.
2423 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2424 or overlay arrow changed.
2425
2426 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2427 syms_of_fringe, and init_fringe.
2428
2429 * frame.h (struct frame): New member force_flush_display_p.
2430
2431 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2432 Add prototypes.
2433
2434 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2435 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2436 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2437 Use cursor color for displaying cursor in fringe.
2438 (x_redisplay_interface): Add null handlers for
2439 define_fringe_bitmap and destroy_fringe_bitmap functions.
2440
2441 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2442 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2443 for displaying cursor in fringe.
2444 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2445 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2446 (w32_redisplay_interface): Add them to redisplay_interface.
2447 (w32_term_init): Call w32_init_fringe instead of explicitly
2448 defining fringe bitmaps in fringe_bmp array.
2449 (x_delete_display): Call w32_reset_fringes instead of explicitly
2450 destroying fringe bitmaps in fringe_bmp array.
2451
2452 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2453 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2454 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2455 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2456 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2457 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2458 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2459 Move fringe handling vars and code to new file fringe.c.
2460 (handle_display_prop): Handle left-fringe and right-fringe
2461 display properties; store user fringe bitmaps in iterator.
2462 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2463 (clear_garbaged_frames): Set force_flush_display_p if resized.
2464 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2465 (display_line): Handle cursor in fringe at eob.
2466 (display_line): Set row user fringe bitmaps from iterator.
2467
2468 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2469 Use cursor color for displaying cursor in fringe.
2470 (x_redisplay_interface): Add null handlers for
2471 define_fringe_bitmap and destroy_fringe_bitmap functions.
2472
2473 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2474
2475 * macfns.c (Fx_change_window_property): Make doc string and
2476 parameters same as for X version.
2477
2478 * w32fns.c (Fx_change_window_property): Ditto.
2479
2480 2004-02-07 Kim F. Storm <storm@cua.dk>
2481
2482 * xdisp.c (hscroll_window_tree): Position cursor near to right
2483 margin in hscrolled window when jumping to end of line (rather
2484 than centering cursor).
2485
2486 * process.c (wait_reading_process_input): Don't do adaptive read
2487 buffering if waiting for a specific process.
2488
2489 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2490
2491 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2492 (Fread_minibuffer, Feval_minibuffer)
2493 (Fread_string, Fread_no_blanks_input)
2494 (Fcompleting_read): Doc fixes.
2495 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2496 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2497 (read_minibuf): Fix initial comment.
2498 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2499 case-fold-search to the value of completion-ignore-case when
2500 checking completion-regexp-list.
2501 (Fdisplay_completion_list): Make it handle arguments that are
2502 symbols. Doc fix.
2503
2504 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2505
2506 * xterm.h: Add declaration of free_frame_menubar.
2507
2508 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2509 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2510 (Fx_change_window_property): Add declaration of parameters type and
2511 format. Remove unused variable cons.
2512
2513 * xselect.c: Include stdio,h.
2514
2515 2004-02-05 Kenichi Handa <handa@m17n.org>
2516
2517 * fns.c (Fset_char_table_range): Fix previous change.
2518
2519 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2520
2521 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2522
2523 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2524
2525 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2526
2527 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2528 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2529
2530 2004-02-04 Kenichi Handa <handa@m17n.org>
2531
2532 * fns.c (Fset_char_table_range): Handle charsets ascii,
2533 eight-bit-control, and eight-bit-graphic correctly.
2534
2535 2004-02-03 Jason Rumney <jasonr@gnu.org>
2536
2537 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2538
2539 * w32fns.c (x_to_w32_font): Likewise.
2540
2541 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2542
2543 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2544 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2545
2546 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2547 ClientMessages.
2548
2549 * xselect.c: Include termhooks.h and X11/Xproto.h
2550 (x_check_property_data, x_fill_property_data)
2551 (x_property_data_to_lisp, mouse_position_for_drop)
2552 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2553 (Fx_send_client_event): Move here from xfns.c.
2554 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2555
2556 * xfns.c (x-send-client-message): Move to xselect.c
2557 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2558 OUTER_P.
2559 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2560 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2561 if vector_ret_p is true.
2562 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2563
2564 2004-02-02 Eli Zaretskii <eliz@gnu.org>
2565
2566 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2567 basename of FILE relative to it, not FILE itself.
2568
2569 2004-02-02 Kenichi Handa <handa@m17n.org>
2570
2571 * coding.c (coding_restore_composition): Check invalid
2572 composition data more rigidly.
2573
2574 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2575
2576 * fileio.c (Fread_file_name_internal): Correctly handle the case
2577 where insert-default-directory is nil.
2578 (Fread_file_name): Always return an empty string if the user exits
2579 with an empty minibuffer. Adapt the docstring accordingly.
2580 (syms_of_fileio): Adapt the docstring of insert-default-directory
2581 to the change in Fread_file_name.
2582
2583 2004-01-29 Eli Zaretskii <eliz@gnu.org>
2584
2585 * alloca.c [!alloca]: Fix the prototype for xfree.
2586
2587 2004-01-29 Kenichi Handa <handa@m17n.org>
2588
2589 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2590 (string_byte_to_char): Likewise.
2591
2592 2004-01-28 Peter Runestig <peter@runestig.com>
2593
2594 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2595
2596 2004-01-27 Steven Tamm <steventamm@mac.com>
2597
2598 * unexmacosx.c (unexec_copy): Do not copy more than was
2599 requested to prevent overwriting during unexec.
2600
2601 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2602
2603 * process.c (sigchld_handler): Add comment about not calling malloc.
2604
2605 * process.h: Add extern to synch_process_termsig.
2606
2607 2004-01-27 Steven Tamm <steventamm@mac.com>
2608
2609 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2610 Move setting of scroll bars from make_mac_frame to
2611 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
2612
2613 2004-01-26 Richard M. Stallman <rms@gnu.org>
2614
2615 * search.c (Freplace_match): Handle nonexistent
2616 back-references properly.
2617
2618 2004-01-03 Richard M. Stallman <rms@gnu.org>
2619
2620 * window.c (decode_any_window): New function.
2621 (Fwindow_height, Fwindow_width, Fwindow_edges)
2622 (Fwindow_pixel_edges, Fwindow_inside_edges)
2623 (Fwindow_inside_pixel_edges): Use decode_any_window.
2624
2625 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2626
2627 * process.h: synch_process_termsig new variable.
2628
2629 * callproc.c: Define synch_process_termsig.
2630 (Fcall_process): Initiate synch_process_termsig to zero and
2631 check if non-zero and get signal name after subprocess has ended.
2632
2633 * process.c (sigchld_handler): Set synch_process_termsig
2634 if terminated by a signal. synch_process_death setting removed.
2635
2636 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2637
2638 2004-01-26 Andreas Schwab <schwab@suse.de>
2639
2640 * print.c (print_preprocess): Declare size as EMACS_INT to not
2641 lose bits.
2642 (print_object): Likewise.
2643 * alloc.c (Fpurecopy): Likewise.
2644
2645 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2646
2647 * window.c (Fwindow_minibuffer_p): Doc fix.
2648
2649 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2650
2651 * editfns.c (Fformat): Make both passes accept the same set of flags.
2652
2653 2004-01-23 Kenichi Handa <handa@m17n.org>
2654
2655 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2656 one, set buffer to OBJECT temporarily.
2657
2658 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2659
2660 * keyboard.c (kbd_buffer_gcpro): Remove.
2661 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2662 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2663 Don't initialize and/or maintain the variable any more. It was made
2664 redundant by my commit of 2003-06-15.
2665
2666 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2667
2668 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2669
2670 * lisp.h: Add undef DECL_ALIGN.
2671
2672 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2673
2674 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2675 Check interrupt_input_pending explicitly.
2676
2677 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2678
2679 * keyboard.c (handle_async_input): New fun,
2680 extracted from input_available_signal.
2681 (input_available_signal, reinvoke_input_signal): Use it.
2682
2683 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2684
2685 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2686
2687 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2688 manipulation macros for when tags are in the lower bits.
2689 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2690 (DECL_ALIGN): New macro.
2691 (DEFUN): Use it.
2692
2693 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2694
2695 * s/darwin.h (__attribute__): Remove outdated workaround.
2696
2697 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2698
2699 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2700 Don't check range of malloc address.
2701 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2702
2703 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2704
2705 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2706
2707 2004-01-19 Kenichi Handa <handa@m17n.org>
2708
2709 * fontset.c (fontset_font_pattern): Fix previous change.
2710
2711 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2712
2713 * xdisp.c (Voverflow_newline_into_fringe)
2714 (move_it_in_display_line_to, redisplay_internal)
2715 (update_window_fringes, redisplay_window, display_line, window):
2716 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2717 that it compiles without a window-system.
2718 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2719
2720 2004-01-16 Kim F. Storm <storm@cua.dk>
2721
2722 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2723
2724 * buffer.c (init_buffer_once): Set buffer_defaults and
2725 buffer_local_flags for indicate_buffer_boundaries.
2726 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2727 default- variable for it.
2728
2729 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2730 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
2731 New members exact_window_width_line_p and cursor_in_fringe_p for
2732 overflowing newlines into right fringe.
2733 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2734 and indicate_bottom_line_p for buffer boundaries and scrolling.
2735 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2736 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2737 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2738 and HOLLOW_SQUARE_BITMAP.
2739 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2740 Add prototypes.
2741
2742 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2743 instead of related indicator fields.
2744 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2745 (direct_output_for_insert): Handle exact width lines like
2746 contined lines. Call update_window_fringes.
2747 (update_window): Call update_window_fringes.
2748 (scrolling_window): Don't skip desired rows with changed bitmaps.
2749 Check if fringe bitmaps changes when assigning scrolled rows.
2750
2751 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2752 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2753 (move_it_in_display_line_to): Overflow newline into fringe for
2754 rows that are exactly as wide as the window.
2755 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2756 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2757 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2758 (fringe_bitmaps): Add new bitmaps.
2759 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2760 Select proper bitmap for cursor in fringe when appropriate.
2761 Handle alignment of bitmap to top or bottom of row.
2762 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2763 done by update_window_fringes.
2764 (update_window_fringes, draw_window_fringes): New functions.
2765 (redisplay_internal): Call update_window_fringes in case only
2766 cursor row is updated.
2767 (redisplay_window): Call update_window_fringes.
2768 Explicitly call draw_window_fringes if redisplay was done using
2769 the current matrix or the overlay arrow is in the window.
2770 (try_window_reusing_current_matrix): Mark scrolled rows for
2771 fringe update (to update buffer-boundaries / scrolling icons).
2772 (find_last_unchanged_at_beg_row): Handle exact width lines line
2773 continued lines.
2774 (display_line): Overflow newline into fringe for rows that are
2775 exactly as wide as the window. Don't append space for newline
2776 in this case.
2777 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2778 in fringe as if it had been overwritten.
2779 (erase_phys_cursor): Erase cursor bitmap in fringe.
2780 (syms_of_xdisp): Mark show-trailing-whitespace and
2781 void-text-area-pointer as user options.
2782 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
2783
2784 * xterm.c (x_update_window_end): Call draw_window_fringes.
2785 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2786 in row instead of actually drawing fringe bitmaps.
2787 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2788 (x_draw_window_cursor): Draw cursor in fringe.
2789
2790 * w32term.c (x_update_window_end): Call draw_window_fringes.
2791 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2792 in row instead of actually drawing fringe bitmaps.
2793 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2794 (w32_draw_window_cursor): Draw cursor in fringe.
2795
2796 * macterm.c (x_update_window_end): Call draw_window_fringes.
2797 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2798 in row instead of actually drawing fringe bitmaps.
2799 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2800 (mac_draw_window_cursor): Draw cursor in fringe.
2801
2802 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2803
2804 * xterm.c (handle_one_xevent): Don't handle characters that are part
2805 of an old style (XLookupString) compose sequence.
2806
2807 2004-01-15 Kenichi Handa <handa@m17n.org>
2808
2809 * search.c (Freplace_match): Use make_multibyte_string or
2810 make_unibyte_string according to the buffer multibyteness.
2811
2812 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2813
2814 * alloc.c (struct interval_block, struct string_block)
2815 (struct symbol_block, struct marker_block, live_string_p)
2816 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2817 Better preserve alignment for objects in blocks.
2818 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2819
2820 * lread.c (defvar_per_buffer): Remove dead declaration.
2821
2822 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2823 space size.
2824
2825 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2826
2827 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2828 if a key press should pop down. Only pop down if a key is pressed
2829 outside the menu/dialog.
2830 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2831 popup_get_selection.
2832 (create_and_show_dialog): Pass 1 for down_on_keypress to
2833 popup_get_selection.
2834
2835 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2836
2837 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2838 BLOCK/UNBLOCK_INPUT.
2839
2840 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2841
2842 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2843 specified.
2844
2845 2004-01-08 Kenichi Handa <handa@m17n.org>
2846
2847 * editfns.c (Fformat): Fix '&' to '&&'.
2848
2849 2004-01-08 Andreas Schwab <schwab@suse.de>
2850
2851 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2852 size if PSEUDOVECTOR_FLAG is set.
2853
2854 2004-01-07 Kenichi Handa <handa@m17n.org>
2855
2856 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2857
2858 * fontset.c (fontset_ref_via_base): Fix previous change.
2859
2860 2004-01-07 Kim F. Storm <storm@cua.dk>
2861
2862 * process.c (read_process_output): Only activate adaptive
2863 buffering if we read less than 256 bytes at a time.
2864
2865 2004-01-06 Kim F. Storm <storm@cua.dk>
2866
2867 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2868 object and image object. Return glyph width and height.
2869 (mode_line_string, marginal_area_string): Ditto.
2870
2871 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2872 (marginal_area_string): Fix prototypes.
2873
2874 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
2875 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
2876 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2877
2878 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2879 buffer_posn_from_coords, and marginal_area_string functions to
2880 include both string object and image object in the lispy position.
2881 Also add actual glyph width and height to position.
2882 (read_key_sequence): Use real buffer position from mouse
2883 event to find keymap property even when click is in marginal area.
2884
2885 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2886 mode_line_string and marginal_area_string functions to handle
2887 both string object and image object properties.
2888
2889 2004-01-06 Andreas Schwab <schwab@suse.de>
2890
2891 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2892 character.
2893
2894 2004-01-02 Andreas Schwab <schwab@suse.de>
2895
2896 * macterm.c (emacs_options, x_initialized, same_x_server):
2897 Remove unused (and duplicated) definitions.
2898
2899 2004-01-02 Kim F. Storm <storm@cua.dk>
2900
2901 * process.h (struct Lisp_Process): New members for adaptive read
2902 buffering: adaptive_read_buffering, read_output_delay, and
2903 read_output_skip.
2904
2905 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2906 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2907 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2908 (process_output_delay_count, process_output_skip): New vars.
2909 (Vprocess_adaptive_read_buffering): New variable.
2910 (make_process): Initialize adaptive read buffering members.
2911 (Fstart_process): Set adaptive_read_buffering member.
2912 (deactivate_process): Cleanup adaptive read buffering.
2913 (wait_reading_process_input): Temporarily omit delayed
2914 subprocesses from the set of file descriptors to read from;
2915 adjust the select timeout if we skipped any subprocesses.
2916 (read_process_output): Increase adaptive read buffering delay if
2917 we read less than a full buffer; reduce delay when we read a
2918 full buffer.
2919 (send_process): Simplify using local Lisp_Process var.
2920 Reset adaptive read buffering delay after write.
2921 (init_process): Initialize process_output_delay_count and
2922 process_output_skip.
2923 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2924
2925 2004-01-01 Jason Rumney <jasonr@gnu.org>
2926
2927 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
2928
2929 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2930
2931 * print.c (Ferror_message_string): Add hyperlink in the docstring
2932 to the definition of `signal' in the Elisp manual.
2933 * eval.c (Fsignal): Ditto.
2934
2935 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
2936
2937 * fns.c (internal_equal): Return t for two NaN arguments.
2938
2939 2003-12-29 Richard M. Stallman <rms@gnu.org>
2940
2941 * data.c (store_symval_forwarding): Handle setting
2942 default-fill-column, etc., by changing the value in
2943 buffers that use the default.
2944
2945 * minibuf.c (Fset_minibuffer_window): Doc fix.
2946
2947 * fileio.c (choose_write_coding_system): Ignore auto_saving
2948 if using the visited file for auto saves.
2949 (Fwrite_region): Don't update SAVE_MODIFF
2950 if auto-saving in visited file.
2951
2952 2003-12-29 Kenichi Handa <handa@m17n.org>
2953
2954 * dispextern.h (face_font_available_p): Extern it.
2955
2956 * fontset.c (Voverriding_fontspec_alist): New variable.
2957 (lookup_overriding_fontspec): New function.
2958 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
2959 (fontset_font_pattern): Likewise.
2960 (regulalize_fontname): New function.
2961 (Fset_fontset_font): Call regulalize_fontname.
2962 (Fset_overriding_fontspec_internal): New function.
2963 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2964 Defsubr Sset_overriding_fontspec_internal.
2965
2966 * xfaces.c (face_font_available_p): New function.
2967
2968 2003-12-28 Richard M. Stallman <rms@gnu.org>
2969
2970 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2971 or if its name is nil.
2972
2973 * buffer.c (Fkill_buffer): Don't delete auto-save file
2974 if it's the same as the visited file.
2975
2976 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2977
2978 * coding.c (Fcheck_coding_system): Doc fix.
2979
2980 2003-12-28 Kim F. Storm <storm@cua.dk>
2981
2982 * Makefile.in (eval.o): Depend on dispextern.h.
2983
2984 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2985 image glyph using image's ascent.
2986 (mode_line_string): Return image glyph as object clicked on.
2987 Adjust y0 for image glyph using image's ascent.
2988
2989 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2990 (struct glyph): New members, ascent and descent. Used to save
2991 this glyph's ascent and descent, instead of having.
2992 (struct glyph): Declare member face_id using FACE_ID_BITS.
2993 (find_hot_spot): Add prototype.
2994
2995 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2996 (QCmap): Declare extern.
2997 (make_lispy_position): When position is inside image hot-spot,
2998 use hot-spot element's id as posn element.
2999
3000 * lisp.h (IMAGEP): New macro to test for image object type.
3001 (Qimage): Declare extern.
3002
3003 * macfns.c (Qimage): Remove extern (now in lisp.h).
3004 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3005
3006 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3007
3008 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3009 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3010
3011 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3012
3013 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3014
3015 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3016 pointer types.
3017 (Qrelative_width, Qalign_to): Remove unused variables.
3018 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3019 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3020 image maps.
3021 (x_y_to_hpos_vpos): Return glyph relative coordinates through
3022 new dx and dy args.
3023 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3024 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3025 than row's ascent and height, to get sensible height on tall rows.
3026 (build_desired_tool_bar_string): Remove Qimage extern.
3027 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3028 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3029 image glyph is alone on the last line.
3030 (append_glyph, append_composite_glyph, produce_image_glyph)
3031 (append_stretch_glyph): Set glyph's ascent and descent.
3032 (on_hot_spot_p): New function to check if position is inside an
3033 rectangular, circular, or polygon-shaped image hot-spot,
3034 (find_hot_spot): New function to search for image hot-spot.
3035 (Flookup_image_map): New defun to search for image hot-spot.
3036 (define_frame_cursor1): New aux function to determine frame pointer.
3037 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3038 Handle `pointer' text property and :pointer image property to
3039 control frame pointer shape. Detect image hot-spots for pointer
3040 and help_echo properties. Use define_frame_cursor1.
3041 (note_mouse_highlight): Use Vvoid_text_area_pointer.
3042 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
3043 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3044
3045 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3046
3047 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3048 (Qimage): Remove extern (now in lisp.h).
3049 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3050
3051 * xmenu.c (show_help_event): Remove unused code.
3052
3053 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3054 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3055 row's ascent and descent, to get a sensible height on tall rows.
3056
3057 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3058
3059 * minibuf.c (Fcompleting_read): Undo previous change.
3060
3061 2003-12-25 Lars Hansen <larsh@math.ku.dk>
3062
3063 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3064 Arguments GCPRO'ed in call to file name handler.
3065
3066 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3067
3068 * termcap.c (tgetst1): Scan for "%pN"; if all
3069 N are continuous in [1,9], remove all "%pN".
3070
3071 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3072
3073 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3074
3075 * xfaces.c (lface_fully_specified_p): Take into account that
3076 MAC OS always have unspecified stipple.
3077
3078 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3079
3080 * tparam.c (tparam1): Add handling for `%pN', which
3081 means use param N for the next substitution.
3082
3083 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3084
3085 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3086 In case `frame' is nil, consult the selected frame.
3087 (Fcolor_supported_p): Likewise.
3088
3089 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3090
3091 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3092 Doc fixes.
3093
3094 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3095 and an integer. Adapt the introductory comment accordingly.
3096 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3097 Doc fix.
3098 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3099 read_minibuf.
3100 (Fcompleting_read): Delete code moved into read_minibuf.
3101 (Ftest_completion): Make it handle obarrays and hash tables correctly.
3102
3103 2003-12-03 Kenichi Handa <handa@m17n.org>
3104
3105 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3106 encoding sequence.
3107
3108 2003-12-01 Kenichi Handa <handa@m17n.org>
3109
3110 * composite.c (syms_of_composite): Don't make the compostion hash
3111 table week.
3112
3113 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3114
3115 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3116 * textprop.c (Fget_char_property_and_overlay): New function.
3117 (syms_of_textprop): Defsubr it.
3118
3119 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3120
3121 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3122 to compile on terminal configuration.
3123
3124 * fileio.c (Fread_file_name): Check use_file_dialog also before
3125 calling Fx_file_dialog.
3126
3127 * fns.c: use_file_dialog: New variable.
3128 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3129
3130 2003-11-29 Kim F. Storm <storm@cua.dk>
3131
3132 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3133 (syms_of_msdos): Don't intern and staticpro them.
3134
3135 2003-11-27 Kim F. Storm <storm@cua.dk>
3136
3137 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3138 coordinates relative to glyph at posn. If glyph is an image,
3139 return that as object at posn. Callers changed.
3140 (mode_line_string, marginal_area_string): Calculate and return
3141 pixel coordinates relative to glyph. Callers changed.
3142
3143 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3144 (marginal_area_string): Fix prototypes.
3145 (window_box_left_offset, window_box_right_offset): Add prototypes.
3146
3147 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3148 Remove prototypes.
3149
3150 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3151
3152 * keyboard.c (make_lispy_position): Add x and y coordinates
3153 relative to the current glyph as 7th element of position.
3154 If glyph is an image, return it in the object element.
3155 (read_key_sequence): Skip checks for keymap property in cases
3156 where POSN_STRING is not a string (e.g. an image).
3157
3158 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3159 (Vshow_text_cursor_in_void): New variable.
3160 (glyph_to_pixel_coords): Don't use negative hpos.
3161 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3162 (append_stretch_glyph): Change ascent arg to be actual value
3163 in pixels rather than ratio to height. Callers changed.
3164 (calc_pixel_width_or_height): New aux function, implementing
3165 pixel based artihmetic for glyph widths and heights.
3166 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3167 :width, :height, :align-to, and :ascent, thus allowing these to
3168 be specified in pixels as well as multiples of characters.
3169 Don't produce stretch glyphs with zero width or height.
3170 (get_specified_cursor_type): Declare static.
3171 (get_window_cursor_type): Declare static. Add glyph arg to be
3172 able to know when cursor is on an image; always substitute
3173 hollow-box cursor for filled-box cursor on images, to avoid
3174 negative images and flicker when blinking the cursor.
3175 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3176 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3177 than vertical scroll-bar cursor in display margins.
3178 (note_mouse_highlight): Use non-text cursor rather than text
3179 cursor in fringes and over images in the text area.
3180 Use non-text cursor when mouse pointer is outside editable text,
3181 i.e. in the void after end-of-line or end-of-buffer; this was
3182 already done for W32, but is now standard for all systems --
3183 user can toggle show-text-cursor-in-void to get old behaviour.
3184 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3185 Vdisplay_pixels_per_inch.
3186
3187 2003-11-25 Andreas Schwab <schwab@suse.de>
3188
3189 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3190 EMACS_INT to not lose bits.
3191 (Ffillarray): Don't set bits beyond the size of a bool vector.
3192
3193 2003-11-25 Kim F. Storm <storm@cua.dk>
3194
3195 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3196 define this defun on systems that cannot use stderr as lvalue.
3197
3198 2003-11-24 Gerd Moellmann <gerd@gnu.org>
3199
3200 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3201 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3202 ld's default is incompatible with unexec.
3203
3204 2003-11-23 Kim F. Storm <storm@cua.dk>
3205
3206 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3207 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3208 (Fforce_window_update): New defun.
3209 (syms_of_window): Defsubr it.
3210 (Fset_window_margins, Fset_window_fringes): Doc fix.
3211
3212 * print.c (Fredirect_debugging_output): New defun.
3213 (syms_of_print): Defsubr it.
3214
3215 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3216
3217 * fns.c (Fset_char_table_parent): Doc fix.
3218
3219 2003-11-22 Kim F. Storm <storm@cua.dk>
3220
3221 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3222 for glyph clicked on, rather than (unused) pixel positions.
3223 (mode_line_string, marginal_area_string): Change X and Y args to
3224 pointers for returning actual row/column for glyph clicked on.
3225 Simplify and optimize loops.
3226
3227 * dispextern.h (mode_line_string, marginal_area_string):
3228 Update prototypes.
3229
3230 * keyboard.c (make_lispy_position): New function for generating
3231 mouse click positions from frame and pixel coordinates.
3232 Enhanced to return buffer position and actual row/column for
3233 events outside the text area using updated mode_line_string and
3234 marginal_area_string functions.
3235 Return left-fringe and right-fringe clicks as such, rather than
3236 clicks in text area.
3237 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3238 pixel_to_glyph_coords, as we never use the results.
3239 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3240 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3241 Eliminate unused code in WHEEL_EVENT handling.
3242 (make_lispy_movement): Use make_lispy_position.
3243
3244 * window.c (coordinates_in_window): Remove redundant tests.
3245 Fix returned X pixel value for left-margin.
3246
3247 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3248 mode_line_string and marginal_area_string parameters.
3249
3250 2003-11-22 Lars Hansen <larsh@math.ku.dk>
3251
3252 * w32.c (struct the_group, getgrgid): Add.
3253 * mac.c (struct my_group, getgrgid): Add.
3254
3255 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3256
3257 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3258
3259 2003-11-21 Lars Hansen <larsh@math.ku.dk>
3260
3261 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3262 include in call to file name handler. Optionally translate numeric
3263 UID and GID to strings. Update docstring.
3264 (directory_files_internal): Add parameter ID-FORMAT.
3265 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3266 include in call to file name handler and call to
3267 directory_files_internal. Update Docstring.
3268 (Fdirectory_files): Add dummy parameter in call to
3269 directory_files_internal.
3270 * lisp.h (Qinteger): Add.
3271 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3272 (Ffile_attributes): Add parameter.
3273 * data.c (Qinteger): Export.
3274
3275 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3276
3277 * fns.c (Freverse, Fnreverse): Doc fixes.
3278
3279 2003-11-19 Kim F. Storm <storm@cua.dk>
3280
3281 * xdisp.c (init_iterator): Initialize it->start to position
3282 before reseating (in case start position is invisible).
3283 (init_to_row_start): Set it->start to row-start.
3284 (redisplay_window): Accept optional_new_start if start position
3285 is invisible (in which case IT_CHARPOS overshoots PT).
3286 (display_line): Setup row->start from it->start (rather than
3287 it->current which is wrong if first char on line is invisible).
3288 When done, reseat it->start to it->current (= start of next row).
3289 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3290 is only partially visible.
3291
3292 * dispextern.h (struct it): New member start.
3293
3294 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3295
3296 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3297 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3298 of block_index outside of the macro call.
3299 (Fgarbage_collect): Remove null code.
3300
3301 * m/amdx86-64.h: Don't redefine XPNTR.
3302
3303 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3304 of VALMASK.
3305
3306 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3307 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3308 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3309
3310 * lisp.h (VALMASK): Only define for non-union type.
3311 (MARKBIT): Remove.
3312 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3313 (XTYPE): Define unconditionally.
3314 (XSETTYPE): Remove one more remnant.
3315 (EQ): Define differently for the union and non-union cases.
3316 (INTMASK): New bit mask.
3317 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3318 (GC_EQ): Delegate to EQ.
3319
3320 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3321
3322 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3323
3324 * xterm.c (x_window_to_scroll_bar): Move check of display to
3325 where window_id is compared.
3326
3327 2003-11-17 Kim F. Storm <storm@cua.dk>
3328
3329 * dispextern.h (struct it): New member first_vpos.
3330
3331 * xdisp.c (start_display): Set it->first_vpos.
3332 (try_window_id): Use first_vpos to start display in first _text_
3333 line if no reusable lines at start of window with header line.
3334
3335 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3336
3337 * w32fns.c (XPutPixel):
3338 * w32bdf.c (w32_init_bdf_font):
3339 * sunfns.c (sel_read):
3340 * process.c (Fmake_network_process):
3341 * frame.c (store_frame_param):
3342 * fontset.c (Fset_fontset_font):
3343 * emacs.c (shut_down_emacs):
3344 * ccl.c (ccl_driver): Remove period at end of error message.
3345
3346 * config.in: Regenerate.
3347
3348 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3349 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3350 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3351 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3352 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3353
3354 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3355
3356 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3357 (XTmouse_position, handle_one_xevent): Pass Display* to
3358 x_window_to_scroll_bar.
3359 (x_window_to_scroll_bar): Take a Display* argument.
3360 Check that display for frame is equal to Display* argument.
3361 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3362 x_display_info_for_display instead. Use Display in xev instead
3363 of GDK_DISPLAY.
3364 (x_dispatch_event): Call x_display_info_for_display.
3365 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3366 (x_connection_closed): Call xg_display_close for GTK.
3367 (x_term_init): Call xg_display_open for additional displays.
3368 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3369 for GTK.
3370
3371 * xmenu.c (single_menu_item, mouse_position_for_popup)
3372 (x_activate_menubar): Formatting adjustments.
3373
3374 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3375 adjustments.
3376
3377 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3378 (xg_display_close, xg_create_default_cursor)
3379 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3380 handling.
3381 (xg_left_ptr_cursor): Remove.
3382 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3383 cursor here.
3384 (xg_win_to_widget): Take Display* argument, call
3385 gdk_xid_table_lookup_for_display.
3386 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3387 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3388 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3389 in FRAME_X_DISPLAY_INFO.
3390 (xg_get_scroll_id_for_window): Take Display* argument.
3391 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3392 (xg_initialize): Remove xg_left_ptr_cursor.
3393
3394 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3395 Display* argument also. Declare xg_display_open,
3396 xg_display_close, xg_create_default_cursor.
3397
3398 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3399
3400 * xterm.c (x_detect_focus_change): Do not change focus frame for
3401 Enter/LeaveNotify if the current focus frame has explicit focus.
3402
3403 2003-11-14 Kim F. Storm <storm@cua.dk>
3404
3405 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3406 is active and first glyph is only partially visible.
3407
3408 2003-11-13 Kenichi Handa <handa@m17n.org>
3409
3410 * xdisp.c (select_frame_for_redisplay): New function.
3411 (redisplay_internal): Record also selected_frame for
3412 unwind_redisplay. Call select_frame_for_redisplay before
3413 redrawing each frame.
3414 (unwind_redisplay): Argument changed to a cons.
3415
3416 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3417
3418 * fns.c (Fstring_to_multibyte): Doc fix.
3419
3420 2003-11-11 Kenichi Handa <handa@m17n.org>
3421
3422 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3423
3424 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3425
3426 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3427 program specified positions.
3428
3429 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3430
3431 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3432
3433 2003-11-08 Kenichi Handa <handa@m17n.org>
3434
3435 * Makefile.in (lisp): Add kannada.el.
3436 (shortlisp): Likewise.
3437
3438 2003-11-07 Kenichi Handa <handa@m17n.org>
3439
3440 * coding.c (coding_allocate_composition_data):
3441 Reset coding->composing to COMPOSITION_NO.
3442 (coding_restore_composition): Detect invalid composition data.
3443 Give Fstring and Fvector a Lispy integer, not C int.
3444
3445 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3446
3447 * floatfns.c (Flogb): Don't use VALMASK.
3448
3449 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3450 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3451
3452 * lisp.h (XINT): Move the cast to clarify what is going on.
3453 (GCTYPEMASK, XSETTYPE): Remove.
3454 (XGCTYPE): Make it an alias of XTYPE.
3455
3456 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3457
3458 * xterm.c (x_term_init): Fix formatting.
3459
3460 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3461
3462 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3463 and xg_did_tearoff.
3464
3465 * gtkutil.c: Remove variable xg_did_tearoff.
3466 (xg_have_tear_offs): New function.
3467 (tearoff_remove): Just decrease xg_detached_menus.
3468 (tearoff_activate): Increase xg_detached_menus and call
3469 tearoff_remove when tearoff is removed.
3470 (xg_keep_popup): Remove function.
3471 (create_menus): Give add_tearoff_p as argument to recursive
3472 call to create_menus.
3473 (xg_create_widget): Use variables instead of multiple
3474 strcmp. Tell create_menus to create tear off only for
3475 menu bar menus.
3476 (xg_update_menubar): Change title for a detached menu also.
3477 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3478 of deep_p.
3479 (xg_initialize): Initialize xg_detached_menus, remove
3480 initialization of xg_did_tearoff.
3481
3482 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3483 xg_have_tear_offs returns non-zero.
3484 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3485 call to xg_keep_popup.
3486
3487 2003-11-01 Andrew Choi <akochoi@shaw.ca>
3488
3489 * macterm.c (XTread_socket): Handle menubar selection and grow
3490 window only for mouseDown events.
3491
3492 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3493
3494 * xterm.c (x_term_init): For GTK part, increase x_initialized
3495 to check for more than one display. Use error instead of return 0.
3496
3497 2003-10-31 Andrew Choi <akochoi@shaw.ca>
3498
3499 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3500 (copy_dysymtab): Call it.
3501
3502 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3503
3504 * eval.c (Fdefvaralias): Doc fix.
3505
3506 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3507
3508 * data.c (Fsetplist): Doc fix.
3509
3510 2003-10-14 Lute Kamstra <lute@gnu.org>
3511
3512 * window.c (Fset_window_fringes): Clarify docstring.
3513
3514 2003-10-14 Kim F. Storm <storm@cua.dk>
3515
3516 * window.c (Fset_window_margins): Simplify arg checking.
3517
3518 2003-10-13 Richard M. Stallman <rms@gnu.org>
3519
3520 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3521 (print_partial_compiled_pattern): Replace assert with a printout.
3522 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3523
3524 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3525
3526 * window.c (Fset_window_margins): Allow only integers as args.
3527 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3528 Doc fixes.
3529
3530 2003-10-13 Lute Kamstra <lute@gnu.org>
3531
3532 * window.c (Fset_window_fringes): Elaborate docstring.
3533
3534 2003-10-12 Andrew Choi <akochoi@shaw.ca>
3535
3536 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3537
3538 * s/darwin.h (GC_MARK_STACK): Define.
3539
3540 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3541
3542 * window.c (shrink_windows): New function.
3543 (size_window): Call shrink_windows to calculate window sizes when
3544 shrinking frame with more than one window.
3545
3546 2003-10-12 Kim F. Storm <storm@cua.dk>
3547
3548 * xdisp.c (compute_fringe_widths): Doc fix.
3549
3550 2003-10-08 Kenichi Handa <handa@m17n.org>
3551
3552 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3553
3554 2003-10-07 Kenichi Handa <handa@m17n.org>
3555
3556 * coding.c (Qcoding_system_define_form): New variable.
3557 (syms_of_coding): Intern and staticpro it.
3558 (Fcheck_coding_system): Try to autoload the definition of
3559 CODING-SYSTEM.
3560
3561 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3562
3563 * fns.c (Frequire): Doc fix.
3564
3565 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3566
3567 * xfns.c (Fx_send_client_event): New function as a base for
3568 manipulating extended window manager hints.
3569 (Fx_send_client_event): Remove unused variable s.
3570
3571 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3572 that function is removed.
3573
3574 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3575 x/y_pixels_outer_diff.
3576 (x_check_expected_move): Calculate move_offset_left/top.
3577
3578 * xterm.h (struct x_output): New members: move_offset_top/left.
3579
3580 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3581 call x_set_offset directly.
3582
3583 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3584
3585 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3586
3587 * xterm.c (x_delete_display): Free font names and font_encoder
3588 in dpyinfo->font_table.
3589
3590 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3591 Move xfree of font names to x_delete_display.
3592
3593 * xterm.h (struct x_display_info): New member, wm_type.
3594 (struct x_output): New members, expected_top/left and
3595 check_expected_move.
3596
3597 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3598 is received.
3599 (handle_one_xevent): Rename x_check_expected_move from
3600 x_check_fullscreen_move.
3601 (x_set_offset): Only add WM decoration sizes to modified_top/left
3602 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3603 (x_check_expected_move): Rename from x_check_fullscreen_move.
3604 Removed fullscreen specific code. Use check_expected_move,
3605 expected_left/top instead. Also, set wm_type.
3606 (x_term_init): Initialize wm_type to unknown.
3607
3608 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3609 sizes to move_x/y.
3610
3611 2003-10-03 Kenichi Handa <handa@m17n.org>
3612
3613 * macterm.c (x_load_font): Clear all members of FONTP before start
3614 filling them.
3615
3616 2003-10-02 Kenichi Handa <handa@m17n.org>
3617
3618 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3619 before calling find_ccl_program_func. Call find_ccl_program_func
3620 only when fontp->font_encoder is not NULL.
3621
3622 * xterm.c (x_load_font): Clear all members of FONTP before start
3623 filling them.
3624
3625 2003-10-03 John Paul Wallington <jpw@gnu.org>
3626
3627 * keymap.c (map_keymap): Don't abort when binding is a vector.
3628
3629 2003-10-02 Jason Rumney <jasonr@gnu.org>
3630
3631 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3632 Sync dependencies with Makefile.in.
3633 (alloca.o): Remove.
3634
3635 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3636 filling them.
3637
3638 * w32bdf.c (w32_load_bdf_font): Likewise.
3639
3640 2003-09-30 Richard M. Stallman <rms@gnu.org>
3641
3642 * term.c (set_tty_color_mode): Calculate current_mode_spec
3643 regardless of value of VAL.
3644
3645 * intervals.c (graft_intervals_into_buffer):
3646 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3647 Handle over_used when splitting UNDER.
3648
3649 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3650
3651 * regex.c (regex_compile): Free the stack when returning from function.
3652
3653 2003-09-28 Kenichi Handa <handa@m17n.org>
3654
3655 * fontset.c (Finternal_char_font): Change return value to
3656 cons (FONT-NAME . GLYPH-CODE).
3657
3658 2003-09-28 Eli Zaretskii <eliz@gnu.org>
3659
3660 * term.c (tty_setup_colors): Treat any negative argument as -1.
3661
3662 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3663
3664 * process.c (send_process): Delete unused temp_buf.
3665
3666 2003-09-26 Dave Love <fx@gnu.org>
3667
3668 * xterm.c (x_bitmap_mask): Declare.
3669
3670 2003-09-25 Dave Love <fx@gnu.org>
3671
3672 * Makefile.in (fns.o): Depend on md5.h.
3673
3674 2003-09-25 Kim F. Storm <storm@cua.dk>
3675
3676 * window.c (set_window_buffer): Fix redisplay problems when
3677 switching between buffers with different display margin widths.
3678
3679 2003-09-23 Kim F. Storm <storm@cua.dk>
3680
3681 * process.c (set_socket_option): Fix :bindtodevice option.
3682 (Fset_network_process_option): Update process contact list when
3683 setting option succeeds.
3684 (Fmake_network_process): Doc fix.
3685
3686 2003-09-23 Dave Love <fx@gnu.org>
3687
3688 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
3689
3690 2003-09-22 Eli Zaretskii <eliz@gnu.org>
3691
3692 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3693 color mode is an integer number (it could be -1).
3694
3695 2003-09-22 Richard M. Stallman <rms@gnu.org>
3696
3697 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3698 in the case where OVER is longer than UNDER.
3699
3700 2003-09-22 Masatake YAMATO <jet@gyve.org>
3701
3702 * window.c (Fset_window_scroll_bars): Validate the value of
3703 `vertical_type'.
3704
3705 2003-09-21 Kim F. Storm <storm@cua.dk>
3706
3707 * frame.c (Vdefault_frame_scroll_bars): New variable.
3708 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3709 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3710 window-system default scroll bar position.
3711
3712 * window.c (Fwindow_scroll_bars): Doc fix.
3713
3714 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3715
3716 * xterm.c (x_set_offset): Take window manager decorations into account.
3717
3718 2003-09-19 Richard M. Stallman <rms@gnu.org>
3719
3720 * atimer.h: Don't include lisp.h.
3721 (P_): Define it here (as well as elsewhere).
3722
3723 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3724 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3725
3726 * data.c (Fvariable_binding_locus): New function.
3727 (syms_of_data): defsubr it.
3728 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3729
3730 2003-09-18 Dave Love <fx@gnu.org>
3731
3732 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3733
3734 * process.c (Fnetwork_interface_info): Fix type error.
3735 (Fnetwork_interface_list): Doc fix.
3736 (read_process_output, read_process_output): Delete unused var.
3737
3738 2003-09-17 Kim F. Storm <storm@cua.dk>
3739
3740 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3741 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3742 (Fnetwork_interface_info): Check that ifreq struct has required
3743 fields before accessing them; this requires that those fields are
3744 defined as macros, which may be too restrictive on some platforms,
3745 but it is better than failing on other platforms.
3746 (syms_of_process): Only defsubr above fns when included.
3747
3748 2003-09-17 Dave Love <fx@gnu.org>
3749
3750 * unexalpha.c: Don't include varargs.h.
3751
3752 2003-09-17 Kim F. Storm <storm@cua.dk>
3753
3754 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3755 for network process.
3756 (socket_options): Add `:' prefix to option names. Add optbit field.
3757 (set_socket_option): Remove no_error arg and special handling of s < 0.
3758 Return 1<<optbit for known option, 0 for unknown.
3759 Do not interpret 0 as false for boolean option (only nil).
3760 Pass failed option and value to report_file_error.
3761 (Fset_network_process_options): Replace by Fset_network_process_option.
3762 (Fset_network_process_option): New function to set just one option.
3763 (Fmake_network_process): Allow :coding arg to be a cons.
3764 Allow :server arg to be an integer specifying backlog size.
3765 Remove :options arg, and allow options to be specified directly
3766 as :KEY, VALUE pairs. Parse these options before binding socket.
3767 As before, :reuseaddr t is default for a server process, but this
3768 can now be disabled by specifying :reuseaddr nil.
3769 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3770 (init_process): Availability of network options is now checked with
3771 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3772 setup features.
3773 (syms_of_process): Fix defsubr's for the replaced functions.
3774
3775 2003-09-16 Dave Love <fx@gnu.org>
3776
3777 * Makefile.in: Depend on coding.h.
3778
3779 2003-09-14 Kim F. Storm <storm@cua.dk>
3780
3781 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3782 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3783 (syms_of_process): Defsubr them.
3784
3785 * config.in: Regenerate.
3786
3787 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3788
3789 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3790 * m/news-r6.h (XUNMARK): Remove.
3791 * m/mips.h (XUNMARK): Remove.
3792 * m/mips-siemens.h (XUNMARK): Remove.
3793 * m/iris4d.h (XUNMARK): Remove.
3794 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3795
3796 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3797
3798 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3799 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3800 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3801 (XTYPE): Use unsigned right-shift.
3802 (XMARKBIT, XMARK, XUNMARK): Remove.
3803
3804 * alloc.c (init_intervals, init_symbol, init_marker):
3805 Don't preallocate anything.
3806 (Fgarbage_collect, mark_object): Ignore the markbit.
3807
3808 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3809
3810 2003-09-08 Lute Kamstra <lute@gnu.org>
3811
3812 * xdisp.c (pint2hrstr): New function.
3813 (decode_mode_spec): Add `%i' and `%I' specs.
3814 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3815 for `mode-line-format'.
3816
3817 2003-09-07 Andreas Schwab <schwab@suse.de>
3818
3819 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3820 avoid warning.
3821
3822 2003-09-07 Eli Zaretskii <eliz@gnu.org>
3823
3824 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
3825
3826 2003-09-03 Kim F. Storm <storm@cua.dk>
3827
3828 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3829 change (superseded by 2002-08-30 change); the default blink-off
3830 cursor is now again "no cursor".
3831
3832 2003-09-01 Jason Rumney <jasonr@gnu.org>
3833
3834 * makefile.w32-in (alloca.o): Remove.
3835 (coding.o): Depend on intervals.h
3836 (emacs.o, bytecode.o): Depend on window.h
3837
3838 2003-09-01 Dave Love <fx@gnu.org>
3839
3840 * Makefile.in (alloca.o): Remove commands.
3841 (coding.o): Depend on intervals.h composite.h window.h.
3842 (emacs.o): Depend on window.h keyboard.h keymap.h.
3843 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3844 (bytecode.o): Depend on window.h.
3845
3846 2003-08-31 Jason Rumney <jasonr@gnu.org>
3847
3848 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3849 returned even when font_type is unknown.
3850
3851 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3852
3853 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3854
3855 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3856
3857 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3858 *_offset.
3859
3860 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3861 calculate pixel value.
3862
3863 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3864
3865 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3866 Don't tell redisplay display is accurate when it's actually been
3867 paused for pending input.
3868
3869 2003-08-29 Richard M. Stallman <rms@gnu.org>
3870
3871 * dispnew.c (adjust_glyph_matrix): Call window_box
3872 whenever W is nonzero.
3873
3874 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3875 (Fkill_local_variable, Fmake_variable_frame_local)
3876 (Flocal_variable_p, Flocal_variable_if_set_p):
3877 Use indirect_variable to trace thru variable aliases.
3878
3879 * config.in: Updated.
3880
3881 * callint.c (Fcall_interactively): Save and restore
3882 Vthis_command, Vthis_original_command, real_this_command,
3883 and current_kboard->Vlast_command.
3884
3885 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3886
3887 2003-08-29 Gerd Moellmann <gerd@gnu.org>
3888
3889 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3890
3891 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3892
3893 * coding.c (decode_coding_iso2022): Initialize local variable c2.
3894 (decode_coding_sjis_big5): Likewise.
3895
3896 2003-08-27 Jason Rumney <jasonr@gnu.org>
3897
3898 * w32.c (sys_pipe): Protect against file descriptor overflow.
3899
3900 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3901
3902 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3903
3904 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
3905
3906 * xfns.c (Vgtk_version_string): New variable.
3907 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3908
3909 2003-08-24 Eli Zaretskii <eliz@gnu.org>
3910
3911 * term.c (term_init): Remove `const' from buffer_size's declaration.
3912
3913 * Makefile.in (msdos.o): Depend on intervals.h.
3914
3915 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
3916
3917 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3918
3919 * xterm.h (struct x_display_info): New fields: client_leader_window
3920 and Xatom_wm_client_leader.
3921
3922 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3923 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3924
3925 * xsmfns.c (create_client_leader_window): New function.
3926 (x_session_initialize): Call create_client_leader_window, take
3927 dpyinfo as argument.
3928
3929 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3930
3931 * Makefile.in (xsmfns.o): Add more depenedencies.
3932
3933 2003-08-21 Dave Love <fx@gnu.org>
3934
3935 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3936
3937 2003-08-21 Kenichi Handa <handa@m17n.org>
3938
3939 * term.c (term_init): Fix previous change; don't rely on the
3940 length of `buffer' if TERMINFO is defined.
3941
3942 2003-08-20 Dave Love <fx@gnu.org>
3943
3944 * atimer.h: Include lisp.h.
3945
3946 * lisp.h (EMACS_LISP_H): New.
3947 (popup_activated_flag): Don't declare.
3948
3949 * alloca.c: Some merging with gnulib. Change logic and doc
3950 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3951 [DO_BLOCK_INPUT]: Don't include lisp.h.
3952 (xmalloc, xfree): Declare.
3953 (malloc): Don't declare.
3954
3955 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
3956 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3957 atimer.h, blockinput.h.
3958
3959 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3960
3961 * alloca.s: Removed.
3962
3963 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3964
3965 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3966 use -lncurses.
3967
3968 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3969 FreeBSD returns something longer than 2044. Abort if the end of
3970 the buffer is overwritten.
3971
3972 2003-08-19 Miles Bader <miles@gnu.org>
3973
3974 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3975
3976 2003-08-19 Gerd Moellmann <gerd@gnu.org>
3977
3978 * alloc.c (lisp_align_malloc): Check for memory full when
3979 allocating ablocks, which also avoids freeing a pointer into an
3980 ablocks structure.
3981
3982 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3983
3984 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
3985
3986 2003-08-16 Richard M. Stallman <rms@gnu.org>
3987
3988 * editfns.c (Fencode_time): Doc fix.
3989
3990 2003-08-16 David Ponce <david@dponce.com>
3991
3992 * fileio.c (Fwrite_region): Fix conditional expression to issue
3993 the right message.
3994
3995 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3996
3997 * syntax.c (Fforward_word): Argument changed to optional.
3998 Set default value to 1.
3999
4000 2003-08-15 Kenichi Handa <handa@m17n.org>
4001
4002 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4003 what autoscaled.
4004 (best_matching_font): Once we find a better scalable font, set
4005 non_scalable_has_exact_height_p to 1.
4006 (try_font_list): Call try_alternative_families to try any family
4007 with the given registry.
4008
4009 2003-08-09 Andreas Schwab <schwab@suse.de>
4010
4011 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4012
4013 * print.c (print_string): Fix printing of multibyte string with
4014 nontrivial printcharfun.
4015
4016 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4017
4018 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4019
4020 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4021
4022 2003-07-31 Kenichi Handa <handa@m17n.org>
4023
4024 * process.c (read_process_output): Return the actually read bytes
4025 instead of the result of decoding.
4026
4027 2003-07-31 Kenichi Handa <handa@m17n.org>
4028
4029 * xterm.h (struct x_bitmap_record): New member have_mask.
4030
4031 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4032 to 0.
4033 (x_create_bitmap_from_file): Likewise.
4034 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4035 (x_destroy_all_bitmaps): Likewise.
4036 (x_create_bitmap_mask): Set have_mask member to 1.
4037
4038 2003-07-30 Richard M. Stallman <rms@gnu.org>
4039
4040 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4041
4042 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4043
4044 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4045
4046 2003-07-29 Richard M. Stallman <rms@gnu.org>
4047
4048 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4049 Conditionalize XIM code on HAVE_XIM.
4050
4051 * fns.c (Fclear_string): New function.
4052 (syms_of_fns): defsubr it.
4053
4054 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4055
4056 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
4057
4058 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4059
4060 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4061
4062 * buffer.c (delete_all_overlays): New function.
4063 * buffer.h (delete_all_overlays): Declare.
4064 * coding.c (run_pre_post_conversion_on_str):
4065 * print.c (temp_output_buffer_setup):
4066 * fileio.c (Finsert_file_contents):
4067 * minibuf.c (get_minibuffer): Use it.
4068
4069 2003-07-22 Andrew Choi <akochoi@shaw.ca>
4070
4071 * unexmacosx.c (unexec_regions_sort_compare):
4072 (unexec_regions_merge): New functions. Sort and merge unexec
4073 regions before dumping them.
4074
4075 2003-07-22 Dave Love <fx@gnu.org>
4076
4077 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4078
4079 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4080
4081 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4082 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4083 MARKBIT as the gcmarkbit for strings.
4084
4085 2003-07-21 Richard M. Stallman <rms@gnu.org>
4086
4087 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4088
4089 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
4090 (syms_of_fns): Corresponding change.
4091
4092 * alloc.c (syms_of_alloc): Doc fixes.
4093
4094 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4095
4096 * s/netbsd.h: Use -Wl syntax.
4097
4098 2003-07-17 Richard M. Stallman <rms@gnu.org>
4099
4100 * xterm.c (xim_initialize): Redo 6/24 change.
4101
4102 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4103
4104 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4105 (Fswitch_to_buffer): Don't signal an error when switching to the same
4106 buffer in a dedicated window.
4107
4108 * alloc.c: Use bitmaps for cons, as was done for floats.
4109 (init_float, init_cons): Let the normal code allocate the first block.
4110 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4111 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4112 New macros.
4113 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4114 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4115 (live_cons_p): Check the pointer is not past the `conses' array.
4116 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4117 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4118 (survives_gc_p): Use CONS_MARKED_P and simplify.
4119 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4120
4121 2003-07-13 Paul Eggert <eggert@twinsun.com>
4122
4123 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4124 puts it into BSS instead, at least on Solaris 8 and 9.
4125 This is a valid optimization, and it may occur on other platforms,
4126 so Emacs should not assume that initializing a static variable to
4127 zero puts it into data.
4128 * alloc.c (pure, staticvec):
4129 Initialize these arrays to nonzero, so that they're not
4130 put into BSS by that optimization.
4131
4132 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4133
4134 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4135 (lisp_align_malloc): Use posix_memalign is available.
4136 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4137 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4138 for consistency. Update users.
4139
4140 2003-07-13 Richard M. Stallman <rms@gnu.org>
4141
4142 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4143
4144 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4145
4146 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4147 and use the Gtk+ function gtk_window_icon_from_file if available.
4148
4149 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4150 handle mask of bitmaps.
4151 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4152 mask property.
4153 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4154
4155 * xterm.h (xg_set_icon): New function.
4156
4157 2003-07-12 Paul Eggert <eggert@twinsun.com>
4158
4159 * unexelf.c (unexec): Consider a section to precede the .bss
4160 section if its addresses overlap that of .bss.
4161
4162 2003-07-12 Richard M. Stallman <rms@gnu.org>
4163
4164 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4165
4166 * config.in (HAVE_CRTIN): Add #undef.
4167 (INLINE): Really inline only if OPTIMIZE is defined.
4168
4169 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4170 END_FILES_1.
4171 (START_FILES_1, END_FILES_1): New macros (conditional).
4172 (LD_SWITCH_SYSTEM_TEMACS): Define.
4173
4174 * s/openbsd.h: Don't include bsd4-3.h.
4175 (TERMINFO): Define.
4176 (LIBS_TERMCAP): Define.
4177 (LD_SWITCH_SYSTEM): Define (two definitions).
4178
4179 * xfns.c: Include libpng/png.h instead of png.h.
4180
4181 2003-07-11 Andreas Schwab <schwab@suse.de>
4182
4183 * buffer.c (modify_overlay): Update prototype.
4184 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4185 Likewise.
4186
4187 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4188
4189 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4190 (struct interval): Move to intervals.h.
4191 (struct Lisp_Marker): Use EMACS_INT for position info.
4192 (forward_point): Remove prototype of defunct function.
4193 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4194 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4195 (syms_of_textprop, set_text_properties): Remove prototypes that are
4196 already in intervals.h.
4197
4198 * intervals.h (struct interval): Move from lisp.h.
4199 Use EMACS_INT for position and size info.
4200
4201 * coding.c: Include intervals.h for Fset_text_properties.
4202
4203 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4204 position and length information.
4205
4206 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4207
4208 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4209 position and length information.
4210
4211 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4212
4213 Change overlays_after and overlays_before so the overlays themselves
4214 are linked into lists, rather than using cons cells. After all each
4215 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4216 Lisp_Overlay for free and save up one cons cell per overlay (not
4217 to mention one indirection when traversing the list of overlay).
4218
4219 * lisp.h (struct Lisp_Overlay): New field `next'.
4220
4221 * buffer.h (struct buffer): Change overlays_before and overlays_after
4222 from Lisp lists of overlays to pointers to overlays.
4223
4224 * buffer.c (overlay_strings, recenter_overlay_lists):
4225 Fix typo in eassert in last commit.
4226 (unchain_overlay): New function.
4227 (add_overlay_mod_hooklist): Use AREF.
4228 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4229 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4230 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4231 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4232 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4233 Adjust to new type of overlays_(before|after).
4234
4235 * alloc.c (mark_object): Mark the new `next' field of overlays.
4236 (mark_buffer): Manually mark the overlays_(after|before) fields.
4237
4238 * coding.c (run_pre_post_conversion_on_str):
4239 * editfns.c (overlays_around):
4240 * xdisp.c (load_overlay_strings):
4241 * fileio.c (Finsert_file_contents):
4242 * indent.c (current_column):
4243 * insdel.c (signal_before_change, signal_after_change):
4244 * intervals.c (set_point_both):
4245 * print.c (temp_output_buffer_setup): Use new type for
4246 overlays_(before|after).
4247
4248 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4249
4250 * buffer.c (report_overlay_modification): Don't run hooks while
4251 traversing the list of overlays.
4252
4253 * buffer.h (struct buffer): Use an int for overlay_center.
4254 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4255 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4256
4257 * buffer.c (reset_buffer, recenter_overlay_lists)
4258 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4259 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4260 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4261 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4262 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4263
4264 * xdisp.c (fast_find_position): Remove unused var.
4265
4266 * cmds.c (Qexpand_abbrev): New sym.
4267 (syms_of_cmds): Initialize it.
4268 (internal_self_insert): Use it to call expand-abbrev.
4269
4270 2003-07-09 Kim F. Storm <storm@cua.dk>
4271
4272 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4273 was configured with --without-xim.
4274 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4275
4276 2003-07-07 Richard M. Stallman <rms@gnu.org>
4277
4278 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4279
4280 * alloc.c (Fgarbage_collect): Doc fix.
4281
4282 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4283
4284 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4285
4286 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4287
4288 * minibuf.c (read_minibuf): UNGCPRO before returning.
4289 (Ftry_completion, Fall_completions): Doc fix.
4290
4291 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4292 now that `floats' is not the last element of the struct any more.
4293
4294 2003-07-06 Jason Rumney <jasonr@gnu.org>
4295
4296 * w32term.h (ClipboardSequence_Proc): New type.
4297
4298 * w32fns.c (clipboard_sequence_fn): New variable.
4299 (globals_of_w32fns): Initialize it.
4300
4301 * w32select.c (last_clipboard_sequence_number): New variable.
4302 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4303 number if possible.
4304
4305 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4306
4307 * m/amdx86-64.h (MARKBIT):
4308 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4309 MARKBIT and ARRAY_MARK_FLAG any more.
4310
4311 * m/hp800.h (XSETMARKBIT):
4312 * m/sr2k.h (XSETMARKBIT):
4313 * lisp.h (XSETMARKBIT): Remove unused macro.
4314
4315 * lisp.h (mark_object): Change prototype.
4316
4317 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4318 (last_marked): Change accordingly.
4319 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4320 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4321 (mark_buffer): Update calls to mark_object.
4322
4323 * bytecode.c (mark_byte_stack):
4324 * fns.c (sweep_weak_table):
4325 * keyboard.c (mark_kboards): Update calls to mark_object.
4326
4327 2003-07-06 Jason Rumney <jasonr@gnu.org>
4328
4329 * alloc.c (struct ablock): Only include padding when there is some.
4330
4331 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4332
4333 * alloc.c (ALIGN): Add casts to simplify usage.
4334 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4335 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4336 (struct ablock, struct ablocks): New types.
4337 (free_ablock): New global var.
4338 (lisp_align_malloc, lisp_align_free): New functions.
4339 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4340 (struct float_block): Reorder and add gcmarkbits.
4341 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4342 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4343 (init_float, make_float): Use lisp_align_malloc.
4344 (free_float, live_float_p): Don't use `type' any more.
4345 (make_float): Use FLOAT_UNMARK to access to mark bit.
4346 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4347 Use FLOAT_MARKED_P to access the mark bit.
4348 (pure_alloc): Simplify use of ALIGN.
4349 (mark_object): Use FLOAT_MARK to access the mark bit.
4350 (gc_sweep): Use new macros to access the float's mark bit.
4351 (init_alloc_once): Init free_ablock.
4352
4353 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4354
4355 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4356
4357 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4358 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4359 (allocate_buffer): Move.
4360 (string_bytes): Don't mask markbit of `size_byte'.
4361 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4362 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4363 Use the `size' field of buffers (rather than the `name' field) for
4364 the mark bit, as is done for all other vectorlike objects.
4365 Use the new macros to access the mark bit of vectorlike objects.
4366
4367 2003-06-26 Richard M. Stallman <rms@gnu.org>
4368
4369 * puresize.h (BASE_PURESIZE): Increment base size.
4370
4371 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4372
4373 * xterm.c (xim_initialize): Undo previous change.
4374
4375 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4376
4377 * alloc.c (survives_gc_p): Simplify.
4378
4379 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4380
4381 * window.c (Fset_window_dedicated_p): Simplify.
4382 (display_buffer_1): Don't raise the win from which minibuf was entered.
4383 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4384 (Fminibuffer_selected_window): Simplify.
4385
4386 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4387
4388 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4389 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4390
4391 * insdel.c (check_markers, adjust_markers_for_delete)
4392 (adjust_markers_for_insert, adjust_markers_for_replace)
4393 (prepare_to_modify_buffer, RESTORE_VALUE):
4394 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4395 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4396 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4397 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4398 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4399 * editfns.c (save_excursion_restore, transpose_markers):
4400 * window.c (delete_window):
4401 * xdisp.c (message_dolog): Update for new types.
4402
4403 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4404
4405 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4406 (realize_default_face): Use default_face_done_p for the force_p
4407 argument to set_lface_from_font_name. Set default_face_done_p to one.
4408
4409 * frame.c (make_frame): Initialize default_face_done_p.
4410
4411 * frame.h (struct frame): Add default_face_done_p.
4412
4413 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4414 will be defined.
4415
4416 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4417
4418 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4419 Initialize the new field `gcmarkbit'.
4420 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4421 (mark_interval_tree): Don't mark the tree separately from the nodes.
4422 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4423 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4424 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4425
4426 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4427 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4428 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4429 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4430 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4431
4432 2003-06-24 Dave Love <fx@gnu.org>
4433
4434 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4435
4436 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4437 from gnulib.
4438
4439 2003-06-21 Richard M. Stallman <rms@gnu.org>
4440
4441 * fileio.c (Fwrite_region): Alternate messages
4442 for append and partial write.
4443
4444 * keyboard.c (read_key_sequence): When converting upcase fn key to
4445 downcase, update fkey and keytran so `backspace' gets translated.
4446
4447 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4448
4449 * process.c (wait_reading_process_input): Don't signal SIGIO
4450 in batch mode.
4451
4452 2003-06-17 Kenichi Handa <handa@m17n.org>
4453
4454 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4455 composite.h.
4456
4457 * xselect.c: Don't include charset.h, coding.h, composite.h.
4458 (Qforeign_selection): New variable.
4459 (syms_of_xselect): Intern and static it.
4460 (selection_data_to_lisp_data): Return a unibyte string made from
4461 data with `foreign-selection' text property.
4462
4463 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4464
4465 * termhooks.h (EVENT_INIT): New macro.
4466
4467 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4468
4469 * alloc.c (mark_kboards): Move to keyboard.c.
4470
4471 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4472 * xterm.c (x_dispatch_event):
4473 * xmenu.c (find_and_call_menu_selection):
4474 * xdisp.c (handle_tool_bar_click):
4475 * w32menu.c (menubar_selection_callback):
4476 * sysdep.c (kbd_input_ast, read_input_waiting):
4477 * msdos.c (dos_rawgetc):
4478 * macterm.c (mac_check_for_quit_char):
4479 * macmenu.c (menubar_selection_callback):
4480 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4481 data to kbd_buffer_store_event.
4482
4483 2003-06-15 Kim F. Storm <storm@cua.dk>
4484
4485 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4486 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4487
4488 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4489
4490 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4491
4492 2003-06-12 Kenichi Handa <handa@m17n.org>
4493
4494 * fileio.c (Fwrite_region): Save and restore restriction.
4495
4496 2003-06-12 Dave Love <fx@gnu.org>
4497
4498 * alloca.c (alloca): Declare arg as size_t.
4499
4500 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4501 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4502
4503 2003-06-11 Dave Love <fx@gnu.org>
4504
4505 * search.c (shrink_regexp_cache): Use xrealloc.
4506 (syms_of_search): Use xmalloc.
4507
4508 2003-06-10 Kim F. Storm <storm@cua.dk>
4509
4510 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4511 Adjust phys_cursor.x to be relative to window box, rather than
4512 text area before checking -- to ensure cursor is redrawn when
4513 exposing window.
4514 Note: This also fixes a similar (older) bug if display margins
4515 are present.
4516
4517 2003-06-06 Kenichi Handa <handa@m17n.org>
4518
4519 * coding.c (encoding_buffer_size): If coding->type is
4520 coding_type_ccl, double magnification on CRLF encoding.
4521
4522 2003-06-06 Jason Rumney <jasonr@gnu.org>
4523
4524 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4525 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4526
4527 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4528 Mac too.
4529
4530 2003-06-05 Dave Love <fx@gnu.org>
4531
4532 * strftime.c: Merge changes from gnulib.
4533
4534 * mktime.c (__mktime_internal): Merge changes from gnulib
4535 involving year 69 and dst2.
4536
4537 Changes to merge with gnulib version and be consistent with the
4538 autoconf test:
4539
4540 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4541 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4542 [HAVE_LOCALE_H]: Include locale.h.
4543 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4544
4545 2003-06-05 Kim F. Storm <storm@cua.dk>
4546
4547 * window.c (coordinates_in_window): Convert X and Y to window
4548 relative coordinates inside mode-line and header-line parts.
4549 Convert X and Y to margin area relative coordinates inside left
4550 and right display margin parts.
4551
4552 2003-06-05 Jason Rumney <jasonr@gnu.org>
4553
4554 * w32fns.c (add_system_logical_colors_to_map): New function.
4555 (Fx_open_connection): Use it.
4556
4557 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4558
4559 * process.c (allocate_pty): Revert part of the previous patch.
4560 (Faccept_process_output): Simplify.
4561
4562 2003-06-04 Jason Rumney <jasonr@gnu.org>
4563
4564 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4565
4566 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4567 (lispy_mouse_wheel_names): Remove.
4568 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4569 Always define drag_and_drop_syms.
4570
4571 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4572 WHEEL_EVENT events.
4573
4574 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4575
4576 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4577
4578 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4579
4580 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4581
4582 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4583 menu item label.
4584
4585 2003-06-03 Richard M. Stallman <rms@gnu.org>
4586
4587 * window.c (Fwindow_edges): Doc fix.
4588 (Fwindow_pixel_edges, Fwindow_inside_edges)
4589 (Fwindow_inside_pixel_edges): New functions.
4590 (syms_of_window): defsubr them.
4591
4592 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4593 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4594
4595 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4596
4597 * dispnew.c (Fsit_for): Don't lie about the number of args.
4598
4599 2003-06-02 Dave Love <fx@gnu.org>
4600
4601 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4602 (syms_of_callproc) <process-environment>: Doc fix.
4603
4604 * doc.c: Use HAVE_FCNTL_H, not USG5.
4605
4606 * xfaces.c (font_rescale_ratio): Fix for K&R.
4607
4608 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4609
4610 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4611
4612 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4613
4614 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4615 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4616
4617 * xterm.c (Qutf_8): Move to coding.c
4618
4619 * xmenu.c (ENCODE_MENU_STRING): New.
4620 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4621 Use it.
4622
4623 * coding.h (ENCODE_UTF_8): New.
4624 (Qutf_8): Declare.
4625
4626 * coding.c (Qutf_8): New.
4627 (syms_of_coding): Intern it.
4628
4629 * fns.c: Doc fixes.
4630
4631 2003-06-02 Kenichi Handa <handa@m17n.org>
4632
4633 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4634
4635 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4636
4637 * lread.c (openp): Make sure STR is a string.
4638
4639 2003-06-01 David Ponce <david@dponce.com>
4640
4641 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4642 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4643
4644 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4645 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4646 (discard_mouse_events): Discard WHEEL_EVENT events too.
4647 (lispy_wheel_names, wheel_syms): New.
4648 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4649 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4650 defined.
4651 (make_lispy_event): Add WHEEL_EVENT handler.
4652
4653 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4654 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4655 WHEEL_EVENT events.
4656
4657 2003-05-31 John Paul Wallington <jpw@gnu.org>
4658
4659 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4660 timer are in lisp/emacs-lisp.
4661
4662 2003-05-31 Kenichi Handa <handa@m17n.org>
4663
4664 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4665 region when a buffer is changed to unibyte.
4666
4667 * charset.h (VALID_LEADING_CODE_P): New macro.
4668 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4669
4670 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4671 is nonzero, accept multibyte form of eight-bit-control chars.
4672 (decode_composition_emacs_mule): Likewise.
4673 (decode_coding_emacs_mule): Likewise.
4674 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4675 multibyte form of eight-bit-control chars.
4676
4677 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4678 (Finsert_file_contents): If coding-system-for-read is bound to
4679 Qauto_save_coding, use the coding system emacs-mule with special
4680 setting for recovering a file.
4681 (choose_write_coding_system): On auto saving, use the coding
4682 system emacs-mule with special setting for auto saving.
4683 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4684
4685 2003-05-30 Kenichi Handa <handa@m17n.org>
4686
4687 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4688 properly before calling ccl_driver.
4689
4690 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
4691
4692 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4693 nonzero.
4694 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4695 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4696
4697 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4698
4699 * xfaces.c (realize_default_face): Do not abort if lface is
4700 non-existent - reverts change from 2003-05-19.
4701
4702 2003-05-29 Kenichi Handa <handa@m17n.org>
4703
4704 * coding.c (decode_coding_iso2022): Pay attention to the byte
4705 sequence of CTEXT extended segment, and retain those bytes as is.
4706
4707 2003-05-28 Kenichi Handa <handa@m17n.org>
4708
4709 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4710 of CODING_REPLACEMENT_CHARACTER.
4711 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4712 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4713 check this flag on encoding.
4714 (encode_coding_sjis_big5): Check
4715 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4716 (Fset_terminal_coding_system_internal): Set
4717 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4718 instead of setting CODING_FLAG_ISO_SAFE flag in
4719 terminal_coding.flags.
4720
4721 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4722 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4723 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4724
4725 2003-05-28 Richard M. Stallman <rms@gnu.org>
4726
4727 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4728
4729 * eval.c (unbind_to): Move init of this_binding to separate statement.
4730
4731 2003-05-28 Kim F. Storm <storm@cua.dk>
4732
4733 * xdisp.c (expose_window): Fix error in calculation of
4734 window relative coordinates of area to redisplay.
4735
4736 2003-05-27 Jason Rumney <jasonr@gnu.org>
4737
4738 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4739
4740 2003-05-27 David Ponce <david@dponce.com>
4741
4742 Handle W32 mouse wheel events as mouse click events, like in X.
4743
4744 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4745 MOUSE_WHEEL_EVENT anymore.
4746
4747 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4748 Scrolling down/up the mouse wheel is respectively mapped to mouse
4749 button 4 and 5.
4750 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4751 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4752 WM_MOUSEWHEEL events.
4753
4754 2003-05-27 Andreas Schwab <schwab@suse.de>
4755
4756 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4757
4758 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4759 partially visible line.
4760
4761 * alloc.c (Fgarbage_collect): Fix last change.
4762
4763 2003-05-26 John Paul Wallington <jpw@gnu.org>
4764
4765 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4766
4767 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4768
4769 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4770 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4771
4772 * window.h (window_box_text_cols): Declare.
4773
4774 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4775 (x_draw_vertical_border): Remove unused var `f'.
4776
4777 * xfaces.c (build_scalable_font_name): Remove `unused var
4778 pixel_size' warning.
4779
4780 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4781
4782 * unexelf.c (unexec): Remove `unused var n' warning.
4783
4784 * strftime.c (my_strftime_localtime_r): Remove `defined but
4785 unused' warning.
4786
4787 * process.c (allocate_pty): Remove `unused var stb' and
4788 `cp might be used uninitialized' warnings.
4789
4790 * dispnew.c (mode_line_string): Remove unused var `f'.
4791
4792 * coding.c (find_safe_codings): Remove unused var `i'.
4793
4794 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4795
4796 * buffer.c (Fkill_buffer): Remove unused var `list'.
4797
4798 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4799
4800 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4801
4802 * frame.c (make_frame): Condition want_fullscreen with
4803 HAVE_WINDOW_SYSTEM.
4804
4805 2003-05-25 Juanma Barranquero <lektu@terra.es>
4806
4807 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4808 (Fwindow_scroll_bars): Fix typo in docstring.
4809
4810 2003-05-24 Kim F. Storm <storm@cua.dk>
4811
4812 The following changes serve several purposes:
4813
4814 1) Swap the position of fringes and display margins in windows, i.e.
4815 the fringes are now displayed between the margins and the text area
4816 (by default).
4817
4818 2) Allow fringe and scroll bar parameters to be set per-buffer and
4819 per-window (like display margins). Such settings are now stored
4820 in window configurations, preserved when frames are resized, and
4821 copied when windows are split vertically or horizontally.
4822 Several bugs related to display margins have been fixed.
4823
4824 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
4825
4826 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4827 rather than FRAME_WIDTH (FRAME_FONT (f)).
4828
4829 5) Introduce a consistent naming of variables, members and macros
4830 depending on whether their value is measured in pixels or in
4831 canonical columns/lines. Pixel dimensions are named *_width and
4832 *_height, while canonical columns/lines are named *_cols and
4833 *_lines. Pixel positions are named *_x and *_y, while column/line
4834 positions are named *_col and *_line.
4835
4836 6) Consolidate more of the X, W32, and MAC gui code by moving
4837 common data into struct frame, and generalize it for the non-gui
4838 case by using suitable defaults.
4839
4840 7) Cleanup and consolidate the macros controlling frame and window
4841 layout into frame.h and window.h, and generalize the use of the
4842 various window_box_* functions (enhanced to handle the new fringe
4843 position and the per-window fringe and scroll bar settings).
4844
4845 * frame.h (struct frame): Rename members height to text_lines,
4846 width to text_cols, window_height to total_lines, window_width to
4847 total_cols, new_height to new_text_lines, new_width to
4848 new_text_cols. All uses changed.
4849 (struct frame): New members which consolidate common members of
4850 x_output, w32_output, and mac_output structures: left_pos,
4851 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4852 win_gravity, size_hint_flags, border_width, internal_border_width,
4853 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4854 want_fullscreen. All uses changed.
4855 (struct frame): New member column_width contaning the canonical
4856 column width, analogue to line_height. All uses changed.
4857 (struct frame): Rename members scroll_bar_pixel_width to
4858 config_scroll_bar_width, and scroll_bar_cols to
4859 config_scroll_bar_cols. All uses changed.
4860 (struct frame): New member scroll_bar_actual_width which
4861 consolidates and renames the vertical_scroll_bar_extra member of
4862 x_output, w32_output, and mac_output structures. All uses changed.
4863 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4864 from x/w32/macterm.h files. All uses changed. Also change code
4865 which referred to f->output_data...->pixel_height.
4866 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
4867 from x/w32/macterm.h files. All uses changed. Also change code
4868 which referred to f->output_data...->pixel_width.
4869 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4870 Also change code which referred to f->height.
4871 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4872 Also change code which referred to f->width.
4873 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4874 to update new_text_lines and new_text_cols members directly.
4875 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4876 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4877 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4878 FRAME_SCROLL_BAR_COLS. All uses changed.
4879 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4880 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4881 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4882 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4883 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4884 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4885 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4886 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4887 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4888 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4889 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4890 return line_height member (it now has proper value also for
4891 non-window frames).
4892 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4893 return new column_width member (rather than the default font width).
4894 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4895 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4896 from x/w32/macterm.h files. Unconditionally return corresponding
4897 member of frame structure (they now have proper values also for
4898 non-window frames).
4899 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4900 Calculate return value from left and right widths.
4901 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4902 internal_border_width member (has proper value for non-window frame).
4903 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4904 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4905 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4906 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4907 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4908 consolidated from xterm.h, macterm.h, and w32term.h.
4909 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4910 consolidated from xterm.h, macterm.h, and w32term.h.
4911 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4912 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4913 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4914 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4915 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4916 consolidated from x/mac/w32term.h.
4917 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4918 consolidated from x/mac/w32term.h.
4919 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4920 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4921 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4922 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4923
4924 * window.h (struct window): Rename members left to left_col,
4925 top to top_line, height to total_lines, width to total_cols,
4926 left_margin_width to left_margin_cols, right_margin_width to
4927 right_margin_cols, orig_height to orig_total_lines, orig_top to
4928 orig_top_line. All uses changed.
4929 (struct window): New members left_fringe_width, right_fringe_width,
4930 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4931 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4932 New macros primarily used to simplify other macros.
4933 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4934 referred to XINT (w->width).
4935 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4936 referred to XINT (w->height).
4937 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4938 referred to XINT (w->width) * canon_x_unit.
4939 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4940 referred to XINT (w->height) * canon_y_unit.
4941 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4942 referred to XINT (w->left).
4943 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4944 all uses and code that referred to XINT (w->left) + XINT (w->width).
4945 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4946 referred to XINT (w->top).
4947 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4948 referred to XINT (w->top) + XINT (w->height).
4949 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4950 referred to XINT (w->left) * canon_x_unit.
4951 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4952 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4953 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4954 referred to XINT (w->top) * canon_y_unit.
4955 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4956 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4957 (WINDOW_LEFTMOST_P): New macro.
4958 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4959 All uses changed.
4960 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4961 All uses changed.
4962 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4963 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4964 Do not exclude left fringe width.
4965 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4966 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4967 Do not exclude fringe widths.
4968 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4969 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4970 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4971 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4972 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4973 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4974 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4975 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4976 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4977 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4978 New macros. Change code which referenced corresponding
4979 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4980 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4981 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4982 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4983 allow per-window scroll-bar settings.
4984 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4985 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4986 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4987 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4988 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4989 FRAME_SCROLL_BAR_WIDTH.
4990 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
4991 (WINDOW_SCROLL_BAR_AREA_X): New macros.
4992 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4993 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4994 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4995 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4996 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4997 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4998 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4999 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5000 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5001 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5002 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5003 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5004 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5005 (window_from_coordinates): Update prototype.
5006 (Fset_window_buffer): Update EXFUN.
5007 (set_window_buffer): Update prototype.
5008
5009 * dispextern.h (struct glyph_matrix): Rename members window_left_x
5010 to window_left_col, window_top_y to window_top_line. All uses
5011 changed.
5012 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5013 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5014 internal_border_width is now set to 0 for non-window frames.
5015 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5016 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5017 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5018 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5019 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5020 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5021 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5022 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5023 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
5024 Move to window.h and renamed [see window.h changes].
5025 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5026 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
5027 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5028 Use WINDOW_TOTAL_LINES.
5029 (frame_update_line_height): Remove prototype.
5030
5031 * buffer.h (struct buffer): Rename members measured in columns:
5032 left_margin_width to left_margin_cols, right_margin_width to
5033 right_margin_cols. All uses changed.
5034 New members left_fringe_width, right_fringe_width,
5035 fringes_outside_margins for per-buffer fringe settings.
5036 New members scroll_bar_width and vertical_scroll_bar_type for
5037 per-buffer scroll bar settings.
5038
5039 * buffer.c (init_buffer_once): Set buffer_defaults and
5040 buffer_local_flags for new buffer-local variables
5041 left_fringe_width, right_fringe_width, fringes_outside_margins,
5042 scroll_bar_width, and vertical_scroll_bar_type.
5043 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5044 default-* variables for them.
5045
5046 * dispnew.c: Make (many) trivial substitutions for renamed and
5047 new macros in dispextern.h, frame.h and window.h.
5048 (mode_line_string): No need to adjust width for mode lines, as it
5049 is already adjusted by the caller.
5050 (marginal_area_string): Handle fringes inside/outside margins.
5051
5052 * frame.c: Make (many) trivial substitutions for renamed and
5053 new macros in dispextern.h, frame.h and window.h.
5054 (make_frame): Initialize left_fringe_width, right_fringe_width,
5055 fringe_cols, scroll_bar_actual_width, border_width,
5056 internal_border_width, column_width, line_height, x_pixels_diff,
5057 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5058 members with values suitable for a non-window frames.
5059
5060 * gtkutil.c: Make (many) trivial substitutions for renamed and
5061 new macros in dispextern.h, frame.h and window.h.
5062
5063 * indent.c: Make (few) trivial substitutions for renamed and
5064 new macros in dispextern.h, frame.h and window.h.
5065
5066 * keyboard.c: Make (many) trivial substitutions for renamed and
5067 new macros in dispextern.h, frame.h and window.h.
5068 (make_lispy_event): Use window positions returned from
5069 window_from_coordinates when constructing the lisp event for
5070 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5071 (incorrect) values locally.
5072 (make_lispy_movement): Use window positions returned from
5073 window_from_coordinates when constructing the lisp event, rather
5074 than calculating (incorrect) values locally.
5075
5076 * scroll.c: Make (some) trivial substitutions for renamed and
5077 new macros in dispextern.h, frame.h and window.h.
5078
5079 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5080 scroll-bars.
5081
5082 * sysdep.c: Make (few) trivial substitutions for renamed and
5083 new macros in dispextern.h, frame.h and window.h.
5084
5085 * term.c: Make (some) trivial substitutions for renamed and
5086 new macros in dispextern.h, frame.h and window.h.
5087
5088 * widget.c: Make (few) trivial substitutions for renamed and
5089 new macros in dispextern.h, frame.h and window.h.
5090
5091 * window.c: Make (many) trivial substitutions for renamed and
5092 new macros in dispextern.h, frame.h and window.h.
5093 (make_window): Initialize new members
5094 left_margin_cols, right_margin_cols, left_fringe_width,
5095 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5096 and vertical_scroll_bar_type.
5097 (coordinates_in_window): Adapted to new fringe/margin positions
5098 and per-window fringes and scroll-bars.
5099 Fix bug related to incorrectly adjusting coordinates by
5100 frame's internal_border_width (the effect normally negible since
5101 the internal_border_width is typically 0 or 1 pixel, but very
5102 noticeable for an internal_border_width of e.g. 25 pixels).
5103 Upon successful return (other than ON_NOTHING), the coordinates
5104 are now always properly converted to window relative for the
5105 given display element.
5106 (window_from_coordinates): Add new parameters wx and wy to
5107 return the window relative x and y position in the returned
5108 window and part. A null arg means, don't return the position.
5109 All callers changed.
5110 (adjust_window_margins): New function which may reduce the width
5111 of the display margins if a window's text area is too small after
5112 resizing or splitting windows.
5113 (size_window): Fix bug that did not account for display margin
5114 widths when checking the minimum width of a window; use
5115 adjust_window_margins.
5116 (set_window_buffer): Call Fset_window_fringes and
5117 Fset_window_scroll_bars to setup per-window elements.
5118 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5119 existing display margin, fringe widths, and scroll bar settings
5120 (e.g. after splitting a window or resizing the frame).
5121 All callers changed.
5122 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5123 (Fsplit_window): Duplicate original window's display margin,
5124 fringe, and scroll-bar settings; then call Fset_window_buffer with
5125 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5126 window to only preserve the display margins in one of the windows.
5127 When splitting horizontally, call adjust_window_margins on both
5128 windows to ensure that the text area of the new windows is non too
5129 narrow. This fixes a bug which could cause Emacs to trap if the
5130 width of the split window was less than the width of the display
5131 margins.
5132 (window_box_text_cols): Renamed from window_internal_width.
5133 All uses changed. Adapt to per-window fringes and scroll bars.
5134 Fix bug that caused vertical separator to be subtracted also on
5135 window frames. Fix another bug that did not reduce the returned
5136 value by the columns used for display margins.
5137 (window_scroll_line_based): Fix bug related to scrolling too much
5138 when display margins are present (implicitly fixed by the fix to
5139 window_box_text_cols).
5140 (scroll_left, scroll_right): Fix bug related to scrolling too far
5141 by default when display margins are present (implicitly fixed by
5142 the fix to window_box_text_cols).
5143 (struct saved_window): Rename members left to left_col, top to
5144 top_line, width to total_cols, height to total_lines, orig_top to
5145 orig_top_line, orig_height to orig_total_lines. All uses changed.
5146 New members left_margin_cols, right_margin_cols,
5147 left_fringe_width, right_fringe_width, fringes_outside_margins,
5148 scroll_bar_width, and vertical_scroll_bar_type for saving
5149 per-window display elements.
5150 (Fset_window_configuration): Restore display margins, fringes,
5151 and scroll bar settings. This fixes a bug which caused display
5152 margins to be discarded when saving and restoring a window
5153 configuration.
5154 (save_window_save): Save display margins, fringes, and scroll bar
5155 settings. This fixes a bug which caused display margins to be
5156 discarded when saving and restoring a window configuration.
5157 (Fset_window_margins): Do nothing if display margins are not
5158 really changed. Otherwise, call adjust_window_margins to ensure
5159 the text area doesn't get too narrow. This fixes a bug which
5160 could cause Emacs to trap if setting display margins wider than
5161 the width of the window.
5162 (Fset_window_fringes): New defun to allow user to specifically set
5163 this window's fringe widths and position vs. display margins.
5164 (Fwindow_fringes): New defun to return window's actual fringe
5165 settings.
5166 (Fset_window_scroll_bars): New defun to allow user to specifically
5167 set this window's scroll bar width and position.
5168 (Fwindow_scroll_bars): New defun to return window's actual scroll
5169 bar settings.
5170 (compare_window_configurations): Also compare display margins,
5171 fringes, and scroll bar settings.
5172 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5173
5174 * xdisp.c: Make (many) trivial substitutions for renamed and
5175 new macros in dispextern.h, frame.h and window.h.
5176 (window_box_width): Adapt to per-window fringes and scroll bars,
5177 and new fringe vs. display margin position. Note that returned
5178 value is no longer guaranteed to be a whole multiple of the frame
5179 column width, since per-window fringes may now be any width.
5180 (window_box_left_offset): New function like window_box_left, but
5181 value is relative to left border of window (rather than frame).
5182 (window_box_right_offset): New function like window_box_right,
5183 but value is relative to left border of window.
5184 (window_box_left): Adapt to per-window fringes and scroll bars,
5185 and new fringe vs. display margin position. Simplify by using
5186 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5187 (window_box): Allow null args for unnecessary return values;
5188 change/simplify relevant callers.
5189 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
5190 and new fringe vs. display margin position.
5191 Use window_box_left_offset and window_box_right_offset
5192 (get_glyph_string_clip_rect): Adapt to per-window fringes and
5193 scroll bars, and new fringe vs. display margin position.
5194 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
5195 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5196 fringe vs. display margin position.
5197 (hscroll_window_tree): Use window_box_width instead of window_box.
5198 (redisplay_window): Adapt to per-window scroll bars.
5199 (draw_glyphs): Rework to handle per-window fringes and scroll
5200 bars, and new fringe vs. display margin position.
5201 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
5202 (x_clear_end_of_line): Adapt to per-window fringes and scroll
5203 bars, and new fringe vs. display margin position. Fix bug which
5204 increased total width of full_width rows by width of scroll bars
5205 although window's total width already includes that.
5206 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5207 (expose_area): Simplify using window_box_left_offset.
5208 (x_draw_vertical_border): Handle per-window scroll bar settings,
5209 mixing windows with left, right and no scroll bars.
5210
5211 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5212 where it's used in x_list_fonts (for clarity).
5213 (frame_update_line_height): Remove unused function; functionality
5214 is now done directly when setting the default font in x_set_font.
5215
5216 * xfns.c: Make (many) trivial substitutions for renamed and
5217 new macros in dispextern.h, frame.h and window.h.
5218
5219 * xmenu.c: Make (some) trivial substitutions for renamed and
5220 new macros in dispextern.h, frame.h and window.h.
5221
5222 * xterm.h (struct x_output): Move members left_pos, top_pos,
5223 border_width, pixel_height, pixel_width, line_height,
5224 internal_border_width, vertical_scroll_bar_extra,
5225 left_fringe_width, right_fringe_width, fringe_cols,
5226 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5227 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5228 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5229 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5230 (PIXEL_WIDTH, PIXEL_HEIGHT)
5231 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5232 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5233 frame.h and renamed [see frame.h changes].
5234 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5235 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5236 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5237 and renamed [see frame.h changes].
5238
5239 * xterm.c: Make (several) trivial substitutions for renamed and
5240 new macros in dispextern.h, frame.h and window.h.
5241 (x_draw_glyph_string_box): Adapt to per-window fringes and
5242 scroll-bars.
5243 (scroll_run): Adapt to new fringe position.
5244 (glyph_rect): Use window coordinates returned from
5245 window_from_coordinates rather than frame_to_window_pixel_xy.
5246 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5247 scroll-bars.
5248 (handle_one_xevent): Simplify a USE_GTK conditional.
5249 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5250 (fringes are now inside margins, i.e. always in the clipping area).
5251 All callers changed.
5252 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5253 directly, then call compute_fringe_widths. Don't call
5254 frame_update_line_height.
5255
5256 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5257 border_width, pixel_height, pixel_width, line_height,
5258 internal_border_width, vertical_scroll_bar_extra,
5259 left_fringe_width, right_fringe_width, fringe_cols,
5260 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5261 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5262 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5263 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5264 (PIXEL_WIDTH, PIXEL_HEIGHT)
5265 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5266 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5267 frame.h and renamed [see frame.h changes].
5268 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5269 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5270 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5271 and renamed [see frame.h changes].
5272
5273 * w32term.c: Make (several) trivial substitutions for renamed and
5274 new macros in dispextern.h, frame.h and window.h.
5275 (x_draw_glyph_string_box): Adapt to per-window fringes and
5276 scroll-bars.
5277 (glyph_rect): Use window coordinates returned from
5278 window_from_coordinates rather than frame_to_window_pixel_xy.
5279 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5280 scroll-bars.
5281 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5282 (fringes are now inside margins, i.e. always in the clipping area).
5283 All callers changed.
5284 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5285 directly, then call compute_fringe_widths. Don't call
5286 frame_update_line_height.
5287
5288 * w32console.c: Make (few) trivial substitutions for renamed and
5289 new macros in dispextern.h, frame.h and window.h.
5290
5291 * w32fns.c: Make (many) trivial substitutions for renamed and
5292 new macros in dispextern.h, frame.h and window.h.
5293
5294 * w32menu.c: Make (few) trivial substitutions for renamed and
5295 new macros in dispextern.h, frame.h and window.h.
5296
5297 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5298 border_width, pixel_height, pixel_width, line_height,
5299 internal_border_width, vertical_scroll_bar_extra,
5300 left_fringe_width, right_fringe_width, fringe_cols,
5301 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5302 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5303 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5304 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5305 (PIXEL_WIDTH, PIXEL_HEIGHT)
5306 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5307 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5308 frame.h and renamed [see frame.h changes].
5309 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5310 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5311 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5312 and renamed [see frame.h changes].
5313
5314 * macterm.c: Make (several) trivial substitutions for renamed and
5315 new macros in dispextern.h, frame.h and window.h.
5316 (x_draw_glyph_string_box): Adapt to per-window fringes and
5317 scroll-bars.
5318 (glyph_rect): Use window coordinates returned from
5319 window_from_coordinates rather than frame_to_window_pixel_xy.
5320 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5321 scroll-bars.
5322 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5323 (fringes are now inside margins, i.e. always in the clipping area).
5324 All callers changed.
5325 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5326 directly, then call compute_fringe_widths. Don't call
5327 frame_update_line_height.
5328
5329 * macfns.c: Make (several) trivial substitutions for renamed and
5330 new macros in dispextern.h, frame.h and window.h.
5331 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5332
5333 * macmenu.c: Make (few) trivial substitutions for renamed and
5334 new macros in dispextern.h, frame.h and window.h.
5335
5336 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5337 and line_height, and use corresponding new members in struct
5338 frame. All uses changed.
5339 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5340 superseeded by corresponding macros in frame.h.
5341
5342 * msdos.c: Make (several) trivial substitutions for renamed and
5343 new macros in dispextern.h, frame.h and window.h.
5344 (IT_note_mouse_highlight): Use updated window coordinates returned
5345 by window_from_coordinates, rather than adjusting them locally.
5346 (internal_terminal_init): No need to initialize line_height here;
5347 it now defaults to 1.
5348
5349 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5350
5351 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5352 dropping `down' events.
5353
5354 2003-05-24 Andreas Schwab <schwab@suse.de>
5355
5356 * coding.c (find_safe_codings): Fix last change.
5357
5358 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5359
5360 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5361
5362 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5363
5364 * xdisp.c (display_mode_element): Increase max depth.
5365 Simplify the error handling code. Use a different error string
5366 for the case where we hit the depth limit.
5367
5368 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5369
5370 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5371
5372 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5373
5374 * intervals.c (get_local_map): Don't get char-property of previous
5375 point any more: get_pos_property already does it and better.
5376
5377 2003-05-21 Dave Love <fx@gnu.org>
5378
5379 [Merged from unicode branch.]
5380
5381 * xfns.c (x_window, x_window): Use use_xim.
5382
5383 * xterm.c (use_xim): Initialize.
5384 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5385 (x_term_init): Maybe set use_xim.
5386
5387 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5388
5389 2003-05-21 Jason Rumney <jasonr@gnu.org>
5390
5391 * unexw32.c (_start): Remove _fmode initialization.
5392
5393 * emacs.c (main) [WINDOWSNT]: Move it here.
5394
5395 2003-05-20 Dave Love <fx@gnu.org>
5396
5397 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5398
5399 2003-05-19 Richard M. Stallman <rms@gnu.org>
5400
5401 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5402 as value for QCfont attribute.
5403 (realize_default_face): lface should already exist; crash if not.
5404 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5405
5406 * frame.c (Fignore_event): Doc fix.
5407
5408 2003-05-19 Kenichi Handa <handa@m17n.org>
5409
5410 * coding.c (decode_coding_string): Handle post-read-conversion
5411 even if the coding doesn't require decoding.
5412
5413 2003-05-18 Richard M. Stallman <rms@gnu.org>
5414
5415 * callproc.c (Fcall_process_region): Doc fix.
5416
5417 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5418
5419 * lread.c (Fload): Print a message if package is obsolete.
5420
5421 * window.c (Fselect_window): Add optional `norecord' arg.
5422 (select_window_1): Fold into Fselect_window.
5423 (select_window_norecord): New function.
5424 (temp_output_buffer_show): Use it. Preserve current buffer.
5425
5426 * window.h (Fselect_window): Update declaration.
5427
5428 * window.c (delete_window, Fother_window, Fset_window_configuration):
5429 * minibuf.c (read_minibuf):
5430 * macterm.c (x_new_focus_frame):
5431 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5432 * callint.c (Fcall_interactively):
5433 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5434
5435 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5436
5437 2003-05-17 David Kastrup <dak@gnu.org>
5438
5439 * process.c (read_process_output): Back out change from 2003-03-09.
5440
5441 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5442
5443 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5444
5445 * textprop.c (text_property_stickiness): New arg `buffer'.
5446
5447 * intervals.h (text_property_stickiness): New arg `buffer'.
5448 (get_pos_property): Declare.
5449
5450 * intervals.c (get_local_map): Use get_pos_property, to obey
5451 stickiness and empty overlays.
5452 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5453 (merge_properties, intervals_equal, merge_properties_sticky):
5454 Use XCAR, XCDR.
5455 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5456
5457 2003-05-17 Richard M. Stallman <rms@gnu.org>
5458
5459 * minibuf.c (read_minibuf): If buffer is empty, record the default
5460 in the history.
5461 (Fminibuffer_complete_word): When deleting the overlap, take account
5462 of its real position.
5463
5464 * fns.c (map_char_table): Fix previous change.
5465
5466 * syntax.c (find_defun_start):
5467 When open_paren_in_column_0_is_defun_start,
5468 return beginning of buffer.
5469
5470 * lisp.h (map_char_table): Declare added arg.
5471
5472 * fns.c (map_char_table): New arg TABLE gets the master table.
5473 All calls changed.
5474 Process default and inheritance, resorting to Faref if necessary.
5475
5476 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5477 (Faccessible_keymaps): Pass new arg to map_char_table.
5478
5479 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5480
5481 * casetab.c (set_case_table): Pass new arg to map_char_table.
5482
5483 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5484
5485 * lisp.h (specbinding_func): New typedef.
5486 (struct specbinding): Use specbinding_func, to put the `volatile'
5487 in the right place.
5488
5489 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5490 to avoid GCC warning.
5491
5492 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5493
5494 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5495
5496 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5497
5498 * keyboard.c (apply_modifiers): Don't fill the other cache.
5499
5500 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5501
5502 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5503
5504 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5505 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5506 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5507 (Fset_window_configuration, Fcurrent_window_configuration)
5508 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5509 (Fpos_visible_in_window_p, mark_window_cursors_off)
5510 (window_internal_height, window_internal_width, Frecenter)
5511 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5512 (replace_buffer_in_all_windows, init_window_once, init_window)
5513 (syms_of_window, keys_of_window): Move from lisp.h.
5514 * lisp.h: Move window.c declarations to window.h.
5515
5516 * bytecode.c: Include window.h.
5517 * emacs.c: Include window.h.
5518
5519 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5520 (keyremap): Add `parent' field.
5521 (keyremap_step): Use it. Remove `parent' argument.
5522 (read_key_sequence): Setup and use the new `parent' field.
5523
5524 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5525
5526 * keyboard.c (adjust_point_for_property): Ensure termination.
5527
5528 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5529
5530 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5531 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5532 duplicated handling of function-key-map and key-translation-map
5533 in read_key_sequence.
5534 (read_key_sequence): Use them.
5535
5536 * keyboard.c (adjust_point_for_property): Try harder to move point
5537 to the non-sticky end of an invisible property.
5538
5539 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5540 property intangible as well.
5541
5542 2003-05-10 Andreas Schwab <schwab@suse.de>
5543
5544 * xmenu.c (single_menu_item): Change last parameter to void* to
5545 avoid warning.
5546
5547 2003-05-09 Richard M. Stallman <rms@gnu.org>
5548
5549 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5550 Bind Qinhibit_modification_hooks to t so there will be no GC.
5551 Rename local `tem' to `save_deactivate_mark'.
5552
5553 * eval.c (specpdl_ptr): Declare volatile.
5554 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5555 before doing the work of unbinding it.
5556
5557 * lisp.h (struct specbinding): Declare elements volatile.
5558 (specpdl_ptr): Declare volatile.
5559
5560 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5561
5562 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5563 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5564
5565 2003-05-08 Dave Love <fx@gnu.org>
5566
5567 * coding.c (Vlast_coding_system_used): Doc fix.
5568
5569 2003-05-07 Jason Rumney <jasonr@gnu.org>
5570
5571 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5572 when system does not support them.
5573
5574 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5575
5576 * fileio.c (Qwrite_region_annotate_functions): New var.
5577 (build_annotations): Use it to process the global part of the hook.
5578 (syms_of_fileio): Init and staticpro it.
5579
5580 * keyboard.c (safe_run_hooks_error): Display a message instead of
5581 silently ignoring the error.
5582
5583 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5584
5585 * keyboard.c (input_available_signal): Mark static.
5586 (menu_bar_items): Use map_keymap.
5587 (menu_bar_one_keymap): Remove.
5588 (menu_bar_item): Adjust arglist (for use in map_keymap).
5589 Properly hide a second binding when not both are keymaps.
5590
5591 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5592 (single_keymap_panes): Use it and map_keymap.
5593 (single_menu_item): Use skp as well.
5594
5595 * keymap.h (map_keymap_function_t): New type.
5596 (map_keymap): Declare.
5597
5598 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5599 (map_keymap_call, Fmap_keymap): New functions.
5600 (syms_of_keymap): Defsubr map-keymap.
5601
5602 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5603
5604 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5605 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5606 ..._with_mnemonic functions for menu items.
5607
5608 2003-05-01 Kenichi Handa <handa@m17n.org>
5609
5610 * coding.c (coding_system_accept_latin_extra_p): Delete this
5611 function.
5612 (find_safe_codings): Pay attention to
5613 the property tranlsation-table-for-encode of each codings.
5614 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5615
5616 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5617
5618 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5619
5620 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5621
5622 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5623
5624 * lisp.h (CHECK): Wrap args in parenthesis.
5625 (specbind): Fix doc: symbol = Qnil is not supported any more.
5626
5627 * bytecode.c (Fbyte_code) <unwind-protect>:
5628 Use Fprogn rather than 0 and Qnil.
5629
5630 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5631 `double', and `triple' modifiers as well.
5632
5633 2003-04-30 Richard M. Stallman <rms@gnu.org>
5634
5635 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5636
5637 * alloc.c (abort_on_gc): New variable.
5638 (Fgarbage_collect): Abort if abort_on_gc is set.
5639
5640 * lisp.h (abort_on_gc): Add decl.
5641
5642 * eval.c (Fsignal): Clear abort_on_gc.
5643
5644 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
5645 Reinit FORMAT_START and END before second scan.
5646
5647 * xdisp.c (move_it_vertically_backward): Do the final big else
5648 even if nlines is 0.
5649
5650 * xdisp.c (redisplay_internal): Finish the per-frame loop
5651 even if redisplay is suspended by input.
5652
5653 2003-04-24 Andrew Choi <akochoi@shaw.ca>
5654
5655 * macterm.c (x_list_fonts): Return all fonts that match if
5656 maxnames = -1.
5657
5658 2003-04-25 Kenichi Handa <handa@m17n.org>
5659
5660 * syntax.c (skip_chars): Fix previous change.
5661
5662 2003-04-24 Kenichi Handa <handa@m17n.org>
5663
5664 * syntax.c (skip_chars): Make the code faster by using the common
5665 technique of *p, *stop, and *endp.
5666
5667 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5668
5669 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
5670 tool_bar_items so GTK tool bar expose callback does not access items
5671 being updated.
5672
5673 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5674
5675 * eval.c (Fapply): Undo last change and add a comment about why.
5676
5677 2003-04-18 Miles Bader <miles@gnu.org>
5678
5679 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5680 pickier PARSE_MULTIBYTE_SEQ.
5681
5682 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5683
5684 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5685 Use XCDR, XCAR, CONSP.
5686 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5687 (Fapply): Remove unnecessary GCPRO.
5688
5689 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5690
5691 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5692
5693 * buffer.h: Don't hardcode BEG==1.
5694
5695 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5696
5697 2003-04-16 Richard M. Stallman <rms@gnu.org>
5698
5699 * xdisp.c (try_window, try_window_reusing_current_matrix):
5700 When at end of window, set window_end_pos to Z-ZV.
5701
5702 * buffer.c (Foverlay_recenter): Doc fix.
5703
5704 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5705
5706 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5707
5708 2003-04-14 Andrew Choi <akochoi@shaw.ca>
5709
5710 * macterm.c (mac_check_for_quit_char): Don't check more often than
5711 once a second.
5712
5713 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5714
5715 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5716 specially, so that they can't hide an implicit switch-frame event.
5717 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5718 (head_table): Use switch-frame as event_kind for select-window.
5719 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5720
5721 * editfns.c (Fformat): Lisp_Object/int mixup.
5722 (format2): Remove unused var numargs.
5723
5724 2003-04-11 Kenichi Handa <handa@m17n.org>
5725
5726 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
5727 (Qafter_insert_file_set_coding): New variable.
5728 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5729 for after-insert-file-adjust-coding-function.
5730 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5731 instead of Vafter_insert_file_adjust_coding_function.
5732
5733 2003-04-11 Kenichi Handa <handa@m17n.org>
5734
5735 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5736
5737 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5738 string. Callers changed.
5739
5740 2003-04-10 Kenichi Handa <handa@m17n.org>
5741
5742 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
5743 (syms_of_fileio): Declare it as a lisp variable.
5744 (Finsert_file_contents):
5745 Call Vafter_insert_file_adjust_coding_function before calling
5746 decode-format.
5747
5748 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5749
5750 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5751 get GtkAdjustment as widget now is a GtkRange.
5752
5753 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5754 GtkRange to avoid memory leak.
5755
5756 2003-04-09 Kenichi Handa <handa@m17n.org>
5757
5758 * xfaces.c (Vface_font_rescale_alist): New variable.
5759 (struct font_name): New member rescale_ratio.
5760 (font_rescale_ratio): New function.
5761 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
5762 (better_font_p): On comparing point sized, pay attention to
5763 recale_ratio member of fonts.
5764 (build_scalable_font_name): Reflect font->rescale_ratio in the
5765 font name.
5766 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
5767
5768 * lread.c (read1): Before calling index, check if the 2nd
5769 arguemnt is in ASCII range.
5770
5771 2003-04-08 Richard M. Stallman <rms@gnu.org>
5772
5773 * fileio.c (Ffile_symlink_p): Doc fix.
5774
5775 * editfns.c (Fformat): Translate positions of text properties
5776 in the format string to apply them to the result.
5777
5778 * fileio.c (Finsert_file_contents): Doc fix.
5779 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5780
5781 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
5782
5783 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5784
5785 2003-04-08 Steven Tamm <steventamm@mac.com>
5786
5787 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5788 that self-contained application finds libexec files.
5789
5790 2003-04-08 Kenichi Handa <handa@m17n.org>
5791
5792 * coding.c (code_convert_region_unwind):
5793 Set Vlast_coding_system_used to the argument.
5794 (code_convert_region): If post-read-conversion function changed
5795 the value of last-coding-sytem, keep the new value in
5796 coding->symbol so that it won't be overridden.
5797 (run_pre_post_conversion_on_str): Likewise.
5798 (coding_system_accept_latin_extra_p): New function.
5799 (find_safe_codings): Pay attention to characters registered in
5800 latin-extra-code-table.
5801
5802 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5803
5804 * Makefile.in (md5.o): Add missing dependency info.
5805
5806 2003-04-06 Richard M. Stallman <rms@gnu.org>
5807
5808 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5809
5810 * marker.c (verify_bytepos): New function.
5811
5812 * intervals.c (set_intervals_multibyte_1): When becoming
5813 multibyte, adjust right and left child sizes to a whole set of
5814 characters. If an interval gets zero total-length, delete it.
5815 If an interval consists of just its children, delete one of them.
5816
5817 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5818 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
5819
5820 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5821 All calls deleted.
5822 (lisp_malloc): Do the work here directly.
5823
5824 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5825
5826 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5827 char tables.
5828
5829 2003-04-04 Kenichi Handa <handa@m17n.org>
5830
5831 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5832 destructively change "%S" to "%s".
5833
5834 2003-04-03 Miles Bader <miles@gnu.org>
5835
5836 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5837 always set.
5838
5839 2003-04-01 Dave Love <fx@gnu.org>
5840
5841 * xfns.c (xpm_lookup_color): Grok "opaque".
5842
5843 2003-03-31 Andrew Choi <akochoi@shaw.ca>
5844
5845 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5846 parent window ID.
5847
5848 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5849
5850 * macterm.h (struct mac_output): Define x_pixels_diff and
5851 y_pixels_diff.
5852
5853 2003-03-31 Juanma Barranquero <lektu@terra.es>
5854
5855 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5856 blockinput.h and files included from it.
5857
5858 2003-03-31 Kim F. Storm <storm@cua.dk>
5859
5860 The following changes consolidates the common code related to
5861 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5862 files into frame.c.
5863
5864 * frame.c: Include blockinput.h.
5865 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5866 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5867 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5868 related vars here.
5869 (struct frame_parm_table, frame_parms): New table for describing
5870 frame parameters and their associated Q-variable.
5871 The order of the parameters corresponds to the sequence of the
5872 frame_parm_handlers table in redisplay_interface.
5873 (x_fullscreen_move, x_set_frame_parameters)
5874 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5875 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5876 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5877 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5878 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5879 Generic functions for processing of frame parameters.
5880 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5881 (display_x_get_resource, x_get_resource_string): Functions for
5882 generic access to X resources.
5883 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5884 (x_default_parameter, Fx_parse_geometry): Functions for generic
5885 access to frame parameters.
5886 (x_figure_window_size): Generic calculation of frame size.
5887 Fixed to add space needed for tool bar. Also setup size_hint_flags.
5888 (syms_of_frame): Intern and staticpro frame parameter variables.
5889 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5890 Defsubr Sx_get_resource and Sx_parse_geometry.
5891
5892 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5893 parameter related vars defined in frame.c.
5894 (EMACS_CLASS): Define here.
5895 (enum FULLSCREEN_*): Define here.
5896 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5897 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5898 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5899 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5900 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5901 (x_set_visibility, x_set_autoraise, x_set_autolower)
5902 (x_set_unsplittable, x_set_vertical_scroll_bars)
5903 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5904 (x_figure_window_size): Add prototypes.
5905
5906 * dispextern.h (frame_parm_handler): New typedef.
5907 (struct redisplay_interface): New member frame_parm_handlers.
5908 (enum resource_types): Move declaration here.
5909 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5910 (x_default_parameter): Add prototypes.
5911
5912 * window.c: Remove extern decl for frame parameter vars.
5913 (change_window_heights): New generic function;
5914 replaces x_change_window_heights. All users changed.
5915
5916 * window.h (change_window_heights): Add prototype.
5917
5918 * xfaces.c: Remove extern decl for frame parameter vars.
5919
5920 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5921 (struct w32_display_info): Fix type of xrdb member.
5922 (enum FULLSCREEN_*): Remove.
5923 Remove prototypes for generic functions (in frame.h).
5924
5925 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5926 parameters now defined in frame.h and frame.c.
5927 (Vx_resource_name): Remove. Use generic var.
5928 (enum x_frame_parms): Remove (bogus, unused enum).
5929 (check_x_display_info): Make non-static (for frame.c).
5930 (struct x_frame_parm_table, x_frame_parms): Remove.
5931 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5932 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5933 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5934 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5935 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5936 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5937 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5938 Remove. Use generic functions instead.
5939 (enum resource_types): Remove.
5940 (x_set_scroll_bar_default_width): New global function (for frame.c).
5941 (Fx_create_frame): Depend on x_figure_window_size to add space for
5942 toolbar and setup size_hint_flags.
5943 (x_frame_parm_handlers): New table for redisplay_interface.
5944 (syms_of_xfns): Don't intern/staticpro removed vars.
5945
5946 * xterm.c: Remove unnecessary extern declarations.
5947 (x_fullscreen_adjust): Remove. Use generic instead.
5948 (x_redisplay_interface): Add x_frame_parm_handlers member.
5949
5950 * w32gui.h (XrmDatabase): New (dummy) typedef.
5951
5952 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5953 (struct w32_display_info): Fix type of xrdb member.
5954 (enum FULLSCREEN_*): Remove.
5955 (x_fullscreen_adjust): Remove prototype.
5956
5957 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5958 parameters now defined in frame.h and frame.c.
5959 (Vx_resource_name): Remove. Use generic var.
5960 (enum x_frame_parms): Remove (bogus, unused enum).
5961 (check_x_display_info): Make non-static (for frame.c).
5962 (struct x_frame_parm_table, x_frame_parms): Remove.
5963 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5964 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5965 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5966 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5967 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5968 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5969 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5970 Remove. Use generic functions instead.
5971 (enum resource_types): Remove.
5972 (x_set_scroll_bar_default_width): New global function (for frame.c).
5973 (Fx_create_frame): Depend on x_figure_window_size to add space for
5974 toolbar and setup size_hint_flags.
5975 (w32_frame_parm_handlers): New table for redisplay_interface.
5976 (syms_of_w32fns): Don't intern/staticpro removed vars.
5977
5978 * w32term.c: Remove unnecessary extern declarations.
5979 (x_fullscreen_adjust): Remove. Use generic instead.
5980 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5981
5982 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5983
5984 * macgui.h (XrmDatabase): New (dummy) typedef.
5985
5986 * macterm.h (EMACS_CLASS): Remove.
5987 (struct mac_display_info): Add xrdb member.
5988 (struct mac_output): Add want_fullscreen member.
5989
5990 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5991 parameters now defined in frame.h and frame.c.
5992 (Vx_resource_name): Remove. Use generic var.
5993 (check_x_display_info): Make non-static (for frame.c).
5994 (struct x_frame_parm_table, x_frame_parms): Remove.
5995 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5996 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5997 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5998 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5999 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6000 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6001 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6002 Remove. Use generic functions instead.
6003 (enum resource_types): Remove.
6004 (x_set_scroll_bar_default_width): New global function (for frame.c).
6005 (mac_frame_parm_handlers): New table for redisplay_interface.
6006 (syms_of_macfns): Don't intern/staticpro removed vars.
6007
6008 * macterm.c: Remove unnecessary extern declarations.
6009 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6010
6011 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6012 included from it (atimer.h and systime.h).
6013
6014 2003-03-30 Andreas Schwab <schwab@suse.de>
6015
6016 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6017 parameters for shift_glyphs_for_insert.
6018
6019 * macterm.c (x_redisplay_interface): Add missing entry for
6020 draw_vertical_window_border.
6021
6022 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6023
6024 * fileio.c (Fexpand_file_name): In the no-handler case, after
6025 expanding, look again for a handler and invoke it. This is needed
6026 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6027 expansion produces "/user@host:/bar/../baz" which needs to be
6028 expanded again for the finame result "/user@host:/baz".
6029
6030 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6031
6032 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6033 of area to be redrawn for better performance.
6034
6035 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6036
6037 * xterm.c (take_vertical_position_into_account): Remove.
6038 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6039 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6040 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6041 (x_set_toolkit_scroll_bar_thumb): Simplify.
6042 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6043 (XTread_socket): Remove unused var.
6044 (x_make_frame_invisible): Replace goto with else.
6045
6046 * xdisp.c (set_vertical_scroll_bar): New fun.
6047 (redisplay_window): Use it.
6048
6049 2003-03-26 Richard M. Stallman <rms@gnu.org>
6050
6051 * xdisp.c (update_tool_bar): Recompute tool bar if
6052 update_mode_lines is set. Set w->update_mode_line
6053 only if the tool bar contents actually change.
6054 (update_menu_bar): Undo previous change.
6055
6056 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6057
6058 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6059 (xg_frame_set_char_size): Calculate scroll bar width before frame
6060 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6061 (xg_separator_p): Check for all documented separator types.
6062 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6063 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6064
6065 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6066 so tool bar gets updated.
6067
6068 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6069
6070 * data.c (store_symval_forwarding): Re-instate part of the code
6071 that was deleted with too much enthusiasm.
6072
6073 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6074
6075 * data.c (store_symval_forwarding): Delete special read-only
6076 hack for type == -1, since we now use ->constant instead.
6077 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6078
6079 * buffer.c (overlays_in): Declare static.
6080 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6081 `constant' field rather than the variable's `type' field.
6082
6083 2003-03-24 Andrew Choi <akochoi@shaw.ca>
6084
6085 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6086
6087 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6088
6089 * fns.c [MAC_OSX]: Do not redefine vector.
6090
6091 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6092
6093 * macgui.h: Remove definition of No_Cursor.
6094
6095 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
6096
6097 * xdisp.c: Define No_Cursor.
6098 (x_write_glyphs, notice_overwritten_cursor)
6099 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6100 (note_mouse_highlight): Remove Mac-specific code.
6101 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
6102
6103 2003-03-24 John Paul Wallington <jpw@gnu.org>
6104
6105 * xdisp.c (redisplay_window): If mini window's buffer is not
6106 empty, then redisplay it like other windows.
6107
6108 2003-03-23 Kim F. Storm <storm@cua.dk>
6109
6110 * w32term.c (w32_draw_window_cursor): Fix last change.
6111
6112 2003-03-23 Kenichi Handa <handa@m17n.org>
6113
6114 * alloc.c (make_string_from_bytes, make_specified_string):
6115 Add `const' for the arg CONTENTS.
6116
6117 * lisp.h (make_string_from_bytes, make_specified_string):
6118 Prototypes adjusted.
6119
6120 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6121
6122 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
6123
6124 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6125 (XG_SB_RANGE): New define.
6126
6127 * gtkutil.c (xg_fixed_handle_expose): New function.
6128 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6129 expose events.
6130 (xg_update_scrollbar_pos): Take two more arguments, left and width
6131 of scroll bar including borders.
6132 Clear left and right part outside scroll bar separately as some
6133 themes have bars that are not an even number of pixels.
6134 Don't set reallocate_redraws, don't call
6135 gdk_window_process_all_updates.
6136 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6137 so no need to change it. Calculate size and value with XG_SB_RANGE.
6138
6139 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6140 Pass left and width of scroll bar including borders to
6141 xg_update_scrollbar_pos.
6142
6143 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6144
6145 * Makefile.in: Make sure space precedes end-of-line backslashes.
6146
6147 2003-03-22 Kim F. Storm <storm@cua.dk>
6148
6149 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6150 Add generic versions here. Remove system specific versions
6151 defined elsewhere.
6152
6153 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6154 Add prototypes.
6155
6156 * xterm.h (STORE_NATIVE_RECT): New macro.
6157
6158 2003-03-21 Kim F. Storm <storm@cua.dk>
6159
6160 * xdisp.c (get_glyph_string_clip_rect):
6161 Use FRAME_INTERNAL_BORDER_WIDTH.
6162
6163 * dispextern.h (struct redisplay_interface): Add active_p
6164 argument to draw_window_cursor member. All uses changed.
6165
6166 2003-03-21 Kim F. Storm <storm@cua.dk>
6167
6168 The following changes consolidate code related to writing and
6169 inserting glyphs, exposing frame, the tool bar, the mouse face,
6170 the output cursor, and help echo from xterm.c, w32term.c and
6171 macterm.c into xdisp.c. It also generalizes the use of the
6172 window_part enum instead of using numeric values throughout.
6173
6174 * xdisp.c: Consolidate gui-independent code here.
6175 Include keymap.h.
6176 (Qhelp_echo): Import.
6177 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6178 (help_echo_string, help_echo_window, help_echo_object)
6179 (previous_help_echo_string, help_echo_pos): Declare here.
6180 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6181 (estimate_mode_line_height): Define here. Handle windowing
6182 systems directly (without using estimate_mode_line_height_hook).
6183 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6184 (update_window_cursor, update_cursor_in_window_tree)
6185 (fast_find_position, fast_find_string_pos)
6186 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6187 (expose_area, expose_line, expose_overlaps, expose_window)
6188 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6189 declared static as they are only used locally in xdisp.c.
6190 (draw_glyphs): Rename from x_draw_glyphs and make static.
6191 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6192 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6193 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
6194 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
6195 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6196 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6197 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6198 (note_mouse_highlight, x_clear_window_mouse_face)
6199 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6200 (x_intersect_rectangles): New generic functions for use by xdisp.c
6201 and GUI front-ends.
6202 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6203 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6204
6205 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6206 (NativeRectangle): Generic typedef for rectangle type.
6207 (enum window_part): Move here from window.c.
6208 (struct redisplay_interface): New members flush_display_optional,
6209 define_frame_cursor, clear_frame_area, draw_window_cursor,
6210 draw_vertical_window_border, shift_glyphs_for_insert.
6211 Rename member clear_mouse_face to clear_window_mouse_face.
6212 (estimate_mode_line_height_hook): Remove hook.
6213 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6214 (tool_bar_item_info): Remove prototype.
6215 (help_echo_string, help_echo_window, help_echo_object)
6216 (previous_help_echo_string, help_echo_pos)
6217 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6218 (x_stretch_cursor_p, output_cursor): Declare extern.
6219 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6220 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6221 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6222 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6223 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6224 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6225 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6226 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6227 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6228 Add prototypes.
6229 (mode_line_string, marginal_area_string): Fix prototypes.
6230
6231 * window.c (enum window_part): Move to dispextern.h.
6232 (coordinates_in_window): Use enum window_part member names
6233 instead of numbers to describe return value.
6234 (struct check_window_data): Change part member to window_part.
6235 (check_window_containing): Return window_part unaltered.
6236 (window_from_coordinates): Change part arg from int to enum
6237 window_part. Allow part arg to be null. All users changed.
6238
6239 * window.h (window_from_coordinates): Fix prototype.
6240
6241 * term.c (estimate_mode_line_height): Move to xdisp.c.
6242
6243 * keyboard.c (make_lispy_event): Use enum window_part.
6244
6245 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6246 window_part instead of int in arg list. Users changed.
6247
6248 * xterm.h (No_Cursor): Declare as None for X.
6249 (struct mac_output): Replace member cross_cursor by hand_cursor.
6250
6251 * xterm.c: Remove consolidated defines and code.
6252 (BETWEEN): Remove unused macro.
6253 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6254 (x_define_frame_cursor, x_clear_frame_area)
6255 (x_draw_window_cursor): New X-specific functions for RIF.
6256 (x_redisplay_interface): Add new members.
6257
6258 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6259
6260 * w32term.h (struct w32_output): Remove cross_cursor member.
6261
6262 * w32term.c: Remove consolidated defines and code.
6263 (BETWEEN): Remove unused macro.
6264 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6265 (w32_define_frame_cursor, w32_clear_frame_area)
6266 (w32_draw_window_cursor): New W32-specific functions for RIF.
6267 (w32_redisplay_interface): Add new members.
6268
6269 * w32gui.h (No_Cursor): Define as 0 for W32.
6270 (XRectangle): Add X compatible rectangle type.
6271 (NativeRectangle): Declare as RECT for W32.
6272 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6273
6274 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6275
6276 * w32console.c: Remove consolidated defines and code.
6277
6278 * msdos.h (Display_Info): Add generic typedef.
6279
6280 * msdos.c: Remove consolidated defines and code.
6281 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6282
6283 * macterm.h (struct mac_output): Replace member cross_cursor by
6284 hand_cursor.
6285 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6286
6287 * macterm.c: Remove consolidated defines and code.
6288 (BETWEEN): Remove unused macro.
6289 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6290 (mac_define_frame_cursor, mac_clear_frame_area)
6291 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6292 (x_redisplay_interface): Add new members.
6293
6294 * macgui.h (No_Cursor): Define as 0 for Mac.
6295 (XRectangle): Add X compatible rectangle type.
6296 (NativeRectangle): Declare as Rect for Mac.
6297 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6298
6299 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6300 (x_set_cursor_color): Use x_display_and_set_cursor.
6301
6302 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6303 included from it. Add dependency on keymap.h.
6304
6305 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6306
6307 2003-03-21 Kenichi Handa <handa@m17n.org>
6308
6309 * fileio.c (Fexpand_file_name): Fix previous change.
6310
6311 2003-03-19 Kenichi Handa <handa@m17n.org>
6312
6313 * fileio.c (Ffile_name_directory): Reconstruct file name by
6314 make_specified_string.
6315 (Ffile_name_nondirectory, Ffile_name_as_directory)
6316 (Fdirectory_file_name, Fexpand_file_name)
6317 (Fsubstitute_in_file_name): Likewise.
6318 (Fread_file_name): Compare decoded homedir with DIR and
6319 DEFAULT_FILENAME.
6320
6321 * alloc.c (make_specified_string): If NCHARS is negative, count
6322 the number of characters.
6323
6324 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6325
6326 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6327 all widgets.
6328
6329 * gtkutil.h: Removed xg_ignore_next_thumb.
6330
6331 2003-03-18 Kenichi Handa <handa@m17n.org>
6332
6333 * coding.c (Vchar_coding_system_table): Remove this variable.
6334 (Vcoding_system_safe_chars): New variable.
6335 (intersection): Remove this function.
6336 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6337 all codings in SAFE_CODINGS.
6338 (Ffind_coding_systems_region_internal): Adjust for the change of
6339 find_safe_codings. Get generic coding systems from
6340 Vcoding_system_safe_chars.
6341 (Fdefine_coding_system_internal): New function.
6342 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6343 Initialize and staticpro Vcoding_system_safe_chars.
6344
6345 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6346
6347 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6348 equal old values before updating.
6349
6350 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6351
6352 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6353
6354 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6355
6356 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6357 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6358 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6359 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6360 (xg_create_scroll_bar): Pass bar to button event callback.
6361 (xg_find_top_left_in_fixed): New function.
6362 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6363 whole scroll bar area. Get old position with
6364 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6365 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6366 dragging is in progress. Calculate whole as for Motif.
6367 Remove code that saved last values. Call gtk_range functions to
6368 set scroll bar sizes.
6369
6370 * gtkutil.h: Removed xg_ignore_next_thumb.
6371
6372 2003-03-17 Juanma Barranquero <lektu@terra.es>
6373
6374 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6375 and files included from it.
6376
6377 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6378
6379 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6380 multiple occurrences of the same keymap under different prefixes.
6381 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6382
6383 2003-03-16 Jason Rumney <jasonr@gnu.org>
6384
6385 * w32gui.h: Use HDC for Display.
6386
6387 * w32term.c (w32_encode_char): Prevent double-byte chars from
6388 crashing Emacs.
6389
6390 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6391 as binary.
6392
6393 2003-03-16 Juanma Barranquero <lektu@terra.es>
6394
6395 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6396
6397 2003-03-16 Kim F. Storm <storm@cua.dk>
6398
6399 The following changes consolidate some of the gui-independent
6400 parts of the processing and drawing of "glyph strings" from
6401 xterm.c, w32term.c, and macterm.c into xdisp.c.
6402
6403 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6404 21 bits (this reduces number of faces from 4M to 2M).
6405 Replace W32 specific w32_font_type member (2 bits) by generic
6406 font_type member (3 bits) for portability.
6407 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6408 (enum draw_glyphs_face): Define here.
6409 (struct glyph_string): Define here. Merge W32 and X versions.
6410 (struct redisplay_interface): New members per_char_metric,
6411 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6412 (VCENTER_BASELINE_OFFSET): Define here.
6413 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6414 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6415
6416 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6417 (dump_glyph_string): Moved here.
6418 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6419 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6420 (fill_composite_glyph_string, fill_glyph_string)
6421 (fill_image_glyph_string, fill_stretch_glyph_string)
6422 (left_overwritten, left_overwriting, right_overwritten)
6423 (right_overwriting, get_char_face_and_encoding)
6424 (set_glyph_string_background_width, compute_overhangs_and_x)
6425 (append_glyph, append_composite_glyph, produce_image_glyph)
6426 (take_vertical_position_into_account, append_stretch_glyph)
6427 (produce_stretch_glyph): New generic functions (based on X version).
6428 Call platform specific functions through rif.
6429 (INIT_GLYPH_STRING): New macro, hides W32 details.
6430 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6431 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6432 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6433 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6434 (notice_overwritten_cursor):
6435 Generic functions exported to platform modules. Users changed.
6436
6437 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6438 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6439 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6440 New macros for consolidated code.
6441
6442 * xterm.c: Remove consolidated defines and code.
6443 (x_per_char_metric, x_encode_char)
6444 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6445 (x_redisplay_interface): Add new members.
6446
6447 * w32gui.h (Display): Add dummy typedef for consolidation.
6448 (XChar2b): Define alias for wchar_t for consolidation.
6449 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6450
6451 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6452 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6453 New macros for consolidation.
6454
6455 * w32term.c: Remove consolidated defines and code.
6456 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6457 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6458 (w32_per_char_metric): Change font_type arg to int for RIF.
6459 (w32_encode_char): Return int according to RIF requirements.
6460 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6461 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6462 x_get_glyph_overhangs.
6463 (w32_redisplay_interface): Add new members.
6464
6465 * macgui.h (XChar2b): Move typedef here for consolidation.
6466 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6467
6468 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6469 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6470 consolidation.
6471
6472 * macterm.c: Remove consolidated defines and code.
6473 (mac_per_char_metric): New function for RIF.
6474 (mac_encode_char): Adapt to new RIF requirements.
6475 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6476 (x_redisplay_interface): Add new members.
6477
6478 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6479
6480 * keymap.c (Vmenu_events): New var.
6481 (syms_of_keymap): Initialize it.
6482 (where_is_internal): Check more carefully what is a menu event.
6483
6484 2003-03-14 Richard M. Stallman <rms@gnu.org>
6485
6486 * lread.c (read1): After #!, exit loop on eof.
6487
6488 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6489
6490 * gtkutil.h: Add declaration for xg_frame_cleared.
6491
6492 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6493
6494 * gtkutil.c (struct xg_last_sb_pos): New structure.
6495 (handle_fixed_child): New function.
6496 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6497 and force a redraw on them.
6498 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6499 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6500 so we can avoid unneeded redraws.
6501 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6502 and force a redraw on the scroll bar.
6503 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6504 if xg_last_sb_pos shows the positions are up to date.
6505 (xg_frame_cleared): New function.
6506
6507 2003-03-13 Kenichi Handa <handa@m17n.org>
6508
6509 * coding.c (Fdetect_coding_region): Fix docstring.
6510 (Fdetect_coding_string): Fix docstring.
6511
6512 2003-03-13 Andreas Schwab <schwab@suse.de>
6513
6514 * gtkutil.c: Add prototype for create_menus.
6515
6516 * data.c (long_to_cons): Fix type of top.
6517
6518 * xselect.c (selection_data_to_lisp_data): Use int instead of
6519 long for an integer of size 4.
6520
6521 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6522 (xg_tool_bar_help_callback): Likewise.
6523
6524 2003-03-12 Andreas Schwab <schwab@suse.de>
6525
6526 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6527
6528 2003-03-12 Kim F. Storm <storm@cua.dk>
6529
6530 The following changes consolidate the fringe handling from
6531 xterm.c, w32term.c, and macterm.c into xdisp.c.
6532
6533 * xdisp.c: Consolidate fringe handling code here.
6534 (left_bits, right_bits, continued_bits, continuation_bits)
6535 (ov_bits, zv_bits): Define fringe bitmaps.
6536 (fringe_bitmaps): New array holding fringe bitmaps.
6537 (draw_fringe_bitmap): Draw a specific bitmap; call display
6538 specific drawing routine via rif->draw_fringe_bitmap.
6539 (draw_row_fringe_bitmaps): Generic replacement for
6540 x_draw_row_fringe_bitmaps; all callers changed.
6541 (compute_fringe_widths): Generic replacement for
6542 x_compute_fringe_widths; all callers changed.
6543
6544 * dispextern.h (enum fringe_bitmap_type): Define here.
6545 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6546 (fringe_bitmaps): Declare extern.
6547 (struct redisplay_interface): New member draw_fringe_bitmap.
6548 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6549
6550 * xterm.c: Remove generic fringe code.
6551 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6552 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6553
6554 * w32term.c: Remove generic fringe code.
6555 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6556 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6557
6558 * macterm.c: Remove generic fringe code.
6559 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6560 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6561
6562 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6563
6564 * print.c (Fprin1_to_string): Return unibyte string if possible.
6565
6566 2003-03-09 David Kastrup <dak@gnu.org>
6567
6568 * process.c (read_process_output): We have allocated enough space
6569 for readmax and carryover, so actually use the alloted space.
6570
6571 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6572
6573 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6574 toolkit scrollbar click.
6575
6576 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6577 for USE_GTK.
6578 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6579 also.
6580 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6581 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6582
6583 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6584
6585 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6586 (xg_tool_bar_item_expose_callback): New function.
6587 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6588 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6589 on the tool bar widget.
6590 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6591 to expose on the tool bar item widgets.
6592
6593 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6594
6595 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6596 struct image* when deciding to update (struct image* may have been
6597 deleted from the image cache).
6598
6599 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6600 the event isn't for a frame (i.e. for dialogs).
6601
6602 2003-03-07 Kenichi Handa <handa@m17n.org>
6603
6604 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6605 composition components reaches the limit, terminate composing.
6606 (COMPOSITION_OK): New macro.
6607 (detect_coding_iso2022): Use it if an escape sequence for
6608 composition is found.
6609 (coding_restore_composition): Adjust the number of composition
6610 components if it is not sane.
6611
6612 2003-03-06 Juanma Barranquero <lektu@terra.es>
6613
6614 * w32term.h (struct w32_display_info): Add xrdb member to support
6615 passing resources via -xrm on Windows.
6616
6617 * w32term.c (w32_make_rdb): New function.
6618 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6619 struct. Delete leftover code.
6620
6621 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6622 for resources passed on the command line.
6623
6624 * w32reg.c (w32_get_rdb_resource): New function.
6625 (x_get_string_resource): Use it, so resources passed with -xrm
6626 supercede the ones in the registry.
6627
6628 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6629
6630 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6631 instead of x_top_window_to_frame.
6632
6633 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6634
6635 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6636 when restarting Emacs.
6637
6638 2003-03-03 Richard M. Stallman <rms@gnu.org>
6639
6640 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6641 to run kill-buffer-query-functions.
6642 (Qkill_buffer_query_functions): New var.
6643 (syms_of_buffer): Init and staticpro it.
6644
6645 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6646
6647 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6648
6649 2003-02-25 Kim F. Storm <storm@cua.dk>
6650
6651 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6652 If centering point failed to make whole line visible and vscroll
6653 is non-zero, disable vscroll and try centering point again.
6654
6655 * lread.c (read1): Accept `single space' syntax like (? x).
6656
6657 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6658
6659 * keyboard.c (cancel_hourglass_unwind): Surround with
6660 #ifdef HAVE_X_WINDOWS
6661
6662 2003-02-25 Kenichi Handa <handa@m17n.org>
6663
6664 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6665 process only when "subprocesses" is defined.
6666
6667 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6668
6669 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6670
6671 2003-02-24 Juanma Barranquero <lektu@terra.es>
6672
6673 * callint.c (fix_command): Declare as static void and move before
6674 Fcall_interactively.
6675
6676 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6677 (syms_of_xdisp): Don't initialize Qwhen.
6678
6679 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6680
6681 * keyboard.c (cancel_hourglass_unwind): New function.
6682 (command_loop_1): Cancel hourglass with unwind-protect.
6683
6684 2003-02-23 Richard M. Stallman <rms@gnu.org>
6685
6686 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6687 Detect (when ... (region-beginning)) etc.
6688 (Fcall_interactively): Call fix_command.
6689 (Qif, Qwhen): New variables.
6690 (syms_of_callint): Init and staticpro them.
6691
6692 * regex.c (print_partial_compiled_pattern): Output to stderr.
6693
6694 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6695
6696 * dired.c (directory_files_internal): Don't expand directory.
6697 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6698 instead. From Lars Hansen <larsh@math.ku.dk>.
6699
6700 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6701
6702 * fns.c (string_to_multibyte): Remove unused var i.
6703 (Flanginfo): Fix int/Lisp_Object mixup.
6704 (void_call2): New fun.
6705 (Fmap_char_table): Use it in place of call2.
6706
6707 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6708
6709 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6710
6711 * keymap.c (copy_keymap_1): Make it static.
6712
6713 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6714
6715 2003-02-22 David Ponce <david@dponce.com>
6716
6717 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6718
6719 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6720
6721 * process.h: Removed subtty field from struct Lisp_Process.
6722
6723 * process.c (create_process): Remove setting of subtty.
6724 (emacs_get_tty_pgrp): New function.
6725 (Fprocess_running_child_p, process_send_signal):
6726 Call emacs_get_tty_pgrp instead of ioctl.
6727 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6728
6729 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6730
6731 * keymap.c (Fdefine_key): Doc fix.
6732
6733 2003-02-21 Juanma Barranquero <lektu@terra.es>
6734
6735 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6736
6737 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6738 POLLING_PROBLEM_IN_SELECT.
6739
6740 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6741 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6742
6743 * s/hpux10-20.h: New file.
6744
6745 * process.c (wait_reading_process_input):
6746 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
6747
6748 2003-02-20 Kenichi Handa <handa@m17n.org>
6749
6750 * fontset.c (check_fontset_name): If NAME is nil, return the
6751 default fontset.
6752 (override_font_info): New function.
6753 (Fset_fontset_font): Document that NAME nil means the default fontset.
6754 (Ffontset_info): If FONTSET is not the default fontset, merge
6755 FONTSET onto the copy of the default fontset, and work on that
6756 copy. Document that NAME nil means the default fontset.
6757 (Ffontset_font): Document that NAME nil means the default fontset.
6758
6759 * process.c (setup_process_coding_systems): If the process's
6760 in/out descriptor is -1, do nothing.
6761
6762 2003-02-19 Andreas Schwab <schwab@suse.de>
6763
6764 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6765 Add prototypes.
6766
6767 2003-02-19 Kenichi Handa <handa@m17n.org>
6768
6769 * xfaces.c (try_alternative_families): Try all scalable fonts if
6770 Vscalable_fonts_allowed is not Qt.
6771
6772 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6773
6774 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6775
6776 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6777
6778 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6779 names.
6780
6781 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
6782 (sorted_font_list): Move allocation of struct font_name to
6783 x_face_list_fonts.
6784 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6785 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6786
6787 2003-02-18 Kim F. Storm <storm@cua.dk>
6788
6789 * lread.c (read1): Fix last change.
6790 "`" is not always special. Allow "?" after a character constant.
6791
6792 2003-02-18 Andrew Choi <akochoi@shaw.ca>
6793
6794 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6795
6796 2003-02-18 Andreas Schwab <schwab@suse.de>
6797
6798 * window.c (window_scroll_pixel_based): Move outside a
6799 multi-glyph character before setting new window start.
6800
6801 * xdisp.c (in_display_vector_p): New function.
6802 * dispextern.h (in_display_vector_p): Declare.
6803
6804 2003-02-18 Kim F. Storm <storm@cua.dk>
6805
6806 * lread.c (read1): Fix and relax read syntax.
6807 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6808 Only recognize "," after dotted-pair dot if inside backquote.
6809 Never include "`" or "," (inside backquote) in a symbol.
6810 Allow dotted-pair dot after a character constant.
6811 Allow "`" and "," (inside backquote) after a character constant.
6812
6813 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6814
6815 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6816 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6817 icons. Set name of tool bar to emacs-toolbar.
6818 (update_frame_tool_bar): Connect expose event to
6819 xg_tool_bar_expose_callback.
6820
6821 2003-02-17 Richard M. Stallman <rms@gnu.org>
6822
6823 * keyboard.c (this_command_key_count_reset): New variable.
6824 Initiatize to 0 where this_command_key_count is set.
6825 (read_char): Save and restore this_command_key_count_reset
6826 around input method code.
6827 (read_char): If this_command_key_count_reset, echo reread commands.
6828 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6829
6830 2003-02-17 Kenichi Handa <handa@m17n.org>
6831
6832 * fns.c (string_to_multibyte): Always return a multibyte string.
6833
6834 2003-02-16 Jason Rumney <jasonr@gnu.org>
6835
6836 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6837 Negative max_fonts parameter means list all.
6838
6839 2003-02-14 Dave Love <fx@gnu.org>
6840
6841 * fns.c (Flanginfo): Doc fix.
6842
6843 2003-02-13 Kim F. Storm <storm@cua.dk>
6844
6845 * lread.c (read_escape): Interpret \s as a SPACE character, except
6846 for \s-X in a character constant which still is the super modifier.
6847 (read1): Signal an `invalid read syntax' error if a character
6848 constant is immediately followed by a digit or symbol character.
6849
6850 * search.c (Fmatch_data): Doc fix. Explicitly state that
6851 match-data is undefined if last search failed.
6852
6853 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6854 All uses changed.
6855
6856 2003-02-12 Juanma Barranquero <lektu@terra.es>
6857
6858 * eval.c (Fdefmacro): Fix typo.
6859
6860 2003-02-12 Kim F. Storm <storm@cua.dk>
6861
6862 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6863 macro is a string, convert meta modifiers in string when copying
6864 the string into a vector.
6865
6866 2003-02-11 Kim F. Storm <storm@cua.dk>
6867
6868 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6869
6870 2003-02-11 Kenichi Handa <handa@m17n.org>
6871
6872 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6873
6874 2003-02-10 Kim F. Storm <storm@cua.dk>
6875
6876 * process.c: Doc fixes.
6877 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6878
6879 2003-02-10 Kenichi Handa <handa@m17n.org>
6880
6881 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6882
6883 * process.c (QCfilter_multibyte): New variable.
6884 (setup_process_coding_systems): New function.
6885 (Fset_process_buffer, Fset_process_filter):
6886 Call setup_process_coding_systems.
6887 (Fstart_process): Initialize the member `filter_multibyte' of
6888 struct Lisp_Process.
6889 (create_process): Call setup_process_coding_systems.
6890 (Fmake_network_process): New keyward `:filter-multibyte'.
6891 Initialize the member `filter_multibyte' of struct Lisp_Process.
6892 Call setup_process_coding_systems.
6893 (server_accept_connection): Call setup_process_coding_systems.
6894 (read_process_output): If the process has a filter, decide the
6895 multibyteness of a string to given to the filter by
6896 `filter_multibyte' member of the process. If the process doesn't
6897 have a filter and the result of conversion is unibyte, use
6898 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6899 multibyte form.
6900 (Fset_process_coding_system): Call setup_process_coding_systems.
6901 (Fset_process_filter_multibyte): New function.
6902 (Fprocess_filter_multibyte_p): New function.
6903 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6904 Defsubr Sset_process_filter_multibyte and
6905 Sprocess_filter_multibyte_p.
6906
6907 * process.h (struct Lisp_Process): New member filter_multibyte.
6908
6909 * lisp.h (setup_process_coding_systems): Add prototype.
6910
6911 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6912 process, update coding systems for the process.
6913
6914 2003-02-09 Kenichi Handa <handa@m17n.org>
6915
6916 * fns.c (string_to_multibyte): New function.
6917 (Fstring_to_multibyte): New function.
6918 (syms_of_fns): Defsubr it.
6919
6920 2003-02-08 Andreas Schwab <schwab@suse.de>
6921
6922 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6923 instead of the substitution.
6924
6925 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6926
6927 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6928
6929 * xmenu.c (menu_position_func): Adjust menu popup position so that
6930 the menu is fully visible.
6931
6932 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6933
6934 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
6935 (x_make_frame_invisible, x_wm_set_icon_position):
6936 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
6937
6938 * xfns.c (x_set_name, x_set_title): Ditto.
6939
6940 2003-02-04 Richard M. Stallman <rms@gnu.org>
6941
6942 * keyboard.c (echo_now): Update before_command_echo_length.
6943 (Freset_this_command_lengths): Reset this_command_key_count etc.
6944 immediately rather than arranging to do it later.
6945 (before_command_key_count_1, before_command_echo_length_1)
6946 (before_command_restore_flag): Vars deleted.
6947 (add_command_key): Don't handle before_command_restore_flag.
6948 (read_char, record_menu_key): Don't update before_command_key_count or
6949 before_command_echo_length.
6950 (read_char): Don't handle before_command_restore_flag.
6951
6952 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6953 in direct-output clauses if it wouldn't be called in the ordinary case.
6954
6955 2003-02-04 Kim F. Storm <storm@cua.dk>
6956
6957 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6958
6959 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6960
6961 * gtkutil.c (remove_from_container): Copying list is not needed.
6962 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6963 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6964 on list returned from gtk_container_get_children to avoid memory leak.
6965
6966 2003-02-01 Jason Rumney <jasonr@gnu.org>
6967
6968 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6969 local malloc.
6970 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6971 definitions in xpm.h.
6972 (init_xpm_functions): New function.
6973 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
6974 (init_external_image_libraries): Try to load libXpm.dll.
6975
6976 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6977 timestamp.
6978
6979 2003-01-31 Dave Love <fx@gnu.org>
6980
6981 * syntax.c (Fskip_chars_forward)
6982 (open-paren-in-column-0-is-defun-start): Doc fix.
6983
6984 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6985
6986 * fileio.c: Support // at start of name for Cygwin (just added proper
6987 preprocessor tests).
6988
6989 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6990
6991 * Makefile.in: Use @EXEEXT@ for Cygwin.
6992
6993 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6994
6995 * s/cygwin.h: Added for Cygwin port.
6996
6997 2003-01-31 Juanma Barranquero <lektu@terra.es>
6998
6999 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7000 when including gif_lib.h.
7001 (init_gif_functions, init_tiff_functions): New functions.
7002 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7003 Windows. Disable color table lookups. Call library functions
7004 through pointers determined at runtime.
7005 (init_external_image_libraries): Try to load libungif.dll and
7006 libtiff.dll.
7007
7008 2003-01-31 Kenichi Handa <handa@m17n.org>
7009
7010 * xdisp.c (SKIP_GLYPHS): New macro.
7011 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
7012
7013 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7014
7015 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
7016
7017 2003-01-30 Dave Love <fx@gnu.org>
7018
7019 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7020 (Fgarbage_collect): Use them.
7021 (init_alloc, syms_of_alloc): Set them up.
7022
7023 2003-01-30 Juanma Barranquero <lektu@terra.es>
7024
7025 * w32fns.c (init_external_image_libraries): Add missing operator.
7026
7027 2003-01-29 Jason Rumney <jasonr@gnu.org>
7028
7029 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7030 an alternative name for jpeg.dll.
7031
7032 2003-01-29 Kenichi Handa <handa@m17n.org>
7033
7034 * xdisp.c (set_cursor_from_row): Pay attention to string display
7035 properties.
7036
7037 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7038
7039 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7040 <escape>.
7041 (keycode_to_xkeysym_table): Reformat and add more comments.
7042 (XTread_socket): Drop special case for backspace.
7043
7044 2003-01-28 Andrew Choi <akochoi@shaw.ca>
7045
7046 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7047 values in old-style RGB specs.
7048
7049 2003-01-27 Juanma Barranquero <lektu@terra.es>
7050
7051 * w32fns.c (init_external_image_libraries): Try alternate names for the
7052 jpeg dll.
7053
7054 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7055
7056 * gtkutil.c (create_dialog, xg_separator_p)
7057 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7058 before calling strcmp or strlen.
7059
7060 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7061
7062 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7063 and handle image load failure.
7064
7065 2003-01-26 Jason Rumney <jasonr@gnu.org>
7066
7067 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7068 New functions.
7069 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7070 Disable color table lookups. Call jpeg library functions
7071 through pointers determined at runtime.
7072 (init_external_image_libraries): Try to load jpeg.dll.
7073
7074 2003-01-25 Richard M. Stallman <rms@gnu.org>
7075
7076 * lisp.h: Declare format2 instead of format1.
7077
7078 * fileio.c (barf_or_query_if_file_exists):
7079 Call format2 instead of format1.
7080
7081 * editfns.c (format2): New function, replaces format1
7082 but takes exactly two Lisp Objects as format args.
7083
7084 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7085
7086 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7087
7088 * xterm.h: Change to return value of x_dispatch_event to int.
7089
7090 * xterm.c (x_filter_event): New function.
7091 (event_handler_gdk, XTread_socket): Call x_filter_event.
7092 (x_dispatch_event): Change to return value of finish.
7093 (event_handler_gdk): Use return value from x_dispatch_event.
7094
7095 * xfns.c (x_window): Call create_frame_xic for GTK version to
7096 initialize input methods.
7097
7098 * gtkutil.h: Add (void) prototypes.
7099
7100 * gtkutil.c (create_menus): Remove code that puts the help menu to
7101 the right.
7102
7103 2003-01-25 Jason Rumney <jasonr@gnu.org>
7104
7105 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7106 [HAVE_PNG]: Sync with xfns.c version.
7107 (png_load): Adjust colors for Windows. Use Windows
7108 bitmaps. Disable color table lookups.
7109 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7110 (init_png_functions): New function.
7111 (png_read_from_memory, png_load): Call png library functions
7112 through pointers determined at runtime.
7113 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7114 (init_external_image_libraries): New function.
7115 (init_xfns): Call it.
7116
7117 2003-01-24 Andreas Schwab <schwab@suse.de>
7118
7119 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7120
7121 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7122
7123 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7124 of static initializer.
7125
7126 2003-01-24 Dave Love <fx@gnu.org>
7127
7128 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7129 architectures.
7130
7131 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7132 Use __alignof__.
7133
7134 2003-01-24 Kenichi Handa <handa@m17n.org>
7135
7136 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
7137 It it is nonzero, don't pretend that an invisible area doesn't exist.
7138 (command_loop_1): Call adjust_point_for_property with proper
7139 second arg.
7140
7141 2003-01-22 Jason Rumney <jasonr@gnu.org>
7142
7143 Sync changes with xterm.c and xfns.c.
7144
7145 * w32term.c (x_draw_glyph_string_foreground)
7146 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7147
7148 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7149 phys_cursor's hpos is overwritten. This is still not completely
7150 correct, as it doesn't really make sense to use hpos at all to
7151 get the cursor glyph (as that is relative to the width of the
7152 characters on the line, which may have changed during the update).
7153
7154 * w32term.c (notice_overwritten_cursor): Handle the special case
7155 of the cursor being in the first blank non-text line at the
7156 end of a window.
7157
7158 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7159 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7160 Compute from the x position returned by x_draw_glyphs.
7161
7162 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7163 except for NO_CURSOR and system caret, to make phys_cursor_width
7164 contain what its name suggests.
7165 (notice_overwritten_cursor): Consider the cursor image erased if
7166 the output area intersects the cursor image in y-direction.
7167
7168 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7169 note_mode_line_highlight and extend.
7170
7171 * w32term.c (last_window): New variable.
7172 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7173 (note_mouse_movement): Remove reimplemented code in #if 0.
7174
7175 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7176 not update_mode_lines, and always set it to 1.
7177
7178 2003-01-21 Jason Rumney <jasonr@gnu.org>
7179
7180 * w32fns.c (IDC_HAND): Define it if system headers don't.
7181
7182 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7183
7184 * w32term.h (struct w32_output): New member hand_cursor.
7185 (WM_EMACS_SETCURSOR): New message definition.
7186
7187 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7188 function w32_define_cursor.
7189 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7190 position, change member name output_data.x to output_data.w32 and
7191 add function w32_define_cursor.
7192 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7193 and change member name output_data.x to output_data.w32.
7194 (w32_initialize_display_info):
7195 Setup dpyinfo->vertical_scroll_bar_cursor.
7196
7197 * w32fns.c (Vx_hand_shape): New variable.
7198 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7199 WM_EMACS_SETCURSOR.
7200 (x-create-frame): Setup Cursor types.
7201
7202 2003-01-21 David Ponce <david@dponce.com>
7203
7204 * w32term.c (w32_encode_char): For DIM=1 charset, set
7205 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
7206 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7207 2002-09-30.)
7208 (w32_draw_relief_rect): Declare all args.
7209 (w32_define_cursor): New.
7210
7211 * w32fns.c (w32_load_cursor): New function.
7212 (w32_init_class): Use it.
7213 (x_put_x_image): Declare all args.
7214
7215 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7216
7217 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7218
7219 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7220
7221 * gtkutil.c: Must include stdio.h before termhooks.h
7222
7223 2003-01-21 Dave Love <fx@gnu.org>
7224
7225 * alloc.c (Fgc_status): Print zombie list.
7226 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7227 Fix assignment of zombies.
7228 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7229 Don't take car of non-cons.
7230
7231 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7232
7233 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7234
7235 2003-01-20 David Ponce <david@dponce.com>
7236
7237 * w32menu.c (digest_single_submenu): Declare all args.
7238
7239 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7240 changes in xmenu.c:
7241
7242 (parse_single_submenu): Use individual keymap's prompt
7243 string as pane name, if there is one.
7244 (set_frame_menubar): Save menu_items_n_panes from each call to
7245 parse_single_submenu and use it when calling digest_single_submenu.
7246
7247 2003-01-20 Steven Tamm <steventamm@mac.com>
7248
7249 * macterm.c (XTread_socket): Checks for valid, visible window
7250 before sending a scroll-wheel event.
7251
7252 2003-01-20 Richard M. Stallman <rms@gnu.org>
7253
7254 * xdisp.c (redisplay_window): If mini window's buffer is not
7255 a minibuffer, then redisplay it like other windows.
7256
7257 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7258
7259 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7260 external tool bar before setting tool bar height.
7261
7262 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7263
7264 * xterm.c (handle_one_xevent): Surround popup_activated
7265 with #ifdef:s for non-toolkit version.
7266
7267 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7268 (gtkutil.o): New file.
7269 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7270 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7271
7272 * gtkutil.c: New file for GTK version.
7273
7274 * gtkutil.h: New file for GTK version.
7275
7276 * xterm.h: Add xt_or_gtk_widget.
7277 Include gtk files for USE_GTK.
7278 (struct x_output): Add toolbar_height.
7279 (struct x_output): Add GTK widgets and Gdk size_hints.
7280 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7281 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7282 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7283
7284 * xterm.c: Include gtkutil.h for USE_GTK.
7285 Declare extern void free_frame_menubar for USE_GTK.
7286 (note_mouse_highlight): Check popup_activated for USE_GTK.
7287 (xt_action_hook): Don't compile if USE_GTK.
7288 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7289 (xg_scroll_callback): New function.
7290 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7291 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7292 for USE_GTK.
7293 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7294 xg_show_scroll_bar for USE_GTK.
7295 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7296 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7297 (event_handler_gdk): New function for USE_GTK.
7298 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7299 (handle_one_xevent): Make sure widget is mapped before
7300 calling x_real_positions for USE_GTK.
7301 (XTread_socket): Add GTK event loop for USE_GTK.
7302 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7303 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7304 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7305 (x_iconify_frame): Add code for USE_GTK.
7306 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7307 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7308 is in gtkutil.c.
7309 (x_term_init): Add initialization for GTK.
7310 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7311
7312 * xmenu.c: Include gtkutil.h for USE_GTK.
7313 (Fx_popup_menu): Use current position if x and y is NIL.
7314 (single_menu_item, single_menu_item, Fx_popup_dialog):
7315 Check for USE_GTK.
7316 (popup_widget_loop): New function for USE_GTK.
7317 (x_activate_menubar): Add code for USE_GTK.
7318 (popup_activate_callback, popup_deactivate_callback)
7319 (menu_highlight_callback, menubar_selection_callback):
7320 Add USE_GTK versions.
7321 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7322 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7323 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7324 is in gtkutil.c.
7325 (popup_selection_callback): New version for USE_GTK.
7326 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7327 one USE_X_TOOLKIT version.
7328 (xmenu_show): Call create_and_show_popup_menu.
7329 (dialog_selection_callback): New version for USE_GTK.
7330 (create_and_show_dialog): New fuction, one USE_GTK version and
7331 one USE_X_TOOLKIT version.
7332 (xdialog_show): Call create_and_show_dialog.
7333
7334 * xfns.c: Include gtkutil for USE_GTK.
7335 (x_window_to_frame, x_any_window_to_frame)
7336 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7337 (x_top_window_to_frame): Add code for USE_GTK.
7338 (x_set_background_color): Call xg_set_background_color for GTK.
7339 (x_set_menu_bar_lines): Check for USE_GTK.
7340 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7341 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7342 (x_window): Call xg_create_frame_widgets for USE_GTK.
7343 (Fx_create_frame): Check for USE_GTK
7344 (Fx_file_dialog): New implementation for USE_GTK.
7345
7346 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7347 (update_menu_bar): Add check for USE_GTK.
7348 (update_tool_bar): Add check for USE_GTK and external tool bar.
7349 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7350 (redisplay_internal): Add check for USE_GTK and popup_activated.
7351 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7352 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7353 (display_menu_bar): Add check for USE_GTK
7354
7355 * lisp.h: Declare Vx_resource_name extern.
7356
7357 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7358 for USE_GTK.
7359 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7360
7361 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7362 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7363 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7364
7365 * fileio.c (Fread_file_name): Add check for USE_GTK.
7366
7367 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7368 Add check for USE_GTK.
7369
7370 * config.in: Added HAVE_GTK
7371
7372 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7373
7374 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7375
7376 * charset.h (Funibyte_char_to_multibyte): Export.
7377
7378 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7379
7380 * xmenu.c (mouse_position_for_popup): New function.
7381 (Fx_popup_menu): Call mouse_position_for_popup for X and
7382 mouse_position_hook for others.
7383
7384 2003-01-17 Kim F. Storm <storm@cua.dk>
7385
7386 * editfns.c (Finsert): Mention `string-make-multibyte' and
7387 `string-as-multibyte' in doc string.
7388
7389 2003-01-17 Kenichi Handa <handa@m17n.org>
7390
7391 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7392
7393 * editfns.c (Fformat): Convert an unibyte char argument that is
7394 formatted by "%c" to multibyte if the total result must be a
7395 multibyte string.
7396
7397 2003-01-16 Kim F. Storm <storm@cua.dk>
7398
7399 * process.c (set-process-filter): Document unibyte/multibyte-ness
7400 of string argument.
7401
7402 2003-01-16 Kenichi Handa <handa@m17n.org>
7403
7404 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7405
7406 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7407 (re_search_2): Likewise.
7408
7409 2003-01-15 Kenichi Handa <handa@m17n.org>
7410
7411 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7412 buffer is unibyte.
7413
7414 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7415
7416 * fns.c (Fsubstring): Clarify doc string.
7417
7418 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7419 (Fprevious_char_property_change)
7420 (Fnext_single_char_property_change)
7421 (Fprevious_single_char_property_change, Fnext_property_change)
7422 (Fnext_single_property_change, Fprevious_property_change)
7423 (Fprevious_single_property_change, Fadd_text_properties)
7424 (Fput_text_property, Fset_text_properties)
7425 (Fremove_text_properties, Fremove_list_of_text_properties)
7426 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7427
7428 2003-01-14 Kim F. Storm <storm@cua.dk>
7429
7430 * process.h (struct Lisp_Process): New member plist replaces old
7431 member private_vars. All uses changed.
7432
7433 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7434 (QCplist): Rename from QCvars. Change all uses.
7435 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7436 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7437 (syms_of_process): Intern, staticpro, defsubr these.
7438 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7439
7440 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7441
7442 * m/delta.h: Remove (obsolete).
7443
7444 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7445
7446 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7447 behaviour in front of symlinks.
7448 (Fdelete_file): Raise an error on directories.
7449
7450 2003-01-13 Dave Love <fx@gnu.org>
7451
7452 * fns.c (Freverse): Use QUIT.
7453
7454 2003-01-13 Richard M. Stallman <rms@gnu.org>
7455
7456 * minibuf.c (minibuffer_completion_contents):
7457 Error if point is inside prompt.
7458
7459 * keyboard.c (command_loop_1): Don't redisplay directly
7460 if there's a post-command-hook.
7461
7462 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7463 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7464
7465 2003-01-12 Kim F. Storm <storm@cua.dk>
7466
7467 * process.h (struct Lisp_Process): New member private_vars.
7468
7469 * process.c (QCvars): New variable.
7470 (syms_of_process): Intern and staticpro it.
7471 (Fset_process_contact): Removed function.
7472 (Fprocess_variable, Fset_process_variable): New functions.
7473 (syms_of_process): Defsubr them.
7474 (Fstart_process): Initialize private_vars plist to nil.
7475 (Fmake_network_process): New arg :vars to setup the private
7476 variables for new network process.
7477 (server_accept_connection): Copy server's private variables to
7478 client process.
7479
7480 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7481 crashes). Code rewritten and simplified. Now directly aligns the
7482 pointer and recalculates pure_bytes_used, rather than aligning the
7483 size and adjusting the pointer.
7484
7485 2003-01-11 Kim F. Storm <storm@cua.dk>
7486
7487 * process.c (Fset_process_contact): New function.
7488 (syms_of_process): defsubr it.
7489 (make-network-process): Update doc.
7490
7491 2003-01-10 Andreas Schwab <schwab@suse.de>
7492
7493 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7494 Reported by Berthold Gunreben <b.gunreben@web.de>.
7495
7496 2003-01-10 Dave Love <fx@gnu.org>
7497
7498 * composite.c (syms_of_composite): Make composition_hash_table weak.
7499
7500 2003-01-09 Kim F. Storm <storm@cua.dk>
7501
7502 * process.c (Fmake_network_process): Convert new port number
7503 to host byte order for `:service t' case. From Mario Lang.
7504
7505 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7506
7507 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7508 instead of XtAppProcessEvent.
7509
7510 * xterm.c (handle_one_xevent): New function.
7511 (x_dispatch_event): New function.
7512 (XTread_socket): Call handle_one_xevent.
7513
7514 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7515
7516 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7517 call XQueryPointer to get coordinates.
7518 (popup_get_selection): Do not set popup_activated_flag to zero,
7519 let popup_deactivate_callback do that. Needed for Motif.
7520 Call x_dispatch_event instead of XtDispatchEvent.
7521 (xmenu_show): Calculate root coordinate from frame top/left position.
7522
7523 2003-01-08 Kim F. Storm <storm@cua.dk>
7524
7525 * process.c (server_accept_connection): Fix recording of new
7526 connection's local address in :local property of contact info.
7527 (Fmake_network_process): Record local network address for new
7528 client processes in :local property of contact info.
7529 (format-network-address): Add arg OMIT-PORT. Change callers.
7530
7531 2003-01-07 Dave Love <fx@gnu.org>
7532
7533 * Makefile.in (fns.o): Depend on coding.h.
7534
7535 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
7536
7537 * minibuf.c (Fread_variable): Doc fix.
7538
7539 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7540 use the same test as for custom-variable-p.
7541
7542 2003-01-05 Richard M. Stallman <rms@gnu.org>
7543
7544 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7545 Count LAST_LINE_MISFIT in scroll margin for end of window.
7546 Move label too_near_end before setting SCROLL_MARGIN_POS.
7547 Set LAST_LINE_MISFIT before jumping there.
7548
7549 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7550 scroll_conservatively case. If scrolling that much doesn't change
7551 STARTP, move it down one line.
7552
7553 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7554 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7555
7556 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7557 selected frame.
7558
7559 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7560 (syms_of_keymap): staticpro them.
7561 (Fapropos_internal): Initialize them and clear them out.
7562 Don't GCPRO them.
7563
7564 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7565 Doc fixes.
7566
7567 * lisp.h: New misc type Lisp_Save_Value.
7568 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7569 (XSAVE_VALUE): New macro.
7570 (struct Lisp_Save_Value): New data type.
7571 (union Lisp_Misc): Add u_save_value alternative.
7572 (make_save_value): Declared.
7573
7574 * alloc.c (make_save_value): New function.
7575
7576 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7577 (x_catch_errors_unwind): Call XSync.
7578
7579 2003-01-01 Richard M. Stallman <rms@gnu.org>
7580
7581 * window.c (window_scroll_pixel_based): Partially undo last change.
7582
7583 * keyboard.c (command_loop_1): Call adjust_point_for_property
7584 in direct action cases for Qforward_char and Qbackward_char.
7585 Set already_adjusted so it won't be done twice.
7586
7587 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7588
7589 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7590 type definition of size_t.
7591
7592 2003-01-02 Steven Tamm <steventamm@mac.com>
7593
7594 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7595 distinguish Carbon GUI builds from X11 builds on darwin.
7596
7597 2002-12-30 Steven Tamm <steventamm@mac.com>
7598
7599 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7600 to default to t.
7601
7602 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7603
7604 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7605
7606 2002-12-28 Steven Tamm <steventamm@mac.com>
7607
7608 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7609 allow building in a different directory than source. Uses some
7610 GNU Make extensions, but there is no other make on Mac OS X.
7611
7612 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
7613
7614 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7615 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7616 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7617 (Fstring_to_number): Mention the returned value in the doc strings.
7618
7619 2002-12-23 Richard M. Stallman <rms@gnu.org>
7620
7621 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7622 <scroll-down-aggressively>: Doc fix.
7623
7624 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7625 string as pane name, if there is one.
7626 (set_frame_menubar): Save menu_items_n_panes from each call to
7627 parse_single_submenu and use it when calling digest_single_submenu.
7628
7629 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7630 Don't try to make last line fully visible if it is past end of window.
7631
7632 2002-12-22 Steven Tamm <steventamm@mac.com>
7633
7634 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7635 (mac_menu_show): Add support for hierarchical popup menus.
7636 (add_menu_item): Remove indentation support.
7637 (fill_submenu, fill_menu): Create hierarchical menus
7638 instead of using indentation.
7639
7640 2002-12-22 Richard M. Stallman <rms@gnu.org>
7641
7642 * xdisp.c (try_cursor_movement): Don't call try_window here.
7643 (redisplay_window): Never redisplay minibuffer when inactive.
7644
7645 * window.c (select_window_1): Undo 9/21 change.
7646
7647 2002-12-22 Steven Tamm <steventamm@mac.com>
7648
7649 * macterm.c (XTread_socket): Call KeyTranslate for control and
7650 meta to deal correctly shifted non-alpha characters, like C-S-5
7651 being treated like C-%. Does not look for shift key to deal
7652 with masking off control-key with mac-reverse-ctrl-meta.
7653
7654 2002-12-21 Richard M. Stallman <rms@gnu.org>
7655
7656 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7657 If it is non-nil, run timers. Use an unwind-protect to requeue
7658 the events that were read ahead.
7659 (popup_get_selection_unwind): New subroutine.
7660 (popup_get_selection_queue): File-scope variable now holds that queue.
7661 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7662 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7663 Use an unwind-protect to pop down the dialog box.
7664 (xdialog_show_unwind): New subroutine implements that.
7665
7666 * xdisp.c (row_containing_pos): Change exit test using last_y.
7667 (try_window_id): Abort if row_containing_pos returns null.
7668
7669 * lread.c (load_error_handler): New function.
7670 (Fload): Handle errors in Fsubstitute_in_file_name.
7671 Don't expect Fsignal to return.
7672
7673 * eval.c: Errors and throws work right with interrupt blocking.
7674 (struct catchtag): New elt interrupt_input_blocked.
7675 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7676 (internal_catch, Fcondition_case, internal_condition_case)
7677 (internal_condition_case_1, internal_condition_case_2): Save it.
7678 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
7679
7680 * editfns.c (Fformat): Add parens.
7681
7682 * dired.c (file_name_completion): Fix that change.
7683 Delete special quit-handling code; just use QUIT.
7684
7685 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
7686
7687 * dired.c (file_name_completion): Close directory on error
7688 just as in directory_files_internal.
7689
7690 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
7691
7692 * window.c (Fset_window_configuration): Set old_point to correct
7693 value when new_current_buffer == current_buffer.
7694
7695 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
7696
7697 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7698 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7699 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7700
7701 These changes were in part based upon suggestions made by Peter
7702 'Luna' Runestig [peter@runestig.com].
7703
7704 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7705 g_b_init_get_token_information, g_b_init_lookup_account_sid,
7706 g_b_init_get_sid_identifier_authority ): Add several static
7707 global variables.
7708
7709 * w32.c (globals_of_w32): New function. Used to initialize those
7710 global variables that must always be initialized on startup even
7711 when the global variable initialized is non zero. Its primary
7712 purpose at this time is to set the global variables
7713 g_b_init_is_windows_9x, g_b_init_open_process_token,
7714 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7715 g_b_init_get_sid_identifier_authority to 0 on startup.
7716 Called from main.
7717
7718 * w32.c (is_windows_9x): Perform initialization only if
7719 g_b_init_is_windows_9x is equal to 0. On initialization set
7720 g_b_init_is_windows_9x equal to 1.
7721
7722 * w32.c (open_process_token): Perform initialization only if
7723 g_b_init_open_process_token is equal to 0. On initialization set
7724 g_b_init_open_process_token equal to 1.
7725
7726 * w32.c (get_token_information): Perform initialization only if
7727 g_b_init_get_token_information is equal to 0. On initialization
7728 set g_b_init_get_token_information equal to 1.
7729
7730 * w32.c (lookup_account_sid): Perform initialization only if
7731 g_b_init_lookup_account_sid is equal to 0. On initialization
7732 set g_b_init_lookup_account_sid equal to 1.
7733
7734 * w32.c (get_sid_identifier_authority): Perform initialization
7735 only if g_b_init_get_sid_identifier_authority is equal to 0.
7736 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
7737
7738 * w32fns.c (globals_of_w32fns): New function. Used to initialize
7739 those global variables that must always be initialized on startup
7740 even when the global variable initialized is non zero.
7741 Its primary purpose at this time is to initialize the global variable
7742 track_mouse_event_fn.
7743
7744 * w32fns.c (w32_wnd_proc): Remove initialization of
7745 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
7746
7747 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
7748
7749 * w32menu.c (globals_of_w32menu): New function. Used to
7750 initialize those global variables that must always be initialized
7751 on startup even when the global variable initialized is non zero.
7752 Its primary purpose at this time is to initialize the global
7753 variables get_menu_item_info and set_menu_item_info.
7754
7755 * w32menu.c (initialize_frame_menubar): Remove initialization of
7756 get_menu_item_info and set_menu_item_info.
7757
7758 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
7759
7760 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7761 Declare them.
7762
7763 * emacs.c (main): Call globals_of_w32 prior to calling
7764 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7765 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7766 is defined.
7767
7768 * w32term.c (x_update_window_begin): Fix Windows API error
7769 detected by BoundsChecker. Test to determine if
7770 w32_system_caret_hwnd is NULL prior to attempting to use
7771 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
7772
7773 * w32term.c (x_update_window_end): Fix Windows API error
7774 detected by BoundsChecker. Test to determine if
7775 w32_system_caret_hwnd is NULL prior to attempting to use
7776 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
7777
7778 2002-12-17 Kenichi Handa <handa@m17n.org>
7779
7780 * coding.c (coding_system_require_warning): New variable.
7781 (syms_of_coding): DEFVAR it.
7782
7783 * coding.h (coding_system_require_warning): Extern it.
7784
7785 * fileio.c (choose_write_coding_system): Even if
7786 Vcoding_system_for_write is non-nil, if
7787 coding_system_require_warning is nonzero, call
7788 Vselect_safe_coding_system_function.
7789
7790 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
7791
7792 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7793 (lisp): Add font-core.
7794
7795 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
7796
7797 * textprop.c (text_read_only): New arg `propval'.
7798 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7799 (verify_interval_modification): Use text_read_only's new arg.
7800
7801 2002-12-13 Kenichi Handa <handa@m17n.org>
7802
7803 * coding.c (Funencodable_char_position): Set pend correctly.
7804
7805 2002-12-12 Jason Rumney <jasonr@gnu.org>
7806
7807 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7808 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7809 Be more careful about when help_events are generated.
7810
7811 2002-12-12 Steven Tamm <steventamm@mac.com>
7812
7813 * macterm.c (mac_check_for_quit_char): Correctly set the
7814 modifiers of the event to 0.
7815 * mac.c (sys_select): Duplicate rfds before calling select to
7816 ensure that rfds survive the while loop.
7817
7818 2002-12-11 Kim F. Storm <storm@cua.dk>
7819
7820 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7821 row_containing_pos returned NULL.
7822
7823 2002-12-10 Steven Tamm <steventamm@mac.com>
7824
7825 * mac.c (sys_read): Fix sys_read to not call select if IO is
7826 non-blocking.
7827 (sys_select): Fix sys_select to not use a timeout larger than
7828 the one given.
7829
7830 2002-12-10 Juanma Barranquero <lektu@terra.es>
7831
7832 * editfns.c (Fformat): Use alloca, not _alloca.
7833
7834 2002-12-09 Richard M. Stallman <rms@gnu.org>
7835
7836 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7837 as the last thing.
7838
7839 2002-12-09 Dave Love <fx@gnu.org>
7840
7841 * s/sol2-8.h: Removed. (Not necessary.)
7842
7843 2002-12-09 Matthew Swift <swift@alum.mit.edu>
7844
7845 * editfns.c (Fformat): Handle precision in string conversion
7846 specifiers like libc functions do (ie, print at most that many
7847 characters).
7848
7849 2002-12-08 Richard M. Stallman <rms@gnu.org>
7850
7851 * xdisp.c (row_containing_pos): Check more carefully
7852 whether charpos is really in the row before returning it.
7853
7854 2002-12-07 Steven Tamm <steventamm@mac.com>
7855
7856 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
7857
7858 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7859 each stack frame. This may change as it could be time consuming.
7860
7861 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7862 (init_quit_char_handler, mac_determine_quit_char_modifiers)
7863 (mac_initialize): Add code to check for pressing of quit_char
7864 in the OS event queue.
7865
7866 * mac.c (sys_select): Call mac_check_for_quit_char every second
7867 while blocking on select.
7868
7869 * mac.c (sys_read): Use sys_select to test for input first
7870 before calling read, to allow C-g to break.
7871
7872 2002-12-07 Richard M. Stallman <rms@gnu.org>
7873
7874 * minibuf.c (Fcompleting_read): Doc fix.
7875
7876 * lread.c (syms_of_lread) <load-history>: Doc fix.
7877
7878 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
7879
7880 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7881 autoload.
7882
7883 * data.c (Fdefalias): Record in load-history redefining an autoload.
7884
7885 * alloca.c: Undo ifdef change accidentally made on 12-04.
7886
7887 2002-12-06 Francesco Potorti` <pot@gnu.org>
7888
7889 * xfns.c (png_load): Avoid double gamma correction for PNG images.
7890
7891 2002-12-04 Richard M. Stallman <rms@gnu.org>
7892
7893 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
7894
7895 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
7896
7897 * alloca.c: Don't use #error.
7898
7899 2002-12-03 Dave Love <fx@gnu.org>
7900
7901 * buffer.c (Qucs_set_table_for_input): New.
7902 (Fget_buffer_create): Use it.
7903 (Qset_buffer_major_mode_hook): Deleted.
7904 (Fset_buffer_major_mode): Revert previous change.
7905 (init_buffer_once): Intern ucs-set-table-for-input.
7906 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7907 Add &Qucs_set_table_for_input.
7908
7909 2002-12-03 Andreas Schwab <schwab@suse.de>
7910
7911 * callint.c (Fcall_interactively): Use next_event only if less
7912 than key_count.
7913
7914 2002-12-02 Andrew Choi <akochoi@shaw.ca>
7915
7916 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7917 names to 255 characters.
7918
7919 * macterm.c (XTread_socket): If all frames have been collapsed,
7920 expand the first one before handling drag-and-drop events.
7921
7922 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7923 which is detected by autoconf.
7924
7925 2002-12-01 Steven Tamm <steventamm@mac.com>
7926
7927 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7928 offset in two hints table to allow prebinding to be redone and
7929 allow the executable to be stripped.
7930
7931 2002-11-29 Dave Love <fx@gnu.org>
7932
7933 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7934 already provided.
7935
7936 2002-11-29 Richard M. Stallman <rms@gnu.org>
7937
7938 * xdisp.c (start_display): Check more intelligently for
7939 whether the line is continued.
7940 (move_it_vertically_backward): Clear it->continuation_lines_width.
7941
7942 2002-11-28 Dave Love <fx@gnu.org>
7943
7944 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7945 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
7946
7947 2002-11-27 Steven Tamm <steventamm@mac.com>
7948
7949 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7950 more descriptive error output from lread.c:Fload upon most require
7951 cycles during boostrapping.
7952
7953 2002-11-27 Jason Rumney <jasonr@gnu.org>
7954
7955 * fileio.c (Finsert_file_contents): Give a more appropriate error
7956 for files bigger than 2Gb when off_t is 32 bit.
7957
7958 * dired.c (Ffile_attributes): Don't return negative file sizes for
7959 files bigger than 2Gb when off_t is 32 bit.
7960
7961 2002-11-27 Dave Love <fx@gnu.org>
7962
7963 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7964
7965 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7966 Test GETPGRP_VOID instead.
7967 [BSD_TERMIOS]: Remove definitions (never used).
7968
7969 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7970 Don't define.
7971 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7972
7973 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
7974
7975 2002-11-25 Jason Rumney <jasonr@gnu.org>
7976
7977 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7978 supported.
7979
7980 2002-11-25 Dave Love <fx@gnu.org>
7981
7982 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
7983
7984 * Makefile.in (TEMACS_LDFLAGS): Update last change.
7985
7986 2002-11-25 Andreas Schwab <schwab@suse.de>
7987
7988 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
7989
7990 2002-11-24 Steven Tamm <steventamm@mac.com>
7991
7992 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7993 determine the size of pointers alloced in unexed space instead
7994 of using possibly invalid emacs_zone pointers. This fixes the
7995 binary incompatibility problems caused by updates to libSystem.B.
7996
7997 2002-11-24 Richard M. Stallman <rms@gnu.org>
7998
7999 * search.c (Fstring_match): Doc fix.
8000
8001 * callint.c (Fcall_interactively): If a command fails because
8002 `*' detects a read-only buffer, but RECORD_FLAG is set,
8003 record it anyway if the args don't actually do tty input.
8004
8005 2002-11-22 Dave Love <fx@gnu.org>
8006
8007 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
8008
8009 * keyboard.c (interrupt_signal): Provide forward declaration.
8010 (kbd_buffer_store_event): Don't declare interrupt_signal.
8011
8012 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
8013
8014 2002-11-21 Richard M. Stallman <rms@gnu.org>
8015
8016 * eval.c (interactive_p): Skip any number of bytecode
8017 and special form frames, in any order.
8018
8019 2002-11-20 Jason Rumney <jasonr@gnu.org>
8020
8021 * w32fns.c (convert_mono_to_color_image): New function.
8022 (xbm_load, xbm_load_image): Use it when foreground or background
8023 is explicitly set.
8024
8025 2002-11-19 Dave Love <fx@gnu.org>
8026
8027 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
8028
8029 2002-11-18 Jason Rumney <jasonr@gnu.org>
8030
8031 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8032 (XPutPixel): Swap blue and red.
8033 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8034 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8035 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8036 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
8037
8038 2002-11-18 Dave Love <fx@gnu.org>
8039
8040 * m/orion105.h (HAVE_ALLOCA): Don't define.
8041
8042 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
8043
8044 * m/intel386.h: Don't include alloca.h or define alloca.
8045
8046 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8047 malloc, realloc, calloc.
8048
8049 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8050 (bcmp): Don't define.
8051
8052 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
8053
8054 * m/amdahl.h: Don't define LIB_STANDARD.
8055
8056 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
8057
8058 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
8059
8060 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8061 Don't include alloca.h.
8062
8063 * s/aix3-2.h (HAVE_FSYNC): Don't define.
8064
8065 * regex.c (_GNU_SOURCE): Don't define.
8066
8067 * process.c (_GNU_SOURCE): Don't define.
8068
8069 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8070
8071 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
8072
8073 * s/sol2-8.h: Include sol2-6.h.
8074
8075 2002-11-18 Miles Bader <miles@gnu.org>
8076
8077 * dispextern.h (struct face): Add `overstrike' field.
8078 * xterm.c (x_draw_glyph_string_foreground)
8079 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8080 * xfaces.c (load_face_font): Set `face->overstrike' based on
8081 result from choose_face_font.
8082 (best_matching_font, choose_face_font): Add `needs_overstrike'
8083 argument, and use it to return whether overstriking is desirable
8084 for this face/font combo.
8085 (set_font_frame_param: Pass new argument to choose_face_font.
8086
8087 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8088
8089 This change is my fix for the following entry in etc/PROBLEMS:
8090 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8091 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8092
8093 * w32.c: Added wrapper functions around the win32 API functions
8094 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8095 GetSidIdentifierAuthority. These wrapper functions serve two
8096 purposes:
8097 1. They ensure that the wrapped function can never be called
8098 when Emacs is running on an operating system on which they are
8099 not supported (Microsoft Windows 95 / 98 / ME).
8100 2. They call the wrapped functions via function pointers rather
8101 than calling them directly. This avoids taking advantage of the
8102 undocumented fact that although these functions are not supported
8103 in the 9x branch of Microsoft Windows, the functions do exist in
8104 the version of advapi32.dll that is found in the 9x branch of
8105 Microsoft Windows.
8106
8107 * w32.c (init_user_info): Replace the calls to the win32 API
8108 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8109 and GetSidIdentifierAuthority with calls to the newly added
8110 wrapper functions.
8111
8112 * w32.h: Added extern declarations for the following functions:
8113 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8114 syms_of_w32menu, and void syms_of_fontset.
8115
8116 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
8117 function pointer track_mouse_event_fn in the handler for the
8118 WM_SETFOCUS message.
8119
8120 * w32menu.c (initialize_frame_menubar): Add code to
8121 reinitialize the function pointers set_menu_item_info and
8122 get_menu_item_info.
8123
8124 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8125
8126 * sound.c: Added a partial implementation of play-sound-internal
8127 for Microsoft Windows. Added various #ifdef / #else / #endif
8128 code blocks to separate the code that will compile under
8129 Microsoft Windows from the code that is specific to Gnu/Linux.
8130 Moved several blocks of code around to make this separation of code
8131 into Windows compatible and Gnu/Linux compatible code blocks easier.
8132
8133 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8134
8135 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8136 added support for play-sound-internal under Windows would be
8137 included in the build of Emacs.
8138
8139 2002-11-16 Jason Rumney <jasonr@gnu.org>
8140
8141 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
8142
8143 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
8144
8145 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
8146
8147 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8148 (adjust_point_for_property): Move out of display and invisible even if
8149 we were already inside before (in case a property was added while
8150 we weren't looking). Be more careful when handling invisible props.
8151 Skip invisible text as if it really wasn't there at all.
8152
8153 2002-11-15 Jason Rumney <jasonr@gnu.org>
8154
8155 * w32term.c (x_draw_image_foreground)
8156 (w32_draw_image_foreground_1): Use standard copy and invert
8157 operations to draw images.
8158
8159 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8160 depth of 1.
8161 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8162 (XPutPixel): Don't invert bits here.
8163
8164 2002-11-15 Jason Rumney <jasonr@gnu.org>
8165
8166 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8167 (w32_draw_image_foreground_1): Handle image masks.
8168 (x_draw_image_glyph_string): Don't BitBlt transparently.
8169
8170 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8171 (x_from_xcolors): Adjust RGB values for W32.
8172 (image_background, image_background_transparent)
8173 (postprocess_image, x_to_xcolors, x_disable_image)
8174 (x_build_heuristic_mask): Adapt for W32 and enable.
8175 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8176 (xbm_load): Remove unused variable.
8177
8178 2002-11-14 Richard M. Stallman <rms@gnu.org>
8179
8180 * buffer.c (syms_of_buffer): Doc fix.
8181
8182 2002-11-14 Dave Love <fx@gnu.org>
8183
8184 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
8185
8186 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8187 * xmenu.c (unuse_menu_items, digest_single_submenu):
8188 * xfns.c (x_put_x_image):
8189 * xdisp.c (message2_nolog, set_message):
8190 * undo.c (record_point):
8191 * terminfo.c (tparam):
8192 * syntax.c (scan_sexps_forward):
8193 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8194 * composite.c (update_compositions):
8195 * cm.c (calccost, cmgoto):
8196 * charset.c (c_string_width): Declare all args (per C99).
8197
8198 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
8199
8200 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8201 Don't declare.
8202
8203 * emacs.c (main) [!VMS]: Avoid third arg.
8204
8205 * fns.c (Fcopy_sequence): Doc fix.
8206 (Fmap_char_table): Cast `call2'.
8207
8208 2002-11-14 Francesco Potorti` <pot@gnu.org>
8209
8210 * s/sol2-8.h: New file.
8211
8212 2002-11-14 Kim F. Storm <storm@cua.dk>
8213
8214 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8215 dependency on `risky-local-variable' and the :propertize form.
8216
8217 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8218
8219 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8220
8221 * syntax.c (scan_sexps_forward): Undo last patch.
8222 Use a more obvious fix: check eob before updating the syntax table.
8223
8224 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8225
8226 * syntax.c (scan_sexps_forward): Update syntax table before reading
8227 a char rather than after so we don't update the table past eob.
8228
8229 2002-11-09 Dave Love <fx@gnu.org>
8230
8231 * buffer.c (Fset_buffer_major_mode): Fix last change.
8232
8233 * regex.c (regexec): Fix pmatch declaration.
8234
8235 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8236
8237 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8238 to self-inserting characters.
8239 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8240
8241 * coding.c (Vtranslation_table_for_input): New.
8242 (syms_of_coding): DEFVAR it.
8243
8244 2002-11-08 Juanma Barranquero <lektu@terra.es>
8245
8246 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8247 window.
8248
8249 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8250
8251 * process.c (Fformat_network_address): Remove unused locals p,
8252 cp, and i.
8253
8254 2002-11-06 Dave Love <fx@gnu.org>
8255
8256 * buffer.c (Qset_buffer_major_mode_hook): New.
8257 (Fset_buffer_major_mode): Use it.
8258
8259 2002-11-06 Richard M. Stallman <rms@gnu.org>
8260
8261 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8262 and stop_polling.
8263
8264 * process.c (wait_reading_process_input):
8265 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8266 Avoid initialization for auto Lisp_Object var.
8267
8268 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8269
8270 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8271
8272 2002-11-05 Richard M. Stallman <rms@gnu.org>
8273
8274 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8275
8276 * callint.c (Fcall_interactively): New local filter_specs.
8277 (Fcall_interactively): Check for progn as well as let.
8278 Add a gcpro.
8279 (Qprogn): New variable.
8280 (syms_of_callint): Staticpro and init Qprogn.
8281
8282 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8283
8284 * lread.c (Feval_buffer): Doc fix.
8285
8286 2002-11-04 Dave Love <fx@gnu.org>
8287
8288 * keyboard.c (read_char): Always translate iff
8289 Vkeyboard_translate_table is a char table and c is valid.
8290
8291 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8292 and fix C types.
8293
8294 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8295
8296 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8297
8298 * editfns.c (get_pos_property): Don't hardcode Qfield.
8299
8300 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8301 overlays. Also handle `invisible' prop.
8302
8303 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8304
8305 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8306 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8307
8308 2002-11-01 Andreas Schwab <schwab@suse.de>
8309
8310 * editfns.c (Fmessage): Revert last change to properly handle %%.
8311
8312 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8313
8314 * xmenu.c (unuse_menu_items): New fun.
8315 (menu_items_inuse): New var.
8316 (syms_of_xmenu): Initialize it.
8317 (init_menu_items): Use it to detect re-entrance.
8318 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8319 (Fx_popup_menu): Remove spurious XSETFRAME.
8320
8321 * editfns.c (find_field): Make an exception for nil fields.
8322
8323 2002-11-01 Dave Love <fx@gnu.org>
8324
8325 * m/gec63.h: Deleted.
8326
8327 2002-10-31 Dave Love <fx@gnu.org>
8328
8329 * xterm.c (XTread_socket): Fix last change.
8330 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8331
8332 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8333
8334 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8335
8336 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8337
8338 * editfns.c (overlays_around, get_pos_property): New funs.
8339 (find_field): Use them.
8340 Also be careful not to modify POS before its last use.
8341 (Fmessage): Don't Fformat if there's nothing to format.
8342
8343 2002-10-30 Dave Love <fx@gnu.org>
8344
8345 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8346 [HAVE_PTY_H]; Include pty.h.
8347
8348 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8349
8350 * xterm.c (Qeql): Declare.
8351 (Vx_keysym_table): New.
8352 (syms_of_xterm): Initialize it.
8353 (XTread_socket): Use it. Deal with ASCII keysyms.
8354 (XSetIMValues) [HAVE_X11R6]: Prototype.
8355
8356 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8357 (lispy_kana_keys): Comment out.
8358 (make_lispy_event) [XK_kana_A]: Comment out.
8359 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8360 Fix sprintf call.
8361
8362 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8363 regexp.h change).
8364 (TERMINFO, LIBS_TERMCAP): Define.
8365
8366 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8367 (bcmp): Define conditional on HAVE_BCMP.
8368 (NO_SIOCTL_H): Don't define.
8369 (TIOCSIGSEND): Don't make conditional on IRIX6.
8370
8371 * s/sol2-5.h: Don't include strings.h.
8372 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8373
8374 * s/irix6-0.h (IRIX6): Don't define.
8375 (bcopy, bcmp, bzero): Don't undef.
8376
8377 * s/irix6-5.h: Don't include strings.h.
8378 (IRIX6): Don't define.
8379 (bcopy, bcmp, bzero): Don't undef.
8380
8381 * syntax.c (Fforward_comment): Doc fix.
8382
8383 2002-10-29 Kim F. Storm <storm@cua.dk>
8384
8385 * process.c (Fsignal_process): Allow PROCESS to be specified by
8386 name in addition to pid (as integer or string).
8387
8388 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8389
8390 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8391 environments.
8392
8393 2002-10-27 Kim F. Storm <storm@cua.dk>
8394
8395 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8396
8397 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8398
8399 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8400
8401 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8402
8403 2002-10-26 Richard M. Stallman <rms@gnu.org>
8404
8405 * editfns.c (Fformat): Detect invalid format letters for floats.
8406
8407 2002-10-25 Kenichi Handa <handa@m17n.org>
8408
8409 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8410 (x_set_title): Likewise.
8411
8412 2002-10-25 Juanma Barranquero <lektu@terra.es>
8413
8414 * macgui.h:
8415 * w32gui.h: Remove definition of XColor.
8416
8417 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8418
8419 2002-10-24 Kim F. Storm <storm@cua.dk>
8420
8421 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8422 Callers changed (supply dummy arg).
8423
8424 * lisp.h (get_window_cursor_type): Update prototype.
8425
8426 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8427 get_window_cursor_type to track system caret.
8428
8429 2002-10-24 Kim F. Storm <storm@cua.dk>
8430
8431 * process.c (Fformat_network_address): New function.
8432 (syms_of_process): Defsubr it.
8433 (list_processes_1): Use it to format :local/:remote address if
8434 service/host is not set; before Emacs would crash in that case.
8435 (Fmake_network_process): Don't use Ffind_operation_coding_system
8436 to setup coding system if host or service is not set.
8437
8438 2002-10-23 Juanma Barranquero <lektu@terra.es>
8439
8440 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8441
8442 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8443 COLORREF.
8444
8445 * macgui.h:
8446 * w32gui.h: Add definition of XColor.
8447
8448 * macfns.c:
8449 * w32fns.c:
8450 * xfaces.c: Remove definition of XColor.
8451
8452 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8453
8454 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8455
8456 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8457 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8458 window if it is dedicated.
8459 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8460 (Vspecial_display_function): Update docstring.
8461
8462 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8463 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8464 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8465
8466 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8467
8468 * casefiddle.c (casify_region): Don't treat a prefix char as part
8469 of a word when at the beginning.
8470
8471 2002-10-17 Juanma Barranquero <lektu@terra.es>
8472
8473 * lread.c (syms_of_lread): Fix typos.
8474
8475 2002-10-17 Dave Love <fx@gnu.org>
8476
8477 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8478
8479 2002-10-16 Richard M. Stallman <rms@gnu.org>
8480
8481 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8482
8483 2002-10-14 Juanma Barranquero <lektu@terra.es>
8484
8485 * w16select.c (syms_of_win16select): Fix docstring for
8486 `selection-coding-system'.
8487
8488 * w32select.c (syms_of_w32select): Likewise.
8489
8490 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8491
8492 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8493 a backslash-quoted char.
8494 (scan_lists, scan_sexps_forward): Pacify the compiler.
8495
8496 2002-10-13 Richard M. Stallman <rms@gnu.org>
8497
8498 * window.c (window_scroll): Set immediate_quit.
8499
8500 * print.c (print): When backquote form is the car of a list,
8501 output in old style. Use old_backquote_output to output all
8502 comma forms inside it in old style too.
8503
8504 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8505
8506 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
8507
8508 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8509 batch mode).
8510
8511 * lread.c (Fload): Doc fix (load-suffixes).
8512
8513 2002-10-10 Steven Tamm <steventamm@mac.com>
8514
8515 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8516 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8517 Also switch the default to Qnil from Qt.
8518
8519 2002-10-08 Kenichi Handa <handa@m17n.org>
8520
8521 * coding.c (code_convert_region): When we need more GAP for
8522 conversion, pay attention to the case that coding->produced is not
8523 greater than coding->consumed.
8524
8525 2002-10-07 Richard M. Stallman <rms@gnu.org>
8526
8527 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8528
8529 2002-10-06 Andrew Choi <akochoi@shaw.ca>
8530
8531 * macmenu.c (mac_menu_show): Add j to count menu items; match
8532 menu_item_selection to it to find selected item.
8533
8534 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8535
8536 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8537 cases. The correct fix is to pass ReparentNotify to Xt.
8538 The shell widget interprets ConfigureNotify differently depending
8539 on if it has been reparented or not.
8540
8541 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
8542
8543 * editfns.c (Fformat_time_string): Doc fix.
8544
8545 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8546
8547 * fns.c (Flength): Doc fix.
8548
8549 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8550
8551 * keyboard.c (keyremap): New struct.
8552 (read_key_sequence): Use it: globally replace keytran_foo with
8553 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8554 keytran_next and fkey_next to just `next'.
8555
8556 2002-10-04 Steven Tamm <steventamm@mac.com>
8557
8558 * macterm.c (keycode_to_xkeysym_table): Change return to be
8559 treated like an X keysym.
8560
8561 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8562
8563 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8564 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8565 This is to also handle x/y changes that occur because of a resize.
8566
8567 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8568
8569 * frame.c (Vdelete_frame_functions): New variable.
8570 (syms_of_frame): Initialize and defvar it.
8571 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8572 it when frame's `tooltip' parameter is non-nil.
8573
8574 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8575
8576 * w32fns.c (x_create_tip_frame): Likewise.
8577
8578 * macfns.c (x_create_tip_frame): Likewise.
8579
8580 2002-09-30 Kenichi Handa <handa@m17n.org>
8581
8582 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8583 -1 before calling ccl_driver.
8584
8585 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8586 Only when it is non-nil, handle composition sequence.
8587 (setup_coding_system) <0>: Don't force composition handling.
8588
8589 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8590
8591 2002-09-29 Richard M. Stallman <rms@gnu.org>
8592
8593 * search.c (Freplace_match): Adjust match data for the substitution
8594 just made in the buffer.
8595
8596 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8597 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8598
8599 2002-09-27 Richard M. Stallman <rms@gnu.org>
8600
8601 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8602 (read_char): Use them. Do all exits thru the end of the function.
8603
8604 2002-09-27 Kenichi Handa <handa@etl.go.jp>
8605
8606 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8607 is nil.
8608
8609 2002-09-26 Richard M. Stallman <rms@gnu.org>
8610
8611 * regex.h (__restrict_arr): Don't define if already defined.
8612
8613 * coding.c (run_pre_post_conversion_on_str):
8614 Save and restore Vdeactivate_mark.
8615
8616 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8617
8618 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8619
8620 2002-09-26 Kenichi Handa <handa@etl.go.jp>
8621
8622 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8623 nonzero, try face's family at first. Otherwise try FAMILY at first.
8624 (choose_face_font): If C is a single byte char or latin-1, call
8625 try_font_list with PREFER_FACE_FAMILY 1.
8626
8627 2002-09-21 Richard M. Stallman <rms@gnu.org>
8628
8629 * window.c (select_window_1): Don't select frame.
8630 Set frame's selected window only when frame itself is selected.
8631 (Fselect_window): Doc fix.
8632
8633 2002-09-18 Kim F. Storm <storm@cua.dk>
8634
8635 * process.c (make-network-process): Doc fix (there is no
8636 network-server-log-function hook).
8637
8638 2002-09-18 Richard M. Stallman <rms@gnu.org>
8639
8640 * print.c (print): Clear out the unused parts of Vprint_number_table.
8641 (syms_of_print): Doc fix for `print-number-table'.
8642
8643 * unexelf.c (unexec): Undo previous change.
8644
8645 2002-09-17 Andreas Schwab <schwab@suse.de>
8646
8647 * m/alpha.h [LINUX]: Don't define DATA_START.
8648
8649 2002-09-16 Dave Love <fx@gnu.org>
8650
8651 * unexelf.c (unexec): Deal with .got, reinstating change from
8652 25-08-1999.
8653
8654 2002-09-13 Richard M. Stallman <rms@gnu.org>
8655
8656 * s/sol2-6.h (UNEXEC): Comment out definition.
8657
8658 * unexsol.c (unexec): Don't downcase first letter of error msg.
8659
8660 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8661
8662 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
8663
8664 * unexsol.c: Include buffer.h, charset.h, coding.h.
8665
8666 2002-09-11 Richard M. Stallman <rms@gnu.org>
8667
8668 * unexsol.c: Don't use report_file_error; do it by hand
8669 using dlerror.
8670
8671 * process.c (wait_reading_process_input, both versions):
8672 Before calling turn_on_atimers, call stop_polling.
8673
8674 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8675
8676 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8677 we go to too_near_end, call clear_glyph_matrix.
8678 (redisplay_window): After make_cursor_line_fully_visible,
8679 call clear_glyph_matrix and bypass `goto done'.
8680
8681 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8682 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8683
8684 2002-09-10 Richard M. Stallman <rms@gnu.org>
8685
8686 * fileio.c (Fdo_auto_save): Catch error making directory.
8687 Only call push_message if we need to.
8688 At the same time, make an unwind-protect to pop it.
8689 Rename local message_p to old_message_p.
8690 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8691 (do_auto_save_unwind): Don't call pop_message.
8692
8693 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8694
8695 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8696
8697 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8698
8699 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8700
8701 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8702
8703 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8704 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8705 (re_match_2_internal): Be more careful with infinite loops.
8706
8707 2002-09-10 Kim F. Storm <storm@cua.dk>
8708
8709 * macros.c (end_kbd_macro): New function.
8710 (Fend_kbd_macro): Use it.
8711
8712 * macros.h (end_kbd_macro): Declare extern.
8713
8714 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8715 end and save it instead of discarding it.
8716
8717 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
8718
8719 * s/sol2-6.h: Fix typo. Add comment.
8720
8721 2002-09-09 Richard M. Stallman <rms@gnu.org>
8722
8723 * regex.c (regnum_t): Use signed int, not unsigned int.
8724
8725 * s/sol2-6.h: New file.
8726
8727 * s/sol2-5.h (UNEXEC): Definition deleted.
8728
8729 2002-09-08 Kim F. Storm <storm@cua.dk>
8730
8731 * macros.c (executing_macro_index): Change type to EMACS_INT.
8732 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8733
8734 * macros.h (executing_macro_index): Change type to EMACS_INT.
8735
8736 2002-09-06 Richard M. Stallman <rms@gnu.org>
8737
8738 * casetab.c (set_case_table): Make canon table point to eqv table.
8739
8740 2002-09-06 Juanma Barranquero <lektu@terra.es>
8741
8742 * coding.c (syms_of_coding): Fix spacing.
8743
8744 * composite.c (Fcompose_region_internal)
8745 (Fcompose_string_internal): Likewise.
8746
8747 * data.c (Flsh): Likewise.
8748
8749 * fontset.c (Fset_fontset_font): Likewise.
8750
8751 * macfns.c (Fx_server_max_request_size): Likewise.
8752
8753 * w16select.c (syms_of_win16select): Likewise.
8754
8755 * w32select.c (syms_of_w32select): Likewise.
8756
8757 * xselect.c (syms_of_xselect): Likewise.
8758
8759 2002-09-05 Richard M. Stallman <rms@gnu.org>
8760
8761 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8762 call EXTEND_RANGE_TABLE and return a proper value.
8763 (set_image_of_range): Don't call set_image_of_range_1
8764 if no TRANSLATE or if range includes all of Latin-1.
8765 Only call it for the Latin-1 part of the range.
8766 For other cases, make two separate ranges,
8767 one for the original specified characters and one for
8768 their case-conversions.
8769
8770 2002-09-04 Richard M. Stallman <rms@gnu.org>
8771
8772 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8773
8774 * window.c (displayed_window_lines): Correct for one-off bug
8775 in HEIGHT on non-window displays.
8776
8777 * regex.c (set_image_of_range_1): New function.
8778 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8779 Return a value to indicate running out of memory.
8780 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8781 (extend_range_table_work_area): New subroutine.
8782 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8783 Different calling conventions, and used from set_image_of_range{,_1}.
8784 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8785
8786 2002-09-04 Juanma Barranquero <lektu@terra.es>
8787
8788 * makefile.w32-in: All dependencies updated.
8789
8790 2002-09-01 Richard M. Stallman <rms@gnu.org>
8791
8792 * unexsol.c: New file.
8793
8794 * xfns.c (Qbox): Declare external, don't define.
8795
8796 * xdisp.c (redisplay_window) <force-start case>:
8797 If point is on semi-visible last line, reposition
8798 it at previous line.
8799
8800 * alloc.c (display_malloc_warning): Use display-warning.
8801 (malloc_warning_1): Function deleted.
8802
8803 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8804
8805 * lread.c (read1): Handle #! by skipping the line.
8806
8807 2002-08-31 Richard M. Stallman <rms@gnu.org>
8808
8809 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8810 Don't include LDFLAGS.
8811 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8812
8813 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8814
8815 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8816 member of x_display_info unless we compile for some window system.
8817
8818 2002-08-31 Kim F. Storm <storm@cua.dk>
8819
8820 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8821 (get_window_cursor_type): Don't use them.
8822 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8823
8824 2002-08-30 Kenichi Handa <handa@etl.go.jp>
8825
8826 * xdisp.c (get_next_display_element): Fix previous change.
8827
8828 2002-08-30 Andrew Choi <akochoi@shaw.ca>
8829
8830 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8831 (expose_window): Use it to fix the display of overlapping
8832 rows (merge code from xterm.c).
8833
8834 * macfns.c (Qbox): Add extern declaration.
8835
8836 2002-08-30 Juanma Barranquero <lektu@terra.es>
8837
8838 * w32fns.c (Qbox): Make extern.
8839 (syms_of_w32fns): Remove initialization of Qbox.
8840
8841 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8842
8843 * xfns.c (Fx_open_connection): Fix error message.
8844
8845 2002-08-30 Kim F. Storm <storm@cua.dk>
8846
8847 The following changes consolidates the handling of the cursor
8848 type in xdisp.c, moving duplicate code and functionality from
8849 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8850
8851 * frame.h (enum text_cursor_kinds): Consolidated here.
8852 Added DEFAULT_CURSOR value.
8853 (struct frame) <desired_cursor, cursor_width>
8854 <blink_off_cursor, blink_off_cursor_width>: New fields.
8855 Consolidated from output_x, output_w32 and output_mac structs.
8856 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8857 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8858
8859 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8860 Variables consolidated here.
8861 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8862 (Vcursor_in_non_selected_windows): Renamed from
8863 cursor_in_non_selected_windows and changed to Lisp_Object.
8864 (syms_of_xdisp): Define and staticpro new and moved variables.
8865 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8866 consolidated here. Recognize Qhollow setting.
8867 (set_frame_cursor_types): New function to set frame cursor types
8868 based on the frame parameters.
8869 (get_window_cursor_type): New function to calculate new cursor
8870 type and width for the specified window. Based on duplicated
8871 code consolidated here.
8872 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8873 check buffer-local alternate-cursor-type and blink-cursor-alist
8874 before using built-in blink off methods.
8875
8876 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8877
8878 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8879 (get_specified_cursor_type, get_window_cursor_type)
8880 (set_frame_cursor_types): Added prototypes.
8881
8882 * macfns.c (x_specified_cursor_type): Removed.
8883 (x_set_cursor_type): Use set_frame_cursor_types.
8884 (Qbar, Qbox): Removed.
8885 (syms_of_macfns): Don't intern or staticpro them.
8886
8887 * macterm.c (x_specified_cursor_type): Remove prototype.
8888 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8889 (x_display_and_set_cursor): Use get_window_cursor_type.
8890 Remove unused local variables cursor_non_selected, active_cursor.
8891 Redraw cursor if hbar cursor width changes.
8892 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8893
8894 * macterm.h (enum text_cursor_kinds): Removed.
8895 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8896 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8897 (FRAME_DESIRED_CURSOR): Macro removed.
8898
8899 * w32fns.c (Vblink_cursor_alist): Removed.
8900 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8901 (syms_of_w32fns): Don't intern, staticpro, or define them.
8902 (x_specified_cursor_type): Removed.
8903 (x_set_cursor_type): Use set_frame_cursor_types.
8904
8905 * w32term.c (x_specified_cursor_type): Remove prototype.
8906 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8907 (x_display_and_set_cursor): Use get_window_cursor_type.
8908 Remove unused local variables cursor_off_state.
8909 Redraw cursor if hbar cursor width changes.
8910 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8911
8912 * w32term.h (enum text_cursor_kinds): Removed.
8913 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8914 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8915 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8916 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8917 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8918 w32_highlight_frame.
8919
8920 * xfns.c (Vblink_cursor_alist): Removed.
8921 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8922 (syms_of_xfns): Don't intern, staticpro, or define them.
8923 (x_specified_cursor_type): Removed.
8924 (x_set_cursor_type): Use set_frame_cursor_types.
8925
8926 * xterm.c (x_specified_cursor_type): Remove prototype.
8927 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8928 (x_display_and_set_cursor): Use get_window_cursor_type.
8929 Remove unused local variables cursor_off_state.
8930 Redraw cursor if hbar cursor width changes.
8931
8932 * xterm.h (enum text_cursor_kinds): Removed.
8933 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8934 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8935 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8936 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8937 (x_specified_cursor_type): Remove prototype.
8938
8939 2002-08-28 Richard M. Stallman <rms@gnu.org>
8940
8941 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8942 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8943 (Vblink_cursor_alist): New variable.
8944 (syms_of_w32fns): Initialize and defvar it.
8945 (x_specified_cursor_type): Recognize Qbox for filled box.
8946 Exceptions are hollow boxes.
8947 (Qbox, Qhollow): New variables.
8948 (syms_of_w32fns): Initialize and staticpro them.
8949
8950 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8951 New macros.
8952 (struct w32_output): New fields blink_off_cursor,
8953 blink_off_cursor_width.
8954 (FRAME_CURSOR_WIDTH): New macro.
8955
8956 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8957 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8958
8959 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8960 for bar cursor.
8961
8962 * w32term.c (expose_overlaps): New function.
8963 (expose_window): Use it to fix the display of overlapping rows.
8964
8965 2002-08-28 Simon Josefsson <jas@extundo.com>
8966
8967 * xfns.c (Fx_open_connection): Improve help when X connection
8968 fails, xhost is insecure and xauth is better.
8969
8970 2002-08-28 Juanma Barranquero <lektu@terra.es>
8971
8972 * makefile.w32-in: Add missing dependencies on w32term.h and
8973 composite.h.
8974
8975 * emacs.c (USAGE1): Add missing newline.
8976
8977 2002-08-27 Andrew Choi <akochoi@shaw.ca>
8978
8979 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8980
8981 2002-08-27 Richard M. Stallman <rms@gnu.org>
8982
8983 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8984 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8985 (Vblink_cursor_alist): New variable.
8986 (syms_of_xfns): Initialize and defvar it.
8987 (x_specified_cursor_type): Recognize Qbox for filled box.
8988 Exceptions are hollow boxes.
8989 (Qbox, Qhollow): New variables.
8990 (syms_of_xfns): Initialize and staticpro them.
8991
8992 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8993 New macros.
8994 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8995
8996 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8997 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8998
8999 * emacs.c (main): Handle --script.
9000 (USAGE1): Mention --script.
9001 (standard_args): Define sort order for --script.
9002
9003 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9004
9005 * xdisp.c (redisplay_updating_p): Variable removed.
9006 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9007 New variables.
9008 (init_iterator): Don't free realized faces if
9009 inhibit_free_realized_faces is set.
9010 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9011 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9012 initialize Qinhibit_free_realized_faces.
9013
9014 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9015 when iterator is adding glyphs to a glyph matrix.
9016
9017 2002-08-27 Kenichi Handa <handa@etl.go.jp>
9018
9019 * xdisp.c (get_next_display_element): In unibyte case, don't use
9020 octal form for such eight-bit characters that can be converted to
9021 multibyte char.
9022
9023 2002-08-26 Kim F. Storm <storm@cua.dk>
9024
9025 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9026 and background colors. From Joe Buehler (tiny change).
9027
9028 2002-08-26 Miles Bader <miles@gnu.org>
9029
9030 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9031
9032 2002-08-25 Andrew Choi <akochoi@shaw.ca>
9033
9034 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9035 defined instead of MAC_OSX.
9036
9037 * s/darwin.h (select): Define select to sys_select only if
9038 HAVE_CARBON is defined.
9039 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9040 (DONT_REOPEN_PTY): #def it.
9041
9042 * macterm.c (XTread_socket): Remove code to call
9043 SendEventToEventTarget for keys with command modifiers when
9044 mac_command_key_is_meta is nil.
9045
9046 2002-08-24 Andreas Schwab <schwab@suse.de>
9047
9048 * eval.c (Fdefvar): Fix last change.
9049
9050 2002-08-23 Richard M. Stallman <rms@gnu.org>
9051
9052 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9053 Record variables in load history as (defvar . VAR).
9054 (Fdefvar): Don't record in load history if no initial value.
9055 (Qdefvar): New variable.
9056 (syms_of_eval): Init and staticpro it.
9057
9058 * lread.c (syms_of_lread): Doc fix.
9059 (build_load_history): Use Fmember to see if a definition
9060 is already in the Vload_history element.
9061
9062 * process.c (Fstart_process): Remove /: from program name.
9063
9064 * emacs.c (decode_env_path): Don't add /: if file name handler
9065 has a `safe-magic' property.
9066
9067 * callproc.c (Fcall_process): Remove /: from program name.
9068
9069 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9070
9071 * regex.c (PATFETCH): Remove the translating fetch.
9072 (PATFETCH_RAW): Rename to PATFETCH.
9073 (set_image_of_range): New fun.
9074 (SET_RANGE_TABLE_WORK_AREA): Use it.
9075 (regex_compile): Don't translate the pattern chars so eagerly.
9076 Only do it when inserting an `exactn' bytecode or when handling
9077 a char-range.
9078 (mutually_exclusive_p): Avoid empty statement.
9079
9080 2002-08-22 Kim F. Storm <storm@cua.dk>
9081
9082 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9083 end up on a partially visible line; this reverts a specific part
9084 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9085 display error which has been reported several times now.
9086 However it introduces the problem that changes was supposed to fix.
9087 See my comments in the source if you want to debug this further.
9088
9089 2002-08-20 Kenichi Handa <handa@etl.go.jp>
9090
9091 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9092
9093 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9094
9095 * msdos.c (croak): Add `void' to definition.
9096
9097 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
9098 Don't define them, they are defined in msdos.c.
9099
9100 * mem-limits.h [MSDOS]: Declare etext.
9101
9102 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9103 `const' since CORRECT_DIR_SEPS modifies its target.
9104
9105 2002-08-19 Kim F. Storm <storm@cua.dk>
9106
9107 * keyboard.c (Fclear_this_command_keys): Add optional arg
9108 KEEP-RECORD to avoid clearing lossage when we just want to clear
9109 the current key sequence (kmacro needs this).
9110
9111 2002-08-19 Kenichi Handa <handa@localhost>
9112
9113 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9114
9115 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9116 cons, return Qnil.
9117
9118 2002-08-17 Richard M. Stallman <rms@gnu.org>
9119
9120 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9121
9122 * sysdep.c [!VMS]: Include sys/files.h.
9123
9124 * editfns.c (save_restriction_restore): Defend from unchained marker.
9125
9126 * buffer.c (overlays_at): Handle extending vec uniformly.
9127 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9128
9129 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9130
9131 * mac.c (init_mac_osx_environment): New function.
9132
9133 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9134
9135 2002-08-14 Kim F. Storm <storm@cua.dk>
9136
9137 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9138 executing macro before appending to it (when used from Lisp).
9139 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9140 which is called prior to each iteration of macro (for kmacro.el).
9141 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9142
9143 * lisp.h (Fexecute_kbd_macro): Update prototype.
9144
9145 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9146
9147 2002-08-14 Kenichi Handa <handa@etl.go.jp>
9148
9149 * xselect.c (QUTF8_STRING): New variable.
9150 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9151 (x_atom_to_symbol): Likewise.
9152 (x_get_local_selection): New argument local_request. If it is
9153 nonzero, call handler_fn with the second arg nil.
9154 (x_handle_selection_request): Call x_get_local_selection with
9155 local_request 0.
9156 (lisp_data_to_selection_data): Don't encode the string here.
9157 (Fx_get_selection_internal): Call x_get_local_selection with
9158 local_request 1.
9159 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9160
9161 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9162
9163 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9164
9165 2002-08-13 Richard M. Stallman <rms@gnu.org>
9166
9167 * minibuf.c (Fminibufferp): New function.
9168 (syms_of_minibuf): Defsubr it.
9169 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9170
9171 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9172
9173 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9174
9175 2002-08-12 Richard M. Stallman <rms@gnu.org>
9176
9177 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9178 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9179 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9180 already.
9181
9182 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9183
9184 2002-08-11 Andrew Choi <akochoi@shaw.ca>
9185
9186 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9187 (Vmac_pass_command_to_system): New variable.
9188 (Vmac_pass_control_to_system): New variable.
9189 (do_mouse_moved): Check wp with is_emacs_window.
9190 (XTread_socket): Check window_ptr with is_emacs_window.
9191 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9192 events back to Mac Toolbox for processing, depending on values of
9193 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9194 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9195 Vmac_pass_control_to_system.
9196
9197 2002-08-10 Kenichi Handa <handa@etl.go.jp>
9198
9199 * coding.c (unencodable_char_position): New function.
9200 (Funencodable_char_position): New function.
9201 (syms_of_coding): Defsubr Funencodable_char_position.
9202
9203 2002-08-10 Andrew Choi <akochoi@shaw.ca>
9204
9205 * mac.c (sys_select) [MAC_OSX]: New function.
9206
9207 * macterm.c (MakeMeTheFrontProcess): New function.
9208 (mac_initialize): Call MakeMeTheFrontProcess.
9209
9210 * s/darwin.h: Define select to sys_select.
9211
9212 2002-08-09 Richard M. Stallman <rms@gnu.org>
9213
9214 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9215
9216 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9217
9218 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9219 end of the buffer.
9220
9221 2002-08-08 Ken Raeburn <raeburn@mit.edu>
9222
9223 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9224
9225 * puresize.h (BASE_PURESIZE): Increase to 910000.
9226
9227 2002-08-08 Kenichi Handa <handa@etl.go.jp>
9228
9229 * coding.c (Ffind_operation_coding_system): For write-region, if
9230 VISIT is a filename, make it the target.
9231
9232 2002-08-07 Richard M. Stallman <rms@gnu.org>
9233
9234 * alloc.c (mark_object): Detect long lists for debugging.
9235 (mark_object_loop_halt): New variable.
9236
9237 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9238
9239 * data.c (Fmake_variable_frame_local): Doc fix.
9240
9241 2002-08-01 David Ponce <david@dponce.com>
9242
9243 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9244 (malloc_widget_value, free_widget_value)
9245 (w32_free_submenu_strings): Use them.
9246
9247 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9248 (push_menu_pane, push_menu_item, single_keymap_panes)
9249 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9250 (single_submenu, set_frame_menubar)
9251 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9252
9253 (Fx_popup_menu): Don't show pop up menu until preceding one is
9254 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9255
9256 * w32menu.c: Changes adapted from xmenu.c
9257 (set_frame_menubar): First parse all submenus,
9258 then make widget_value trees from them.
9259 Don't allocate any widget_value objects
9260 until we are done with the parsing.
9261 (parse_single_submenu): New function.
9262 (digest_single_submenu): New function.
9263 (single_submenu): Function deleted, replaced by those two.
9264
9265 2002-08-04 Andrew Choi <akochoi@shaw.ca>
9266
9267 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9268 returns a valid window pointer before proceeding for keyDown and
9269 autoKey events.
9270
9271 2002-08-03 Andrew Choi <akochoi@shaw.ca>
9272
9273 * macterm.c (USE_CARBON_EVENTS): New macro.
9274 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9275 (x_iconify_frame): Call CollapseWindow.
9276 (Vmac_reverse_ctrl_meta): New variable.
9277 (Vmac_wheel_button_is_mouse_2): New variable.
9278 (init_mac_drag_n_drop): New function.
9279 (mac_do_receive_drag): New function.
9280 (mac_handle_service_event): New function.
9281 (init_service_handler): New function.
9282 (mac_to_emacs_modifiers): New function.
9283 (mac_event_to_emacs_modifiers): New function.
9284 (mac_get_mouse_btn): New function.
9285 (mac_convert_event_ref): New function.
9286 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9287 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9288 mac_get_mouse_btn.
9289 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9290
9291 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9292 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9293 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9294 TOOL_BAR_EVENT for MAC_OS as well.
9295 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9296 as for WINDOWS_NT.
9297 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9298
9299 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9300
9301 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9302
9303 * xdisp.c (forward_to_next_line_start): Fix a condition that
9304 lead to a newline being skipped.
9305
9306 2002-08-02 Andrew Choi <akochoi@shaw.ca>
9307
9308 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9309
9310 2002-08-01 Richard M. Stallman <rms@gnu.org>
9311
9312 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9313
9314 2002-07-31 Andrew Choi <akochoi@shaw.ca>
9315
9316 * macfns.c: #undef init_process before #define-ing it.
9317
9318 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9319 HAVE_CARBON is defined.
9320
9321 2002-07-31 Richard M. Stallman <rms@gnu.org>
9322
9323 * xmenu.c (set_frame_menubar): First parse all submenus,
9324 then make widget_value trees from them.
9325 Don't allocate any widget_value objects
9326 until we are done with the parsing.
9327 (parse_single_submenu): New function.
9328 (digest_single_submenu): New function.
9329 (single_submenu): Function deleted, replaced by those two.
9330
9331 2002-07-30 Juanma Barranquero <lektu@terra.es>
9332
9333 * w32proc.c (syms_of_ntproc): Fix docstring of
9334 `w32-get-true-file-attributes'.
9335
9336 2002-07-28 Richard M. Stallman <rms@gnu.org>
9337
9338 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9339 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9340
9341 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9342
9343 * keyboard.c (make_lispy_event):
9344 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9345 Explicitly clear up_modifier in event->modifiers.
9346
9347 2002-07-27 Richard M. Stallman <rms@gnu.org>
9348
9349 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9350
9351 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9352 for bar cursor.
9353
9354 2002-07-26 Kenichi Handa <handa@etl.go.jp>
9355
9356 * coding.c (detect_coding_iso2022): While checking a byte sequence
9357 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9358 it in the normal loop.
9359
9360 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9361
9362 * xterm.c (expose_overlaps): New function.
9363 (expose_window): Use it to fix the display of overlapping rows.
9364
9365 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9366
9367 2002-07-23 Ken Raeburn <raeburn@gnu.org>
9368
9369 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9370 since it only depends on XUINT.
9371
9372 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9373 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9374 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9375 Macros deleted.
9376
9377 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9378 its value over other approaches.
9379 * sysdep.c (start_of_data): Don't define the function if a macro
9380 form has been defined.
9381
9382 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9383
9384 * xdisp.c (redisplay_updating_p): New variable.
9385 (init_iterator): Don't free realized faces when
9386 redisplay_updating_p is set.
9387 (redisplay_internal): Set redisplay_updating_p while updating
9388 the display.
9389
9390 2002-07-23 Richard M. Stallman <rms@gnu.org>
9391
9392 * editfns.c (Fmessage): Treat "" like nil.
9393
9394 2002-07-23 Kenichi Handa <handa@etl.go.jp>
9395
9396 * xdisp.c (face_before_or_after_it_pos):
9397 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9398
9399 2002-07-22 Juanma Barranquero <lektu@terra.es>
9400
9401 * callproc.c (init_callproc) [DOS_NT]:
9402 Initialize Vshared_game_score_directory to nil.
9403 (syms_of_callproc) [DOS_NT]: Likewise.
9404
9405 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9406
9407 * xdisp.c (display_line): Replace an abort with xassert.
9408
9409 2002-07-21 Richard M. Stallman <rms@gnu.org>
9410
9411 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9412 and END_UNCHANGED when setting buffer_unchanged_p.
9413 Use current_matrix_up_to_date_p to decide whether to use
9414 try_cursor_movement.
9415
9416 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9417
9418 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9419
9420 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9421 Set to nil if dir does not exist.
9422 (syms_of_callproc): Init unconditionally and simply.
9423
9424 * buffer.c (Fbuffer_list): Doc fix.
9425
9426 2002-07-21 Ken Raeburn <raeburn@gnu.org>
9427
9428 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9429
9430 * buffer.c (mmap_realloc): When shrinking, make sure number of
9431 pages to unmap is rounded towards zero.
9432
9433 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9434 (XSETINT): Deleted.
9435
9436 * m/att3b.h (XINT): Don't define.
9437 (VALBITS, VALMASK, XTYPE): Deleted.
9438 (DATA_SEG_BITS): Define.
9439 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9440 ARRAY_MARK_FLAG): Deleted.
9441 (DATA_SEG_BITS): Define.
9442 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9443 (DATA_SEG_BITS): Define.
9444
9445 2002-07-20 Richard M. Stallman <rms@gnu.org>
9446
9447 * print.c (print_error_message): New args CONTEXT and CALLER.
9448 Calls changed.
9449
9450 * lisp.h (print_error_message): Declare new args.
9451
9452 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9453 and CONTEXT to print_error_message, don't print them here.
9454 For a Quit, don't use Vsignaling_function.
9455 Call message_log_maybe_newline.
9456
9457 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9458
9459 2002-07-20 Kim F. Storm <storm@cua.dk>
9460
9461 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9462
9463 2002-07-19 Ken Raeburn <raeburn@gnu.org>
9464
9465 * bytecode.c (struct byte_stack): Pointers into byte string now
9466 point to const.
9467 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9468 const.
9469 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9470 * coding.c (encode_eol, detect_coding, detect_eol):
9471 (decode_coding, encode_coding, detect_coding_system):
9472 Source strings now treated as const.
9473 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9474 modify Lisp string contents.
9475 * coding.h (decode_coding, encode_coding, detect_coding,
9476 detect_eol): Declarations updated.
9477 * composite.c (compose_chars_in_text): Treat Lisp string contents
9478 as const.
9479 * dispnew.c (safe_bcopy): Source pointer now points to const.
9480 * lisp.h (STRING_COPYIN): New macro.
9481 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9482 (internal_with_output_to_temp_buffer): Declarations updated.
9483 * print.c (temp_output_buffer_setup):
9484 (internal_with_output_to_temp_buffer): Buffer name argument is now
9485 pointer to const.
9486 * sound.c (struct sound_device): Function pointer field "write"
9487 buffer argument now points to const.
9488 (vox_write): Buffer argument points to const.
9489 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9490 contents as const.
9491 * sysdep.c (emacs_write): Buffer pointer now const.
9492 * term.c (encode_terminal_code): Buffer pointer now const.
9493 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9494 (x_face_list_fonts, x_update_menu_appearance):
9495 (hash_string_case_insensitive): Treat Lisp string contents as const.
9496
9497 2002-07-19 Juanma Barranquero <lektu@terra.es>
9498
9499 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9500
9501 * fileio.c (syms_of_fileio): Likewise.
9502 (Ffile_name_as_directory): Fix argument name in docstring.
9503 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9504
9505 2002-07-18 Richard M. Stallman <rms@gnu.org>
9506
9507 * data.c (Fdefalias): Doc fix.
9508
9509 2002-07-17 Dave Love <fx@gnu.org>
9510
9511 * intervals.h (text_property_stickiness): Use P_.
9512
9513 * ccl.c: Remove `emacs' conditionals.
9514 (ccl_backtrace_table): Fix size spec.
9515 (ccl_driver): Fix type errors.
9516
9517 2002-07-16 Ken Raeburn <raeburn@gnu.org>
9518
9519 * alloc.c (xstrdup, make_string, make_unibyte_string)
9520 (make_multibyte_string, build_string): String pointer args now
9521 point to const.
9522 * charset.c (find_charset_in_text, c_string_width):
9523 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9524 * fileio.c (report_file_error):
9525 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9526 (count_combining_before, count_combining_after, insert_1_both):
9527 (insert, insert_and_inherit, insert_string):
9528 (insert_before_markers, insert_before_markers_and_inherit):
9529 * lread.c (intern, oblookup, hash_string):
9530 * minibuf.c (temp_echo_area_glyphs):
9531 * search.c (fast_c_string_match_ignore_case):
9532 * sysdep.c (emacs_open, set_file_times):
9533 * xfaces.c (xstricmp):
9534 * xdisp.c (store_frame_title, string_char_and_length):
9535 (message_dolog, message2, message2_nolog, set_message): Likewise.
9536 (set_message_1): Cast message string argument to const pointer.
9537 * editfns.c (general_insert_function): Insertion function now
9538 takes pointer to const for input data.
9539 * charset.h (find_charset_in_text, c_string_width):
9540 (parse_str_as_multibyte): Declarations updated.
9541 * dispextern.h (xstricmp): Declaration updated.
9542 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9543 (count_size_as_multibyte, count_combining_before):
9544 (count_combining_after, insert_1, insert_1_both, message_dolog):
9545 (insert, insert_and_inherit, insert_before_markers)
9546 (insert_before_markers_and_inherit, set_message, message2):
9547 (message2_dolog, build_string, make_string, make_unibyte_string):
9548 (make_multibyte_string, intern, oblookup, report_file_error):
9549 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9550 (emacs_open, xstrdup): Declarations updated.
9551 * systime.h (set_file_times): Declaration updated.
9552
9553 * charset.c (find_charset_in_text, lisp_string_width): Use const
9554 for pointer to lisp string data.
9555 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9556 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9557 * coding.c (Ffind_coding_systems_region_interval):
9558 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9559 (Fmake_directory_internal, Fdelete_directory):
9560 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9561 * fontset.c (font_family_registry, fs_query_fontset):
9562 (list_fontsets):
9563 * frame.c (Fframe_parameter):
9564 * keyboard.c (cmd_error_internal):
9565 * keymap.c (Fdescribe_buffer_bindings):
9566 * lread.c (complete_filename_p, openp):
9567 * minibuf.c (Fminibuffer_complete_word):
9568 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9569 (face_before_or_after_it_pos, next_element_from_string):
9570 (get_overlay_arrow_glyph_row, display_mode_element):
9571 (decode_mode_spec_coding):
9572 * xterm.c (same_x_server): Likewise.
9573
9574 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9575 settings of non-existent fields.
9576
9577 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9578 copy a lisp value.
9579
9580 * lread.c (Fintern_soft): Use string macros instead of
9581 Lisp_String fields.
9582 * keyboard.c (echo_char, parse_modifiers_uncached):
9583 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9584 * textprop.c (validate_interval_range, interval_of): Likewise.
9585
9586 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9587
9588 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9589 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9590 XSTRING()->size_byte.
9591
9592 * lisp.h (SDATA, SREF): Produce rvalue.
9593 (SSET): New macro.
9594 * alloc.c (make_event_array): Use SSET for storing into a string.
9595 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9596 a string.
9597 * casefiddle.c (casify_object): Use SSET.
9598 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9599 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9600 address of string contents.
9601 * data.c (Faref): Use SDATA.
9602 (Faset): Use SDATA, SSET.
9603 * dired.c (directory_files_internal): Use SSET.
9604 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9605 (Fread_file_name): Use SREF, SSET.
9606 * fns.c (concat): Use SSET.
9607 (concat, Fdelete): Use SDATA.
9608 * insdel.c (insert_from_string_1): Use SDATA.
9609 * keyboard.c (Fevent_convert_list): Use SREF.
9610 * lread.c (Fload): Use SDATA, SSET.
9611 * macfns.c (validate_x_resource_name): Use SSET.
9612 * process.c (status_message): Use SSET.
9613 * search.c (wordify): Use SDATA.
9614 (Freplace_match): Use SREF.
9615 * w32fns.c (validate_x_resource_name): Use SSET.
9616 * xfns.c (validate_x_resource_name): Use SSET.
9617 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9618
9619 2002-07-16 Richard M. Stallman <rms@gnu.org>
9620
9621 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9622
9623 * xdisp.c (reconsider_clip_changes):
9624 Don't test prevent_redisplay_optimizations_p.
9625 (redisplay_internal): Test prevent_redisplay_optimizations_p
9626 along with clip_changed in some cases.
9627 (try_window_id): Likewise.
9628 (redisplay_window): New local var buffer_unchanged_p.
9629
9630 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9631
9632 * process.c (create_process): Test USG_SUBTTY_WORKS.
9633 (process_send_signal): Clean up handling of GID.
9634 Detect errors in ioctls meant to set GID.
9635
9636 * window.c (temp_output_buffer_show):
9637 Don't set prevent_redisplay_optimizations_p.
9638
9639 2002-07-15 Juanma Barranquero <lektu@terra.es>
9640
9641 * eval.c (Fdefvaralias): Add docstring argument.
9642
9643 2002-07-15 Ken Raeburn <raeburn@gnu.org>
9644
9645 * lisp.h (STRING_INTERVALS): Produce rvalue.
9646 (STRING_SET_INTERVALS): New macro.
9647 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9648 * fns.c (Fstring_as_multibyte): Likewise.
9649 * intervals.c (balance_possible_root_interval, delete_interval)
9650 (create_root_interval, copy_intervals_to_string): Likewise.
9651 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9652 instead of 0.
9653
9654 2002-07-14 Ken Raeburn <raeburn@gnu.org>
9655
9656 * lisp.h (STRING_SET_CHARS): New macro.
9657 (SCHARS, SBYTES): Produce rvalues.
9658 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9659 * fns.c (concat): Likewise.
9660 * lread.c (read_vector): Likewise.
9661
9662 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9663 (STRING_SET_UNIBYTE): New macro.
9664 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9665 length of -1) changed to use STRING_SET_UNIBYTE.
9666 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9667 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9668 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9669 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9670 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9671 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9672 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9673 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9674 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9675 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9676 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9677 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9678 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9679 unchanged for now.
9680
9681 2002-07-13 Kim F. Storm <storm@cua.dk>
9682
9683 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9684
9685 2002-07-12 Richard M. Stallman <rms@gnu.org>
9686
9687 * fileio.c (Fwrite_region): Doc fix.
9688
9689 * print.c (print_error_message): Don't handle Vsignaling_function here.
9690
9691 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9692 (command_loop_1): Avoid certain actions after memory-full error.
9693
9694 * eval.c (Fsignal): Don't call cancel_hourglass.
9695 For a memory-full error, don't call Vsignal_hook_function
9696 and don't set Vsignaling_function.
9697
9698 * process.c (process_send_signal): Add abort call.
9699
9700 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
9701
9702 * keymap.c (Fkey_binding): Fix typo.
9703
9704 2002-07-11 Richard M. Stallman <rms@gnu.org>
9705
9706 * alloc.c (Vmemory_full): New variable.
9707 (Vmemory_signal_data): Renamed from memory_signal_data.
9708 Uses changed.
9709 (syms_of_alloc): Defvar them.
9710 (memory_full, buffer_memory_full): Set Vmemory_full.
9711
9712 * lisp.h (Vmemory_full): Add declaration.
9713 (current_column, indented_beyond_p): Change declaration.
9714
9715 * indent.c (last_known_column): Declare as double, not float.
9716 (current_column, current_column_1, string_display_width)
9717 (position_indentation): Return `double'.
9718 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9719
9720 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9721 (back_to_previous_visible_line_start)
9722 (reseat_at_next_visible_line_start, next_element_from_buffer):
9723 Use `double', not `float', when calling indented_beyond_p.
9724
9725 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9726
9727 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9728
9729 2002-07-11 Juanma Barranquero <lektu@terra.es>
9730
9731 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
9732 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9733 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9734 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9735 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9736 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
9737
9738 2002-07-10 Juanma Barranquero <lektu@terra.es>
9739
9740 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9741 All callers changed.
9742
9743 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9744
9745 * data.c (Fdefalias): Add an optional `docstring' argument.
9746 (set_internal, Fsetq_default): Use XCAR/XCDR.
9747
9748 * composite.c (HASH_VALUE, HASH_KEY):
9749 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9750
9751 2002-07-09 Kenichi Handa <handa@etl.go.jp>
9752
9753 * callproc.c (Fcall_process): Fix previous change.
9754
9755 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9756
9757 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9758 Add support for hash-tables.
9759 (Ftry_completion): Return t even if the string appears multiple times.
9760
9761 * fns.c (Fnconc): Use XCDR.
9762 (Fprovide): Use CONSP and XCDR.
9763 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9764 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9765 (Fmake_hash_table): Accept `:size nil'.
9766 (Fmakehash): Delete: moved to subr.el.
9767 (syms_of_fns): Don't defsubr makehash.
9768
9769 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9770 (HASH_TABLE_SIZE): Move from fns.c.
9771
9772 2002-07-07 Richard M. Stallman <rms@gnu.org>
9773
9774 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9775 Instead just return 0 when there is something to be done.
9776 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9777 retry scrolling as if cursor were off the bottom.
9778 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9779 return CURSOR_MOVEMENT_MUST_SCROLL.
9780 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9781 go to try_to_scroll.
9782
9783 * buffer.c (Fbuffer_local_value): Store current value into its binding
9784 so we get the up-to-date value for the binding that is loaded.
9785
9786 * eval.c (Fdefmacro): Doc fix.
9787
9788 2002-07-05 Dave Love <fx@gnu.org>
9789
9790 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9791 correctly.
9792
9793 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9794 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9795 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9796 CCL_LookupCharConstTbl.
9797 (syms_of_ccl): Defvar translation-hash-table-vector.
9798
9799 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9800
9801 * xdisp.c: Remove unused variable `face'.
9802
9803 2002-07-04 Juanma Barranquero <lektu@terra.es>
9804
9805 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9806 obsolescence information.
9807
9808 2002-07-03 Andrew Choi <akochoi@shaw.ca>
9809
9810 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9811 pattern. Search cache first.
9812 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9813 for Japanese font.
9814 (XLoadQueryFont): Use it.
9815
9816 2002-07-02 Richard M. Stallman <rms@gnu.org>
9817
9818 * keymap.c (Fdefine_key): Doc fix.
9819
9820 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9821
9822 2002-07-02 Juanma Barranquero <lektu@terra.es>
9823
9824 * keymap.c (syms_of_keymap): Fix typo.
9825
9826 2002-07-01 Andrew Choi <akochoi@shaw.ca>
9827
9828 * s/darwin.h: Define POSIX_SIGNALS.
9829
9830 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9831 and FSRefMakePath to convert FSSpec returned with Apple Event to
9832 Posix pathname.
9833 (mac_initialize) [TARGET_API_MAC_CARBON]:
9834 Call init_required_apple_events and disable the `Quit' menu item
9835 provided automatically by the Carbon Toolbox.
9836
9837 2002-07-01 Dave Love <fx@gnu.org>
9838
9839 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9840 for K&R.
9841
9842 * xterm.c: Fix prototype for K&R.
9843
9844 * term.c (costs_set): Declare static, non-initialized for pcc.
9845
9846 2002-07-01 Richard M. Stallman <rms@gnu.org>
9847
9848 * keyboard.c (timer_last_idleness_start_time): New variable.
9849 (timer_start_idle): Set that.
9850 (read_key_sequence): Use that to reset timer_idleness_start_time
9851 to previous value.
9852
9853 * window.c (Frecenter): With arg, set optional_new_start.
9854
9855 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9856
9857 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9858 buffer for completion.
9859
9860 2002-06-29 Ken Raeburn <raeburn@gnu.org>
9861
9862 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9863
9864 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9865
9866 * keyboard.c (readable_filtered_events): New function that filters
9867 FOCUS_IN_EVENT depending on parameter.
9868 (readable_events): Calls readable_filtered_events, not filtering
9869 FOCUS_IN_EVENT.
9870 (get_filtered_input_pending): New function, filtering parameter passed
9871 to readable_filtered_events.
9872 (get_input_pending): Calls get_filtered_input_pending, not filtering
9873 FOCUS_IN_EVENT.
9874 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9875 FOCUS_IN_EVENT.
9876
9877 * xterm.h (struct x_output): Add focus_state.
9878
9879 * xterm.c (x_focus_changed): New function.
9880 (x_detect_focus_change): New function.
9881 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9882 EnterNotify and LeaveNotify to track X focus changes.
9883
9884 2002-06-28 Andreas Schwab <schwab@suse.de>
9885
9886 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9887
9888 2002-06-27 Kim F. Storm <storm@cua.dk>
9889
9890 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9891 (mode_line_string_face_prop): New variables.
9892 (store_mode_line_string): New function.
9893 (display_mode_element): Use store_mode_line_string to
9894 add mode-line string elements to mode_line_string_list
9895 when mode_line_string_list is non-nil.
9896 (Fformat_mode_line): Now returns propertized string by
9897 default. New arg NO-PROPS to ignore properties.
9898 (decode_mode_spec): Only add two dashes for %- in propertized
9899 mode-line string.
9900 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9901
9902 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9903
9904 * minibuf.c (minibuffer_completion_contents): Add return type.
9905
9906 2002-06-27 Juanma Barranquero <lektu@terra.es>
9907
9908 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9909
9910 2002-06-26 Juanma Barranquero <lektu@terra.es>
9911
9912 * fileio.c (read_file_name_cleanup): Add missing return.
9913
9914 2002-06-26 Richard M. Stallman <rms@gnu.org>
9915
9916 * window.c (Frecenter): Don't set force_start flag.
9917
9918 * minibuf.c (do_completion, Fminibuffer_complete_word)
9919 (Fminibuffer_completion_help): Complete just the text before point.
9920 (minibuffer_completion_contents): New function.
9921
9922 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9923
9924 * frame.c (frames_bury_buffer): Function deleted.
9925
9926 2002-06-25 Miles Bader <miles@gnu.org>
9927
9928 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9929 the end of callint_message, allow for a terminating '\0'.
9930
9931 2002-06-24 Juanma Barranquero <lektu@terra.es>
9932
9933 * w32select.c: Include composite.h
9934
9935 * w16select.c: Likewise.
9936
9937 2002-06-24 Kenichi Handa <handa@etl.go.jp>
9938
9939 * callproc.c (Fcall_process): If code detection is necessary,
9940 call detect_coding directly here.
9941
9942 * coding.c (detect_eol): Preserve coding->cmp_data.
9943
9944 * w16select.c (Fw16_get_clipboard_data):
9945 * w32fns.c (w32_to_x_font):
9946 * w32select.c (Fw32_get_clipboard_data):
9947 * xselect.c (selection_data_to_lisp_data):
9948 * xterm.c (XTread_socket): Disable composition handling.
9949
9950 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9951
9952 * print.c (temp_output_buffer_setup): Kill all local variables.
9953
9954 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9955
9956 * lread.c (Fread): Remove redundant and imprecise declaration.
9957
9958 * xfns.c (check_x_display_info): Use check_x_frame.
9959
9960 * .gdbinit (xprintsym): Use the new `xname' field.
9961 (xsymbol): Use it.
9962
9963 2002-06-22 Jason Rumney <jasonr@gnu.org>
9964
9965 * w32fns.c (file_dialog_callback): New function.
9966 (Fx_file_dialog): Allow selecting directories as well as files.
9967
9968 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9969
9970 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
9971 OpenBSD. Add support for mipseb-*-netbsd* machines.
9972
9973 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9974
9975 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9976 black and white before scrolling. Restore frame background and
9977 foreground color after scrolling.
9978 (do_window_update): Call XClearWindow before calling expose_frame.
9979 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9980 FRAME_FOREGROUND_PIXEL of frame.
9981
9982 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9983 test Mac command key as <ALT> key.
9984
9985 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9986
9987 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9988
9989 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9990 Lookup keys in function-key-map immediately so that key-translation-map
9991 can be applied earlier.
9992 Remove function_key_possible and key_translation_possible, replaced
9993 by checking `keytran_start < t'.
9994
9995 * .gdbinit (xsymbol): Use the new `xname' field.
9996
9997 2002-06-17 Andrew Choi <akochoi@shaw.ca>
9998
9999 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10000 test Mac command key as <ALT> key.
10001
10002 * mac.c (do_applescript): Call initialize_applescript if necessary
10003 when first called. Dispose of result_desc only when there is no error.
10004 (Fdo_applescript): Use %d format specifier instead of %ld.
10005
10006 2002-06-16 Andrew Choi <akochoi@shaw.ca>
10007
10008 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10009 of FrontWindow for cases keyDown and autoKey.
10010
10011 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10012 Vdefault_fontset to Monaco with mac-roman coding.
10013
10014 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10015 init_process before and after inclusion of Carbon/Carbon.h, resp.
10016
10017 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10018 cursor_gc.
10019 (add_font_name_table_entry): New function.
10020 (init_font_name_table): Use add_font_name_table_entry; add italic,
10021 bold, and bold-italic entries for truetype fonts.
10022
10023 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10024 for Mac too.
10025 (try_font_list) [MAC_OS]: If no font matches given registry, try
10026 fonts with any registry matching face_family.
10027 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10028
10029 * s/darwin.h: If autoconf detects the Ncurses library, define
10030 LIBS_TERMCAP to -lncurses to use it.
10031
10032 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10033
10034 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10035
10036 2002-06-15 Richard M. Stallman <rms@gnu.org>
10037
10038 * window.c (Fset_window_configuration): Explicitly preserve
10039 the point value that new_current_buffer had at the start.
10040
10041 2002-06-14 Juanma Barranquero <lektu@terra.es>
10042
10043 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10044 Fix typos.
10045
10046 2002-06-14 Kim F. Storm <storm@cua.dk>
10047
10048 * insdel.c (insert_1_both, insert_from_string_1)
10049 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10050 insert happened in the end_unchanged region. Otherwise, the
10051 redisplay may be confused and duplicate the last line in the
10052 buffer [seen after save-buffer when require-final-newline==t].
10053
10054 2002-06-13 Jason Rumney <jasonr@gnu.org>
10055
10056 * w32.c (init_environment): Remove EMACSLOCKDIR.
10057 (stat): Swap _S_IFDIR and _S_IFREG.
10058
10059 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10060
10061 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10062 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10063 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10064 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10065 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10066 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10067 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10068 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10069 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10070 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10071 SELECTION_REQUEST_EVENT, selection_clear_event to
10072 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10073 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10074 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10075 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10076 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10077 no_event to NO_EVENT.
10078
10079 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10080
10081 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10082
10083 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10084
10085 * intervals.c (textget): Don't forget to `return'.
10086 (lookup_char_property): Use XCAR/XCDR.
10087
10088 2002-06-12 Juanma Barranquero <lektu@terra.es>
10089
10090 * xdisp.c (Fformat_mode_line): Fix typo.
10091
10092 2002-06-12 Kim F. Storm <storm@cua.dk>
10093
10094 * xdisp.c (Fformat_mode_line): New function.
10095 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10096 (store_frame_title_char, store_frame_title): Use unconditionally.
10097 (init_xdisp): Defsubr Fformat_mode_line.
10098 Initialize frame_title_buf etc. unconditionally.
10099
10100 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10101
10102 * keyboard.c (read_key_sequence):
10103 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10104 things through those maps after downcasing events.
10105 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10106 applies after function-key-map.
10107 Make sure that keytran can be done in the middle in the sequence.
10108 Be careful not to throw away events past the one we downcase.
10109
10110 * lread.c (read_integer): Remove unused var `tem'.
10111 (read1): Fix int/Lisp_Object mixup.
10112
10113 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10114
10115 2002-06-11 Richard M. Stallman <rms@gnu.org>
10116
10117 * keyboard.c (readable_events): Ignore any number of
10118 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10119
10120 2002-06-09 Miles Bader <miles@gnu.org>
10121
10122 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10123 (parse_rgb_list, tty_lookup_color): New functions.
10124 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10125 (color_distance, Fcolor_distance): New functions.
10126 (TTY_SAME_COLOR_THRESHOLD): New macro.
10127 (Qtty_color_standard_values): New variable.
10128 (syms_of_xfaces): Initialize new vars & functions.
10129
10130 2002-06-08 Colin Walters <walters@verbum.org>
10131
10132 * textprop.c (Vchar_property_alias_alist): New variable.
10133 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10134
10135 * intervals.c (lookup_char_property): New function for looking up
10136 overlay and text properties, created from textget.
10137 (textget): Use it.
10138
10139 * intervals.h (lookup_char_property): Declare.
10140 (Vchar_property_alias_alist): Declare.
10141
10142 * buffer.c (Foverlay_get): Use lookup_char_property.
10143
10144 2002-06-07 Sam Steingold <sds@gnu.org>
10145
10146 * xselect.c (lisp_data_to_selection_data): Fix last change:
10147 *data_ret is not a Lisp string, while unibyte_string is.
10148
10149 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10150
10151 * xselect.c (lisp_data_to_selection_data): Fix last change:
10152 set size_ret.
10153
10154 2002-06-07 Andreas Schwab <schwab@suse.de>
10155
10156 * m/amdx86-64.h: New file.
10157
10158 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10159
10160 * fns.c (Fstring_make_unibyte): Doc fix.
10161
10162 * xselect.c (lisp_data_to_selection_data): If the requested type
10163 is STRING, call string_make_unibyte to encode the selected text
10164 as a string.
10165
10166 * window.c (Fset_window_hscroll): Doc fix.
10167
10168 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10169
10170 * fileio.c (choose_write_coding_system):
10171 Call select-safe-coding-system properly.
10172
10173 2002-06-03 Richard M. Stallman <rms@gnu.org>
10174
10175 * xdisp.c (message_with_string): Error if STRING is not a string.
10176
10177 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10178
10179 * fileio.c (choose_write_coding_system): Pass FILE arg to
10180 Vselect_safe_coding_system_function.
10181
10182 2002-06-03 Ken Raeburn <raeburn@gnu.org>
10183
10184 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10185
10186 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10187
10188 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10189 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10190 * keymap.c (describe_command): Likewise.
10191 * minibuf.c (read_minibuf): Likewise.
10192
10193 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10194 Cast `current_column' return value to int.
10195 (back_to_previous_visible_line_start)
10196 (reseat_at_next_visible_line_start, next_element_from_buffer):
10197 Cast `indented_beyond_p' 3rd arg to float.
10198
10199 * indent.c (last_known_column): Now a float.
10200 (current_column_1, position_indentation, current_column)
10201 (string_display_width): Return float.
10202 (Fcurrent_column): Cast `current_column' return value to int.
10203 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10204 (indented_beyond_p): Third arg now a float.
10205 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10206
10207 * lisp.h (current_column): Now returns float.
10208 (indented_beyond_p): 3rd arg now a float.
10209
10210 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10211
10212 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10213 is Qcompound_text_with_extensions.
10214
10215 * xselect.c (lisp_data_to_selection_data): Always set selection
10216 type as string if x_encode_text returns streingp non-NULL.
10217
10218 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10219
10220 2002-05-30 Richard M. Stallman <rms@gnu.org>
10221
10222 * window.c (Fset_window_configuration): Correct the handling
10223 of point in current buffer, to work with multiple windows.
10224
10225 2002-05-29 Colin Walters <walters@verbum.org>
10226
10227 * lread.c (Fread_from_string): Don't depend on order of evaluation
10228 for C function parameters.
10229
10230 2002-05-28 Richard M. Stallman <rms@gnu.org>
10231
10232 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10233 way for blinked-off state and for a nonselected window.
10234
10235 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10236 instead, see if the new start pos is at beginning of line.
10237
10238 * fileio.c (Fwrite_region): If START is a string, don't
10239 make any annotations.
10240
10241 * eval.c (syms_of_eval): Doc fix.
10242
10243 2002-05-28 Colin Walters <walters@debian.org>
10244
10245 * emacs.c (USAGE1): Add --no-splash.
10246 (standard_args): Ditto.
10247
10248 2002-05-28 Colin Walters <walters@gnu.org>
10249
10250 * lread.c (readchar_count): New variable.
10251 (readchar): Increment it.
10252 (unreadchar): Decrement it.
10253 (read_multibyte): Decrement it.
10254 (Vread_with_symbol_positions): New variable.
10255 (Vread_symbol_positions_list): New variable.
10256 (read_internal_start): New function, created from Fread and
10257 Fread_from_string. Handle Vread_symbol_positions_list and
10258 Vread_with_symbol_positions.
10259 (readevalloop, Fread, Fread_from_string): Use it.
10260 (read1): Use readchar_count to add symbol positions to
10261 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10262 (syms_of_lread): DEFVAR_LISP and initialize them.
10263
10264 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10265 (substitute_object_recurse, substitute_object_in_subtree)
10266 (substitute_in_interval): Prototype.
10267 (read_multibyte): Return c if it's less than zero.
10268
10269 2002-05-28 Kim F. Storm <storm@cua.dk>
10270
10271 * fileio.c (Fread_file_name_internal): Added brute-force
10272 speed up for using predicate file-directory-p.
10273
10274 2002-05-28 Kim F. Storm <storm@cua.dk>
10275
10276 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10277 New variables.
10278 (syms_of_fileio): DEFVAR_LISP them.
10279 (read_file_name_cleanup): New unwind function.
10280 (Fread_file_name_internal): Only return completions satifying
10281 Vread_file_name_predicate. Temporarily unwind protect and rebind
10282 default-directory while checking completions against the predicate.
10283 (Fread_file_name): Added PREDICATE argument. Specbind it to
10284 Vread_file_name_predicate during completion.
10285 Call Vread_file_name_function to read the file name if non-nil.
10286
10287 * lisp.h (Fread_file_name): Now has 6 args.
10288
10289 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10290 predicate for Fread_file_name when reading directory name.
10291 Supply Qnil for predicate in other calls to Fread_file_name.
10292
10293 2002-05-26 Miles Bader <miles@gnu.org>
10294
10295 * term.c (tty_capable_p): New function.
10296 * dispextern.h (tty_capable_p): New function declaration.
10297 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10298 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10299
10300 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10301
10302 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10303 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10304 (Vwrite_region_annotate_functions): Docstring fix.
10305
10306 2002-05-23 Kim F. Storm <storm@cua.dk>
10307
10308 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10309 phys_cursor's hpos is overwritten. This is still not completely
10310 correct, as it doesn't really make sense to use hpos at all to
10311 get the cursor glyph (as that is relative to the width of the
10312 characters on the line, which may have changed during the update).
10313
10314 2002-05-22 Jason Rumney <jasonr@gnu.org>
10315
10316 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10317 Lisp_Object.
10318 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10319 Use modified enumfont_t struct.
10320
10321 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10322
10323 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10324 Handle the `hbar' cursor type.
10325 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10326
10327 * w32fns.c (Qhbar): New variable.
10328 (x_specified_cursor_type): Use it.
10329
10330 2002-05-21 Ken Raeburn <raeburn@gnu.org>
10331
10332 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10333 now, when the address is needed.
10334
10335 2002-05-21 Colin Walters <walters@gnu.org>
10336
10337 * Makefile.in (shortlisp): Add font-core.el.
10338
10339 2002-05-20 Richard M. Stallman <rms@gnu.org>
10340
10341 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10342
10343 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10344 equivalent key bindings here.
10345
10346 2002-05-20 Ken Raeburn <raeburn@gnu.org>
10347
10348 Change symbol structure to contain a lisp object for the symbol
10349 name:
10350 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10351 object field named "xname".
10352 (SYMBOL_NAME): New macro.
10353 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10354 name field.
10355 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10356 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10357 instead of name field.
10358 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10359 SYMBOL_NAME instead of XSYMBOL and name field.
10360 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10361 instead of XSYMBOL and name field.
10362 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10363 and SYMBOL_NAME instead of XSYMBOL and name field.
10364 * coding.c (Fread_coding_system, code_convert_region1)
10365 (code_convert_string1, code_convert_string_norecord)
10366 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10367 XSYMBOL and name field.
10368 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10369 (Fmake_variable_buffer_local, Fmake_local_variable)
10370 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10371 of XSYMBOL and name field.
10372 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10373 XSYMBOL and name field.
10374 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10375 instead of XSYMBOL and name field.
10376 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10377 XSYMBOL and name field.
10378 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10379 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10380 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10381 instead of XSYMBOL and name field.
10382 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10383 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10384 (parse_solitary_modifier, Fexecute_extended_command):
10385 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10386 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10387 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10388 of XSYMBOL and name field.
10389 (describe_command, describe_translation): Use SYMBOL_NAME and
10390 assignment instead of XSYMBOL and name field and XSETSTRING.
10391 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10392 instead of XSYMBOL and name field.
10393 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10394 name field and XSETSTRING.
10395 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10396 of XSYMBOL and name field.
10397 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10398 assignment instead of XSYMBOL and name field and XSETSTRING.
10399 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10400 XSTRING instead of XSYMBOL and name field.
10401 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10402 and XSTRING instead of XSYMBOL and name field.
10403 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10404 and XSTRING instead of XSYMBOL and name field.
10405 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10406 XSTRING instead of XSYMBOL and name field.
10407 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10408 of XSYMBOL and name field.
10409 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10410 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10411
10412 2002-05-19 Ken Raeburn <raeburn@gnu.org>
10413
10414 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10415 and XCDR real rvalues in most configurations.
10416
10417 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10418 Don't take the address of the cdr part of a cons cell; instead, track
10419 the parent cell and call XSETCDR, or set the variable for the head
10420 of the list if we haven't started down the list yet.
10421
10422 2002-05-19 Richard M. Stallman <rms@gnu.org>
10423
10424 * doc.c (reread_doc_file): Don't ask for confirmation.
10425
10426 2002-05-18 Jason Rumney <jasonr@gnu.org>
10427
10428 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10429 (xbm_load_image): Use it.
10430 (xbm_load): Ditto.
10431 (xbm_read_bitmap_data): Reverted to xfns.c version.
10432 From David Ponce <david@dponce.com>.
10433
10434 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10435
10436 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10437 2.02 and later.
10438
10439 2002-05-16 Juanma Barranquero <lektu@terra.es>
10440
10441 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10442
10443 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10444
10445 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10446 meaningful test.
10447 (read_char_minibuf_menu_prompt): Fix typo.
10448
10449 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10450
10451 * eval.c (Fcommandp): Doc fix.
10452
10453 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10454
10455 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10456 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10457 (Fset_keymap_parent): Gcpro a bit more.
10458 (access_keymap): Gcpro around meta_map call and around the main loop.
10459 (get_keyelt): Gcpro when following indirect references.
10460 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10461 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10462 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10463 Remove useless ad-hoc remap code.
10464
10465 2002-05-13 Richard M. Stallman <rms@gnu.org>
10466
10467 * search.c (search_buffer): Give up boyer moore search if inverse
10468 translation change charset_base.
10469
10470 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10471
10472 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10473 characters is carried over from the previous block of text, adjust
10474 coding->produced to account for the extra character.
10475
10476 2002-05-11 Andreas Schwab <schwab@suse.de>
10477
10478 * coding.c (intersection): Keep the elements of the returned list
10479 in the same order as in the first list.
10480
10481 2002-05-11 Kim F. Storm <storm@cua.dk>
10482
10483 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10484 only update cmm_size if realloc actually succeeds.
10485 Testing with initial size of 2 elements revealed that using
10486 realloc on GNU/Linux would cause a random trap in xmalloc
10487 later on, so I rewrote the code to use malloc/bcopy/free instead
10488 of realloc.
10489
10490 2002-05-10 Jason Rumney <jasonr@gnu.org>
10491
10492 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10493
10494 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10495
10496 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10497 parens, to ensure correct evaluation order.
10498
10499 2002-05-10 Kim F. Storm <storm@cua.dk>
10500
10501 * keymap.c (Vemulation_mode_map_alists): New variable.
10502 (syms_of_keymap): DEFVAR_LISP it.
10503 (current_minor_maps): Process keymap alists in that list before
10504 minor-mode-overriding-map-alist and minor-mode-map-alist.
10505
10506 2002-05-09 Richard M. Stallman <rms@gnu.org>
10507
10508 * search.c (Freplace_match): Doc fix.
10509
10510 2002-05-09 Kim F. Storm <storm@cua.dk>
10511
10512 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10513 Enlarge cursor rectangle drawn around image with non-zero relief.
10514
10515 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10516 Enlarge cursor rectangle drawn around image with non-zero relief.
10517
10518 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10519 Enlarge cursor rectangle drawn around image with non-zero relief.
10520
10521 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10522
10523 * xselect.c (lisp_data_to_selection_data): Don't set selection
10524 type if comes from the Lisp object's car. If the selection
10525 contains a pure ASCII text, always return QSTRING as its type.
10526
10527 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10528
10529 * mac.c (mac-cut-function): Doc fix.
10530
10531 2002-05-05 Richard M. Stallman <rms@gnu.org>
10532
10533 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10534
10535 2002-05-04 Jason Rumney <jasonr@gnu.org>
10536
10537 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10538 for event-click-count.
10539
10540 * process.c (init_process): Only add server subfeature if we can
10541 use non-blocking I/O.
10542
10543 2002-05-04 Andrew Choi <akochoi@shaw.ca>
10544
10545 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10546 repeatedly.
10547
10548 2002-05-03 Jason Rumney <jasonr@gnu.org>
10549
10550 * process.c (Fmake_network_process): Only support server sockets
10551 when we can make them non-blocking.
10552
10553 * s/ms-w32.h (HAVE_SELECT): Define.
10554
10555 * w32.h (FILE_NDELAY): New flag.
10556
10557 * w32.c (sys_getpeername, fcntl): New functions.
10558 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10559
10560 * w32proc.c: include sys/file.h.
10561
10562 2002-05-03 Colin Walters <walters@verbum.org>
10563
10564 * callproc.c (Vgame_score_directory): Renamed to
10565 Vshared_game_score_directory.
10566
10567 2002-04-30 Richard M. Stallman <rms@gnu.org>
10568
10569 * s/gnu.h [emacs]: Include stdio.h.
10570 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10571
10572 * eval.c (do_autoload): Error if called while preparing to dump.
10573
10574 * fns.c (Frequire): Error if need to load while preparing to dump.
10575
10576 2002-04-28 Colin Walters <walters@verbum.org>
10577
10578 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10579 Default to "~/.emacs.d/games".
10580
10581 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10582
10583 * lread.c (openp): Change arg exec_only to predicate.
10584 (build_load_history): Use XCAR/XCDR.
10585 (Flocate_file_internal): New fun.
10586 (syms_of_lread): Defsubr it.
10587 (Fload): Update call to openp.
10588
10589 * lisp.h (openp): Update prototype.
10590
10591 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10592 * w32proc.c (sys_spawnve):
10593 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10594 * w32.c (check_windows_init_file):
10595 * sound.c (Fplay_sound_internal):
10596 * process.c (Fstart_process):
10597 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10598 * mac.c (run_mac_command):
10599 * emacs.c (init_cmdargs):
10600 * callproc.c (Fcall_process): Update call to openp.
10601
10602 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10603
10604 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10605
10606 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10607
10608 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10609 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10610
10611 2002-04-28 Richard M. Stallman <rms@gnu.org>
10612
10613 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10614
10615 * eval.c (Fcommandp): New arg for_call_interactively.
10616 * lisp.h (Fcommandp): Declare new arg.
10617
10618 2002-04-28 Jason Rumney <jasonr@gnu.org>
10619
10620 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10621
10622 * w32.c (stat, fstat): Use file index information to generate
10623 inodes for directories where available.
10624
10625 2002-04-26 Andrew Choi <akochoi@shaw.ca>
10626
10627 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10628 [HAVE_CARBON]: Include Mac object files.
10629
10630 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10631 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10632 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10633 MAC_OSX, and MAC_OS instead of macintosh.
10634
10635 * editfns.c [MAC_OS8]: Include stdio.h.
10636
10637 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10638
10639 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10640 Apple Monaco.
10641
10642 * process.c: Declare QCfamily and QCfilter as extern.
10643 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10644 calling select.
10645
10646 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10647
10648 * tparam.c [MAC_OSX]: Don't define BC and UP.
10649
10650 * config.in [HAVE_CARBON]: Add.
10651
10652 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10653 Move here from mac/src and mac/inc.
10654
10655 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10656
10657 2002-04-26 Gerd Moellmann <gerd@gnu.org>
10658
10659 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10660 Compute phys_cursor_width from the x position returned
10661 by x_draw_glyhs, which is cheaper.
10662 (x_display_and_set_cursor): Compute the buffer-local value
10663 of `cursor-in-non-selected-windows' only when needed.
10664
10665 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10666
10667 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10668 cursor on a stretch glyph has a width that depends on
10669 x_stretch_cursor_p.
10670
10671 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10672
10673 * abbrev.c (abbrev-start-location): Doc fix.
10674
10675 * indent.c (Fvertical_motion): Fix last change.
10676
10677 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10678
10679 * indent.c (Fvertical_motion): Move to the start of the line
10680 containing PT before moving up or down.
10681
10682 2002-04-24 Gerd Moellmann <gerd@gnu.org>
10683
10684 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10685 case of writing a whole row, more or less analogous to the case of
10686 writing only parts of a row.
10687
10688 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10689 0 for NO_CURSOR.
10690
10691 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10692
10693 2002-04-23 Colin Walters <walters@verbum.org>
10694
10695 * buffer.c (syms_of_buffer): Doc fix.
10696
10697 2002-04-23 Gerd Moellmann <gerd@gnu.org>
10698
10699 * xterm.c (notice_overwritten_cursor): Handle the special case
10700 of the cursor being in the first blank non-text line at the
10701 end of a window.
10702
10703 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10704 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10705 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10706 bar cursors only, to make phys_cursor_width contain what its name
10707 suggests.
10708 (notice_overwritten_cursor): Consider the cursor image erased if
10709 the output area intersects the cursor image in y-direction.
10710
10711 2002-04-23 Simon Marshall <simon@gnu.org>
10712
10713 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10714 to XC_hand2.
10715
10716 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10717
10718 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10719
10720 2002-04-22 Kim F. Storm <storm@cua.dk>
10721
10722 * textprop.c (remove_properties): Fixed trap for malformed plist.
10723
10724 2002-04-22 Richard M. Stallman <rms@gnu.org>
10725
10726 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10727
10728 * window.c (make_window): Initialize height_fixed_p,
10729 last_cursor_off_p, and p->cursor_off_p slots.
10730
10731 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10732
10733 * fns.c (use-dialog-box): Doc fix.
10734
10735 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10736
10737 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10738 variables `row', `i' and `area'.
10739 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10740 toolkit library.
10741
10742 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10743
10744 * xfaces.c (clear_font_table): Don't free the default font of
10745 a frame even if it's on another display.
10746 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10747 that could be Qt.
10748
10749 2002-04-19 Juanma Barranquero <lektu@terra.es>
10750
10751 * indent.c (Fmove_to_column): Remove unused local variable
10752 `next_boundary_byte'.
10753 (current_column_1): Likewise.
10754
10755 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10756
10757 * msdos.c (Qhbar): New variable.
10758 (syms_of_msdos): Intern and staticpro it.
10759 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10760 cursor type.
10761
10762 2002-04-19 Dave Lambert <dlambert@acm.org>
10763
10764 Theses change implement an underscore-like (`hbar') cursor.
10765
10766 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10767
10768 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10769 Handle the `hbar' cursor type.
10770 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10771
10772 * xfns.c (Qhbar): New variable.
10773 (syms_of_xfns): Intern and staticpro it.
10774 (x_specified_cursor_type): Handle `hbar' cursor.
10775
10776 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10777 not defined.
10778
10779 2002-04-18 Richard M. Stallman <rms@gnu.org>
10780
10781 * textprop.c (remove_properties): New arg LIST allows scanning
10782 either a list or a plist.
10783 (interval_has_some_properties_list): New function, like
10784 interval_has_some_properties using list instead of plist.
10785 All callers changed.
10786 (Fremove_list_of_text_properties): New function.
10787 (syms_of_textprop): Defsubr it.
10788
10789 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10790
10791 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10792
10793 2002-04-17 Juanma Barranquero <lektu@terra.es>
10794
10795 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10796
10797 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10798
10799 * window.c (coordinates_in_window): Don't report on margin area
10800 if its width is zero.
10801
10802 2002-04-16 Jason Rumney <jasonr@gnu.org>
10803
10804 * w32fns.c (Fx_file_dialog): Decode file name before using.
10805
10806 * w32term.c (construct_drag_n_drop): Likewise.
10807
10808 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10809
10810 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10811 store load-history in pure space.
10812
10813 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10814
10815 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10816
10817 * xterm.c (Qlatin_1, Qutf_8): New vars.
10818 (syms_of_xterm): Initialize them.
10819 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10820 decoding the output of X*LookupString.
10821 Always use latin-1 to decode the output of XLookupString.
10822 Try Xutf8LookupString if XmbLookupString failed.
10823
10824 * region-cache.c (new_region_cache): Use BEG.
10825
10826 2002-04-16 Gerd Moellmann <gerd@gnu.org>
10827
10828 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10829 configuration files.
10830 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10831 returns 0.
10832
10833 2002-04-15 Andreas Schwab <schwab@suse.de>
10834
10835 * config.in: Regenerated using autoheader.
10836
10837 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10838 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10839 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10840 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10841 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10842 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10843 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10844 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10845 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10846 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10847 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10848 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10849 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10850 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10851 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10852 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10853 STACK_DIRECTION, now set by autoconf.
10854
10855 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10856
10857 * dispnew.c (marginal_area_string): Sort arguments.
10858
10859 * dispextern.h (marginal_area_string): Add prototype.
10860
10861 2002-04-13 Richard M. Stallman <rms@gnu.org>
10862
10863 * fileio.c (Finsert_file_contents):
10864 Don't call temp_output_buffer_setup--do just part, by hand.
10865
10866 * coding.c (run_pre_post_conversion_on_str):
10867 Don't call temp_output_buffer_setup--do just part, by hand.
10868
10869 * keyboard.c (command_loop_1): Don't call start_hourglass
10870 or cancel_hourglass when executing a macro.
10871
10872 * marker.c (count_markers): New function.
10873
10874 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10875 grow without limit. Move recently used elements to the front.
10876
10877 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10878
10879 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10880
10881 2002-04-12 Gerd Moellmann <gerd@gnu.org>
10882
10883 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10884 rows marginal areas.
10885 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10886 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10887
10888 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10889
10890 2002-04-12 Dave Love <fx@gnu.org>
10891
10892 * dispnew.c (marginal_area_string): New.
10893
10894 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10895 (Qleft_margin, Qright_margin): Declare.
10896 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10897
10898 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10899 note_mode_line_highlight and extended.
10900
10901 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10902 (make_lispy_event): Deal with mouse events in margins.
10903
10904 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10905
10906 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10907
10908 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10909 than deactivating the mark if tmm is set to `lambda'.
10910 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10911 Use a single event for HELP_EVENT.
10912 (Fexecute_extended_command): Save last_point_position.
10913
10914 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10915
10916 * lisp.h (Fpropertize): Add prototype.
10917
10918 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10919
10920 2002-04-10 Colin Walters <walters@verbum.org>
10921
10922 * config.in: Add HAVE_SHARED_GAME_DIR.
10923
10924 * callproc.c: (Vgame_score_directory): New variable.
10925 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10926
10927 2002-04-10 Richard M. Stallman <rms@gnu.org>
10928
10929 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10930
10931 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10932
10933 * minibuf.c (read_minibuf): Use empty_string.
10934 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10935 Short-circuit the search as soon as it "failed".
10936 (Fall_completions): Allow lambda forms and lists of strings for alist.
10937 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10938 when require_match is nil.
10939 (Ftest_completion): Rename from `test_completion' and export to elisp.
10940 Call the predicate also when alist is a list.
10941 Obey Vcompletion_regexp_list.
10942 (do_completion, Fminibuffer_complete_and_exit): Use it.
10943 (Fassoc_string): Rename from `assoc_for_completion'.
10944 Allow list of strings as well and export to elisp.
10945
10946 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10947
10948 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10949
10950 2002-04-08 Juanma Barranquero <lektu@terra.es>
10951
10952 * w32.c (sys_accept): Don't hide variable `s'.
10953
10954 2002-04-05 Gerd Moellmann <gerd@gnu.org>
10955
10956 * callint.c (Fcall_interactively): Use INTEGERP instead of
10957 NUMBERP for checking Vhistory_length.
10958
10959 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10960
10961 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10962 Doc fix to reflect it.
10963
10964 2002-04-04 Richard M. Stallman <rms@gnu.org>
10965
10966 * xdisp.c (display_mode_element): New arg RISKY.
10967 Disregard text props found or specified within a variable
10968 that isn't marked risky-local-variable.
10969 (Qrisky_local_variable): New variable.
10970 (syms_of_xdisp): Init and staticpro it.
10971
10972 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10973
10974 * undo.c (record_point): New fun.
10975 (record_delete, record_insert): Use it.
10976
10977 2002-04-03 Juanma Barranquero <lektu@terra.es>
10978
10979 * doc.c (Fdocumentation): Add missing parentheses.
10980 (Fdocumentation_property): Likewise.
10981
10982 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10983
10984 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10985 data is 0, just return nil.
10986
10987 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10988
10989 * msdos.c (syms_of_msdos): Fix last change with
10990 mouse_autoselect_window.
10991
10992 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10993
10994 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10995 mouse_autoselect_window.
10996
10997 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10998
10999 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11000 with system-specific keysyms. Use it also for unknown function keys.
11001
11002 * doc.c (reread_doc_file): Return whether reload was attempted.
11003 (Fdocumentation, Fdocumentation_property): Don't try to reload
11004 if the doc is 0 and only ask once.
11005
11006 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11007
11008 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11009
11010 * keyboard.c (read_char): If the event was Qselect_window,
11011 restore timer_idleness_start_time to its previous value.
11012
11013 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11014
11015 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11016
11017 * region-cache.c (new_region_cache): Use BEG.
11018
11019 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11020 Use BEG and BEG_BYTE.
11021
11022 * doc.c (get_doc_string): Return nil if the location is wrong.
11023 (reread_doc_file): New fun.
11024 (Fdocumentation, Fdocumentation_property):
11025 Call it if get_doc_string fails.
11026 (Fsnarf_documentation): Make it work for a dumped Emacs.
11027
11028 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11029 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11030
11031 * charset.c (Fstring): Allow 0 arguments.
11032
11033 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11034
11035 * process.c (DATAGRAM_CONN_P, list_processes_1)
11036 (Fprocess_datagram_address, Fset_process_datagram_address)
11037 (Fset_network_process_options, server_accept_connection):
11038 Fix some int/Lisp_Object confusions (thank you union types).
11039
11040 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11041
11042 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11043
11044 * w32term.c: Likewise.
11045 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11046
11047 * keyboard.c (Qselect_window): New symbol.
11048 (head_table): Use it.
11049 (keys_of_keyboard): Bound select-window event to handle-select-window.
11050 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11051
11052 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11053 (last_window): New variable.
11054 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11055 (note_mouse_movement): Remove reimplemented code in #if 0.
11056 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11057 Emacs windows.
11058
11059 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11060
11061 2002-03-31 Gerd Moellmann <gerd@gnu.org>
11062
11063 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11064 Callers changed.
11065
11066 2002-03-30 Richard M. Stallman <rms@gnu.org>
11067
11068 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11069 loop whenever it stops making progress.
11070
11071 * widget.c (set_frame_size): Don't call change_frame_size.
11072
11073 2002-03-30 Gerd Moellmann <gerd@gnu.org>
11074
11075 * dispnew.c (direct_output_for_insert):
11076 Call mark_window_display_accurate.
11077
11078 2002-03-29 Jason Rumney <jasonr@gnu.org>
11079
11080 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11081
11082 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11083
11084 * Makefile.in (lread.o): Depend on coding.h.
11085
11086 * lread.c (openp, Fload): Encode the file name before passing it
11087 to `stat', `access', and `emacs_open'.
11088 (openp): GCPRO the encoded file name. Don't recompute Lisp
11089 strings unnecessarily.
11090
11091 2002-03-29 Kim F. Storm <storm@cua.dk>
11092
11093 * fns.c (Flax_plist_put): Doc fix.
11094
11095 2002-03-28 Miles Bader <miles@gnu.org>
11096
11097 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11098
11099 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11100
11101 * process.c (set-network-process-options): Add usage.
11102 (make-network-process): Doc fix.
11103
11104 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11105
11106 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11107
11108 2002-03-26 Richard M. Stallman <rms@gnu.org>
11109
11110 * fns.c (Fsubstring_no_properties): New function.
11111 (Flax_plist_get, Flax_plist_put): New functions.
11112 (syms_of_fns): defsubr them.
11113
11114 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11115 don't test or alter w->update_mode_line.
11116
11117 * window.c (Fdisplay_buffer): Doc fix.
11118
11119 2002-03-24 Richard M. Stallman <rms@gnu.org>
11120
11121 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11122
11123 2002-03-24 Gerd Moellmann <gerd@gnu.org>
11124
11125 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11126 (Fdefmacro): Handle `(declare ...)'.
11127 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11128 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11129
11130 2002-03-24 Jason Rumney <jasonr@gnu.org>
11131
11132 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11133 (xbm_file_p): Add prototypes.
11134 (xbm_format, xbm_image_p): Sync with xfns.c.
11135 (reflect_byte): New function.
11136 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11137 (xbm_load_image): Create bitmaps with a depth of 1.
11138 (init_xfns): Enable XBM images.
11139
11140 2002-03-23 Jason Rumney <jasonr@gnu.org>
11141
11142 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11143 correctly. Do not pass up_modifier to keyboard buffer.
11144
11145 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11146
11147 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11148
11149 * Makefile.in (bootstrapclean): New target.
11150 (bootstrap-temacs, bootstrap-doc): Remove.
11151 (bootstrap-emacs): Use a bog-standard `temacs'.
11152 Don't bother to build a DOC file.
11153
11154 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11155
11156 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11157 in temacs even if !CANNOT_DUMP.
11158 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11159
11160 * alloc.c (check_pure_size): Only output a warning.
11161
11162 2002-03-22 Jason Rumney <jasonr@gnu.org>
11163
11164 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11165 supported.
11166
11167 * w32term.c (zv_bits): Declare as short, for word alignment.
11168 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11169 (syms_of_w32term): Define x-use-underline-position-properties.
11170
11171 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11172 (clear_image_cache): Block input, fix logic, clear matrices in
11173 all frames that share this cache.
11174
11175 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11176
11177 * emacs.c (main): Update the Copyright year in the blurb printed
11178 by "emacs --version".
11179
11180 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11181
11182 * xterm.c (XTread_socket): If XK_ISO_Lock and
11183 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11184 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11185
11186 2002-03-21 Kim F. Storm <storm@cua.dk>
11187
11188 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11189 menu-bar bindings in keymap and local-map properties _are_ used.
11190 But try keymap property first in accordance with 2002-01-03 patch.
11191 Added comment describing why this is not always reliable.
11192 (tool_bar_items): Ditto for tool-bar.
11193
11194 2002-03-21 Jason Rumney <jasonr@gnu.org>
11195
11196 * w32fns.c (x_clear_image_1): Disable color table code.
11197
11198 2002-03-21 Kim F. Storm <storm@cua.dk>
11199
11200 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11201 removed the wrong version of the DEFUN macro; fixed it.
11202
11203 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11204 Fmember rather than Fmemq).
11205 (Fprovide): Check that subfeatures is a list.
11206
11207 * process.c (QCfeature, QCdatagram): Removed variables.
11208 (QCtype, Qdatagram): New variables.
11209 (network_process_featurep): Removed function.
11210 (Fmake_network_process): Removed :feature check.
11211 Use :type 'datagram instead of :datagram t to create a datagram
11212 socket. This allows us to add other connection types (e.g. raw
11213 sockets) later in a consistent manner.
11214 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11215 supported subfeatures for feature make-network-process.
11216 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11217 Intern and staticpro QCtype and Qdatagram.
11218 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11219
11220 * xfns.c: (QCtype): Remove duplicate declaration and
11221 initialization (is now declared in process.c).
11222
11223 * w32fns.c: (QCtype): Remove duplicate declaration and
11224 initialization (is now declared in process.c).
11225
11226 2002-03-21 Richard M. Stallman <rms@gnu.org>
11227
11228 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11229 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11230 when jumping to `fail' to avoid undoing reg changes in the
11231 last iteration of the loop.
11232 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11233
11234 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11235 Depend on process.h.
11236
11237 2002-03-20 Jason Rumney <jasonr@gnu.org>
11238
11239 Most of the following changes are still conditional on HAVE_IMAGES
11240 which is not set by default on Windows.
11241
11242 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11243
11244 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11245 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11246 (four_corners_best, x_clear_image_1, x_clear_image)
11247 (x_alloc_image_color, postprocess_image)
11248 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11249 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11250 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11251
11252 * w32gui.h (struct XImage): Define.
11253
11254 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11255 extract mouse co-ordinates.
11256
11257 2002-03-20 Jason Rumney <jasonr@gnu.org>
11258
11259 * w32.c (init_winsock): Dynamically load new server and UDP
11260 socket functions.
11261 (socket_to_fd): New function.
11262 (sys_socket): Use it.
11263 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11264 (sys_recvfrom, sys_sendto): New wrapper functions.
11265
11266 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11267 and initialization.
11268
11269 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11270
11271 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11272
11273 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11274 Don't use "sun" as a variable, it's a predefined constant on Sun
11275 machines.
11276
11277 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11278
11279 * bytecode.c (Fbyte_code): Revert last change.
11280
11281 2002-03-19 Kim F. Storm <storm@cua.dk>
11282
11283 * makefile.w32-in (LIBS): Add $(WSOCK32).
11284 From David Ponce <dponce@voila.fr>.
11285
11286 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11287
11288 * process.c (wait_reading_process_input): Move variables `pname'
11289 and `pnamelen' down where they are used.
11290
11291 * bytecode.c (Fbyte_code): Discard unused computed value to
11292 prevent gcc warning.
11293
11294 * lisp.h (Fplist_member): Add prototype.
11295
11296 2002-03-18 Kim F. Storm <storm@cua.dk>
11297
11298 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11299 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11300
11301 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11302 Remove explicit GNU_LINUX settings for datagram support.
11303
11304 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11305
11306 * process.c (Fmake_network_process): Remove unused variable `sa'.
11307 Doc fix. Add usage:.
11308 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11309
11310 2002-03-17 Richard M. Stallman <rms@gnu.org>
11311
11312 * xdisp.c (cursor_type_changed): New variable.
11313 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11314 Clear it when clearing windows_or_buffers_changed.
11315 (try_cursor_movement, redisplay_window, try_window_id)
11316 (try_window_reusing_current_matrix): Test cursor_type_changed
11317 along with windows_or_buffers_changed.
11318
11319 * window.h (cursor_type_changed): New variable.
11320
11321 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11322 not update_mode_lines, and always set it to 1.
11323
11324 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11325 if no frames needed redrawing.
11326
11327 2002-03-17 Kim F. Storm <storm@cua.dk>
11328
11329 The following changes add support for network server processes,
11330 datagram connections, and local (unix) sockets.
11331
11332 * process.h (struct Lisp_Process): New member log.
11333 Doc fix: Member command used to indicate stopped network process.
11334 Doc fix: Member childp contains plist for network process.
11335 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11336
11337 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11338 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11339 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11340 New variables.
11341 (NETCONN1_P): New macro.
11342 (DATAGRAM_SOCKETS): New conditional symbol.
11343 (datagram_address): New array.
11344 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11345 (status_message): Use concat3.
11346 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11347 for a stopped network process.
11348 (Fset_process_buffer): Update contact plist for network process.
11349 (Fset_process_filter): Ditto. Don't enable input for stopped
11350 network processes. Server must listen, even if filter is t.
11351 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11352 New functions.
11353 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11354 (Fprocess_contact): Added KEY argument. Handle datagrams.
11355 (list_processes_1): Optionally show only processes with the query
11356 on exit flag set. Dynamically adjust column widths. Omit tty
11357 column if not needed. Report stopped network processes.
11358 Identify server and datagram network processes.
11359 (Flist_processes): New optional arg `query-only'.
11360 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11361 (conv_lisp_to_sockaddr, set_socket_options)
11362 (network_process_featurep, unwind_request_sigio): New helper functions.
11363 (Fprocess_datagram_address, Fset_process_datagram_address):
11364 (Fset_network_process_options): New lisp functions.
11365 (Fopen_network_stream): Removed. Now defined in simple.el.
11366 (Fmake_network_process): New lisp function. Code is based on previous
11367 Fopen_network_stream, but heavily reworked with new property list based
11368 argument list, support for datagrams, server processes, and local
11369 sockets in addition to old client-only functionality.
11370 (server_accept_connection): New function.
11371 (wait_reading_process_input): Use it to handle incoming connects.
11372 Do not enable input on a new connection if process is stopped.
11373 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11374 (send_process): Handle datagram sockets.
11375 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11376 network process is indicated by setting command field to t .
11377 (Fprocess_send_eof): No-op if datagram connection.
11378 (Fstatus_notify): Don't read input for a stream server socket or a
11379 stopped network process.
11380 (init_process): Initialize datagram_address array.
11381 (syms_of_process): Intern and staticpro new variables, defsubr new
11382 functions.
11383
11384 2002-03-16 Jason Rumney <jasonr@gnu.org>
11385
11386 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11387 startup case.
11388
11389 2002-03-16 Richard M. Stallman <rms@gnu.org>
11390
11391 * xdisp.c (redisplay_internal, redisplay_windows):
11392 Use list_of_error to call internal_condition_case_1.
11393 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11394 so as to catch all errors with no possibility of debugger redisplay.
11395 (list_of_error): New variable.
11396 (syms_of_xdisp): Init and staticpro it.
11397
11398 * print.c (print_object): Delete `\ ' from printed rep of frame.
11399
11400 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11401
11402 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11403 until its implementation is fixed.
11404
11405 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11406
11407 * xfns.c (png_load): Remove unused variable `gamma_str'.
11408
11409 2002-03-14 Richard M. Stallman <rms@gnu.org>
11410
11411 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11412
11413 2002-03-14 Miles Bader <miles@gnu.org>
11414
11415 * intervals.c (adjust_for_invis_intang): New function.
11416 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11417 work for dealing with invisible+intangible regions. Do so before
11418 and after both forward and backward movements, to handle both
11419 front-sticky and rear-sticky cases.
11420 * textprop.c (text_property_stickiness): Function moved here from
11421 `editfns.c'.
11422 * intervals.h (text_property_stickiness): New declaration.
11423 * editfns.c (char_property_eq): Function removed.
11424 (text_property_stickiness): Function moved to `textprop.c'.
11425
11426 2002-03-13 Jason Rumney <jasonr@gnu.org>
11427
11428 * config.in: Add STRFTIME_NO_POSIX2.
11429
11430 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11431 and %OX when underlying strftime does not.
11432
11433 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11434
11435 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11436 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11437 line) to avoid annoying flicker.
11438 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11439 (XTread_socket): Mark it static.
11440
11441 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11442
11443 2002-03-13 Kim F. Storm <storm@cua.dk>
11444
11445 * puresize.h (BASE_PURESIZE): Increase to 775000.
11446
11447 2002-03-12 Juanma Barranquero <lektu@terra.es>
11448
11449 * editfns.c (syms_of_editfns): Fix typo.
11450
11451 2002-03-12 Gerd Moellmann <gerd@gnu.org>
11452
11453 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11454 Include termopt.h for interrupt_input.
11455
11456 2002-03-11 Andreas Schwab <schwab@suse.de>
11457
11458 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11459
11460 2002-03-11 Gerd Moellmann <gerd@gnu.org>
11461
11462 * xterm.c (note_mouse_movement): Put code for
11463 x_autoselect_window_p in #if 0.
11464
11465 * lread.c (Fload): Don't assume that message_with_string uses the
11466 string it is given like a C string.
11467
11468 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11469
11470 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11471
11472 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11473 x_session_have_connection.
11474 (x_initialize): Add call to x_session_initialize.
11475
11476 * termhooks.h (enum event_kind): Add save_session_event.
11477
11478 * keyboard.c: Add Emacs event save_session_event.
11479
11480 * emacs.c (main): Add call to syms_of_xsmfns.
11481
11482 * lisp.h: Declare syms_of_xsmfns as extern.
11483
11484 * config.in: Add HAVE_X_SM.
11485
11486 * Makefile.in (LIBXT): Add -lSM -lICE
11487 if HAVE_X_SM and not USE_X_TOOLKIT.
11488 (XOBJ): New file xsmfns.c added.
11489
11490 * xsmfns.c: New file for X session management.
11491
11492 2002-03-09 Jason Rumney <jasonr@gnu.org>
11493
11494 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11495 read-only when setting modified time.
11496
11497 2002-03-08 Gerd Moellmann <gerd@gnu.org>
11498
11499 * xdisp.c (move_it_vertically_backward): At the end of the function,
11500 when moving forward by lines, treat terminal frames specially.
11501
11502 * keyboard.c (echo_char): Make sure to add a separator between
11503 keys even if echo_dash hasn't been called.
11504
11505 * xdisp.c: Use new string macros.
11506 (update_echo_area): Pass number of bytes to message3 instead of
11507 number of chars.
11508 (set_message_1): Don't access a string's size_byte directly.
11509 (decode_mode_spec_coding): Use number of bytes of eoltype string
11510 instead number of chars.
11511
11512 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11513
11514 2002-03-08 Juanma Barranquero <lektu@terra.es>
11515
11516 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11517 24-bit.
11518
11519 2002-03-06 Jason Rumney <jasonr@gnu.org>
11520
11521 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11522
11523 2002-03-06 Gerd Moellmann <gerd@gnu.org>
11524
11525 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11526 (cancel_echoing, echo_length, echo_truncate): Changed to
11527 work with new kboard definition.
11528 (echo_now): Use message3_nolog instead of message2_nolog.
11529
11530 * alloc.c (mark_kboards): Mark echo_string.
11531
11532 * keyboard.h (ECHOBUFSIZE): Removed.
11533 (struct kboard): Member echoptr removed, member echobuf renamed
11534 to echo_string.
11535
11536 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11537 message3 instead of message2 to display the message using STRING's
11538 text properties.
11539
11540 2002-03-05 Andreas Schwab <schwab@suse.de>
11541
11542 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11543
11544 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11545
11546 * frame.c (default-frame-alist): Explain that setting it doesn't
11547 affect existing frames.
11548
11549 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11550
11551 * indent.c (skip_invisible): Fix my brain fart.
11552
11553 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11554
11555 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11556
11557 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11558 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11559 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11560 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11561 and variables to use EMACS_INT instead of just int.
11562
11563 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11564
11565 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11566
11567 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11568 environment, pass it down with corrected value.
11569
11570 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11571
11572 * lread.c (read_filtered_event): Do not call start_hourglass
11573 before returning.
11574
11575 2002-03-04 Juanma Barranquero <lektu@terra.es>
11576
11577 * w32term.c (x_display_and_set_cursor): Fix typo.
11578
11579 2002-03-03 Richard M. Stallman <rms@gnu.org>
11580
11581 * fileio.c (Fmake_temp_name): Doc fix.
11582
11583 2002-03-03 Gary Wong <gtw@gnu.org>
11584
11585 * termcap.c [!emacs]: Replace ospeed for building standalone
11586 libtermcap, for binary compatibility.
11587
11588 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11589
11590 2002-03-03 Richard M. Stallman <rms@gnu.org>
11591
11592 * xrdb.c (file_p): Rename arg `path' to `filename'.
11593
11594 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11595 only if it is an integer.
11596
11597 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11598 If png_get_sRGB gives an answer, call png_set_gamma
11599 using the default image gamma value.
11600
11601 * lread.c (read1): When reading from a file, default string to
11602 multibyte only if it has some multibyte characters.
11603
11604 * print.c (print_object): Output multibyte chars 128...255
11605 using \x even if ! print_escape_multibyte.
11606
11607 * xdisp.c (display_mode_element): Move the places where
11608 bytepos, charpos, this, and lisp_string are set.
11609 Use lisp_string to set bytepos.
11610
11611 * xdisp.c (redisplay_internal):
11612 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11613
11614 * xdisp.c (display_mode_element): Merge properties specified with
11615 :propertize onto those that come with the string.
11616
11617 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11618
11619 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11620 automatic-hscrolling. Users changed.
11621 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11622 Users changed.
11623 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11624
11625 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11626
11627 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11628
11629 2002-03-02 Kim F. Storm <storm@cua.dk>
11630
11631 * window.c (Fminibuffer_selected_window): New function.
11632 (syms_of_window): Defsubr it.
11633
11634 2002-03-01 Kim F. Storm <storm@cua.dk>
11635
11636 * window.h (struct window): New member phys_cursor_width.
11637
11638 * window.c (make_window, replace_window): Init phys_cursor_width.
11639
11640 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11641 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11642
11643 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11644 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11645
11646 * lisp.h (GCPRO6): New macro.
11647
11648 * process.c (Fopen_network_stream): Use GCPRO6.
11649
11650 2002-03-01 Kim F. Storm <storm@cua.dk>
11651
11652 * process.c (Qconnect, Qfailed): New variables.
11653 (syms_of_process): Intern and staticpro them.
11654 (Fprocess_status): Document connect and failed return values.
11655 [NON_BLOCKING_CONNECT]: New conditional.
11656 (connect_wait_mask, num_pending_connects): New variables.
11657 (status_message): Convert Qfailed status.
11658 (Fopen_network_stream): Added support for non-blocking connect.
11659 New optional args: filter, sentinel, non_blocking. Doc updated.
11660 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11661 (deactivate_process): Handle pending non-blocking connect.
11662 (wait_reading_process_input): Poll for status of non-blocking
11663 connects. Exec sentinel directly when connect succeeds.
11664 (status_notify): Don't read process output if not yet connected.
11665
11666 2002-02-28 Kim F. Storm <storm@cua.dk>
11667
11668 * window.c: (minibuf_selected_window): Renamed from
11669 Vminibuf_selected_window. Users changed.
11670 (syms_of_window): Staticpro it.
11671
11672 2002-02-26 Kim F. Storm <storm@cua.dk>
11673
11674 The following changes add a new Vminibuf_selected_window variable
11675 which is similar to Vminibuf_scroll_window, but which is only set
11676 on entry to the minibuffer (from a non-minibuffer window):
11677
11678 * window.c: (Vminibuf_selected_window): New variable.
11679 (struct save_window_data): New member minibuf_selected_window.
11680 (Fset_window_configuration): Restore Vminibuf_selected_window.
11681 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11682 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11683 (compare_window_configurations): Compare minibuf_selected_window.
11684
11685 * window.h: (Vminibuf_selected_window): Declare extern.
11686
11687 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11688 entry to minibuffer or on entry from a non-minibuffer window.
11689
11690 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11691 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11692
11693 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11694 instead of Vminibuf_scroll_window when deciding in which window
11695 the region should be highlighted. Consequently, the region remains
11696 highlighteded even when a completion buffer is also displayed.
11697
11698 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11699
11700 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11701
11702 * xselect.c (Qcompound_text_with_extensions): Renamed from
11703 Qcompound_text_no_extensions.
11704 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11705
11706 2002-02-26 Juanma Barranquero <lektu@terra.es>
11707
11708 * w32proc.c (syms_of_ntproc): Doc fix.
11709
11710 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11711
11712 * intervals.h: Include "dispextern.h" unconditionally.
11713
11714 2002-02-24 Jason Rumney <jasonr@gnu.org>
11715
11716 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11717 and disp-table.elc.
11718 (lisp): Add emacs-lisp/backquote.elc.
11719
11720 2002-02-24 Kim F. Storm <storm@cua.dk>
11721
11722 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11723 The validation of the event type was too strict as it didn't
11724 allow string events; buffer names are used in bindings for
11725 menu-bar-select-buffer (see `menu-bar-update-buffers').
11726
11727 2002-02-23 Kim F. Storm <storm@cua.dk>
11728
11729 The following changes rework my patch of 2002-02-06 which
11730 added command remapping by entering the commands directly into
11731 the keymaps. Now, command remapping uses an explicit `remap'
11732 prefix in the keymaps, i.e. [remap COMMAND].
11733
11734 * keymap.c (Qremap, remap_command_vector): New variables.
11735 (is_command_symbol): Removed function.
11736 (Fdefine_key): No longer accept a symbol for KEY.
11737 Added validation of [remap COMMAND] argument for KEY.
11738 The DEF is no longer required to be a symbol when remapping a command.
11739 (Fremap_command): New function to remap command through keymaps.
11740 (Flookup_key): Perform command remapping initiated by
11741 Fremap_command directly for speed.
11742 (Fkey_binding): Use Fremap_command for command remapping.
11743 (where_is_internal): Handle new command remapping representation.
11744 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11745 staticpro them. Defsubr Fremap_command.
11746
11747 * keymap.h (Fremap_command): Declare extern.
11748 (is_command_symbol): Remove extern.
11749
11750 * keyboard.c (command_loop_1): Use Fremap_command for command
11751 remapping; now try command remapping for all symbols.
11752
11753 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11754
11755 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11756
11757 2002-02-23 Jason Rumney <jasonr@gnu.org>
11758
11759 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11760 on the string before encoding it.
11761 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11762 after decoding it.
11763
11764 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11765
11766 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11767
11768 * w32term.c (enter_timestamp): Remove unused static variable to
11769 prevent warning.
11770
11771 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11772
11773 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11774
11775 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11776
11777 * xselect.c (selection_data_to_lisp_data): Fix last change.
11778
11779 2002-02-22 Jason Rumney <jasonr@gnu.org>
11780
11781 * w32term.h (struct w32_output): New member menu_command_in_progress.
11782
11783 * w32menu.c (menubar_selection_callback): Free the menu and
11784 clear the menu_command_in_progress flag.
11785
11786 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11787 (menu_free_timer): New variable.
11788 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11789 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11790 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11791 menu command is in progress.
11792 <WM_COMMAND>: Set the menu_command_in_progress flag.
11793 Kill any menu_free_timer that is running.
11794
11795 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11796 Call ExtTextOutA rather than ExtTextOut.
11797
11798 2002-02-22 Eli Zaretskii <eliz@gnu.org>
11799
11800 * puresize.h (BASE_PURESIZE): Increase to 755000.
11801
11802 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11803
11804 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11805 on the string before encoding it.
11806 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11807 after decoding it.
11808
11809 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11810
11811 Support for ICCCM Extended Segments in X selections:
11812
11813 * xselect.c <Qcompound_text_no_extensions>: New variable.
11814 (syms_of_xselect): Intern and staticpro it.
11815 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11816 selection text.
11817 (lisp_data_to_selection_data): If next-selection-coding-system is
11818 compound-text-no-extensions, set the type of selection to be
11819 compound-text.
11820
11821 * xterm.h (x_encode_text): Update prototype.
11822
11823 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11824 callers changed. If SELECTIONP is non-zero, run the
11825 pre-write-conversion function before encoding the selection text.
11826
11827 2002-02-21 Kim F. Storm <storm@cua.dk>
11828
11829 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11830
11831 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11832 Correct composing of language-change event.
11833
11834 2002-02-20 Kim F. Storm <storm@cua.dk>
11835
11836 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11837 bindings at PT when building menu (the menu is not updated often
11838 enough for this to work reliable).
11839 (tool_bar_items): Likewise.
11840 (current_active_maps): Removed unused (and buggy) function.
11841
11842 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11843
11844 * xfns.c (gif_load): Use correct width and height for GIF images.
11845
11846 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11847
11848 * floatfns.c (Fatan): Accept an optional second arg and call
11849 atan2 if passed 2 args.
11850
11851 2002-02-18 Jason Rumney <jasonr@gnu.org>
11852
11853 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11854
11855 2002-02-17 Jason Rumney <jasonr@gnu.org>
11856
11857 * w32term.c (x_autoselect_window_p): New variable.
11858 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11859 (note_mouse_movement): Use it.
11860
11861 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11862
11863 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11864
11865 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11866 New variables.
11867 (syms_of_w32fns): Intern and staticpro them.
11868 (x_frame_parms) <"fullscreen">: New parameter.
11869 (x_fullscreen_move, x_set_fullscreen): New functions.
11870 (x_set_frame_parameters): Support Qfullscreen.
11871 (x_real_positions): Save x/y_pixels_diff frame params.
11872 (x_figure_window_size): Support full-screen frames.
11873 (Fx_create_frame): Default the fullscreen parameter.
11874
11875 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11876 (x_fullscreen_adjust): New functions.
11877 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11878 fullscreen. Call x_check_fullscreen_move, and set the
11879 want_fullscreen member of output_data.w32
11880 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11881
11882 * w32term.h: New enum for FULLSCREEN_* constants.
11883 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11884 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11885 (x-fullscreen-adjust): New prototype.
11886
11887 2002-02-17 Kim F. Storm <storm@cua.dk>
11888
11889 * frame.c: (Vmouse_highlight): New variable.
11890 (syms_of_frame): DEFVAR_LISP it.
11891
11892 * frame.h: (Vmouse_highlight): Declare extern.
11893
11894 * xterm.h (struct x_display_info): Add mouse_face_hidden.
11895
11896 * xterm.c (disable_mouse_highlight): Removed variable.
11897 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11898 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11899 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11900 and on after keyboard input.
11901 (x_term_init): Initialize mouse_face_hidden.
11902
11903 * msdos.h (struct display_info): Add mouse_face_hidden.
11904
11905 * msdos.c (disable_mouse_highlight): Removed variable.
11906 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11907 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11908 (internal_terminal_init): Initialize mouse_face_hidden.
11909 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11910 and on after keyboard input.
11911
11912 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
11913
11914 * w32term.c (disable_mouse_highlight): Removed variable.
11915 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11916 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11917 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11918 and on after keyboard input.
11919 (w32_initialize_display_info): Initialize mouse_face_hidden.
11920
11921 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
11922
11923 * msdos.c (last_mouse_window): New variable.
11924 (dos_rawgetc): Fix last change--if the mouse is in the same window
11925 as recorded in last_mouse_window, don't select this window.
11926
11927 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
11928
11929 * msdos.c (x_autoselect_window_p): New variable.
11930 (syms_of_msdos): Defvar it.
11931 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11932 which the last mouse movement occured, unless it is already selected.
11933
11934 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11935 New variables.
11936 (syms_of_xdisp): DEVFAR them.
11937 (hscroll_window_tree): Use automatic_hscroll_margin and
11938 Vautomatic_hscroll_step to compute the amount of window scrolling.
11939
11940 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11941
11942 * xterm.c (x-autoselect-window): New variable.
11943 (note_mouse_movement): Use it.
11944
11945 * keyboard.c: Do not include "systime.h" twice.
11946
11947 2002-02-15 Andreas Schwab <schwab@suse.de>
11948
11949 * puresize.h (BASE_PURESIZE): Increase to 9/5.
11950
11951 * alloc.c (NSTATICS): Increase to 1280.
11952
11953 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
11954
11955 * alloc.c (NSTATICS): Bump to 1026.
11956
11957 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11958 (Vx_super_keysym): New variables.
11959 (syms_of_xterm): DEFVAR_LISP them.
11960 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11961 variables to determine which keys to use for the various modifiers.
11962
11963 2002-02-13 Kim F. Storm <storm@cua.dk>
11964
11965 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11966 (mode_line_in_non_selected_windows): New variable.
11967 (syms_of_window): DEFVAR_BOOL it.
11968
11969 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11970 Use mode_line_in_non_selected_windows.
11971 (mode_line_in_non_selected_windows): Declare extern.
11972 (Vmode_line_in_non_selected_windows): Removed extern.
11973
11974 2002-02-13 Richard M. Stallman <rms@gnu.org>
11975
11976 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11977 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11978 (Fclear_this_command_keys): Doc fixes.
11979
11980 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11981 (update_face_from_frame_parameter): Increment face_change_count
11982 and windows_or_buffers_changed to force redisplay using changed faces.
11983
11984 * xdisp.c (QCpropertize): New variable.
11985 (mode_line_proptrans_alist): New variable.
11986 (display_mode_element): New arg PROPS; all calls changed.
11987 Implement this, for strings.
11988 Handle literal output of strings by sharing the
11989 main-line code for strings, using local var `literal'.
11990 Handle :propertize feature.
11991 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11992 mode_line_proptrans_alist.
11993
11994 2002-02-11 Kim F. Storm <storm@cua.dk>
11995
11996 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11997 (syms_of_window): DEFVAR_LISP it.
11998
11999 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12000 (CURRENT_MODE_LINE_FACE_ID): Use it.
12001 (Vmode_line_in_non_selected_windows): Declare extern.
12002
12003 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12004 to get mode line face.
12005
12006 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
12007
12008 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12009 variables; cus-start.el doesn't need them anymore.
12010
12011 2002-02-09 Kim F. Storm <storm@cua.dk>
12012
12013 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12014 reduction. This fixes a display problem where stray newlines were
12015 inserted in the window (corrected by C-l). Clarified code (IMHO).
12016
12017 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
12018
12019 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
12020
12021 * xdisp.c (display_mode_lines): Fix last change.
12022
12023 2002-02-09 Jason Rumney <jasonr@gnu.org>
12024
12025 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12026 match each other.
12027 (w32_load_system_font): Prevent Cleartype fonts from loading.
12028 (Fx_show_tip): Ensure tip frames are above other topmost windows.
12029
12030 2002-02-09 Kim F. Storm <storm@cua.dk>
12031
12032 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12033 (CURRENT_MODE_LINE_HEIGHT): Use it.
12034 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
12035
12036 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12037 (pos_visible_p, handle_face_prop): Likewise.
12038 (display_mode_lines): Likewise, but for the real selected window.
12039 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
12040
12041 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12042 in non-selected windows.
12043 (realize_basic_faces): Realize it.
12044 (syms_of_term): Intern and staticpro it.
12045
12046 2002-02-08 Kim F. Storm <storm@cua.dk>
12047
12048 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12049 Changed mail addresses to emacs-devel@gnu.org.
12050
12051 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
12052
12053 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12054 ~user, and there's no such user, don't discard everything before ~user.
12055
12056 * floatfns.c (Fround): Doc fix.
12057
12058 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12059
12060 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
12061
12062 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
12063
12064 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
12065
12066 2002-02-07 Kim F. Storm <storm@cua.dk>
12067
12068 * keymap.c (where_is_internal): Only check whether definition is
12069 remapped if it fulfills is_command_symbol.
12070
12071 2002-02-07 Andreas Schwab <schwab@suse.de>
12072
12073 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
12074
12075 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
12076
12077 2002-02-06 Kim F. Storm <storm@cua.dk>
12078
12079 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12080 defining command remapping. Doc updated.
12081 (Flookup_key): Remap command through keymap if KEY is a symbol.
12082 (is_command_symbol): New function.
12083 (Fkey_binding): Use it. New optional argument NO-REMAP.
12084 Doc updated. Callers changed. Perform command remapping via
12085 recursive call unless that arg is non-nil.
12086 (where_is_internal): New argument no_remap. Callers changed.
12087 Call recursively to find original key bindings for a remapped
12088 comand unless that arg is non-nil.
12089 (Fwhere_is_internal): New optional argument NO-REMAP.
12090 Doc updated. Callers changed. Pass arg to where_is_internal.
12091
12092 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12093 (is_command_symbol): Added prototype.
12094
12095 * keyboard.c (Vthis_original_command): New variable.
12096 (syms_of_keyboard): DEFVAR_LISP it.
12097 (command_loop_1): Set it, and perform command remapping.
12098
12099 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12100
12101 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
12102
12103 2002-02-06 Jason Rumney <jasonr@gnu.org>
12104
12105 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
12106
12107 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
12108
12109 * charset.c (get_charset_id): Use if-else instead of ?:.
12110
12111 2002-02-06 Richard M. Stallman <rms@gnu.org>
12112
12113 * filelock.c (S_ISLNK): Define if not defined.
12114
12115 2002-02-03 Richard M. Stallman <rms@gnu.org>
12116
12117 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
12118
12119 * lread.c (read1): Redesign strategy for force_multibyte and
12120 force_singlebyte. Now is_multibyte records whether read_buffer
12121 is multibyte. Encountering any multibyte character makes it so.
12122
12123 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
12124
12125 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12126 with the same sequence, map that sequence to f10 rather than f0.
12127
12128 2002-02-03 Andreas Schwab <schwab@suse.de>
12129
12130 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12131 latter never being defined on GNU/Linux.
12132
12133 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12134
12135 * xfaces.c (realize_default_face): Don't set the weight and slant of
12136 the default face to Qnormal, unless these attributes are unspecified.
12137
12138 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12139
12140 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12141 Call cancel_hourglass unconditionally.
12142
12143 * eval.c (Fsignal): Remove duplicated declaration of
12144 the variable `display_hourglass_p'.
12145
12146 2002-01-31 Richard M. Stallman <rms@gnu.org>
12147
12148 * editfns.c (region_limit): Nicer error message.
12149
12150 * coding.c (decode_composition_emacs_mule):
12151 Give up if NCOMPONENT gets too large to index `component'.
12152
12153 * callint.c (check_mark): New arg to specify clearer error message.
12154 Callers changed.
12155
12156 2002-01-27 Richard M. Stallman <rms@gnu.org>
12157
12158 * minibuf.c (Fcompleting_read): Doc fix.
12159
12160 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12161
12162 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12163 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12164 Fix doc-strings.
12165
12166 2002-01-26 Richard M. Stallman <rms@gnu.org>
12167
12168 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
12169
12170 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12171 and scroll_up_aggressively.
12172
12173 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12174
12175 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
12176
12177 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
12178
12179 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12180 (Fprevious_property_change, Fprevious_single_property_change):
12181 Stay within the narrowed-buffer boundaries.
12182
12183 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
12184
12185 * term.c (Ftty_display_color_cells): New function.
12186 (syms_of_term): Defsubr it.
12187 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12188 argument name to DISPLAY. Doc fix.
12189
12190 * dispextern.h: Add prototype for set_tty_color_mode and
12191 tty_setup_colors.
12192
12193 2002-01-24 Jason Rumney <jasonr@gnu.org>
12194
12195 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12196 If region left to draw is not what was expected, mark the frame as
12197 garbaged.
12198
12199 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12200 Combine the regions returned by BeginPaint and GetUpdateRect.
12201
12202 2002-01-23 Jason Rumney <jasonr@gnu.org>
12203
12204 * w32term.c (x_update_window_begin): Only hide caret if
12205 w32_use_visible_system_caret is set.
12206 (x_update_window_end): Only show caret if
12207 w32_use_visible_system_caret is set.
12208 (syms_of_w32term): Handle SystemParametersInfo call failing.
12209
12210 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12211
12212 2002-01-22 Richard M. Stallman <rms@gnu.org>
12213
12214 * unexelf.c (unexec): Define n so as to cause compilation error
12215 for the code where people have often written n instead of nn.
12216
12217 * .gdbinit (hookpost-run): Defined.
12218
12219 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12220
12221 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12222
12223 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12224
12225 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12226 if fullscreen is being set.
12227
12228 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12229
12230 * minibuf.c (Fminibuffer_contents)
12231 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12232 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12233
12234 2002-01-21 Richard M. Stallman <rms@gnu.org>
12235
12236 * window.c (check_frame_size): Fix minimum height calculation.
12237
12238 2002-01-20 Ken Raeburn <raeburn@gnu.org>
12239
12240 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12241 height before comparison.
12242 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12243
12244 2002-01-20 Jason Rumney <jasonr@gnu.org>
12245
12246 * w32term.c (w32_system_caret_width): Remove.
12247 (w32_use_visible_system_caret): New user flag.
12248 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12249 Windows reports a screen reader running.
12250 (x_update_window_begin): Hide the system caret.
12251 (x_update_window_end): Show the system caret.
12252 (x_display_and_set_cursor): Don't draw a cursor when
12253 w32_use_visible_system_caret is set. Do not adjust width.
12254
12255 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12256 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12257 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12258 the user requests it. Use system default width when creating.
12259 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12260
12261 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12262 New window messages.
12263
12264 2002-01-20 Richard M. Stallman <rms@gnu.org>
12265
12266 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12267
12268 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12269
12270 * doprnt.c (doprnt1): Fix typos in error call.
12271
12272 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12273
12274 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12275
12276 2002-01-20 Jason Rumney <jasonr@gnu.org>
12277
12278 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12279 that Windows returns. If a double check fails, try to guess how
12280 ExtTextOut is going to act.
12281
12282 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12283 in place of stricmp.
12284 (w32_list_synthesized_fonts): Removed.
12285 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12286 (struct enumfont_t): New element; list.
12287 (enum_font_cb2): List all style and charset variations of a font.
12288 (Fw32_select_font): New optional argument; include_proportional.
12289 Exclude vertical fonts. Exclude proportional fonts unless
12290 include_proportional is non-nil.
12291 (w32_enable_synthesized_fonts): Change to a boolean.
12292 (Fw32_send_sys_command): Doc fix.
12293
12294 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12295
12296 * dispnew.c (update_frame): Move the variable `tem' to the block
12297 where it is used.
12298
12299 2002-01-19 Jason Rumney <jasonr@gnu.org>
12300
12301 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12302 call to face-set-after-frame-default.
12303
12304 2002-01-18 Richard M. Stallman <rms@gnu.org>
12305
12306 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12307 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12308
12309 2002-01-17 Richard M. Stallman <rms@gnu.org>
12310
12311 * window.c (enlarge_window): When exceeding size of parent,
12312 directly delete all the siblings instead of trying to resize it.
12313
12314 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12315
12316 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12317
12318 2002-01-16 Henrik Enberg <henrik@enberg.org>
12319
12320 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12321
12322 2002-01-16 Kim F. Storm <storm@cua.dk>
12323
12324 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12325 is invisible. This can happen if cursor is on top line of a
12326 window, and we switch to a buffer with a header line.
12327
12328 * w32term.c (x_erase_phys_cursor): Ditto.
12329
12330 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12331
12332 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12333 `dont_resize' only when used.
12334
12335 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12336
12337 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12338
12339 * xdisp.c (display_mode_element): When computing charpos, depend
12340 on multibyteness of elt, not the text in field.
12341
12342 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12343
12344 * buffer.c (Fkill_all_local_variables):
12345 Increment `update_mode_lines' only once.
12346
12347 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12348
12349 * lisp.h (adjust_after_replace_noundo)
12350 (Fupdate_coding_systems_internal): Add prototypes.
12351
12352 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12353
12354 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12355
12356 Support for the --color command-line argument and tty-color-mode
12357 frame parameter:
12358
12359 * term.c (tty_default_color_capabilities, tty_setup_colors)
12360 (set_tty_color_mode): New functions.
12361 (term_init): Call tty_default_color_capabilities.
12362 (Qtty_color_mode_alist): New variable.
12363 (syms_of_term): Intern and staticpro it.
12364
12365 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12366 frames.
12367 (do_switch_frame): For termcap frames, switch the tty
12368 color mode as specified by the frame's parameters.
12369 (Qtty_color_mode): New variable.
12370 (syms_of_frame): Intern and staticpro it.
12371
12372 * emacs.c (USAGE2): Add the --color option.
12373 (standard_args): Ditto.
12374
12375 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12376
12377 * xterm.h (struct x_output): New members want_fullscreen,
12378 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12379 y_pixels_outer_diff.
12380 New enum for FULLSCREEN_* constants.
12381 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12382 is NULL.
12383 (x_fullscreen_adjust): Add prototype.
12384
12385 * emacs.c (USAGE2): Add the new full-screen arguments.
12386 (standard_args): Ditto.
12387
12388 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12389 New variables.
12390 (syms_of_xfns): Intern and staticpro them.
12391 (x_frame_parms) <"fullscreen">: New parameter.
12392 (x_fullscreen_move, x_set_fullscreen): New functions.
12393 (x_set_frame_parameters): Support for Qfullscreen.
12394 (x_real_positions): More accurate computation of the frame position.
12395 (x_figure_window_size): Support full-screen frames.
12396 (Fx_create_frame): Default the fullscreen parameter.
12397
12398 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12399 (XTread_socket) <Expose>: Call x_check_fullscreen.
12400 <ConfigureNotify>: Don't resize to fullscreen.
12401 Call x_check_fullscreen_move, and set the want_fullscreen member of
12402 output_data.x.
12403
12404 2002-01-13 Jason Rumney <jasonr@gnu.org>
12405
12406 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12407 for mice with more than 3 buttons.
12408
12409 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12410 (w32_read_socket): Handle new "XBUTTON" messages.
12411
12412 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12413 (syms_of_w32fns): DEFVAR_BOOL it.
12414 (w32_wnd_proc): Handle new "XBUTTON" messages.
12415
12416 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12417
12418 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12419
12420 2002-01-13 Andreas Schwab <schwab@suse.de>
12421
12422 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12423
12424 2002-01-12 Andreas Schwab <schwab@suse.de>
12425
12426 * .gdbinit (xbuffer): Remove address operator since data is now a
12427 pointer.
12428
12429 2002-01-11 Richard M. Stallman <rms@gnu.org>
12430
12431 * insdel.c (adjust_after_replace_noundo): New function.
12432
12433 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12434
12435 2002-01-09 Jason Rumney <jasonr@gnu.org>
12436
12437 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12438 when checking for multiple frames.
12439
12440 2002-01-08 Richard M. Stallman <rms@gnu.org>
12441
12442 * window.c (delete_window): Rewrite the code for changing the
12443 selected window to handle the case where WINDOW is not a leaf.
12444
12445 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12446
12447 * process.c (send_process): Set src_multibyte to 1 after the call
12448 top setup_coding_system, not before the call.
12449
12450 2002-01-07 Jason Rumney <jasonr@gnu.org>
12451
12452 * xmenu.c (set_frame_menubar, xmenu_show):
12453 (xdialog_show): Initialize wv->help to Qnil.
12454
12455 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12456 (w32_dialog_show): Initialize wv->help to Qnil.
12457
12458 2002-01-06 Jason Rumney <jasonr@gnu.org>
12459
12460 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12461
12462 * w32menu.c (w32_menu_display_help): Revert last change.
12463
12464 * xmenu.c (menu_highlight_callback): Revert last change.
12465
12466 2002-01-06 Andreas Schwab <schwab@suse.de>
12467
12468 * insdel.c (make_gap_larger): Make sure buffer size does not
12469 overflow range of int.
12470
12471 2002-01-05 Jason Rumney <jasonr@gnu.org>
12472
12473 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12474 OVERLAPS_P.
12475
12476 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12477
12478 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12479 to the left or to the right of the pointer, put it against
12480 the left screen edge.
12481 (x_frame_parms): Add missing braces around initializer.
12482
12483 * w32term.c (x_setup_relief_colors): Don't compute an image's
12484 background color if it doesn't have a Pixmap.
12485 (notice_overwritten_cursor): Don't depend on
12486 output_cursor and updated_area. Compare pixel coordinates with
12487 window's cursor pixel coordinates.
12488 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12489 Call notice_overwritten_cursor with new arg list.
12490 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12491 unconditionally.
12492 (x_draw_image_relief): Use predefined macro instead of
12493 constant when the value of `tool_bar_button_relief' is negative.
12494
12495 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12496
12497 2002-01-04 Richard M. Stallman <rms@gnu.org>
12498
12499 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12500
12501 2002-01-03 Richard M. Stallman <rms@gnu.org>
12502
12503 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12504 (Fkey_binding): Try the `keymap' property map first.
12505 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12506 minor mode bindings.
12507
12508 2002-01-03 Kim F. Storm <storm@cua.dk>
12509
12510 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12511
12512 2002-01-02 Richard M. Stallman <rms@gnu.org>
12513
12514 * keyboard.c (read_key_sequence): Handle the keymap property
12515 before minor mode maps.
12516
12517 * editfns.c (Fformat): Update thissize from field_width
12518 based on the actual width, in the string case.
12519
12520 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12521
12522 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12523 when used as truth value to prevent gcc warnings.
12524
12525 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12526 * w32proc.c: Include <config.h>.
12527
12528 2002-01-01 Andreas Schwab <schwab@suse.de>
12529
12530 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12531 not EMACS_INT, to make them compatible with DEFVAR_INT.
12532 * lisp.h (max_specpdl_size): Adjust declaration.
12533
12534 2002-01-01 Richard M. Stallman <rms@gnu.org>
12535
12536 * print.c (print_object): Test print_escape_nonascii only for
12537 unibyte strings.
12538 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12539 when outputting to a multibyte buffer.
12540
12541 2001-12-29 Richard M. Stallman <rms@gnu.org>
12542
12543 * print.c (print_object): In multibyte string, use hex escapes.
12544 Use octal only for unibyte strings.
12545 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12546
12547 * lread.c (read_escape): New arg BYTEREP for reporting whether
12548 escape forces unibyte or multibyte.
12549 (read1): When reading a string, take note of that info.
12550
12551 2001-12-29 Ken Raeburn <raeburn@gnu.org>
12552
12553 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12554 comparison to test lisp value returned by Fget.
12555
12556 2001-12-29 Richard M. Stallman <rms@gnu.org>
12557
12558 * lisp.h (max_specpdl_size): Add declaration.
12559
12560 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12561
12562 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12563 Handle modifier bits. Correct typo in error message.
12564
12565 2001-12-28 Richard M. Stallman <rms@gnu.org>
12566
12567 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12568 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12569 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12570 Update calls to Fdefine_abbrev.
12571 (write_abbrev): Update for changed data format.
12572 Don't list "system" abbrevs.
12573 (Fexpand_abbrev): Update use count with new data format.
12574 (describe_abbrev): Update for changed data format.
12575 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12576
12577 * config.in (HAVE_MBSINIT): Add #undef.
12578
12579 * strftime.c (mbsinit): Define as no-op if not available.
12580
12581 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12582 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12583
12584 * keymap.c (Flookup_key): Error message if key has wrong data type.
12585 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12586 (exclude_key): New variable.
12587
12588 2001-12-28 Gerd Moellmann <gerd@gnu.org>
12589
12590 * xterm.c (x_setup_relief_colors): Don't compute an image's
12591 background color if it doesn't have a Pixmap.
12592
12593 * xterm.c (notice_overwritten_cursor): Don't depend on
12594 output_cursor and updated_area. Compare pixel coordinates with
12595 window's cursor pixel coordinates.
12596 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12597 Call notice_overwritten_cursor with new arg list.
12598 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12599 unconditionally.
12600
12601 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12602 height of the cursor line to the amount to scroll.
12603
12604 2001-12-27 Richard M. Stallman <rms@gnu.org>
12605
12606 * intervals.c (set_point_both): The position after an invisible,
12607 intangible character is not an acceptable stopping point.
12608
12609 2001-12-27 Ken Raeburn <raeburn@gnu.org>
12610
12611 * window.c (enlarge_window): In new preserve_before code, convert
12612 CURBEG from lisp object to integer before doing arithmetic.
12613
12614 2001-12-27 Richard M. Stallman <rms@gnu.org>
12615
12616 * bytecode.c (Fbyte_code): Undo previous change.
12617
12618 2001-12-26 Kim F. Storm <storm@cua.dk>
12619
12620 * keyboard.c (record_char): Ignore duplicate help-echo events only
12621 separated by mouse-movement. When tracking mouse, only record
12622 first and last mouse-movement event in same window.
12623 Don't record mouse-movement events in keyboard macros.
12624
12625 2001-12-25 Richard M. Stallman <rms@gnu.org>
12626
12627 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12628 (Fenlarge_window): New arg PRESERVE_BEFORE.
12629
12630 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12631 instead of Fstring_as_unibyte.
12632
12633 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12634
12635 The following changes remove mocklisp support:
12636
12637 * mocklisp.h, mocklisp.c: Files removed.
12638
12639 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12640 `Qmocklisp' and `Qmocklisp_arguments'.
12641 Remove prototype of syms_of_mocklisp.
12642
12643 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
12644
12645 * callint.c: Do not include mocklisp.h.
12646 (Fcall_interactively): Do not test for mocklisp case.
12647
12648 * eval.c: Remove variables `Qmocklisp_arguments',
12649 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12650 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12651 Do not test for mocklisp case.
12652 (Fwhile): Remove unused variable `tem'.
12653 (syms_of_eval): Remove variable `moclisp-arguments'.
12654
12655 * data.c (wrong_type_argument): Remove mocklisp case.
12656
12657 * doc.c (Fdocumentation): Remove mocklisp case.
12658
12659 * emacs.c (main): Do not call syms_of_mocklisp.
12660
12661 2001-12-21 Richard M. Stallman <rms@gnu.org>
12662
12663 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12664 to the left or to the right of the pointer, put it against
12665 the left screen edge.
12666
12667 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
12668
12669 * Makefile.in (distclean): Remove .gdbinit if we are building
12670 outside the source tree.
12671
12672 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
12673
12674 * w32.c (emacs_root_dir): New function.
12675
12676 * msdos.c (emacs_root_dir): New function.
12677
12678 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12679 of the current drive as the fallback for default_directory.
12680
12681 * dired.c (file_name_completion): Run the elements of
12682 completion-ignored-extensions through ENCODE_FILE.
12683
12684 * lisp.h (scmp): Remove prototype, since it's now a static
12685 function private to dired.c.
12686
12687 2001-12-18 Richard M. Stallman <rms@gnu.org>
12688
12689 * dired.c (scmp): Function moved from minibuf.c.
12690 Delete multibyte handling--used only on encoded strings.
12691
12692 * minibuf.c (scmp): Function moved to dired.c.
12693
12694 * fns.c (merge): Add QUIT call.
12695
12696 2001-12-18 Dave Love <fx@gnu.org>
12697
12698 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12699 language/georgian.el.
12700
12701 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
12702
12703 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12704 lisp/Makefile.in:DONTCOMPILE.
12705
12706 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12707
12708 * xdisp.c (window_box_height): Do not return negative values.
12709 From Gerd Moellmann <gerd@gnu.org>.
12710
12711 * keyboard.c (head_table): Add missing braces around initializer.
12712
12713 * term.c (keys): Likewise.
12714
12715 * xfns.c (x_frame_parms, visual_classes): Likewise.
12716
12717 2001-12-17 Sam Steingold <sds@gnu.org>
12718
12719 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12720 patch (COMPOSING_P, not COMPOSING).
12721
12722 2001-12-17 Richard M. Stallman <rms@gnu.org>
12723
12724 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
12725
12726 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12727 before calling decode_coding.
12728
12729 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
12730
12731 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12732 instead of only for COMPOSITION_DISABLED.
12733
12734 2001-12-16 Richard M. Stallman <rms@gnu.org>
12735
12736 * alloc.c (pure_alloc): After overflow, allocate just a small block.
12737
12738 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
12739
12740 * buffer.h (struct buffer): New field `display_error_modiff'.
12741 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
12742
12743 * window.c (Frecenter): Clear display_error_modiff field.
12744
12745 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12746 Call redisplay_window, but not if display_error_modiff field says no.
12747 (redisplay_window_error): New function.
12748 (displayed_buffer): New variable.
12749 (redisplay_internal, redisplay_windows): Call the new functions
12750 instead of redisplay_window directly.
12751
12752 2001-12-15 Richard M. Stallman <rms@gnu.org>
12753
12754 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
12755
12756 2001-12-14 Andrew Innes <andrewi@gnu.org>
12757
12758 * makefile.w32-in (EMACSLOADPATH): Define.
12759 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
12760 (bootstrap-temacs): Remove dependency on bootstrap-clean.
12761
12762 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
12763
12764 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12765 parameter have a numeric value all the time.
12766
12767 * w32fns.c (x_report_frame_params): Likewise.
12768
12769 2001-12-12 Richard M. Stallman <rms@gnu.org>
12770
12771 * fileio.c (Fwrite_region): Doc fix.
12772
12773 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12774 (redisplay_internal): Call clear_image_cache only for window terminals.
12775
12776 2001-12-12 Gerd Moellmann <gerd@gnu.org>
12777
12778 * xdisp.c (move_it_vertically_backward): Change heuristic
12779 for the case that we didn't move far enough initially.
12780
12781 * window.c (Frecenter): Simplify computation in the case of window
12782 system frames and ARG < 0; use window_box_height.
12783
12784 2001-12-11 Richard M. Stallman <rms@gnu.org>
12785
12786 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12787 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
12788
12789 2001-12-11 Andrew Innes <andrewi@gnu.org>
12790
12791 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12792 arg is negative.
12793
12794 2001-12-11 Richard M. Stallman <rms@gnu.org>
12795
12796 * m/hp800.h: Split the __hpux conditional into the parts
12797 that are right for GNU/Linux too and the parts that are not.
12798 Use the former if GNU_LINUX.
12799 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
12800
12801 * s/gnu-linux.h (GNU_LINUX): Defined.
12802
12803 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12804
12805 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12806 `new style' [w/`doc:' keyword].
12807
12808 2001-12-10 Jason Rumney <jasonr@gnu.org>
12809
12810 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12811 before using.
12812
12813 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12814
12815 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12816 keyword].
12817
12818 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
12819
12820 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
12821
12822 * s/hpux10.h (srand48): Don't undefine.
12823
12824 2001-12-09 Jason Rumney <jasonr@gnu.org>
12825
12826 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12827 Add comment to explain where the struct came from.
12828 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12829 (add_menu_item): Process pop-up menus first to avoid memory leak.
12830 (add_menu_item, w32_menu_display_help): Use `help' field as
12831 Lisp_Object.
12832 (w32_free_submenu_strings): Only free owner-drawn strings.
12833
12834 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12835
12836 * COPYING: Moved back.
12837
12838 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12839 Add parentheses around && within ||.
12840
12841 * indent.c (compute_motion): Likewise.
12842
12843 * intervals.c (merge_properties_sticky): Likewise.
12844
12845 * coding.c (setup_coding_system, shrink_encoding_region)
12846 (Fdecode_sjis_char): Likewise.
12847
12848 2001-12-07 Andreas Schwab <schwab@suse.de>
12849
12850 * xdisp.c (display_mode_element): Don't read past end of string if
12851 it ends with '%'.
12852
12853 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12854 can hold.
12855
12856 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12857 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12858 type changed to Lisp_Object.
12859 (syms_of_data): DEFVAR_LISP them.
12860
12861 2001-12-07 Richard M. Stallman <rms@gnu.org>
12862
12863 * callproc.c (init_callproc): Set Vdata_directory based on the source
12864 location whenever Emacs was run uninstalled.
12865
12866 2001-12-06 Paul Eggert <eggert@twinsun.com>
12867
12868 * config.in (HAVE_WORKING_VFORK): New #undefs.
12869 * process.c (create_process):
12870 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12871 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12872 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12873 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12874 * m/intel386.h (HAVE_VFORK): Likewise.
12875 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12876 * m/mips.h (HAVE_VFORK): Likewise.
12877 * s/freebsd.h (vfork): Remove #define.
12878 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12879 * s/usg5-4-2.h: Fix comment about vfork.
12880
12881 2001-12-06 Richard M. Stallman <rms@gnu.org>
12882
12883 * s/hpux10.h (random): Add undef.
12884 (HAVE_RANDOM): Define it just once.
12885
12886 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
12887
12888 * eval.c: Undo last change: the standard syntax is not wanted.
12889
12890 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
12891
12892 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12893 scroll bars of the frame before deleting the frame itself. If the
12894 frame has a widget, delete the frame with XtDestroyWidget, and do
12895 not call XDestroyWindow before that.
12896
12897 2001-12-06 Kim F. Storm <storm@cua.dk>
12898
12899 * xfns.c (x_report_frame_params): Return actual fringe widths.
12900
12901 * w32fns.c (x_report_frame_params): Return actual fringe widths.
12902
12903 2001-12-05 Andrew Innes <andrewi@gnu.org>
12904
12905 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12906 excessively large.
12907
12908 * insdel.c (make_gap_larger): New function.
12909 (make_gap_smaller): New function.
12910 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12911 Call make_gap_smaller if arg is negative.
12912
12913 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
12914
12915 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12916 Pass a dummy argument when calling interrupt_signal.
12917 (parse_menu_item): Mark disabled items before checking for empty def.
12918 (read_char_minibuf_menu_prompt): Make safety more visible.
12919 (read_key_sequence): Add a `first_unbound' variable.
12920 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12921 unbound prefix as soon as we can detect it.
12922
12923 * doc.c (Fsnarf_documentation): Add prototype.
12924 (get_doc_string): Handle negative arguments.
12925 (Fdocumentation): Use AREF and ASIZE.
12926 Move the calls to get_doc_string to a single place.
12927 Don't confuse an interactive-spec for a docstring reference.
12928 (Fdocumentation_property): Take advantage of the fact that
12929 get_doc_string now ignores the sign of the docstring position.
12930
12931 * eval.c: Use standard syntax for usage in docstrings.
12932
12933 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12934
12935 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
12936
12937 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12938
12939 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12940 constant when the value of `tool_bar_button_relief' is negative.
12941
12942 2001-12-02 Richard M. Stallman <rms@gnu.org>
12943
12944 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12945 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
12946
12947 * fileio.c (read_non_regular): Delete Fsignal call.
12948
12949 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
12950
12951 * lisp.h (run_hook_list_with_args): Undo last change.
12952
12953 2001-12-01 Gerd Moellmann <gerd@gnu.org>
12954
12955 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
12956
12957 2001-12-01 Jason Rumney <jasonr@gnu.org>
12958
12959 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
12960
12961 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12962 [!WM_MOUSELEAVE]: Define.
12963
12964 * w32menu.c (current_popup_menu, get_menu_item_info):
12965 (set_menu_item_info): New vars.
12966 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12967 (w32_menu_show): Set current_popup_menu.
12968 (add_menu_item): Allocate new strings for owner-drawn menu items
12969 and help strings.
12970 Use owner-draw for disabled menu items again.
12971 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12972 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
12973
12974 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12975 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12976 <WM_EXITMENULOOP>: Free menu strings.
12977 <WM_MOUSELEAVE>: Stop tracking mouse.
12978 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
12979
12980 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12981 and mouse face.
12982
12983 2001-12-01 Kim F. Storm <storm@cua.dk>
12984
12985 The following changes add left-fringe and right-fringe
12986 frame parameters to adjust fringe widths, or remove one or
12987 both fringes.
12988
12989 * frame.h (struct frame): Remove trunc_area_pixel_width and
12990 trunc_area_cols fields.
12991 (Qleft_fringe, Qright_fringe): Declare.
12992 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
12993
12994 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12995 (syms_of_frame): Initialize them.
12996
12997 * window.c (coordinates_in_window): Handle separate left and right
12998 fringe widths.
12999
13000 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13001 and fringe_cols fields.
13002 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13003 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13004 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13005 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13006 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13007 (x_compute_fringe_widths): Add prototype.
13008
13009 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13010 fill fringe evenly with small dashes.
13011 (x_draw_fringe_bitmap): Clear background if necessary. Align and
13012 clip the new ZV bitmap to avoid jitter between rows.
13013 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13014 background. Don't draw fringe bitmaps if fringe width is zero.
13015 (x_compute_fringe_widths): New function.
13016 (x_new_font, x_set_window_size_1): Use it.
13017
13018 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13019 (x_set_frame_parameters): Process `font' parameter before other
13020 parameters as fringe widths depend on it.
13021 (x_set_fringe_width): New function.
13022 (x_figure_window_size): Use x_compute_fringe_widths.
13023 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13024 parameters.
13025
13026 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13027 (EmacsFrameSetCharSize): Ditto.
13028
13029 * w32term.h: Merged changes from xterm.h.
13030 * w32term.c: Merged changes from xterm.c.
13031 * w32fns.c: Merged changes from xfns.c.
13032
13033 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13034
13035 * COPYING: Removed.
13036
13037 2001-11-29 Dave Love <fx@gnu.org>
13038
13039 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13040 extra extra slot.
13041 (detect_coding_mask): Fix call of detect_coding_iso2022.
13042
13043 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13044
13045 * fileio.c (file-name-coding-system)
13046 (default-file-name-coding-system): Doc fix (links to referenced
13047 variables added).
13048
13049 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13050
13051 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13052 Add dummy uses of gcproN variables.
13053
13054 * category.c (describe_category, describe_category_1)
13055 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13056 (syms_of_category): Don't defsubr Sdescribe_categories.
13057
13058 2001-11-28 Richard M. Stallman <rms@gnu.org>
13059
13060 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
13061
13062 * Makefile.in (lispdir): New variable, referring to build dir.
13063 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
13064
13065 2001-11-28 Andrew Innes <andrewi@gnu.org>
13066
13067 * w32menu.c (w32_menu_display_help): Actually add the new argument
13068 OWNER.
13069
13070 2001-11-28 Jason Rumney <jasonr@gnu.org>
13071
13072 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13073 menu items. From David Ponce <dponce@wanadoo.fr>.
13074 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13075 conditionally.
13076 (w32_menu_display_help): New argument OWNER. Rewritten to store a
13077 help event in the owner frame's keyboard buffer.
13078
13079 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13080 (Fx_show_tip): Don't subtract last width from row width.
13081
13082 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13083 (w32_read_socket): Use EQ to compare frames.
13084
13085 2001-11-28 Gerd Moellmann <gerd@gnu.org>
13086
13087 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13088 OVERLAPS_P.
13089
13090 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13091
13092 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13093 `gcpro3' and `gcpro4'.
13094
13095 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
13096
13097 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13098
13099 * ccl.c: Use AREF and ASIZE.
13100
13101 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
13102
13103 * lisp.h (run_hook_list_with_args): Remove.
13104 (LIST_END_P): Fix call to wrong_type_argument.
13105 (make_fixnum_or_float): Use EMACS_INT rather than int.
13106
13107 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
13108
13109 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13110 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
13111
13112 * eval.c: Use AREF and ASIZE.
13113 (Ffetch_bytecode): Add the file name to the error message.
13114
13115 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13116 which match the end of the file-name.
13117 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13118 is not a valid env var, but leave it as is instead.
13119
13120 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13121 Make nil bindings in char-tables transparent.
13122 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
13123
13124 2001-11-26 Richard M. Stallman <rms@gnu.org>
13125
13126 * textprop.c (set_text_properties_1): Allow START, END in either order.
13127 Do nothing if range is empty.
13128
13129 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13130
13131 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13132 (clean): Not here.
13133
13134 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13135
13136 * textprop.c (set_text_properties_1): Clearly mark that the
13137 interval should not be empty.
13138
13139 * intervals.c (graft_intervals_into_buffer):
13140 Don't call set_text_properties_1 on an empty interval.
13141
13142 2001-11-25 Richard M. Stallman <rms@gnu.org>
13143
13144 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
13145
13146 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13147 don't lose the data in it.
13148
13149 2001-11-25 Juanma Barranquero <lektu@terra.es>
13150
13151 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
13152
13153 * buffer.c (Fkill_buffer): Likewise.
13154
13155 * print.c (temp_output_buffer_setup): Likewise.
13156
13157 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13158
13159 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
13160
13161 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
13162
13163 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13164 Niemitalo <kon@iki.fi>.
13165
13166 2001-11-25 Jason Rumney <jasonr@gnu.org>
13167
13168 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
13169
13170 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13171 (Fx_show_tip): Block input during frame creation.
13172 (Fx_show_tip, Fx_hide_tip): Enable.
13173
13174 2001-11-24 Richard M. Stallman <rms@gnu.org>
13175
13176 * lread.c (Fload): Detect recursive load error for more than 3
13177 nestings of the same file.
13178 (Vrecursive_load_depth_limit): Variable deleted.
13179 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
13180
13181 2001-11-24 Jason Rumney <jasonr@gnu.org>
13182
13183 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13184 mouse position if either left or top is not specified.
13185
13186 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13187 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13188 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13189 (my_create_tip_window): Assign tip_window.
13190 (x_create_tip_frame): Use same defaults as X.
13191 (compute_tip_xy): Remove unused variable. Use full screen width.
13192 (Fx_show_tip): Do not double height. Call ShowWindow directly.
13193
13194 * w32term.c (x_after_update_window_line): Doc fix.
13195 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13196 frames.
13197 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
13198
13199 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13200 for all Windowed systems.
13201
13202 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
13203
13204 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13205 realized, use the initial screen colors to clear the screen.
13206
13207 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13208
13209 * textprop.c (Fset_text_properties): Remove unused variables
13210 `unchanged', `prev_changed', `s' and `len'.
13211
13212 * search.c (Freplace_match): Remove unused variable `inslen'.
13213
13214 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13215
13216 2001-11-22 Jason Rumney <jasonr@gnu.org>
13217
13218 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13219 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13220 (my_create_tip_window): New function.
13221 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13222 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13223
13224 2001-11-20 Jason Rumney <jasonr@gnu.org>
13225
13226 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13227 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13228
13229 * w32fns.c (Vw32_system_coding_system): Remove.
13230 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13231
13232 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13233
13234 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13235 after build_annotations.
13236
13237 * syntax.c (describe_syntax): Add dummy arg.
13238 (describe_syntax_1): Update call to describe_vector.
13239
13240 * category.c (describe_category): Add dummy arg.
13241 (describe_category_1): Update call to describe_vector.
13242
13243 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13244 (describe_command, describe_translation): Add dummy second param.
13245 (describe_map): Call elt_describer with two arguments.
13246 (describe_vector_princ): Add `fun' parameter.
13247 Call it instead of the hardcoded `princ'.
13248 (describe_vector): Add arg `args'.
13249 Pass it as a new second argument to elt_describer.
13250
13251 * keymap.h (describe_vector): Update prototype.
13252
13253 * frame.c: Don't include keymap.h any more.
13254 (keys_of_frame): Remove.
13255
13256 * lisp.h (keys_of_frame): Remove declaration.
13257
13258 * emacs.c (main): Don't call `keys_of_frame' any more.
13259
13260 2001-11-14 Andreas Schwab <schwab@suse.de>
13261
13262 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13263 if defined, 0 otherwise.
13264 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13265 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13266
13267 2001-11-19 Richard M. Stallman <rms@gnu.org>
13268
13269 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13270
13271 2001-11-18 Jason Rumney <jasonr@gnu.org>
13272
13273 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13274 (x_draw_bar_cursor): If the background color of the glyph under
13275 the cursor equals the frame's cursor color, use the glyph's
13276 foreground color for drawing the bar cursor.
13277 (x_after_update_window_line): Clear internal border in different
13278 circumstances.
13279 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13280 (w32_draw_relief_rect): Correct relief by 1 pixel.
13281 (x_set_glyph_string_background_width):
13282 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13283 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13284 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13285 if cursor_in_non_selected_windows is false.
13286 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13287 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13288 Notice if cursor gets overwritten.
13289 (notice_overwritten_cursor): Renamed from
13290 note_overwritten_text_cursor. Rewritten to take glyph widths
13291 into account, and to take X positions as parameters.
13292 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13293 around call to x_draw_glyphs.
13294 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13295 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13296 color to use for image glyph reliefs.
13297 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13298 (glyph_rect): Remove unused variable `area'.
13299
13300 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13301 some items.
13302 (x_set_internal_border_width): Set frame garbaged when window
13303 doesn't exist yet.
13304 (Fx_create_frame): Accept zero tool_bar_button_relief.
13305 (x_clear_image_1, four_corners_best, image_background)
13306 (image_background_transparent): New functions.
13307 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13308 (gs_format): Add `:background' entry.
13309 (lookup_image): Set IMG's background color if specified.
13310 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13311 when appropriate.
13312 (x_clear_image_1): Reset `background_valid' and
13313 `background_transparent_valid' fields.
13314 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13315 calculating it here. Set IMG's background_transparent field.
13316 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13317 (enum png_keyword_index): Add PNG_BACKGROUND.
13318 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13319 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13320 (enum gif_keyword_index): Add GIF_BACKGROUND.
13321 (enum gs_keyword_index): Add GS_BACKGROUND.
13322 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13323 Pre-calculate image background color where necessary.
13324 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13325 Use display info's n_cbits entry for screen depth.
13326 (Fx_show_tip): Remove unused variables `buffer', `top',
13327 `left', `max_width' and `max_height'.
13328
13329 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13330
13331 2001-11-18 Gerd Moellmann <gerd@gnu.org>
13332
13333 * puresize.h (BASE_PURESIZE): Increase to 750000.
13334
13335 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13336
13337 * frame.c (Fframe_live_p): Doc fix.
13338
13339 2001-11-18 Richard M. Stallman <rms@gnu.org>
13340
13341 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13342 (message_dolog_marker3): New static variables hold three markers.
13343 (syms_of_xdisp): Initialize and staticpro them.
13344 (message_dolog): Use message_dolog_marker1..3 instead of
13345 allocating markers each time. Unchain them when done.
13346
13347 2001-11-17 Richard M. Stallman <rms@gnu.org>
13348
13349 * doc.c (Fsnarf_documentation): Doc fix.
13350
13351 2001-11-17 Andreas Schwab <schwab@suse.de>
13352
13353 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13354
13355 2001-11-17 Richard M. Stallman <rms@gnu.org>
13356
13357 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13358
13359 2001-11-17 Jason Rumney <jasonr@gnu.org>
13360
13361 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13362
13363 2001-11-17 Gerd Moellmann <gerd@gnu.org>
13364
13365 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13366 with invalid position.
13367
13368 2001-11-16 Richard M. Stallman <rms@gnu.org>
13369
13370 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13371
13372 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13373 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13374 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13375
13376 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13377
13378 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13379
13380 * fileio.c (build_annotations): Split off the tail.
13381 (build_annotations_2): New fun. Extracted from build_annotations.
13382 (Fwrite_region): Split the call to build_annotations into two
13383 calls to build_annotations and build_annotations_2.
13384
13385 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13386
13387 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13388 clear_waiting_for_input with argument.
13389
13390 * xterm.h (x_update_cursor): Remove duplicated prototype.
13391
13392 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13393
13394 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13395
13396 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13397
13398 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13399
13400 * fileio.c (choose_write_coding_system): New fun, extracted
13401 from Fwrite_region.
13402 (Fwrite_region): Use it.
13403
13404 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13405 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13406 (ml_apply, find_handler_clause): Add prototype.
13407
13408 2001-11-16 Eli Zaretskii <eliz@gnu.org>
13409
13410 * config.in: Add #undef HAVE_COFF_H.
13411
13412 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13413 Required for ISC 4.1.
13414
13415 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13416
13417 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13418 Andrew Wiseman <a.wiseman@btclick.com>.
13419
13420 2001-11-16 Kim F. Storm <storm@cua.dk>
13421
13422 The following changes are made to clean up the various internal
13423 references to the fringes to actually use the term `fringe' for
13424 them. Previously, they were called `flags areas', `bitmap areas',
13425 `left/right side of windows', or implicitly as `flags' or
13426 `bitmaps':
13427
13428 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13429 Comments fixed. Use renamed symbols.
13430
13431 * dispnew.c: Comment fix. Use renamed symbols.
13432
13433 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13434 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13435 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13436
13437 * msdos.c: Comment fix.
13438
13439 * w32fns.c: Use renamed symbols.
13440
13441 * w32term.c: Comment fixes. Use renamed symbols.
13442 (fringe_bitmap_type): Renamed from bitmap_type.
13443 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13444 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13445 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13446
13447 * w32term.h: Comment fixes. Use renamed symbols.
13448 (fringes_extra): Renamed from flags_areas_extra.
13449 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13450 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13451 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13452 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13453 (FRAME_X_LEFT_FRINGE_WIDTH):
13454 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13455 (FRAME_X_RIGHT_FRINGE_WIDTH):
13456 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13457
13458 * widget.c: Use renamed symbols.
13459
13460 * window.c: Comment fixes. Use renamed symbols.
13461 (coordinates-in-window-p): Doc fix.
13462
13463 * xdisp.c: Comment fixes. Use renamed symbols.
13464
13465 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13466
13467 * xfns.c: Use renamed symbols.
13468
13469 * xterm.c: Comment fixes. Use renamed symbols.
13470 (fringe_bitmap_type): Renamed from bitmap_type.
13471 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13472 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13473 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13474
13475 * xterm.h: Comment fixes. Use renamed symbols.
13476 (fringes_extra): Renamed from flags_areas_extra.
13477 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13478 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13479 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13480 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13481 (FRAME_X_LEFT_FRINGE_WIDTH):
13482 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13483 (FRAME_X_RIGHT_FRINGE_WIDTH):
13484 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13485
13486 2001-11-15 Jason Rumney <jasonr@gnu.org>
13487
13488 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13489 work for most menu items. From David Ponce
13490 <david.ponce@wanadoo.fr>.
13491
13492 2001-11-15 Gerd Moellmann <gerd@gnu.org>
13493
13494 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13495 Some x_set_* function expect to be called even if old and new
13496 value are equal.
13497
13498 * xdisp.c (build_desired_tool_bar_string): Accept zero
13499 tool_bar_button_relief.
13500
13501 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13502
13503 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13504
13505 * xterm.c (x_draw_bar_cursor): If the background color of the
13506 glyph under the cursor equals the frame's cursor color, use
13507 the glyph's foreground color for drawing the bar cursor.
13508
13509 * dispnew.c (direct_output_forward_char): Fix character/byte
13510 position comparison.
13511
13512 2001-11-15 Miles Bader <miles@gnu.org>
13513
13514 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13515 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13516 Update arguments to find_field.
13517 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13518 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13519 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13520 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13521
13522 2001-11-14 Richard M. Stallman <rms@gnu.org>
13523
13524 * editfns.c (Fpropertize): Allow call with 1 arg.
13525
13526 * dispextern.h (image_background, image_background_transparent):
13527 Conditionalize on HAVE_X_WINDOWS.
13528
13529 2001-11-13 Richard M. Stallman <rms@gnu.org>
13530
13531 * print.c (Fprin1_to_string): Doc fix.
13532
13533 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13534
13535 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13536
13537 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13538
13539 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13540
13541 * eval.c (syms_of_eval): Doc fix.
13542
13543 * coding.c (syms_of_coding): Doc fix.
13544
13545 * doc.c (Fsnarf_documentation): Doc fix.
13546
13547 * dispnew.c (syms_of_display): Doc fix.
13548
13549 * category.c (Fget_unused_category): Doc fix.
13550
13551 * buffer.c (syms_of_buffer): Doc fixes.
13552
13553 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13554
13555 * print.c (prin1, print): Doc fix.
13556
13557 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13558
13559 * fontset.h: Remove declarations of variables
13560 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13561
13562 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13563 `Vclip_large_size_font'.
13564
13565 2001-11-13 Jason Rumney <jasonr@gnu.org>
13566
13567 * w32fns.c: Doc fix.
13568
13569 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13570
13571 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13572
13573 * fns.c: Doc fix.
13574
13575 * emacs.c: Doc fix.
13576
13577 * coding.c: Doc fix.
13578
13579 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13580 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13581 `new style' [w/`doc:' keyword].
13582
13583 2001-11-12 Richard M. Stallman <rms@gnu.org>
13584
13585 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13586 LeaveNotify events. Only FocusIn and FocusOut do that now.
13587 (x_display_and_set_cursor): Do display hollow cursors in active
13588 minibuffer windows when they are not selected.
13589
13590 2001-11-12 Jason Rumney <jasonr@gnu.org>
13591
13592 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13593 * w32term.c: Change doc-string comments to `new style'
13594 [w/`doc:' keyword]. Doc fixes.
13595
13596 * w32fns.c: Don't define max.
13597 (Fx_open_connection): Only execute once.
13598
13599 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13600
13601 * ccl.c: Change macros to use do-while block instead of if-else.
13602 Use braces to follow GNU Coding Standards.
13603
13604 2001-11-11 Richard M. Stallman <rms@gnu.org>
13605
13606 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13607
13608 * lread.c (read_escape): Use end_of_file_error for reporting eof.
13609
13610 * insdel.c (replace_range): Use adjust_markers_for_replace
13611 instead of adjust_markers_for_delete and adjust_markers_for_insert.
13612
13613 * intervals.h: Declare set_text_properties and set_text_properties_1.
13614
13615 * textprop.c (set_text_properties_1): New subroutine
13616 broken out of set_text_properties.
13617 (set_text_properties): Use set_text_properties_1.
13618
13619 * intervals.c (graft_intervals_into_buffer):
13620 Use set_text_properties_1 to clear out properties.
13621
13622 * search.c (Freplace_match): Use replace_range to insert
13623 and delete. Don't request property inheritance from
13624 surrounding text.
13625
13626 2001-11-10 Jason Rumney <jasonr@gnu.org>
13627
13628 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
13629 vertical fonts. Allow them if face name is explicitly specified.
13630 Do not give up if we find a font that cannot be converted to an xlfd.
13631
13632 2001-11-10 Gerd Moellmann <gerd@gnu.org>
13633
13634 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13635 instead of malloc/free.
13636
13637 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13638
13639 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13640 Coding Standards.
13641 (Finternal_set_lisp_face_attribute): Likewise.
13642
13643 * buffer.c (Fbury_buffer): Likewise.
13644
13645 * indent.c (current_column_1): Remove unused variable `prev_col'.
13646
13647 * coding.c (encode_coding): Use precomputed value of `src'.
13648 (encode_coding): Remove unused variable `src_end'.
13649 (code_convert_region): Remove unused variables `count'.
13650
13651 2001-11-07 Jason Rumney <jasonr@gnu.org>
13652
13653 * w32term.c (x_display_and_set_cursor): Do not move system caret
13654 if cursor_glyph is NULL.
13655
13656 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13657
13658 * keymap.c (access_keymap): Fix compilation error.
13659
13660 2001-11-07 Miles Bader <miles@gnu.org>
13661
13662 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
13663
13664 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13665
13666 * intervals.c (graft_intervals_into_buffer):
13667 Remove #ifdef'd-out code.
13668 (graft_intervals_into_buffer): Remove unused variable `middle'.
13669
13670 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13671 code (eval-current-buffer).
13672 Change doc-string comments to `new style' [w/`doc:' keyword].
13673
13674 2001-11-06 Richard M. Stallman <rms@gnu.org>
13675
13676 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
13677
13678 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
13679
13680 * lread.c (read1): Fix behavior with nested backquoting.
13681
13682 * keyboard.c (make_lispy_event): Check integerness and fix
13683 Lisp_Object/int mixup.
13684
13685 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13686
13687 * fns.c (copy_hash_table): Remove unused variable `v'.
13688
13689 * fontset.c (fontset_font_pattern): Remove unused variable
13690 `family_registry'.
13691
13692 * indent.c (current_column_1): Remove unused variable `prev_col'.
13693
13694 2001-11-05 Richard M. Stallman <rms@gnu.org>
13695
13696 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
13697
13698 * buffer.c (Fkill_buffer): Don't delete auto save file
13699 if buffer is modified.
13700
13701 2001-11-05 Andrew Innes <andrewi@gnu.org>
13702
13703 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13704 CHECK_NUMBER_CDR.
13705
13706 2001-11-05 Richard M. Stallman <rms@gnu.org>
13707
13708 * unexelf.c (unexec): Minor changes; clean up comments.
13709
13710 2001-11-05 Sam Steingold <sds@gnu.org>
13711
13712 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
13713
13714 2001-11-05 Andreas Schwab <schwab@suse.de>
13715
13716 * sound.c (sound_perror): Save errno from being clobbered.
13717
13718 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
13719
13720 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13721 the program image directly.
13722
13723 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13724
13725 * buffer.h (Fbuffer_local_value): Add prototype.
13726
13727 2001-11-04 Richard M. Stallman <rms@gnu.org>
13728
13729 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13730 and CHECK_BUFFER.
13731
13732 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13733 (record_char): Likewise.
13734
13735 * keyboard.c (make_lispy_event): Don't insist a drag event must
13736 move to a different buffer position. Instead, check for moving at
13737 least double_click_fuzz.
13738
13739 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
13740
13741 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
13742
13743 * indent.c (current_column_1, Fmove_to_column): Separate the code
13744 for display-table glyphs from the code for buffer text, to fix
13745 bugs in the former.
13746
13747 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
13748
13749 * buffer.c (Fbuffer_local_value): New function.
13750 (syms_of_buffer): Defsubr it.
13751
13752 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13753 value of `cursor-in-non-selected-windows'.
13754
13755 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13756 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13757 (syms_of_xdisp): Initialize it.
13758
13759 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13760
13761 * xfns.c (Fx_create_frame): Doc fix.
13762
13763 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13764 keyword].
13765
13766 * eval.c (top_level_value, top_level_set): Remove commented and
13767 #ifdef'd-out code.
13768 (Fdefvar): Fix usage in doc-string.
13769
13770 2001-11-03 Richard M. Stallman <rms@gnu.org>
13771
13772 * xfns.c: Include unistd.h, if it exists.
13773
13774 * editfns.c: Move the include of ctype.h after unistd.h.
13775
13776 * gmalloc.c: Test BROKEN_PROTOTYPES.
13777
13778 2001-11-03 Ken Raeburn <raeburn@gnu.org>
13779
13780 * lisp.h (CHECK_STRING_CAR): New macro.
13781 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13782 treating XCAR and XCDR as lvalues.
13783 (openp): Use CHECK_STRING_CAR.
13784 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
13785
13786 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
13787
13788 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13789 (SIGMASKTYPE): Define.
13790
13791 * syssignal.h (sigunblock): Don't define if already defined.
13792
13793 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13794
13795 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13796 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13797 Fix typos in comments.
13798
13799 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13800 and #ifdef'd-out code.
13801 Fix and reindent comments.
13802
13803 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
13804
13805 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13806 argument `i' in macros.
13807
13808 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13809 `i' in macros.
13810
13811 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13812 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13813 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13814 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13815 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13816 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13817 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13818 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13819 in macros.
13820
13821 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13822 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13823 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13824 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13825 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13826 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13827 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13828 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13829 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13830 (remove unused second argument).
13831
13832 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
13833
13834 * syntax.c (describe_syntax): New wrapper.
13835 (Finternal_describe_syntax_value): Rename from describe_syntax.
13836 Don't insert space at front and \n at the end.
13837 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
13838
13839 * regex.c (re_wctype): Try to fix some warnings.
13840 (regcomp, regexec): Don't forget the __restrict.
13841
13842 2001-11-02 Richard M. Stallman <rms@gnu.org>
13843
13844 * textprop.c (Fget_char_property): Doc fix.
13845
13846 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13847
13848 * process.c (Fstart_process): Add usage to doc-string.
13849
13850 * data.c (Fsetq_default): Ditto.
13851
13852 * callint.c (Finteractive): Ditto.
13853
13854 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
13855
13856 * macros.c: Don't include keymap.h any more.
13857
13858 2001-11-01 Richard M. Stallman <rms@gnu.org>
13859
13860 * data.c (Fmake_local_variable): Doc fix.
13861
13862 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13863 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
13864
13865 * keymap.c (Fdescribe_buffer_bindings): Print character property
13866 bindings along with or instead of the buffer local map.
13867 Make the overriding maps override what they should.
13868
13869 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13870
13871 * window.c (grow_mini_window): Fix typo in comment.
13872
13873 2001-11-01 Gerd Moellmann <gerd@gnu.org>
13874
13875 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13876 (XTset_vertical_scroll_bar): Likewise.
13877
13878 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13879 instead of IMAGE_BACKGROUND.
13880
13881 * xfns.c (four_corners_best): Reindent.
13882
13883 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
13884 Handle :box so that it is possible to specify sexprs.
13885
13886 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13887
13888 * s/hpux11.h: New file.
13889
13890 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13891
13892 * emacs.c (USAGE1): Show command line option --no-window-system
13893 instead of --no-windows in usage.
13894 (standard_args): Rename --no-windows to --no-window-system.
13895 (bug_reporting_address): Follow Emacs coding conventions.
13896
13897 * eval.c (Fcommandp): Doc fix.
13898 Change doc-string comments to `new style' [w/`doc:' keyword].
13899
13900 * frame.c (Fframe_live_p): Doc fix.
13901
13902 * buffer.c (selective-display-ellipses): Doc fix.
13903
13904 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13905
13906 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13907
13908 * xfaces.c (realize_x_face): If C is not a single-byte character,
13909 set the face's colors_copied_bitwise_p instead of the defaulted_p
13910 members which have a different meaning.
13911 (free_face_colors): Do nothing for a face whose colors have been
13912 copied bitwise.
13913
13914 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
13915
13916 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13917
13918 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13919 [w/`doc:' keyword].
13920
13921 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13922
13923 * fns.c (require_unwind): Return Lisp_Object.
13924
13925 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13926
13927 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13928 (last-input-char): Revert doc-string to be the same as the
13929 doc-string of `last-input-event'.
13930
13931 * xdisp.c: Fix typos in comments.
13932
13933 2001-10-31 Gerd Moellmann <gerd@gnu.org>
13934
13935 * window.c (grow_mini_window): Handle case that the root
13936 window is already smaller than the nominal mininum height.
13937
13938 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13939
13940 * emacs.c (main): Don't call keys_of_macros any more.
13941
13942 * lisp.h (keys_of_macros): Remove.
13943
13944 * macros.c (keys_of_macros): Remove.
13945
13946 * xfaces.c (Fface_attribute_relative_p): Declare args.
13947
13948 2001-10-30 Jason Rumney <jasonr@gnu.org>
13949
13950 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13951 (enum_font_cb2): Ignore fonts with vertical orientation.
13952
13953 2001-10-30 Richard M. Stallman <rms@gnu.org>
13954
13955 * keyboard.c (Finput_pending_p): Doc fix.
13956
13957 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13958
13959 * xterm.c (x_after_update_window_line): Don't run the code
13960 clearing in borders for rows whose visible height is 0.
13961
13962 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13963 resized_p flag is set. If not set, use the much less flickering
13964 method previously used.
13965
13966 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13967
13968 * frame.h (struct frame) <resized_p>: New member.
13969
13970 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13971 as large as the number of bytes to convert.
13972
13973 * lread.c (to_multibyte): New function.
13974 (read1): Use it.
13975
13976 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13977
13978 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13979
13980 2001-10-30 Gerd Moellmann <gerd@gnu.org>
13981
13982 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
13983 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13984 if the row's fill_line_p is set and drawing the last glyph with
13985 DRAW_IMAGE_{RAISED,SUNKEN}.
13986
13987 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13988
13989 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13990
13991 * xmenu.c: Include coding.h and charset.h.
13992 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13993 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13994 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13995 Explicitly set wv->help. Use `TRUE' rather than `True'.
13996 (menu_help_callback): Use empty_string.
13997
13998 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13999 (Fx_popup_dialog): Explicitly init f.
14000 (w32_menu_display_help): Use empty_string.
14001
14002 2001-10-29 Richard M. Stallman <rms@gnu.org>
14003
14004 * fns.c (Frequire): Detect recursive try to require the same
14005 feature 3 or more levels deep, and get error.
14006 (require_unwind): New subroutine.
14007 (require_nesting_list): New variable.
14008 (syms_of_fns): Init and staticpro it.
14009
14010 * print.c (print_object): Clarify indication of insertion type.
14011
14012 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14013
14014 * coding.c (syms_of_coding): Document that locale-coding-system is
14015 used for decoding input on X.
14016
14017 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14018
14019 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14020
14021 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14022 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14023
14024 2001-10-29 Gerd Moellmann <gerd@gnu.org>
14025
14026 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14027 use NO_CURSOR if cursor_in_non_selected_windows is false.
14028
14029 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14030 the slant attribute if FRAME is t.
14031
14032 * xfns.c (x_set_internal_border_width): Set frame garbaged
14033 when X window doesn't exist yet.
14034
14035 * xterm.c (x_after_update_window_line): Clear internal border
14036 in different circumstances.
14037
14038 * xterm.c (XTread_socket) <KeyPress>: Don't use
14039 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14040 <handa@etl.go.jp>.
14041
14042 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14043
14044 * m/ibms390.h: New file. From Adam Thornton
14045 <athornton@sinenomine.net>.
14046
14047 2001-10-28 Gerd Moellmann <gerd@gnu.org>
14048
14049 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
14050
14051 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14052 a loop counter.
14053
14054 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14055
14056 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
14057
14058 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14059 keyword].
14060 Fix typos in comments.
14061
14062 * emacs.c (bug_reporting_address): New function.
14063 Use it when displaying usage message.
14064
14065 * minibuf.c (read_minibuf): Remove unused external declaration of
14066 variable `Qread_only'.
14067
14068 * keymap.c (access_keymap): Remove unused variable `charset'.
14069
14070 2001-10-28 Miles Bader <miles@gnu.org>
14071
14072 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14073 Remove #ifdef'd-out code.
14074 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14075 (syms_of_xfaces): Initialize them.
14076
14077 2001-10-27 Jason Rumney <jasonr@gnu.org>
14078
14079 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14080 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14081 position using the system caret.
14082
14083 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14084 (w32_system_caret_height, w32_system_caret_x)
14085 (w32_system_caret_y): New variables for tracking system caret.
14086 (w32_initialize): Initialize them.
14087 (x_display_and_set_cursor): Make system caret follow the active cursor.
14088
14089 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14090 New messages types.
14091
14092 * w32term.c (note_mouse_highlight): Clear old help_echo.
14093
14094 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14095
14096 * xterm.c: Fix typo in a comment.
14097
14098 * emacs.c: Fix typos in comments.
14099 Remove unnecessary spaces.
14100 Change doc-string comments to `new style' [w/`doc:' keyword].
14101 (USAGE2): Fix typos in usage string.
14102
14103 * xterm.c: Fix typo in a comment.
14104
14105 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14106 emacs.c.
14107
14108 2001-10-27 Gerd Moellmann <gerd@gnu.org>
14109
14110 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
14111 instead of 1/2 line_height in the heuristic for skipping
14112 farther backward when target_y was not reached.
14113
14114 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14115 Display errno only if non-zero.
14116 (sound_warning): New function.
14117 (vox_configure): Don't treat failing to set sample rate as error.
14118 (various places): Improve error messages.
14119
14120 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14121
14122 * fileio.c (Faccess_file): Run the argument filename through
14123 Fexpand_file_name, before using it.
14124
14125 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14126 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14127
14128 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14129
14130 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14131
14132 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14133 Fix clearing in the case of scroll bars on the right.
14134
14135 2001-10-26 Juanma Barranquero <lektu@terra.es>
14136
14137 * w32gui.h (XImage): Add a dummy typedef.
14138
14139 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14140
14141 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
14142
14143 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14144
14145 * frame.c (Fframe_parameter): Fix last change.
14146
14147 * fileio.c: Revert last change (which removed old commented-out
14148 version of expand-file-name). Add a comment that explains why
14149 this old version should not be removed.
14150
14151 2001-10-25 Gerd Moellmann <gerd@gnu.org>
14152
14153 * frame.c (Fframe_parameter): Fix a bug whereby some
14154 ``artificial'' frame parameters, like `minibuffer' were not
14155 obtained by calling Fframe_parameters.
14156
14157 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14158 cursor differently.
14159
14160 * xdisp.c (move_it_vertically_backward): Compute line height
14161 differently. Add heuristic to try to be more compatible to 20.x.
14162
14163 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14164
14165 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14166
14167 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14168 boolean.
14169
14170 2001-10-25 Miles Bader <miles@gnu.org>
14171
14172 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14173 BG is a pointer to a structure, not a structure.
14174 (gif_format, png_format): Add missing commas.
14175
14176 2001-10-24 Richard M. Stallman <rms@gnu.org>
14177
14178 * xfaces.c (Fface_attributes_as_vector): New function.
14179 (syms_of_xfaces): Defsubr it.
14180
14181 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14182
14183 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14184 variable `area'.
14185
14186 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14187
14188 * search.c (scan_newline): Remove unused variable `selective_display'.
14189
14190 2001-10-25 Miles Bader <miles@gnu.org>
14191
14192 * dispextern.h (struct image): Add `background',
14193 `background_valid', and `background_transparent' fields.
14194 (image_background, image_background_transparent): New declarations.
14195 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14196 * xfns.c (image_background, image_background_transparent)
14197 (four_corners_best): New functions.
14198 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14199 (gs_format): Add `:background' entry.
14200 (lookup_image): Set IMG's background color if specified.
14201 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14202 when appropriate.
14203 (x_clear_image_1): Reset `background_valid' and
14204 `background_transparent_valid' fields.
14205 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14206 calculating it here. Set IMG's background_transparent field.
14207 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14208 (enum png_keyword_index): Add PNG_BACKGROUND.
14209 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14210 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14211 (enum gif_keyword_index): Add GIF_BACKGROUND.
14212 (enum gs_keyword_index): Add GS_BACKGROUND.
14213 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14214 Pre-calculate image background color where necessary.
14215 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14216 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14217 color to use for image glyph reliefs.
14218
14219 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14220
14221 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14222 in full-width rows.
14223
14224 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14225 Fix clearing of area not covered by scroll bar.
14226
14227 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14228
14229 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14230 and `real_start'.
14231 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14232 (glyph_rect): Remove unused variable `area'.
14233
14234 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14235
14236 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14237
14238 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14239 (row_containing_pos): Take additional argument DY.
14240 Treat rows ending in middle of char differently.
14241 (display_line): Handle tabs on window systems differently.
14242
14243 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14244 with additional argument.
14245
14246 * dispextern.h (row_containing_pos): Adjust prototype.
14247
14248 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14249 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14250 (try_window_id, try_window_reusing_current_matrix)
14251 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14252 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14253
14254 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14255
14256 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14257 gnuemacs).
14258 (HAVE_BOXES): Fix typo in comment.
14259 (push_menu_pane): Fix typo in comment.
14260
14261 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14262 of `Qwhen'.
14263 (single_display_prop_string_p): Remove unused local declarations
14264 of `Qwhen' and `Qmargin'.
14265 (string_buffer_position): Remove unused variable `around'.
14266 (store_frame_title): Remove unused variable `width'.
14267
14268 * window.c: Don't define max.
14269 (coordinates_in_window): Remove unused variable `uy'.
14270
14271 * widget.c: Don't define max.
14272
14273 * process.c: Don't define max.
14274 (create_process): Remove unused variable `buffer'.
14275
14276 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14277
14278 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14279
14280 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14281
14282 * xfaces.c (Finternal_set_lisp_face_attribute)
14283 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14284 frame is on a windowed display.
14285
14286 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14287
14288 * dispnew.c (sync_window_with_frame_matrix_rows):
14289 Fix handling of windows which aren't full-width, fix handling
14290 of marginal areas.
14291
14292 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14293
14294 2001-10-23 Andreas Schwab <schwab@suse.de>
14295
14296 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14297 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14298
14299 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14300
14301 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14302 REAL_END. Notice if cursor gets overwritten.
14303 (notice_overwritten_cursor): Take X positions as parameters.
14304 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14305 around call to x_draw_glyphs.
14306
14307 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14308
14309 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14310 instead of C) and usage.
14311
14312 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14313 of C) and usage.
14314
14315 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14316 `left', `max_width' and `max_height'.
14317
14318 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14319
14320 * xdisp.c (display_line): For a tab continued to the next line,
14321 set row's ends_in_middle_of_char_p.
14322
14323 2001-10-22 Gerd Moellmann <gerd@gnu.org>
14324
14325 * xdisp.c (display_line): Fix computation of continuation lines
14326 width for TABs.
14327
14328 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14329
14330 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14331 `Qlaplace'.
14332
14333 * fileio.c: Remove unused code.
14334
14335 2001-10-22 Miles Bader <miles@gnu.org>
14336
14337 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14338 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14339 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14340
14341 2001-10-21 Jason Rumney <jasonr@gnu.org>
14342
14343 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14344
14345 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14346
14347 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14348 (Finsert_string): Avoid the multi-line string literals warning.
14349
14350 2001-10-22 Miles Bader <miles@gnu.org>
14351
14352 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14353 (Fdocumentation): Don't use it.
14354 (syms_of_doc): Don't initialize it.
14355
14356 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14357 * print.c (Fwith_output_to_temp_buffer): Likewise.
14358 * window.c (Fsave_window_excursion): Likewise.
14359 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14360 (Fsave_restriction): Likewise.
14361 * eval.c (Frun_hooks, Frun_hook_with_args)
14362 (Frun_hook_with_args_until_failure)
14363 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14364 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14365 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14366 (Funwind_protect, Fcondition_case): Likewise.
14367 * coding.c (Ffind_operation_coding_system): Likewise.
14368 * keyboard.c (Ftrack_mouse): Likewise.
14369
14370 2001-10-21 Miles Bader <miles@gnu.org>
14371
14372 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14373 (Fmake_hash_table): Add usage: string to doc string.
14374 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14375 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14376 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14377 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14378 (Fml_prefix_argument_loop): Likewise.
14379
14380 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14381
14382 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14383
14384 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14385 style' [w/`doc:' keyword].
14386
14387 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14388 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14389 comments to `new style' [w/`doc:' keyword].
14390
14391 2001-10-21 Jason Rumney <jasonr@gnu.org>
14392
14393 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14394
14395 * w32term.c (remember_mouse_glyph): New function.
14396 (w32_mouse_position): Use it.
14397 (note_mouse_movement): If the mouse moved off the glyph, remember
14398 its new position.
14399
14400 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14401 (w32_display_info): Add mouse_face_overlay.
14402
14403 * w32term.c (notice_overwritten_cursor): Renamed from
14404 note_overwritten_text_cursor. Rewritten to take glyph widths into
14405 account.
14406 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14407 (fast_find_string_pos): New function.
14408 (fast_find_position): Return the correct vpos. Add parameter
14409 STOP. In the final row, stop before glyphs having STOP as object.
14410 Don't consider glyphs that are not from a buffer.
14411 (fast_find_position) [0]: Add a presumably more correct version
14412 for after 21.1.
14413 (expose_window_tree, expose_frame): Don't compute intersections here.
14414 (expose_window): Do it here instead.
14415 (expose_window_tree, expose_window, expose_line): Return 1 when
14416 overwriting mouse-face.
14417 (expose_window): If W is the window currently being updated, mark
14418 the frame garbaged.
14419 (expose_frame): If mouse-face was overwritten, redo it.
14420 (x_use_underline_position_properties): New variable.
14421 (syms_of_xterm): DEFVAR_BOOL it.
14422 (x_draw_glyph_string): Add comment to use it in future.
14423 (x_draw_glyph_string): Restore clipping after drawing box.
14424 Fix a computation of the underline position.
14425 (w32_get_glyph_string_clip_rect): Minor cleanup.
14426 (x_fill_stretch_glyph_string): Remove an assertion.
14427 (x_produce_glyphs): Don't convert multibyte characters
14428 to unibyte characters in unibyte buffers.
14429 (cursor_in_mouse_face_p): New function.
14430 (x_draw_stretch_glyph_string): Use it to choose a different GC
14431 when drawing a cursor within highlighted text. Don't draw
14432 background again if it has already been drawn.
14433 (x_draw_glyph_string_box): Don't draw a full-width
14434 box just because the glyph row's full_width_p flag is set.
14435 (x_draw_glyphs): Fix computation of rightmost x for
14436 full-width rows.
14437 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14438 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14439 change bottom shadow accordingly. Some cleanup.
14440 (x_update_window_end): Handle overwritten mouse face
14441 also for tool bar windows.
14442 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14443 DRAW is DRAW_IMAGE_RAISED.
14444 (clear_mouse_face): Return 1 if text with mouse face was
14445 actually redrawn. Make the function static.
14446 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14447 optimize away highlighting if we pass over that same overlay again.
14448 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14449 to detect a case where we have to highlight a different region
14450 despite not having left the currently highlighted region.
14451 Set mouse_face_overlay in the x_display_info. Avoid changing the
14452 mouse pointer shape when show_mouse_face has already done it, or
14453 there is no need. Handle mouse-face and help-echo in strings.
14454 (glyph_rect): New function.
14455 (w32_mouse_position): Use it to raise the threshold for mouse
14456 movement event generation.
14457 (w32_initialize_display_info): Initialize the x_display_info's
14458 mouse_face_overlay.
14459 (w32_set_vertical_scroll_bar): Don't clear a zero height
14460 or width area.
14461 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14462 a widget to zero height.
14463
14464 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14465 Protect unibyte strings created by replacing their multibyte
14466 equivalents in menu_items.
14467 (w32_menu_show): Don't overwrite an item's name with its key
14468 description in case the description is a multibyte string.
14469 (single_submenu): Some cleanup.
14470
14471 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14472 (postprocess_image): New function.
14473 (lookup_image): Call it for all image types except PostScript.
14474 (x_kill_gs_process): Call postprocess_image.
14475 (tiff_error_handler, tiff_warning_handler): New functions.
14476 (tiff_load): Install them as handlers.
14477 (x_kill_gs_process): Recognize if someone has cleared the image
14478 cache under us.
14479 (valid_image_p): Protect better against invalid image
14480 specifications. Previous code could signal an error.
14481 (Fx_hide_tip, Fshow_tip): Doc fix.
14482 (Fv_max_tooltip_size): New variable.
14483 (syns_of_xfns): DEFVAR_LISP it.
14484 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14485 window buffer to *tip* right after creating the frame. Set frame's
14486 window_width. Use a maximum tooltip size specified by
14487 Vx_max_tooltip_size, if that has valid contents.
14488 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14489 Make sure the tooltip is completely visible.
14490 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14491 (Fx_create_frame): Adjust the frame's height for presence
14492 of the tool bar before calling x_figure_window_size.
14493 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14494 when the window gets smaller.
14495 (x_set_foreground_color): Set frame's cursor_pixel.
14496 (x_set_foreground_color, x_set_background_color): Cleaned up.
14497 (x_set_font): Handle case of x_new_fontset returning the same name
14498 as before, although there was a change in fontsets.
14499
14500 2001-10-21 Miles Bader <miles@gnu.org>
14501
14502 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14503 (Flogxor): Add usage: string to doc string.
14504 * charset.c (Fstring): Likewise.
14505 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14506 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14507
14508 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14509
14510 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14511
14512 * alloc.c: Reindent DEFUNs with doc: keywords.
14513
14514 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14515
14516 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14517 keyword].
14518
14519 See ChangeLog.9 for earlier changes.
14520
14521 ;; Local Variables:
14522 ;; coding: iso-2022-7bit
14523 ;; End:
14524
14525 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14526 Copying and distribution of this file, with or without modification,
14527 are permitted provided the copyright notice and this notice are preserved.
14528
14529 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4