(Auto Reverting Dired): Minor changes.
[bpt/emacs.git] / src / ChangeLog
... / ...
CommitLineData
12004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
4
5 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
6
7 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
8 on Mac OSX.
9
102004-06-16 Luc Teirlinck <teirllm@auburn.edu>
11
12 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
13
142004-06-16 Kim F. Storm <storm@cua.dk>
15
16 * dispextern.h (Vimage_types): Remove extern.
17
182004-06-16 Miles Bader <miles@gnu.org>
19
20 * image.c (lookup_image_type): Initialize image type if necessary.
21
222004-06-15 Kim F. Storm <storm@cua.dk>
23
24 * xdisp.c (try_cursor_movement): Exclude header line from scroll
25 margin at top of window.
26 (try_window_reusing_current_matrix): Calculate proper cursor position
27 after scrolling up with non-zero scroll margin, as the old cursor
28 position corresponds to value of PT before executing this command.
29 (try_window_id): Consider scroll margin at bottom of window too;
30 otherwise we fail to scroll when hl-line-mode is enabled.
31
32 * syntax.c (skip_chars): Only recognize [:class:] when it has the
33 proper format and class is a lower-case word.
34
352004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
36
37 * gtkutil.c (xg_get_image_for_pixmap): New function.
38 (xg_get_gdk_pixmap_and_mask): Removed.
39 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
40 xg_get_gdk_pixmap_and_mask.
41
42 * xterm.h (struct x_display_info): Typo in comment fixed.
43
442004-06-14 Juanma Barranquero <lektu@terra.es>
45
46 * dispextern.h (Vimage_types): Make it conditional on
47 HAVE_WINDOW_SYSTEM.
48
49 * image.c (Vimage_types): Move from xdisp.c.
50 (Vimage_type_cache): New variable.
51 (define_image_type): New argument indicating whether an image
52 library was loaded; cache loaded status and return t on success,
53 nil otherwise.
54 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
55 (w32_delayed_load): New function to load an image library from a
56 list of possible filenames.
57 (init_xpm_functions, init_png_functions, init_jpeg_functions)
58 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
59 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new
60 argument.
61 (Finit_image_library): New function, extracted from `init_image'.
62 Try to initialize an image library on demand and cache whether we
63 were successful or not.
64 (syms_of_image): Initialize `Vimage_types' and
65 `Vimage_type_cache'. Add recognized image types to Vimage_types.
66 Export `init-image-library'.
67 (init_image): Remove initialization of all image types, except xbm
68 and pbm.
69
70 * xdisp.c (Vimage_types): Delete (moved to image.c).
71
722004-06-14 Andreas Schwab <schwab@suse.de>
73
74 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
75 Avoid calling specbind when completion-regexp-list is empty.
76
772004-06-13 Richard M. Stallman <rms@gnu.org>
78
79 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
80 (re_wctype, re_iswctype, re_wctype_to_bit):
81 Non-function definitions moved here from regex.c.
82
83 * regex.c (re_wctype, re_iswctype): Function defs longer static.
84 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
85 (re_wctype, re_iswctype, re_wctype_to_bit):
86 Non-function definitions moved to regex.h.
87
88 * window.c (Fselect_window): Doc fix.
89
90 * syntax.c: Include regex.h.
91 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
92 If requested, make a list of classes, then check the scanned
93 chars for membership in them.
94 (in_classes): New function.
95 Doc fix.
96
97 * keyboard.c (cmd_error): Don't call any_kboard_state
98 if inside a recursive edit level.
99
1002004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
101
102 * keyboard.c (command_loop): Call any_kboard_state before
103 command_loop_2 when at top level.
104
1052004-06-13 Andreas Schwab <schwab@suse.de>
106
107 * print.c (print_object): Always use %ld for printing EMACS_INT.
108
109 * keyboard.c (cancel_hourglass_unwind): Return a value.
110 (modify_event_symbol): Always use %ld for printing EMACS_INT.
111 (Fexecute_extended_command): Likewise.
112
113 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
114 avoid clashes.
115 (SYNTAX): Likewise.
116 (SYNTAX_WITH_FLAGS): Likewise.
117 (SYNTAX_MATCH): Likewise.
118
119 * syntax.c (char_quoted): Avoid warning about undefined operation.
120 (find_defun_start): Likewise.
121 (scan_lists): Likewise.
122 (INC_FROM): Likewise.
123 (scan_sexps_forward): Likewise.
124
125 * image.c: Include <ctype.h>.
126
127 * xfaces.c (face_attr_equal_p): Declare parameters.
128
1292004-06-13 Kenichi Handa <handa@m17n.org>
130
131 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
132
1332004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
134
135 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
136
1372004-06-12 Kenichi Handa <handa@m17n.org>
138
139 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
140 ccl_prog_stack_struct and update it.
141 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
142 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
143 ccl->eof_ic on EOF.
144 (ccl_debug_hook): New function.
145 (struct ccl_prog_stack): New member eof_ic.
146 (ccl_driver): Handle EOF in subrountine call correctly.
147
1482004-06-11 Kenichi Handa <handa@m17n.org>
149
150 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
151
1522004-06-11 Kim F. Storm <storm@cua.dk>
153
154 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
155
1562004-06-11 Juanma Barranquero <lektu@terra.es>
157
158 * keyboard.c (Fposn_at_point): Doc fix.
159
1602004-06-11 David Kastrup <dak@gnu.org>
161
162 * search.c (match_limit): Don't flag an error if match-data
163 exceeding the allocated search_regs.num_regs gets requested, just
164 return Qnil.
165
1662004-06-08 Miles Bader <miles@gnu.org>
167
168 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
169
1702004-06-07 Juanma Barranquero <lektu@terra.es>
171
172 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
173 (Fcurrent_time_string, Fcurrent_time_zone)
174 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
175
1762004-06-07 Miles Bader <miles@gnu.org>
177
178 * xfaces.c (struct named_merge_point): New type.
179 (push_named_merge_point): New function.
180 (merge_named_face): New function.
181 (merge_face_ref, face_at_buffer_position, face_at_string_position):
182 Use `merge_named_face'.
183 (merge_face_inheritance): Function removed.
184 (merge_face_ref): Renamed from `merge_face_vector_with_property'.
185 Add new `err_msgs' and `named_merge_points' args. Return error
186 status. Only print error messages if ERR_MSGS is true. Don't try to
187 do :inherit attribute validation.
188 (merge_face_heights): Handle `unspecified' in both directions.
189 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
190 Call `merge_face_ref' instead of `merge_face_inheritance'.
191 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
192 (compute_char_face, face_at_buffer_position)
193 (face_at_string_position): Call `merge_face_ref' instead of
194 `merge_face_vector_with_property'.
195
1962004-06-07 Kenichi Handa <handa@m17n.org>
197
198 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
199 the necessary places.
200
2012004-06-07 Kim F. Storm <storm@cua.dk>
202
203 * process.c (Fdelete_process): Undo 2004-05-28 change.
204 Instead, call status_notify also for network process.
205 (status_message): Use process instead of status as arg.
206 Give messages "deleted" or "connection broken by remote peer" for
207 an exited network process.
208 (status_notify): Change call to status_message.
209 (read_process_output): Increase readmax to 4096. Do not increase
210 buffer size for datagram channels (default is now large enough).
211
2122004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
213
214 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
215 problem due to newly defined variable.
216
2172004-06-06 Miles Bader <miles@gnu.org>
218
219 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
220 immediately if non-interactive or not initialized.
221
2222004-06-05 Richard M. Stallman <rms@gnu.org>
223
224 * minibuf.c (Fcompleting_read): Doc fix.
225
2262004-06-05 Andreas Schwab <schwab@suse.de>
227
228 * macfns.c (x_create_tip_frame): Fix declaration after statement.
229
2302004-06-05 Juanma Barranquero <lektu@terra.es>
231
232 * keymap.c (Fdescribe_vector): Fix docstring.
233 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
234
2352004-06-05 Miles Bader <miles@gnu.org>
236
237 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
238 attributes have different values than the default face.
239
2402004-06-04 Eli Zaretskii <eliz@gnu.org>
241
242 * xfaces.c (x_supports_face_attributes_p): Make this function
243 conditional on HAVE_WINDOW_SYSTEM.
244 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]: Don't
245 call x_supports_face_attributes_p if it was not compiled in.
246
2472004-06-04 Miles Bader <miles@gnu.org>
248
249 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
250 from Ftty_supports_face_attributes_p.
251 (x_supports_face_attributes_p): New function.
252 (Ftty_supports_face_attributes_p): Function deleted.
253 (Fdisplay_supports_face_attributes_p): New function.
254 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
255 (face_attr_equal_p): New function.
256 (lface_equal_p): Use it.
257
2582004-06-03 Juanma Barranquero <lektu@terra.es>
259
260 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
261 (Vw32_color_map): Fix typo in docstring.
262 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
263 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
264 Make argument names match their use in docstring.
265
2662004-06-02 Juanma Barranquero <lektu@terra.es>
267
268 Work around bugs/problems with MinGW builds of graphics libraries
269 called from MSVC builds of Emacs.
270
271 * image.c (lookup_image): Make pointer to img static.
272 (png_read_from_memory): Disable "global" optimization.
273
2742004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
275
276 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
277
2782004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
279
280 * macfns.c: Don't include ccl.h.
281 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
282 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
283 TextUtils.h.
284 (Fx_create_frame): Sync with xfns.c. Initialize cursor
285 descriptors.
286 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
287 display height/width.
288 (compute_tip_xy, Vx_max_tooltip_size): Declare.
289 (unwind_create_tip_frame, compute_tip_xy): New functions.
290 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
291 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
292 and last_show_tip_args.
293
294 * macgui.h [!MAC_OSX]: Include Gestalt.h.
295 (Cursor, No_Cursor): New defines.
296 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility
297 macro.
298 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
299
300 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
301
302 * macterm.c: Don't include Gestalt.h.
303 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
304 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
305 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
306 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
307 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
308 (construct_mouse_click, XTmouse_position)
309 (x_scroll_bar_report_motion, x_calc_absolute_position)
310 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
311 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
312 (note_mouse_movement): Clear the mouse face and reset the pointer
313 shape when the pointer goes outside the frame without grabbing.
314 (mac_front_window): New function.
315 (mac_window_to_frame): New macro.
316 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
317 (do_window_activate, do_window_deactivate, do_app_resume)
318 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
319 (do_zoom_window, mac_do_receive_drag, XTread_socket)
320 (mac_check_for_quit_char): Use mac_front_window and/or
321 mac_window_to_frame.
322 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
323 scroll-bar click event.
324 (mac_define_frame_cursor): Change the pointer shape.
325 (x_free_frame_resources): Reset tip_window to NULL when it is
326 disposed.
327 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
328 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize
329 arrow_cursor.
330 (do_window_update): Don't do anything if the updated window is the
331 tooltip window.
332 (do_mouse_moved): Handle mouse movement events here (previously in
333 XTread_socket). Clear the mouse face if
334 dpyinfo->mouse_face_hidden is set.
335 (do_os_event, do_events): Remove (now in XTread_socket).
336 (XTread_socket): Immediately return if interrupt_input_blocked.
337 Loop until all the events in the queue are processed. Rearrange
338 codes for mouse grabbing. Add tooltip support. Include the
339 contents of do_os_event and do_events. Remove mouse movement
340 handling (now in do_mouse_moved). Add the case where
341 Vmouse_highlight has an integer value.
342 (NewMacWindow): Remove.
343 (make_mac_frame): Do what NewMacWindow previously did. Don't do
344 excess initializations.
345 (make_mac_terminal_frame): Previous initializations in
346 make_mac_frame are moved here.
347 (mac_initialize_display_info): Initialize
348 dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
349
350 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
351 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
352
3532004-05-29 Richard M. Stallman <rms@gnu.org>
354
355 * lisp.h (truncate_undo_list): Update decl.
356
357 * alloc.c (undo_outer_limit): New variable.
358 (syms_of_alloc): Defvar it.
359 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
360
361 * undo.c (truncate_undo_list): New arg LIMITSIZE.
362
363 * alloc.c (lisp_align_malloc): Check for base == 0
364 regardless of HAVE_POSIX_MEMALIGN.
365 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
366
3672004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
368
369 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
370 (marker_blocks_pending_free): Remove.
371 (Fgarbage_collect): Sweep after cleaning up undo-lists.
372 Mark the undo lists after claning them up.
373 Don't free block in marker_blocks_pending_free.
374 (mark_buffer): Don't mark undo_list.
375 (gc_sweep): Sweep hash-tables and strings first.
376 Do free marker blocks that are empty.
377
3782004-05-28 Jim Blandy <jimb@redhat.com>
379
380 * regex.c (print_partial_compiled_pattern): Add missing 'break'
381 after 'case wordend'. For symbeg and symend, print to stderr,
382 like the other cases.
383
3842004-05-28 Noah Friedman <friedman@splode.com>
385
386 * process.c (Fdelete_process): Do not call remove_process.
387
3882004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
389
390 * alloc.c (struct backtrace): Remove.
391 (Fgarbage_collect): Use the new mark_backtrace.
392
393 * eval.c (mark_backtrace): New function.
394
395 * minibuf.c (run_exit_minibuf_hook): New function.
396 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
397 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
398
3992004-05-27 Kim F. Storm <storm@cua.dk>
400
401 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
402 over display properties, e.g. images, that replace buffer text.
403
4042004-05-25 Kim F. Storm <storm@cua.dk>
405
406 * alloc.c (marker_blocks_pending_free): New var.
407 (gc_sweep): Store free marker blocks on that list.
408 (Fgarbage_collect): Free them after undo-list cleanup.
409
410 * process.c (wait_reading_process_input): Check connect_wait_mask
411 before actually accepting connection in case it has already been
412 accepted due to recursion.
413
4142004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
415
416 * coding.c (Fset_safe_terminal_coding_system_internal):
417 Set suppress_error in safe_terminal_coding, not terminal_coding.
418
4192004-05-22 Richard M. Stallman <rms@gnu.org>
420
421 * alloc.c (Fmake_string): Doc fix.
422
423 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
424 and the alist pairs too.
425
426 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
427
428 * emacs.c (main): Update copyright year.
429
430 * fileio.c (Fread_file_name): Expand DIR if not absolute.
431
432 * insdel.c (del_range_2, replace_range): Don't write an anchor
433 if the gap is empty.
434
435 * xdisp.c (try_scrolling): If scroll-up-aggressively or
436 scroll-down-aggressively is small but positive, put point
437 near the screen edge.
438
4392004-05-22 Juanma Barranquero <lektu@terra.es>
440
441 * keymap.c (Fdefine_key): Doc fix.
442
4432004-05-22 Kim F. Storm <storm@cua.dk>
444
445 * alloc.c (struct backtrace): Add debug_on_exit member.
446 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
447 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
448 the removed cons cells.
449 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
450 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
451 any cons cells pointing to unallocated stings.
452 Do not lisp_free any marker blocks, as there may still be pointers
453 to them from buffer undo lists at this stage of GC.
454
455 * keyboard.c (struct backtrace): Add debug_on_exit member.
456 (Fcommand_execute): Clear it.
457
4582004-05-20 Luc Teirlinck <teirllm@auburn.edu>
459
460 * intervals.c (lookup_char_property): Do not prematurely return nil.
461
4622004-05-19 Jim Blandy <jimb@redhat.com>
463
464 Add support for new '\_<' and '\_>' regexp operators, matching the
465 beginning and end of symbols.
466
467 * regex.c (enum syntaxcode): Add Ssymbol.
468 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
469 (re_opcode_t): New opcodes `symbeg' and `symend'.
470 (print_partial_compiled_pattern): Print the new opcodes properly.
471 (regex_compile): Parse the new operators.
472 (analyse_first): Skip sym(beg|end) (they match only the empty string).
473 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
474 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
475 (re_match_2_internal): Match symbeg and symend.
476
477 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
478
4792004-05-19 Kim F. Storm <storm@cua.dk>
480
481 * .gdbinit (xsymbol): Fix last change.
482
4832004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
484
485 * .gdbinit (xprintstr): New fun.
486 (xstring, xprintsym): Use it.
487
488 * w32proc.c (create_child): Use INTMASK.
489
490 * alloc.c (Fgarbage_collect): Do all the marking before flushing
491 unmarked elements of the undo list.
492
4932004-05-18 David Ponce <david@dponce.com>
494
495 * print.c (print): Reset print_depth before to call print_object.
496
4972004-05-18 Jason Rumney <jasonr@gnu.org>
498
499 * w32console.c: Prefix RIF functions with w32con_ to avoid
500 namespace clash with functions in term.c and w32term.c.
501
502 * w32menu.c (add_menu_item, w32_menu_display_help)
503 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
504
505 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
506
5072004-05-18 Eli Zaretskii <eliz@gnu.org>
508
509 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
510
511 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
512 with make_number.
513 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
514 with XINT.
515
5162004-05-18 Kim F. Storm <storm@cua.dk>
517
518 * blockinput.h (INPUT_BLOCKED_P): New macros.
519
520 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
521 (Ftop_level): Unblock input if blocked.
522
523 * buffer.h (GET_OVERLAYS_AT): New macro.
524 * msdos.c (IT_note_mouse_highlight): Use it.
525 * textprop.c (get_char_property_and_overlay): Use it.
526 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
527 * xfaces.c (face_at_buffer_position): Use it.
528
529 * print.c (print_object): Increase buf size.
530
5312004-05-17 Jason Rumney <jasonr@gnu.org>
532
533 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
534 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
535 Lisp_Object using i member.
536 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
537 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
538 consistently.
539
540 * w32proc.c (create_child): Use make_number instead of masking pid.
541
542 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
543 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
544 Use EQ to compare Lisp_Objects.
545 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
546
547 * w32term.c (w32_num_mouse_buttons): Rename from
548 Vw32_num_mouse_buttons and make it an int.
549
550 * w32.c (init_environment): Use it.
551
552 * w32fns.c (w32_wnd_proc): Likewise.
553
554 * w32proc.c (w32_pipe_read_delay): Rename from
555 Vw32_pipe_read_delay and make it an int.
556
557 * w32.c (_sys_read_ahead): Use it.
558
559 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
560
561 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
562
563 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
564 (key_event): Don't mix Lisp_Object and int.
565
566 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
567
568 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
569 modifiers in language change event.
570
5712004-05-17 Kim F. Storm <storm@cua.dk>
572
573 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
574 Such objects may be freed markers which still exist on an undo list.
575
5762004-05-16 Juanma Barranquero <lektu@terra.es>
577
578 * data.c (Fset_default): Make argument names match their use in
579 docstring.
580
5812004-05-15 Andreas Schwab <schwab@suse.de>
582
583 * emacs.c (gdb_array_mark_flag): Define.
584 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
585
5862004-05-15 Eli Zaretskii <eliz@gnu.org>
587
588 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
589 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
590 defined for the MS-DOS build.
591
5922004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
593
594 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
595
5962004-05-14 Kenichi Handa <handa@m17n.org>
597
598 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
599
6002004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
601
602 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
603 section to frame.c section.
604 (Fxw_display_color_p, Fx_file_dialog): Declare if
605 HAVE_WINDOW_SYSTEM defined.
606
607 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
608
609 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
610
611 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
612 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
613 (XTread_socket): Fix int/Lisp_Object mixup.
614 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
615
616 * macterm.h (struct frame, struct face, struct image)
617 (display_x_get_resource, Fx_display_color_p)
618 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
619 Add prototypes.
620
6212004-05-14 Kim F. Storm <storm@cua.dk>
622
623 * process.c (wait_reading_process_input): Make reentrant.
624 Make Available and Connecting non-static. Save and restore value
625 of waiting_for_user_input_p.
626
6272004-05-13 Kim F. Storm <storm@cua.dk>
628
629 * keyboard.c (mark_kboards): Don't mark x and y members
630 that are overloaded in selection request events.
631
6322004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
633
634 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
635
6362004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
637
638 * window.c (Fdisplay_buffer, Fsplit_window)
639 (split-height-threshold): Doc fix.
640
6412004-05-13 Juanma Barranquero <lektu@terra.es>
642
643 * xfaces.c (Ftty_supports_face_attributes_p)
644 (Finternal_copy_lisp_face): Fix typo in docstring.
645 (Finternal_get_lisp_face_attribute): Fix docstring.
646
6472004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
648
649 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
650
6512004-05-11 Steven Tamm <steventamm@mac.com>
652
653 * macfns.c (Fx_create_frame): Default to using tool-bar by
654 setting tool-bar-lines to 1 in default-frame-alist.
655
6562004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
657
658 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
659 (xpm_get_color_table_v, xpm_make_color_table_h)
660 (xpm_put_color_table_h, xpm_get_color_table_h)
661 (xpm_str_to_color_key, xpm_load_image, xpm_load)
662 (syms_of_image): Support XPM on Carbon Emacs. Does not
663 depend on libXpm, but only supports XPM version 3 without extensions.
664
6652004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
666
667 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
668 instead of FRAME_X_P
669
6702004-05-11 Kim F. Storm <storm@cua.dk>
671
672 * process.c (read_process_output): Grow decoding_buf when needed;
673 this could cause a crash in allocate_string and compact_small_strings.
674
6752004-04-29 Jim Blandy <jimb@redhat.com>
676
677 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
678 against proper opcode.
679
6802004-05-10 Juanma Barranquero <lektu@terra.es>
681
682 * process.c (Fstart_process): Fix docstring.
683
684 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
685 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
686 (Fsplit_char, Fchar_charset): Make argument names match their use
687 in docstring.
688
6892004-05-10 Richard M. Stallman <rms@gnu.org>
690
691 * print.c (print_preprocess): Use being_printed, loop_count and
692 halftail to detect overdeep nesting and cyclic cdr chains.
693
6942004-05-10 Andreas Schwab <schwab@suse.de>
695
696 * lisp.h: Declare Fmake_symbolic_link.
697
698 * fileio.c (Frename_file): Remove extra argument in call to
699 Fmake_symbolic_link.
700
7012004-05-10 Kim F. Storm <storm@cua.dk>
702
703 * xdisp.c (calc_line_height_property): Use string position when
704 object is a string.
705
7062004-05-10 Kenichi Handa <handa@m17n.org>
707
708 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
709 inhibit-modification-hooks to t temporarily before calling
710 Ferase_buffer.
711
712 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
713 inhibit-modification-hooks to t temporarily before calling
714 Ferase_buffer.
715
716 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
717 inhibit-modification-hooks to t temporarily before calling
718 Ferase_buffer.
719
720 * fns.c (count_combining): Delete it.
721 (concat): Don't check combining bytes.
722
7232004-05-09 Jason Rumney <jasonr@gnu.org>
724
725 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
726 (globals_of_w32fns): Set it.
727
7282004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
729
730 * data.c (Fquo): Simplify.
731
7322004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
733
734 * data.c (Fquo): If any argument is float, do the computation in
735 floating point.
736
7372004-05-08 Juanma Barranquero <lektu@terra.es>
738
739 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
740 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
741 Fix spelling of Emacs on docstring.
742 (Fset_process_coding_system, Fprocess_coding_system)
743 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
744 Make argument names match their use in docstring.
745 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
746 Fix docstring.
747
748 * editfns.c (Finsert_buffer_substring): Make argument names match their
749 use in docstring.
750
751 * syntax.c (Fmodify_syntax_entry): Fix docstring.
752
7532004-05-07 Steven Tamm <steventamm@mac.com>
754
755 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
756 around call to ReceiveEvent to avoid certain crashes.
757
7582004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
759
760 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
761 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
762 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
763 Save/restore the current graphics port and device handle when
764 drawing into an offscreen graphics world.
765
766 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
767 (gif_load): Likewise.
768
7692004-05-07 Juanma Barranquero <lektu@terra.es>
770
771 * window.c (Fset_window_buffer): Fix docstring.
772
7732004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
774
775 * emacs.c (main) [VMS]: Fix var ref.
776
7772004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
778
779 * data.c (Fsetq_default): Fix docstring.
780
7812004-05-06 Jason Rumney <jasonr@gnu.org>
782
783 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
784 to avoid name clash.
785
7862004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
787
788 * fileio.c (barf_or_query_if_file_exists): Use lstat.
789 (Frename_file): Handle renaming of symlinks across file systems.
790 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
791
7922004-05-04 Kim F. Storm <storm@cua.dk>
793
794 * xdisp.c (Qtotal): New var.
795 (syms_of_xdisp): Intern and staticpro it.
796 (calc_line_height_property): New arg total. Set it if
797 line-spacing property has format (total . VALUE).
798 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
799 Handle total line-spacing property.
800
8012004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
802
803 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
804 "under" scroll bar when size/position changes.
805
8062004-05-03 Jason Rumney <jasonr@gnu.org>
807
808 * makefile.nt: Remove.
809
8102004-05-02 Eli Zaretskii <eliz@gnu.org>
811
812 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
813 Avoid compiler warnings.
814
815 * Makefile.in (region-cache.o): Depend on config.h.
816
8172004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
818
819 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
820 with continuation lines, too.
821
8222004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
823
824 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
825
8262004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
827
828 * xdisp.c (calc_line_height_property): YAILOM (yet another
829 int/Lisp_Object mixup).
830
8312004-05-01 Eli Zaretskii <eliz@gnu.org>
832
833 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
834 undo bad effect of pack(4) in some versions of system headers.
835
8362004-05-01 Jason Rumney <jasonr@gnu.org>
837
838 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
839
8402004-04-30 Kim F. Storm <storm@cua.dk>
841
842 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
843 (syms_of_buffer) <cursor-type>: Doc fix.
844
845 * dispextern.h (struct it): Remove member use_default_face.
846 Add members override_ascent, override_descent, override_boff.
847
848 * xdisp.c (init_iterator): Handle line-spacing float value.
849 Initialize override_ascent member.
850 (append_space_for_newline): Reset override_ascent.
851 Remove use_default_face.
852 (calc_line_height_property): New function to calculate value of
853 line-height and line-spacing properties. Look at overlays, too.
854 Set override_ascent, override_descent, override_boff members when
855 using another face than the current face. Float values are now
856 relative to the frame default font, by default; accept a cons
857 of ratio and face name to specify value relative to a specific face.
858 (x_produce_glyphs): Use calc_line_height_property.
859 Use override_ascent etc. when set to handle different face heights.
860 A negative line-spacing property value is interpreted as a total
861 line height, rather than inter-line spacing.
862 (note_mouse_highlight): Allocate room for 40 overlays initially.
863
8642004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
865
866 * data.c (Fsubr_name): New fun.
867 (syms_of_data): Defsubr it.
868
8692004-04-29 Kim F. Storm <storm@cua.dk>
870
871 * xdisp.c (null_glyph_slice): New var.
872 (append_glyph, append_composite_glyph, append_stretch_glyph):
873 Use it to initialize glyph slice.
874
8752004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
876
877 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
878 (on_hot_spot_p): Make sure we always return a value.
879 (Flookup_image_map): Remove unused var ix and iy.
880 (note_mode_line_or_margin_highlight): Remove unused var `image'.
881
8822004-04-27 Eli Zaretskii <eliz@gnu.org>
883
884 * msdos.c (init_environment): If one of the TMP... environment
885 variables is set to a drive letter without a trailing slash,
886 append a slash.
887
8882004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
889
890 * editfns.c (lisp_time_argument): Provide externally.
891
892 * fileio.c (Fset_file_times): New function.
893 (syms_of_fileio): Intern and staticpro it.
894
8952004-04-27 Kim F. Storm <storm@cua.dk>
896
897 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
898 header line strings.
899
900 * dispextern.h (struct it): New member use_default_face.
901
902 * xdisp.c (Qline_height): New variable.
903 (syms_of_xdisp): Intern and staticpro it.
904 (append_space_for_newline): Partially undo 2004-04-25 change;
905 add default_face_p arg, and restore callers.
906 Clear it->use_default_face after use.
907 (x_produce_glyphs): Set default font for ascii char if
908 it->use_default_font is set. Change line-spacing property to set
909 just extra line spacing. Handle new line-height property.
910
9112004-04-26 Andreas Schwab <schwab@suse.de>
912
913 * print.c (print_object): Print non-ascii characters in bool
914 vector representation as octal escapes.
915
916 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
917 * print.c (print_object): Use it instead of BITS_PER_CHAR for
918 bool vectors.
919 * lread.c (read1): Likewise.
920 * alloc.c (Fmake_bool_vector): Likewise.
921 * data.c (Faref, Faset): Likewise.
922 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
923 (mapcar1): Likewise.
924
9252004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
926
927 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
928
9292004-04-26 Miles Bader <miles@gnu.org>
930
931 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
932
9332004-04-26 Juanma Barranquero <lektu@terra.es>
934
935 * buffer.c (Fpop_to_buffer): Fix docstring.
936
9372004-04-26 Steven Tamm <steventamm@mac.com>
938
939 * lread.c (init_lread): Don't display missing lisp directory
940 warnings with Carbon Emacs because self-contained bundled Emacs
941 may be built without correct installation path.
942
9432004-04-25 Kim F. Storm <storm@cua.dk>
944
945 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
946
947 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
948
949 * xdisp.c (append_space_for_newline): Rename from append_space.
950 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
951 (x_produce_glyphs): Handle line-spacing property on newline char.
952 If value is t, adjust ascent and descent to fit current row height.
953 If value is an integer or float, set extra_line_spacing to integer
954 value, or to float value x current line height.
955
9562004-04-23 Kenichi Handa <handa@m17n.org>
957
958 * fontset.c (Finternal_char_font): If POSITION is nil, return
959 font for displaying CH with the default face.
960
9612004-04-23 Juanma Barranquero <lektu@terra.es>
962
963 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
964
9652004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
966
967 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
968 Don't make assumptions about the relative place of i and val.
969 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
970
9712004-04-21 Kim F. Storm <storm@cua.dk>
972
973 * dispextern.h (struct glyph_slice): New struct.
974 (struct glyph): New member slice.
975 (GLYPH_SLICE_EQUAL_P): New macro.
976 (GLYPH_EQUAL_P): Use it.
977 (struct glyph_string): New member slice.
978 (struct it_slice): New struct.
979 (struct it): New member slice, add member to stack too.
980 New member constrain_row_ascent_descent_p.
981 (image_ascent): Add prototype.
982
983 * dispnew.c (buffer_posn_from_coords): Return full image width
984 and height even for image slices (posn is relative to full image).
985 (marginal_area_string): Adjust x0,y0 for image slice.
986
987 * image.c (image_ascent): Add slice arg; calculate ascent for
988 image slice (or full image).
989
990 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
991 (syms_of_keyboard): Defsubr them.
992
993 * lisp.h (pos_visible_p): Fix prototype.
994
995 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
996 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
997 (x_draw_image_foreground, x_draw_image_relief)
998 (x_draw_image_foreground_1, x_draw_image_glyph_string):
999 Draw sliced images.
1000
1001 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1002 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1003 (x_draw_image_foreground, x_draw_image_relief)
1004 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1005 Draw sliced images.
1006
1007 * w32term.h (image_ascent): Remove prototype.
1008
1009 * window.c (Fpos_visible_in_window_p): Return pixel position if
1010 PARTIALLY arg is non-nil. Simplify. Doc fix.
1011 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1012 to return/set vscroll in pixels.
1013
1014 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1015
1016 * xdisp.c (Qslice): New variable.
1017 (syms_of_xdisp): Intern and staticpro it.
1018 (pos_visible_p): Return pixel position in new x and y args.
1019 (init_iterator): Reset it->slice info.
1020 (handle_display_prop): Parse (slice ...) property.
1021 (push_it, pop_it): Save/restore slice info.
1022 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1023 force repositioning of tall row if window is vscrolled, as that
1024 would reset vscroll.
1025 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1026 increasing row height if row is non-empty.
1027 (fill_image_glyph_string): Copy slice info.
1028 (take_vertical_position_into_account): Simplify.
1029 (produce_image_glyph): Handle iterator slice info, setup glyph
1030 slice info. Do not force minimum line height.
1031 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1032 do not increase height (ascent/descent) of non-empty row when
1033 adding normal character glyph; instead reduce glyph ascent/descent
1034 appropriately; if row is higher than current glyph, adjust glyph
1035 descent/ascent to reposition glyph within the existing row.
1036 Likewise, when char is newline, only set ascent/descent if row is
1037 currently empty.
1038 (note_mouse_highlight): Handle hotspots with sliced image.
1039
1040 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1041 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1042 (x_draw_image_foreground, x_draw_image_relief)
1043 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1044 Draw sliced images.
1045
1046 * xterm.h (image_ascent): Remove prototype.
1047
10482004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1049
1050 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1051
10522004-04-20 John Paul Wallington <jpw@gnu.org>
1053
1054 * fns.c (Fassoc, Feql): Fix indentation.
1055
1056 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1057
10582004-04-19 John Paul Wallington <jpw@gnu.org>
1059
1060 * fns.c (Feql): New function.
1061 (syms_of_fns): Defsubr it.
1062
10632004-04-18 Jason Rumney <jasonr@gnu.org>
1064
1065 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1066 after closing the clipboard.
1067
10682004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1069
1070 * buffer.c (Fbuffer_base_buffer): Doc fix.
1071
10722004-04-17 Kim F. Storm <storm@cua.dk>
1073
1074 * keymap.c (Fkey_description): Add optional PREFIX arg.
1075 Combine prefix with KEYS to make up the full key sequence to describe.
1076 Correlate meta_prefix_char and following (simple) key to describe
1077 as meta modifier. All callers changed.
1078 (describe_map): Rename arg `keys' to `prefix'. Remove local
1079 `elt_prefix' var. Use Fkey_description with prefix instead of
1080 elt_prefix combined with Fsingle_key_description.
1081 (describe_vector): Declare static. Replace arg `elt_prefix' with
1082 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1083 if !KEYMAP_P. Use Fkey_description with prefix instead of
1084 Fsingle_key_description.
1085
1086 * keymap.h (Fkey_description): Fix prototype.
1087 (describe_vector): Remove prototype.
1088
1089 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1090
1091 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1092 (png_load): Fix calculation of transparent background color on X
1093 and W32 platforms.
1094
10952004-04-16 Juanma Barranquero <lektu@terra.es>
1096
1097 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1098 not too large before computing how much to scroll.
1099
11002004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1101
1102 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1103
11042004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1105
1106 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1107 Add hyperlink to Elisp manual to the docstring.
1108
11092004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1110
1111 * callint.c (fix_command): Use XDCR.
1112
11132004-04-14 Nick Roberts <nick@nick.uklinux.net>
1114
1115 * window.c (Fget_lru_window): Doc fix.
1116
11172004-04-14 Kim F. Storm <storm@cua.dk>
1118
1119 * editfns.c (Fformat): Fix allocation size of precision array.
1120
1121 * dispnew.c (update_window): Only set changed_p if
1122 scrolling_window actually did scroll.
1123 (scrolling_window): Only return 1 if we actually did scroll.
1124
1125 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1126 height to glyph height when cursor row is not fully visible.
1127 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1128 failure in case row is higher than window. Callers changed.
1129 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1130 Try to scroll partially visible, higher-than-window cursor row.
1131 (redisplay_window): Always try to scroll partially visible,
1132 higher-than-window cursor row - both initially and again with
1133 centering_position = 0.
1134 Clear desired matrix before retrying with centering_position = 0.
1135
11362004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1137
1138 * syntax.c (scan_lists): Simplify backward string scan.
1139 Fix off-by-one boundary check for string and comment fences.
1140
11412004-04-13 Joe Buehler <jbuehler@hekimian.com>
1142
1143 * sheap.c, unexcw.c: New files.
1144
11452004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1146
1147 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1148 base buffer has been killed. Correct the error message if the
1149 base buffer does not exist.
1150
11512004-04-12 Joe Buehler <jbuehler@hekimian.com>
1152
1153 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1154 Cygwin itself. Add support for Xaw3d scrollbars.
1155
1156 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1157
1158 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1159
1160 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1161 before Cygwin unexec.
1162
1163 * Makefile.in: Link changes for Cygwin unexec() support.
1164
11652004-04-12 Andreas Schwab <schwab@suse.de>
1166
1167 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1168
11692004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1170
1171 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1172 IGNORE argument equals NAME. Doc fix.
1173
11742004-04-11 Masatake YAMATO <jet@gyve.org>
1175
1176 * buffer.c (fix_start_end_in_overlays): Make overlays
1177 empty if they are backwards.
1178
11792004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1180
1181 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1182
11832004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1184
1185 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1186
11872004-04-06 Kim F. Storm <storm@cua.dk>
1188
1189 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1190 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1191
1192 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1193 clearing highlight.
1194
1195 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1196
1197 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1198 clearing highlight.
1199
1200 * indent.c (vmotion): Do not reserve one column for continuation
1201 marks on window frames.
1202
12032004-04-04 Eli Zaretskii <eliz@gnu.org>
1204
1205 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1206 from GCC.
1207
12082004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1209
1210 * .gdbinit-union: Remove.
1211
1212 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1213 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1214 ($nonvalbits): Remove.
1215 ($valmask): Set it by calling xreload to avoid redundancy.
1216
1217 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1218 (gdb_emacs_intbits): Remove.
1219
12202004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1221
1222 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1223
12242004-03-30 Kenichi Handa <handa@m17n.org>
1225
1226 * editfns.c (Fformat): Fix initialization of the array info.
1227
12282004-03-30 Kim F. Storm <storm@cua.dk>
1229
1230 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1231 (syms_of_xterm): DEFVAR_BOOL it.
1232 (ignore_next_mouse_click_timeout): New var.
1233 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1234 Use it to filter mouse clicks following focus event.
1235
12362004-03-29 David Ponce <david@dponce.com>
1237
1238 * callint.c (Fcall_interactively): Fix last change.
1239
12402004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1241
1242 * eval.c (Fcommandp): Simplify.
1243
1244 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1245 Extend to handle all kinds of functions.
1246
1247 * lisp.h (Finteractive_form): Declare.
1248
1249 * callint.c (Fcall_interactively): Use it.
1250
12512004-03-26 Kim F. Storm <storm@cua.dk>
1252
1253 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1254 to catch errors in calc_pixel_width_or_height during redisplay.
1255
12562004-03-26 Masatake YAMATO <jet@gyve.org>
1257
1258 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1259
1260 * lisp.h (fix_start_end_in_overlays): Likewise.
1261
1262 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1263
1264 * editfns.c (Ftranspose_regions): Likewise.
1265
12662004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1267
1268 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1269
12702004-03-19 Richard M. Stallman <rms@gnu.org>
1271
1272 * s/sol2-6.h: Delete previous change.
1273
12742004-03-19 Kim F. Storm <storm@cua.dk>
1275
1276 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1277 to_charpos corresponds to newline in right fringe. Use local
1278 BUFFER_POS_REACHED_P macro.
1279
12802004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1281
1282 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1283 to compile on non-window system.
1284
12852004-03-19 Kim F. Storm <storm@cua.dk>
1286
1287 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1288
1289 * image.c (Qcenter): Move to xdisp.c.
1290
1291 * xdisp.c (Qcenter): Declare here.
1292 (syms_of_xdisp): Intern and staticpro it.
1293 (handle_single_display_prop): Allow space display property on all
1294 platforms.
1295 (display_mode_line): Set mode_line_p before displaying line.
1296 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1297 handling. Remove complex cases for fringes and scroll-bars.
1298 Add left, right, and center alignment positions. Add text (area)
1299 width/height. Return width or height for image specs.
1300 (produce_stretch_glyph): Improve handling of :align-to. Is now
1301 relative to left of text area by default, but other base offsets
1302 can be specified -- also for text lines.
1303
1304 * term.c (produce_glyphs): Handle IT_STRETCH.
1305 (produce_stretch_glyph): New function to handle space width and
1306 align-to display properties on non-window systems.
1307
13082004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1309
1310 * fileio.c (Fread_file_name): Set completion-ignore-case for
1311 case-insensitive systems.
1312
13132004-03-14 Masatake YAMATO <jet@gyve.org>
1314
1315 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1316 when keymap and cursor are setup.
1317
13182004-03-14 Steven Tamm <steventamm@mac.com>
1319
1320 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1321
13222004-03-14 Kim F. Storm <storm@cua.dk>
1323
1324 * dispextern.h (x_find_image_file): Add prototype.
1325
1326 * image.c (x_find_image_file): Make extern.
1327
1328 * xfns.c (x_find_image_file): Remove prototype.
1329
13302004-03-13 Eli Zaretskii <eliz@gnu.org>
1331
1332 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1333
1334 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1335
13362004-03-12 Richard M. Stallman <rms@gnu.org>
1337
1338 * fns.c (internal_equal): New arg PROPS controls comparing
1339 text properties. All callers changed.
1340 (Fequal_including_properties): New function.
1341 (syms_of_fns): defsubr it.
1342
13432004-03-12 Kim F. Storm <storm@cua.dk>
1344
1345 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1346
1347 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1348 (image_background, image_background_transparent): Fix prototypes.
1349
1350 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1351
1352 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1353 (x_query_font, x_find_ccl_program, x_set_window_size)
1354 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1355 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1356 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1357
1358 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1359 (x_query_font, x_find_ccl_program, x_set_window_size)
1360 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1361 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1362 (mac_draw_line_to_pixmap): Add prototypes.
1363
13642004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1365
1366 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1367
13682004-03-11 Kim F. Storm <storm@cua.dk>
1369
1370 * dispextern.h: Move image related prototypes from xfns.c section
1371 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1372 HAVE_X_WINDOWS.
1373
1374 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1375 Move gtkutil.o to new GTK_OBJ list.
1376 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1377 (GTK_OBJ) [USE_GTK]: New declaration.
1378 (obj): Add $(GTK_OBJ) to list.
1379
13802004-03-11 Steven Tamm <steventamm@mac.com>
1381
1382 * image.c [MAC_OSX]: Include sys/stat.h
1383
1384 * macfns.c (syms_of_macfns): Remove definitions of things now
1385 defined in image.c
1386
13872004-03-11 Kim F. Storm <storm@cua.dk>
1388
1389 The following changes consolidates the identical/similar image
1390 support code previously found in xfns.c, w32fns.c, and macfns.c
1391 into a new file image.c.
1392
1393 * makefile.w32-in (OBJ1): Add image.o.
1394 ($(BLD)/image.$(O)): Add dependencies.
1395
1396 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1397 (image.o): Add dependencies.
1398
1399 * image.c: New file with consolidated image support code.
1400 (COLOR_TABLE_SUPPORT): New define to control whether
1401 color table support is available (X only).
1402 (Bitmap_Record): Common name for x_bitmap_record,
1403 w32_bitmap_record, and mac_bitmap_record.
1404 (XImagePtr): Common name for pointer to XImage or equivalent.
1405 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1406 to XImagePtr on X+MAC, and to HDC on W32.
1407 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1408 (NO_PIXMAP): Common name for "None" or equivalent.
1409 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1410 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1411 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
1412 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1413 Define with suitable equivalents on W32 and MAC for code sharing.
1414 (XDrawLine): Define on MAC for code sharing.
1415 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1416 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1417 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1418 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1419 (x_reference_bitmap, x_create_bitmap_from_data)
1420 (x_create_bitmap_from_file, x_destroy_bitmap)
1421 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1422 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1423 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1424 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1425 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1426 (define_image_type, lookup_image_type, valid_image_p)
1427 (image_error, enum image_value_type, struct image_keyword)
1428 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1429 (make_image, free_image, prepare_image_for_display, image_ascent)
1430 (four_corners_best, image_background, image_background_transparent)
1431 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1432 (make_image_cache, free_image_cache, clear_image_cache)
1433 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1434 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1435 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1436 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1437 (init_image_func_pointer, image_load_quartz2d)
1438 (struct ct_color, init_color_table, free_color_table)
1439 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1440 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1441 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1442 (x_disable_image, x_build_heuristic_mask)
1443 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1444 (TIFF support, GIF support, Ghostscript support): Consolidate image
1445 code from xfns.c, w32fns.c, and macfns.c.
1446 (syms_of_image): Consolidate image related symbol setup here.
1447 (init_image): Consolidate image related initializations here.
1448
1449 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1450 and init_image. Remove call to init_xfns.
1451
1452 * macterm.h (struct mac_bitmap_record): Add file member.
1453 Not currently used, but simplifies code sharing.
1454
1455 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1456 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1457 (x_reference_bitmap, x_create_bitmap_from_data)
1458 (x_create_bitmap_from_file, x_destroy_bitmap)
1459 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1460 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1461 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1462 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1463 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1464 (define_image_type, lookup_image_type, valid_image_p)
1465 (image_error, enum image_value_type, struct image_keyword)
1466 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1467 (make_image, free_image, prepare_image_for_display, image_ascent)
1468 (four_corners_best, image_background, image_background_transparent)
1469 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1470 (make_image_cache, free_image_cache, clear_image_cache)
1471 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1472 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1473 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1474 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1475 (init_image_func_pointer, image_load_quartz2d)
1476 (struct ct_color, init_color_table, free_color_table)
1477 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1478 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1479 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1480 (x_disable_image, x_build_heuristic_mask)
1481 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1482 (TIFF support, GIF support, Ghostscript support): Merge with image
1483 code from xfns.c and macfns.c into image.c.
1484 (syms_of_xfns): Move image related symbols to image.c.
1485 (init_external_image_libraries, init_xfns): Remove; initialization
1486 moved to init_image in image.c.
1487
1488 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1489 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1490 (x_reference_bitmap, x_create_bitmap_from_data)
1491 (x_create_bitmap_from_file, x_destroy_bitmap)
1492 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1493 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1494 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1495 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1496 (define_image_type, lookup_image_type, valid_image_p)
1497 (image_error, enum image_value_type, struct image_keyword)
1498 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1499 (make_image, free_image, prepare_image_for_display, image_ascent)
1500 (four_corners_best, image_background, image_background_transparent)
1501 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1502 (make_image_cache, free_image_cache, clear_image_cache)
1503 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1504 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1505 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1506 (struct ct_color, init_color_table, free_color_table)
1507 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1508 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1509 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1510 (x_disable_image, x_build_heuristic_mask)
1511 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1512 (TIFF support, GIF support, Ghostscript support): Merge with image
1513 code from xfns.c and macfns.c into image.c.
1514 (syms_of_xfns): Move image related symbols to image.c.
1515 (init_external_image_libraries, init_xfns): Remove; initialization
1516 moved to init_image in image.c.
1517
1518 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1519 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1520 (x_reference_bitmap, x_create_bitmap_from_data)
1521 (x_create_bitmap_from_file, x_destroy_bitmap)
1522 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1523 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1524 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1525 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1526 (define_image_type, lookup_image_type, valid_image_p)
1527 (image_error, enum image_value_type, struct image_keyword)
1528 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1529 (make_image, free_image, prepare_image_for_display, image_ascent)
1530 (four_corners_best, image_background, image_background_transparent)
1531 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1532 (make_image_cache, free_image_cache, clear_image_cache)
1533 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1534 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1535 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1536 (struct ct_color, init_color_table, free_color_table)
1537 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1538 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1539 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1540 (x_disable_image, x_build_heuristic_mask)
1541 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1542 (TIFF support, GIF support, Ghostscript support): Merge with
1543 w32fns.c and macfns.c image code into image.c.
1544 (syms_of_xfns): Move image related symbols to image.c.
1545 (init_xfns): Remove; initialization moved to init_image in image.c.
1546
1547 * lisp.h (syms_of_image, init_image): Add protoypes.
1548 (init_xfns): Remove prototype.
1549
1550 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1551 (x_reference_bitmap, x_create_bitmap_from_data)
1552 (x_create_bitmap_from_file, x_destroy_bitmap)
1553 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1554 (gamma_correct) [MAC_OS]: Add prototype.
1555
1556 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1557 (x_reference_bitmap, x_create_bitmap_from_data)
1558 (x_create_bitmap_from_file, x_destroy_bitmap)
1559 (x_create_bitmap_mask): Move prototypes to dispextern.h.
1560
15612004-03-09 Kenichi Handa <handa@etlken2>
1562
1563 * coding.c (decode_coding_emacs_mule): Handle insufficent source
1564 correctly.
1565
15662004-03-04 Richard M. Stallman <rms@gnu.org>
1567
1568 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
1569
1570 * window.c (Fdisplay_buffer): Doc fix.
1571
1572 * buffer.c (Fpop_to_buffer): Doc fix.
1573
15742004-03-03 Kim F. Storm <storm@cua.dk>
1575
1576 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
1577
15782004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
1579
1580 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
1581
15822004-03-02 Richard M. Stallman <rms@gnu.org>
1583
1584 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
1585
15862004-03-02 Kenichi Handa <handa@m17n.org>
1587
1588 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
1589
15902004-03-02 Kim F. Storm <storm@cua.dk>
1591
1592 * window.h (struct window): New member overlay_arrow_bitmap.
1593
1594 * window.c (make_window): Initialize overlay_arrow_bitmap.
1595
1596 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
1597 implement and integrate multiple overlay arrows with redisplay.
1598 (syms_of_xdisp): DEFVAR_LISP and initialize it.
1599 (last_arrow_position, last_arrow_string): Replace by properties.
1600 (Qlast_arrow_position, Qlast_arrow_string)
1601 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
1602 (syms_of_xdisp): Intern and staticpro them.
1603 (overlay_arrow_string_or_property, update_overlay_arrows)
1604 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
1605 (overlay_arrow_at_row): New functions for multiple overlay arrows.
1606 (redisplay_internal): Use them instead of directly accessing
1607 Voverlay_arrow_position etc. for multiple overlay arrows.
1608 (mark_window_display_accurate): Use update_overlay_arrows.
1609 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
1610 (try_window_id): Use overlay_arrows_changed_p.
1611 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
1612 (display_line): Use overlay_arrow_at_row to check multiple
1613 overlay arrows, and get relevant overlay-arrow-string and
1614 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
1615 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
1616 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
1617
1618 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
1619 (update_window_fringes): Remove unused code.
1620
16212004-03-01 Jason Rumney <jasonr@gnu.org>
1622
1623 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
1624
16252004-03-01 Juanma Barranquero <lektu@terra.es>
1626
1627 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
1628
1629 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
1630
16312004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1632
1633 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
1634 how many colors can be displayed.
1635
16362004-03-01 Kenichi Handa <handa@m17n.org>
1637
1638 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
1639 correctly.
1640
16412004-02-28 Kim F. Storm <storm@cua.dk>
1642
1643 * dispnew.c (update_window): Update header line also if there are
1644 no other changes in window (move code after set_cursor label).
1645
1646 * lisp.h (mark_window_display_accurate): Remove prototype.
1647
1648 * window.c (window_loop, Fforce_window_update): Force mode line
1649 updates by setting prevent_redisplay_optimizations_p and
1650 update_mode_lines.
1651
16522004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1653
1654 * xfns.c (x_window): Fix indentation.
1655
1656 * xterm.c (x_calc_absolute_position): Call x_real_positions
1657 to get WM window sizes and use those to calculate position.
1658 (x_set_offset): Remove code commented out.
1659
16602004-02-28 Miles Bader <miles@gnu.org>
1661
1662 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
1663
16642004-02-28 Kim F. Storm <storm@cua.dk>
1665
1666 * keyboard.c (kbd_buffer_store_event_hold): New function to store
1667 an event into kbd fifo, but with special handling of quit event;
1668 a quit event is saved for later, and further events are discarded
1669 until the saved quit event has been processed.
1670 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
1671 (gen_help_event): Store help event in kbd fifo.
1672 (NREAD_INPUT_EVENTS): Remove.
1673 (read_avail_input): Adapt to new read_socket_hook interface.
1674 Remove allocation and initialization of local input_event buffer,
1675 as read_socket_hook stores events directly in fifo. Allocate and
1676 initialize local hold_quit event to handle postponed quit event
1677 (and store it if set by kbd_buffer_store_event_hold).
1678
1679 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
1680 (gen_help_event): Fix prototype.
1681
1682 * macterm.c (XTread_socket): Remove bufp_r and
1683 numcharsp args. Add hold_quit arg.
1684 Rework to use just one, local, inev input_event. Store inev
1685 directly in fifo using kbd_buffer_store_event_hold.
1686
1687 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
1688 (read_input_waiting): Adapt to new read_socket_hook interface.
1689 Remove allocation and initialization of local input_event buffer,
1690 as read_socket_hook stores events directly in fifo. Allocate and
1691 initialize local hold_quit event to handle postponed quit event
1692 (and store it if set by kbd_buffer_store_event_hold).
1693
1694 * term.c (read_socket_hook): Fix arg list.
1695
1696 * termhooks.h (read_socket_hook): Fix prototype.
1697
1698 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
1699 numcharsp args. Add hold_quit arg.
1700 Rework to use just one, local, inev input_event. Store inev
1701 directly in fifo using kbd_buffer_store_event_hold.
1702
1703 * w32inevt.h (w32_console_mouse_position): Fix prototype.
1704
1705 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
1706 Add hold_quit arg. Rework to use just one, local, inev
1707 input_event. Store inev directly in fifo using
1708 kbd_buffer_store_event_hold. Update count in one place.
1709 Postpone call to gen_help_event until inev is stored; use new
1710 local do_help for this.
1711 Remove local emacs_event in handing of ButtonPress event; just use
1712 inev instead (so no reason to copy it later).
1713
1714 * xsmfns.c (x_session_check_input): Remove numchars arg.
1715
1716 * xterm.c (x_focus_changed, x_detect_focus_change):
1717 Remove numchars arg. Always store event into bufp arg.
1718 Return nothing. Callers changed accordingly.
1719 (glyph_rect): Simplify.
1720 (STORE_KEYSYM_FOR_DEBUG): New macro.
1721 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
1722 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
1723 (current_hold_quit) [USE_GTK]: Add.
1724 (event_handler_gdk): Adapt to new handle_one_xevent.
1725 (handle_one_xevent): Remove bufp_r and numcharsp args.
1726 Add hold_quit arg. Rework to use just one, local, inev
1727 input_event. Store inev directly in fifo using
1728 kbd_buffer_store_event_hold. Update count in one place.
1729 Postpone call to gen_help_event until inev is stored; use new
1730 local do_help for this.
1731 Simplify handling of keysyms (consolidate common code). Fix bug
1732 where count was updated with nchars instead of nbytes.
1733 Remove local emacs_event in handing of ButtonPress event; just use
1734 inev instead (so no reason to copy it later).
1735 Remove `out' label. Rename label `ret' to `done'; add various
1736 `goto done' to clarify code flow in deeply nested blocks.
1737 (x_dispatch_event): Simplify as handle_one_xevent now calls
1738 kbd_buffer_store_event itself.
1739 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
1740 arg. Call handle_one_xevent with new arglist. Store event from
1741 x_session_check_input in fifo.
1742 [USE_GTK]: Setup current_hold_quit.
1743 Decrement handling_signal before unblocking input.
1744 (x_initialize) [USE_GTK]: Initialize current_count.
1745
1746 * xterm.h (x_session_check_input): Fix prototype.
1747
17482004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1749
1750 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
1751
1752 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
1753 macgui.h).
1754
1755 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
1756
1757 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
1758 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
1759 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
1760 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
1761 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
1762 (Bitmap): Remove typedef.
1763 (Pixmap): Change int to GWorldPtr.
1764
1765 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1766
1767 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1768 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
1769 New #define to extract 16-bit depth color components from unsigned
1770 long representation.
1771 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
1772 colors used for masks.
1773 (struct mac_display_info): Add color_p. Remove n_cbits.
1774
1775 * macfns.c: Include sys/types.h and sys/stat.h.
1776 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
1777 Include QuickTime/QuickTime.h.
1778 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
1779 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
1780 functions defined in macterm.c.
1781 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
1782 (ZPixmap): New #define for compatibility with xfns.c.
1783 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1784 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
1785 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
1786 New functions.
1787 (four_corners_best, x_create_x_image_and_pixmap)
1788 (x_destroy_x_image, unwind_create_frame, x_disable_image)
1789 (x_edge_detection, init_color_table, colors_in_color_table)
1790 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
1791 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
1792 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
1793 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
1794 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
1795 long mixup.
1796 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
1797 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
1798 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
1799 (x_set_cursor_type, Fxw_color_values, valid_image_p)
1800 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
1801 (x_alloc_image_color, clear_image_cache, lookup_image)
1802 (x_find_image_file, xbm_read_bitmap_file_data)
1803 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
1804 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
1805 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
1806 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
1807 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
1808 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
1809 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
1810 #if 0.
1811 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
1812 #if 0. Free white_relief.gc and black_relief.gc.
1813 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
1814 New functions (from xfns.c).
1815 (Fx_create_frame): Record unwind_create_frame.
1816 (Fxw_display_color_p): Use dpyinfo->color_p.
1817 (Fx_display_grayscale_p, Fx_display_planes): Don't use
1818 dpyinfo->n_cbits.
1819 (Fx_display_color_cells): Use dpyinfo->n_planes;
1820 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
1821 (Qheuristic, cross_disabled_images, emboss_matrix)
1822 (laplace_matrix): New variables (from xfns.c).
1823 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
1824 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
1825 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
1826 (image_background_transparent): New function (from xfns.c).
1827 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1828 (image_load_quicktime): Add declaration.
1829 [MAC_OSX] (image_load_quartz2d): Likewise.
1830 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
1831 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
1832 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
1833 (xbm_load_image_from_file, x_laplace_read_row)
1834 (x_laplace_write_row, pbm_read_file): Remove functions.
1835 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
1836 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
1837 (colors_in_color_table): Sync with xfns.c (although not used).
1838 (lookup_rgb_color): Don't lookup color table. Just do gamma
1839 correction.
1840 (COLOR_INTENSITY): New #define (from xfns.c).
1841 (x_disable_image): New function (from xfns.c).
1842 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1843 (x_build_heuristic_mask): Sync with xfns.c.
1844 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1845 (HAVE_PBM): Remove #ifdef.
1846 (pbm_load): Sync with xfns.c. Set img->width and img->height
1847 before IMAGE_BACKGROUND.
1848 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
1849 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
1850 Don't enclose with #if HAVE_PNG.
1851 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
1852 symbol _CGImageCreateWithPNGDataProvider is defined.
1853 Otherwise use image_load_quicktime.
1854 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
1855 [HAVE_PNG] (png_load): Sync with xfns.c.
1856 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
1857 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
1858 HAVE_JPEG.
1859 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
1860 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
1861 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
1862 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
1863 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
1864 (tiff_image_p, tiff_load): Don't enclose declarations with #if
1865 HAVE_TIFF.
1866 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
1867 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
1868 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
1869 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
1870 New functions (from xfns.c).
1871 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
1872 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
1873 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
1874 Don't enclose with #if HAVE_GIF.
1875 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
1876 animated gif. Otherwise use image_load_quicktime.
1877 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
1878 gif_DrawText to avoid conflict with QuickdrawText.h.
1879 [HAVE_GIF] (gif_load): Sync with xfns.c.
1880 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
1881 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
1882 Ghostscript is not supported yet).
1883 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
1884 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
1885 cross_disabled_images (from xfns.c). Remove #if 0 for supported
1886 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1887 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
1888 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
1889 HAVE_PNG. Call EnterMovies to support animated gifs.
1890 Call init_image_func_pointer to bind a symbol
1891 _CGImageCreateWithPNGDataProvider if it is defined.
1892
1893 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
1894 (x_draw_bar_cursor): Sync declaration with xterm.c.
1895 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
1896 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
1897 graphics).
1898 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
1899 (mac_draw_line_to_pixmap, XCreatePixmap)
1900 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
1901 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
1902 New functions.
1903 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
1904 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1905 Cast bits to char *.
1906 (reflect_byte): New function (from w32fns.c).
1907 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
1908 due to byte alignment.
1909 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
1910 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
1911 (XSetForeground): Remove static (now used in macfns.c).
1912 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
1913 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
1914 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
1915 (x_draw_glyph_string_box, x_draw_image_foreground)
1916 (x_draw_image_foreground_1, x_draw_image_glyph_string)
1917 (x_draw_stretch_glyph_string, x_draw_glyph_string)
1918 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
1919 Sync with xterm.c.
1920 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
1921 than the xterm.c version when a strictly horizontal or vertical
1922 line is drawn.
1923 (XTset_terminal_window): Add static.
1924 (x_make_frame_visible): Add UNBLOCK_INPUT.
1925 (x_free_frame_resources): New funcion (from xterm.c).
1926 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
1927 occurs in tool bar area.
1928 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
1929 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
1930 Initialize image cache.
1931 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
1932 Enclose unused functions with #if 0.
1933 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
1934 (decode_mac_font_name): New function to apply code conversions
1935 from a mac font name to an XLFD font name according to its script code.
1936 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
1937 font name to a mac font name according to REGISTRY and ENCODING fields.
1938 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
1939 whose name starts with `.'.
1940 (init_font_name_table): Use decode_mac_font_name. Add both
1941 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
1942 of a font is smJapanese.
1943 (mac_do_list_fonts): New function to list fonts that match a given
1944 pattern.
1945 (x_list_fonts, XLoadQueryFont): Use it.
1946 (XLoadQueryFont): Set rbearing field for each variable width
1947 character to avoid needless redraw.
1948 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
1949
19502004-02-26 Kim F. Storm <storm@cua.dk>
1951
1952 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
1953 as read_socket_hook handler on X aborts if buffer is too small
1954 and W32 handler doesn't always check buffer limit.
1955
1956 * xdisp.c (handle_single_display_prop): Handle left-fringe and
1957 right-fringe similar to a display margin image. Specifically,
1958 the characters having the fringe prop are no longer shown, and
1959 we use IT_IMAGE/next_element_from_image with image_id = -1 to
1960 do this. Set fringe bitmap face_id in it->face_id.
1961 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
1962 still realize it->face (i.e. the fringe bitmap face).
1963
19642004-02-25 Miles Bader <miles@gnu.org>
1965
1966 * xdisp.c (check_it): Check string/string_pos consistency.
1967 (init_iterator): Initialize string-related fields properly.
1968
19692004-02-11 Miles Bader <miles@gnu.org>
1970
1971 * xdisp.c (produce_image_glyph): Force negative descents to zero.
1972
19732004-02-10 Miles Bader <miles@gnu.org>
1974
1975 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
1976 BLOCK_INPUT can be nested, so it doesn't make much sense.
1977
19782004-02-24 Michael Mauger <mmaug@yahoo.com>
1979
1980 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
1981 (xbm_read_bitmap_data): Use unsigned char for image data.
1982
19832004-02-23 Luc Teirlinck <teirllm@auburn.edu>
1984
1985 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
1986
19872004-02-22 Jason Rumney <jasonr@gnu.org>
1988
1989 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
1990 correctly over other bitmaps.
1991
19922004-02-21 Eli Zaretskii <eliz@gnu.org>
1993
1994 * emacs.c (USAGE1): Split into two halves.
1995 (USAGE2): Second half of the old USAGE1.
1996 (USAGE3): Rename from USAGE2.
1997 (USAGE4): Rename from USAGE3.
1998
19992004-02-21 Juri Linkov <juri@jurta.org>
2000
2001 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2002 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2003 --file. Fix -f, -l. Sort options. Untabify.
2004 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2005
20062004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2007
2008 * category.c (Fdefine_category, Fcategory_docstring)
2009 (Fget_unused_category, Fset_category_table)
2010 (Fcategory_set_mnemonics): Doc fixes.
2011
20122004-02-20 Kim F. Storm <storm@cua.dk>
2013
2014 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2015 The following changes are relative to the 2004-01-21 revision.
2016 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2017 in one call to read_socket_hook. Value is 8.
2018 (read_avail_input): Separate and rework handling of read_socket_hook
2019 and non-read_socket_hook cases. Use smaller input_event buffer
2020 in read_socket_hook case, and repeat if full buffer is read.
2021 Use new local variable 'discard' to skip input after C-g.
2022 In non-read_socket_hook case, just use a single input_event, and
2023 call kbd_buffer_store_event on the fly for each character.
2024
20252004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2026
2027 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2028 Remove unused `gu' alternative.
2029
20302004-02-19 Andreas Schwab <schwab@suse.de>
2031
2032 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2033 warning.
2034
20352004-02-18 Kim F. Storm <storm@cua.dk>
2036
2037 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2038 Fix last change.
2039
20402004-02-17 Kim F. Storm <storm@cua.dk>
2041
2042 * xdisp.c (fast_find_position): Fix return value of new version;
2043 it was inverted compared to the 21.1 version.
2044 (get_window_cursor_type): Don't look at glyph if NULL.
2045 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2046
2047 * keyboard.c: Rework previous change; it didn't consider that the
2048 buf array was allocated on the stack.
2049 (prev_read): Remove variable.
2050 (read_avail_input_buf): New static event buffer array.
2051 (in_read_avail_input): New static variable to handle re-entrancy.
2052 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2053 Use in_read_avail_input to handle re-entrance; when re-entered,
2054 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2055 Do not initialize read_avail_input_buf in full here; instead assume it
2056 is always cleared on entry. To ensure that, we clear (just) the
2057 entries that were used before we return.
2058 (init_keyboard): Initialize read_avail_input_buf here.
2059
20602004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2061
2062 * cmds.c (Fend_of_line): Doc fix.
2063
20642004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2065
2066 * keyboard.c (prev_read): New static variable.
2067 (read_avail_input): Use it to zero out only those slots in buf[]
2068 that were used last time we were called.
2069
20702004-02-16 Eli Zaretskii <eliz@gnu.org>
2071
2072 * Makefile.in (obj): Move fringe.o from here...
2073 (XOBJ, MAC_OBJ): ...to here.
2074
20752004-02-16 Stephen Eglen <stephen@gnu.org>
2076
2077 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2078
20792004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2080
2081 * data.c (Fbyteorder):
2082 * fringe.c (Fdefine_fringe_bitmap):
2083 * xdisp.c (handle_single_display_prop):
2084 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2085
20862004-02-16 Jason Rumney <jasonr@gnu.org>
2087
2088 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2089
20902004-02-15 Steven Tamm <steventamm@mac.com>
2091
2092 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2093 controlling emulation of a three button mouse with option and
2094 command keys.
2095 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2096 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2097
20982004-02-15 Kim F. Storm <storm@cua.dk>
2099
2100 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2101
2102 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2103 Perform byte-swapping.
2104
21052004-02-14 Kim F. Storm <storm@cua.dk>
2106
2107 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2108 bits from char to short to facilitate wider bitmaps.
2109 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2110 member.
2111
2112 * fringe.c (struct fringe_bitmap): Change member bits from char to
2113 short to facilitate 16 bits wide bitmaps. Modify all standard
2114 bitmaps accordingly.
2115 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2116 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2117 (draw_fringe_bitmap): Ditto.
2118 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2119 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2120 handle up to 16 bits wide bitmaps.
2121 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2122 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2123
2124 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2125 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2126 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2127
2128 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2129 so it is no longer necessary to expand them here.
2130
2131 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2132
21332004-02-12 Kim F. Storm <storm@cua.dk>
2134
2135 * window.c (Fwindow_fringes): Doc fix.
2136
21372004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2138
2139 * xselect.c (x_get_foreign_selection): Add new optional parameter
2140 time_stamp.
2141 (Fx_get_selection_internal): Ditto, pass time_stamp to
2142 x_get_foreign_selection.
2143
2144 * data.c (Fbyteorder): New function.
2145
21462004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2147
2148 * atimer.c: Move include stdio.h to same place as in other files.
2149
2150 * region-cache.c: Ditto.
2151
2152 * sysdep.c: Ditto.
2153
2154 * xfaces.c: Ditto.
2155
21562004-02-09 Sam Steingold <sds@gnu.org>
2157
2158 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2159
21602004-02-09 Kim F. Storm <storm@cua.dk>
2161
2162 * fringe.c: New file. Move original fringe related declarations
2163 and code from dispextern.h and xdisp.c here.
2164 Rework code to support user defined fringe bitmaps, redefining
2165 standard bitmaps, ability to overlay user defined bitmap with
2166 overlay arrow bitmap, and add faces to bitmaps.
2167 (Voverflow_newline_into_fringe): Declare here.
2168 (enum fringe_bitmap_align): New enum.
2169 (..._bits): All bitmaps are now defined without bitswapping; that
2170 is now done in init_fringe_once (if necessary).
2171 (standard_bitmaps): New array with specifications for the
2172 standard fringe bitmaps.
2173 (fringe_faces): New array.
2174 (valid_fringe_bitmap_id_p): New function.
2175 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2176 (draw_fringe_bitmap): New function which draws fringe bitmap,
2177 possibly overlaying bitmap with cursor in right fringe or the
2178 overlay arrow in the left fringe.
2179 (update_window_fringes): Do not handle overlay arrow here.
2180 Compare and copy fringe bitmap faces.
2181 (init_fringe_bitmap): New function.
2182 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2183 define and destroy user defined fringe bitmaps.
2184 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2185 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2186 (syms_of_fringe): New function. Defsubr new DEFUNs.
2187 DEFVAR_LISP Voverflow_newline_into_fringe.
2188 (init_fringe_once, init_fringe): New functions.
2189 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2190
2191 * Makefile.in (obj): Add fringe.o.
2192 (fringe.o): New dependencies.
2193
2194 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2195 bits allocated to hold a fringe number. Increase number of bits
2196 from 4 to 8 to allow user defined fringe bitmaps.
2197 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2198 left_user_fringe_face_id, right_user_fringe_bitmap,
2199 right_user_fringe_face_id.
2200 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2201 Move to new file fringe.c.
2202 (MAX_FRINGE_BITMAPS): Define here.
2203 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2204 and overlay_p. Change member which to int.
2205 (struct redisplay_interface): New members define_fringe_bitmap
2206 and destroy_fringe_bitmap.
2207 (valid_fringe_bitmap_id_p): Add prototype.
2208 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2209
2210 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2211 arrows.
2212 (update_frame): Do flush_display if force_flush_display_p to
2213 ensure display (specifically fringes) are updated in a timely
2214 manner when resizing the frame by dragging the mouse.
2215 (update_window_line): Update row if overlay arrow changed.
2216 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2217 or overlay arrow changed.
2218
2219 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2220 syms_of_fringe, and init_fringe.
2221
2222 * frame.h (struct frame): New member force_flush_display_p.
2223
2224 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2225 Add prototypes.
2226
2227 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2228 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2229 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2230 Use cursor color for displaying cursor in fringe.
2231 (x_redisplay_interface): Add null handlers for
2232 define_fringe_bitmap and destroy_fringe_bitmap functions.
2233
2234 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2235 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2236 for displaying cursor in fringe.
2237 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2238 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2239 (w32_redisplay_interface): Add them to redisplay_interface.
2240 (w32_term_init): Call w32_init_fringe instead of explicitly
2241 defining fringe bitmaps in fringe_bmp array.
2242 (x_delete_display): Call w32_reset_fringes instead of explicitly
2243 destroying fringe bitmaps in fringe_bmp array.
2244
2245 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2246 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2247 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2248 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2249 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2250 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2251 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2252 Move fringe handling vars and code to new file fringe.c.
2253 (handle_display_prop): Handle left-fringe and right-fringe
2254 display properties; store user fringe bitmaps in iterator.
2255 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2256 (clear_garbaged_frames): Set force_flush_display_p if resized.
2257 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2258 (display_line): Handle cursor in fringe at eob.
2259 (display_line): Set row user fringe bitmaps from iterator.
2260
2261 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2262 Use cursor color for displaying cursor in fringe.
2263 (x_redisplay_interface): Add null handlers for
2264 define_fringe_bitmap and destroy_fringe_bitmap functions.
2265
22662004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2267
2268 * macfns.c (Fx_change_window_property): Make doc string and
2269 parameters same as for X version.
2270
2271 * w32fns.c (Fx_change_window_property): Ditto.
2272
22732004-02-07 Kim F. Storm <storm@cua.dk>
2274
2275 * xdisp.c (hscroll_window_tree): Position cursor near to right
2276 margin in hscrolled window when jumping to end of line (rather
2277 than centering cursor).
2278
2279 * process.c (wait_reading_process_input): Don't do adaptive read
2280 buffering if waiting for a specific process.
2281
22822004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2283
2284 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2285 (Fread_minibuffer, Feval_minibuffer)
2286 (Fread_string, Fread_no_blanks_input)
2287 (Fcompleting_read): Doc fixes.
2288 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2289 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2290 (read_minibuf): Fix initial comment.
2291 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2292 case-fold-search to the value of completion-ignore-case when
2293 checking completion-regexp-list.
2294 (Fdisplay_completion_list): Make it handle arguments that are
2295 symbols. Doc fix.
2296
22972004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2298
2299 * xterm.h: Add declaration of free_frame_menubar.
2300
2301 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2302 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2303 (Fx_change_window_property): Add declaration of parameters type and
2304 format. Remove unused variable cons.
2305
2306 * xselect.c: Include stdio,h.
2307
23082004-02-05 Kenichi Handa <handa@m17n.org>
2309
2310 * fns.c (Fset_char_table_range): Fix previous change.
2311
2312 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2313
23142004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2315
2316 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2317
23182004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2319
2320 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2321 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2322
23232004-02-04 Kenichi Handa <handa@m17n.org>
2324
2325 * fns.c (Fset_char_table_range): Handle charsets ascii,
2326 eight-bit-control, and eight-bit-graphic correctly.
2327
23282004-02-03 Jason Rumney <jasonr@gnu.org>
2329
2330 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2331
2332 * w32fns.c (x_to_w32_font): Likewise.
2333
23342004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2335
2336 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2337 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2338
2339 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2340 ClientMessages.
2341
2342 * xselect.c: Include termhooks.h and X11/Xproto.h
2343 (x_check_property_data, x_fill_property_data)
2344 (x_property_data_to_lisp, mouse_position_for_drop)
2345 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2346 (Fx_send_client_event): Move here from xfns.c.
2347 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2348
2349 * xfns.c (x-send-client-message): Move to xselect.c
2350 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2351 OUTER_P.
2352 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2353 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2354 if vector_ret_p is true.
2355 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2356
23572004-02-02 Eli Zaretskii <eliz@gnu.org>
2358
2359 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2360 basename of FILE relative to it, not FILE itself.
2361
23622004-02-02 Kenichi Handa <handa@m17n.org>
2363
2364 * coding.c (coding_restore_composition): Check invalid
2365 composition data more rigidly.
2366
23672004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2368
2369 * fileio.c (Fread_file_name_internal): Correctly handle the case
2370 where insert-default-directory is nil.
2371 (Fread_file_name): Always return an empty string if the user exits
2372 with an empty minibuffer. Adapt the docstring accordingly.
2373 (syms_of_fileio): Adapt the docstring of insert-default-directory
2374 to the change in Fread_file_name.
2375
23762004-01-29 Eli Zaretskii <eliz@gnu.org>
2377
2378 * alloca.c [!alloca]: Fix the prototype for xfree.
2379
23802004-01-29 Kenichi Handa <handa@m17n.org>
2381
2382 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2383 (string_byte_to_char): Likewise.
2384
23852004-01-28 Peter Runestig <peter@runestig.com>
2386
2387 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2388
23892004-01-27 Steven Tamm <steventamm@mac.com>
2390
2391 * unexmacosx.c (unexec_copy): Do not copy more than was
2392 requested to prevent overwriting during unexec.
2393
23942004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2395
2396 * process.c (sigchld_handler): Add comment about not calling malloc.
2397
2398 * process.h: Add extern to synch_process_termsig.
2399
24002004-01-27 Steven Tamm <steventamm@mac.com>
2401
2402 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2403 Move setting of scroll bars from make_mac_frame to
2404 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
2405
24062004-01-26 Richard M. Stallman <rms@gnu.org>
2407
2408 * search.c (Freplace_match): Handle nonexistent
2409 back-references properly.
2410
24112004-01-03 Richard M. Stallman <rms@gnu.org>
2412
2413 * window.c (decode_any_window): New function.
2414 (Fwindow_height, Fwindow_width, Fwindow_edges)
2415 (Fwindow_pixel_edges, Fwindow_inside_edges)
2416 (Fwindow_inside_pixel_edges): Use decode_any_window.
2417
24182004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2419
2420 * process.h: synch_process_termsig new variable.
2421
2422 * callproc.c: Define synch_process_termsig.
2423 (Fcall_process): Initiate synch_process_termsig to zero and
2424 check if non-zero and get signal name after subprocess has ended.
2425
2426 * process.c (sigchld_handler): Set synch_process_termsig
2427 if terminated by a signal. synch_process_death setting removed.
2428
2429 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2430
24312004-01-26 Andreas Schwab <schwab@suse.de>
2432
2433 * print.c (print_preprocess): Declare size as EMACS_INT to not
2434 lose bits.
2435 (print_object): Likewise.
2436 * alloc.c (Fpurecopy): Likewise.
2437
24382004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2439
2440 * window.c (Fwindow_minibuffer_p): Doc fix.
2441
24422004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2443
2444 * editfns.c (Fformat): Make both passes accept the same set of flags.
2445
24462004-01-23 Kenichi Handa <handa@m17n.org>
2447
2448 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2449 one, set buffer to OBJECT temporarily.
2450
24512004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2452
2453 * keyboard.c (kbd_buffer_gcpro): Remove.
2454 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2455 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2456 Don't initialize and/or maintain the variable any more. It was made
2457 redundant by my commit of 2003-06-15.
2458
2459 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2460
24612004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2462
2463 * lisp.h: Add undef DECL_ALIGN.
2464
24652004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2466
2467 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2468 Check interrupt_input_pending explicitly.
2469
2470 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2471
2472 * keyboard.c (handle_async_input): New fun,
2473 extracted from input_available_signal.
2474 (input_available_signal, reinvoke_input_signal): Use it.
2475
24762004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2477
2478 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2479
2480 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2481 manipulation macros for when tags are in the lower bits.
2482 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2483 (DECL_ALIGN): New macro.
2484 (DEFUN): Use it.
2485
2486 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2487
2488 * s/darwin.h (__attribute__): Remove outdated workaround.
2489
2490 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2491
2492 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2493 Don't check range of malloc address.
2494 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2495
2496 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2497
2498 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2499
25002004-01-19 Kenichi Handa <handa@m17n.org>
2501
2502 * fontset.c (fontset_font_pattern): Fix previous change.
2503
25042004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2505
2506 * xdisp.c (Voverflow_newline_into_fringe)
2507 (move_it_in_display_line_to, redisplay_internal)
2508 (update_window_fringes, redisplay_window, display_line, window):
2509 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2510 that it compiles without a window-system.
2511 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2512
25132004-01-16 Kim F. Storm <storm@cua.dk>
2514
2515 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2516
2517 * buffer.c (init_buffer_once): Set buffer_defaults and
2518 buffer_local_flags for indicate_buffer_boundaries.
2519 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2520 default- variable for it.
2521
2522 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2523 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
2524 New members exact_window_width_line_p and cursor_in_fringe_p for
2525 overflowing newlines into right fringe.
2526 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2527 and indicate_bottom_line_p for buffer boundaries and scrolling.
2528 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2529 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2530 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2531 and HOLLOW_SQUARE_BITMAP.
2532 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2533 Add prototypes.
2534
2535 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2536 instead of related indicator fields.
2537 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2538 (direct_output_for_insert): Handle exact width lines like
2539 contined lines. Call update_window_fringes.
2540 (update_window): Call update_window_fringes.
2541 (scrolling_window): Don't skip desired rows with changed bitmaps.
2542 Check if fringe bitmaps changes when assigning scrolled rows.
2543
2544 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2545 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2546 (move_it_in_display_line_to): Overflow newline into fringe for
2547 rows that are exactly as wide as the window.
2548 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2549 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2550 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2551 (fringe_bitmaps): Add new bitmaps.
2552 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2553 Select proper bitmap for cursor in fringe when appropriate.
2554 Handle alignment of bitmap to top or bottom of row.
2555 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2556 done by update_window_fringes.
2557 (update_window_fringes, draw_window_fringes): New functions.
2558 (redisplay_internal): Call update_window_fringes in case only
2559 cursor row is updated.
2560 (redisplay_window): Call update_window_fringes.
2561 Explicitly call draw_window_fringes if redisplay was done using
2562 the current matrix or the overlay arrow is in the window.
2563 (try_window_reusing_current_matrix): Mark scrolled rows for
2564 fringe update (to update buffer-boundaries / scrolling icons).
2565 (find_last_unchanged_at_beg_row): Handle exact width lines line
2566 continued lines.
2567 (display_line): Overflow newline into fringe for rows that are
2568 exactly as wide as the window. Don't append space for newline
2569 in this case.
2570 (notice_overwritten_cursor): Explicitly clear cursor bitmap
2571 in fringe as if it had been overwritten.
2572 (erase_phys_cursor): Erase cursor bitmap in fringe.
2573 (syms_of_xdisp): Mark show-trailing-whitespace and
2574 void-text-area-pointer as user options.
2575 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
2576
2577 * xterm.c (x_update_window_end): Call draw_window_fringes.
2578 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2579 in row instead of actually drawing fringe bitmaps.
2580 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2581 (x_draw_window_cursor): Draw cursor in fringe.
2582
2583 * w32term.c (x_update_window_end): Call draw_window_fringes.
2584 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2585 in row instead of actually drawing fringe bitmaps.
2586 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2587 (w32_draw_window_cursor): Draw cursor in fringe.
2588
2589 * macterm.c (x_update_window_end): Call draw_window_fringes.
2590 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
2591 in row instead of actually drawing fringe bitmaps.
2592 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
2593 (mac_draw_window_cursor): Draw cursor in fringe.
2594
25952004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2596
2597 * xterm.c (handle_one_xevent): Don't handle characters that are part
2598 of an old style (XLookupString) compose sequence.
2599
26002004-01-15 Kenichi Handa <handa@m17n.org>
2601
2602 * search.c (Freplace_match): Use make_multibyte_string or
2603 make_unibyte_string according to the buffer multibyteness.
2604
26052004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
2606
2607 * alloc.c (struct interval_block, struct string_block)
2608 (struct symbol_block, struct marker_block, live_string_p)
2609 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
2610 Better preserve alignment for objects in blocks.
2611 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
2612
2613 * lread.c (defvar_per_buffer): Remove dead declaration.
2614
2615 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
2616 space size.
2617
26182004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2619
2620 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
2621 if a key press should pop down. Only pop down if a key is pressed
2622 outside the menu/dialog.
2623 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
2624 popup_get_selection.
2625 (create_and_show_dialog): Pass 1 for down_on_keypress to
2626 popup_get_selection.
2627
26282004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2629
2630 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
2631 BLOCK/UNBLOCK_INPUT.
2632
26332004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2634
2635 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
2636 specified.
2637
26382004-01-08 Kenichi Handa <handa@m17n.org>
2639
2640 * editfns.c (Fformat): Fix '&' to '&&'.
2641
26422004-01-08 Andreas Schwab <schwab@suse.de>
2643
2644 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
2645 size if PSEUDOVECTOR_FLAG is set.
2646
26472004-01-07 Kenichi Handa <handa@m17n.org>
2648
2649 * charset.c (Fdeclare_equiv_charset): Fix docstring.
2650
2651 * fontset.c (fontset_ref_via_base): Fix previous change.
2652
26532004-01-07 Kim F. Storm <storm@cua.dk>
2654
2655 * process.c (read_process_output): Only activate adaptive
2656 buffering if we read less than 256 bytes at a time.
2657
26582004-01-06 Kim F. Storm <storm@cua.dk>
2659
2660 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
2661 object and image object. Return glyph width and height.
2662 (mode_line_string, marginal_area_string): Ditto.
2663
2664 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2665 (marginal_area_string): Fix prototypes.
2666
2667 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
2668 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
2669 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
2670
2671 * keyboard.c (make_lispy_position): Use modified mode_line_string,
2672 buffer_posn_from_coords, and marginal_area_string functions to
2673 include both string object and image object in the lispy position.
2674 Also add actual glyph width and height to position.
2675 (read_key_sequence): Use real buffer position from mouse
2676 event to find keymap property even when click is in marginal area.
2677
2678 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
2679 mode_line_string and marginal_area_string functions to handle
2680 both string object and image object properties.
2681
26822004-01-06 Andreas Schwab <schwab@suse.de>
2683
2684 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
2685 character.
2686
26872004-01-02 Andreas Schwab <schwab@suse.de>
2688
2689 * macterm.c (emacs_options, x_initialized, same_x_server):
2690 Remove unused (and duplicated) definitions.
2691
26922004-01-02 Kim F. Storm <storm@cua.dk>
2693
2694 * process.h (struct Lisp_Process): New members for adaptive read
2695 buffering: adaptive_read_buffering, read_output_delay, and
2696 read_output_skip.
2697
2698 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
2699 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
2700 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
2701 (process_output_delay_count, process_output_skip): New vars.
2702 (Vprocess_adaptive_read_buffering): New variable.
2703 (make_process): Initialize adaptive read buffering members.
2704 (Fstart_process): Set adaptive_read_buffering member.
2705 (deactivate_process): Cleanup adaptive read buffering.
2706 (wait_reading_process_input): Temporarily omit delayed
2707 subprocesses from the set of file descriptors to read from;
2708 adjust the select timeout if we skipped any subprocesses.
2709 (read_process_output): Increase adaptive read buffering delay if
2710 we read less than a full buffer; reduce delay when we read a
2711 full buffer.
2712 (send_process): Simplify using local Lisp_Process var.
2713 Reset adaptive read buffering delay after write.
2714 (init_process): Initialize process_output_delay_count and
2715 process_output_skip.
2716 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
2717
27182004-01-01 Jason Rumney <jasonr@gnu.org>
2719
2720 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
2721
27222003-12-30 Luc Teirlinck <teirllm@auburn.edu>
2723
2724 * print.c (Ferror_message_string): Add hyperlink in the docstring
2725 to the definition of `signal' in the Elisp manual.
2726 * eval.c (Fsignal): Ditto.
2727
27282003-12-29 James Clark <jjc@jclark.com> (tiny change)
2729
2730 * fns.c (internal_equal): Return t for two NaN arguments.
2731
27322003-12-29 Richard M. Stallman <rms@gnu.org>
2733
2734 * data.c (store_symval_forwarding): Handle setting
2735 default-fill-column, etc., by changing the value in
2736 buffers that use the default.
2737
2738 * minibuf.c (Fset_minibuffer_window): Doc fix.
2739
2740 * fileio.c (choose_write_coding_system): Ignore auto_saving
2741 if using the visited file for auto saves.
2742 (Fwrite_region): Don't update SAVE_MODIFF
2743 if auto-saving in visited file.
2744
27452003-12-29 Kenichi Handa <handa@m17n.org>
2746
2747 * dispextern.h (face_font_available_p): Extern it.
2748
2749 * fontset.c (Voverriding_fontspec_alist): New variable.
2750 (lookup_overriding_fontspec): New function.
2751 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
2752 (fontset_font_pattern): Likewise.
2753 (regulalize_fontname): New function.
2754 (Fset_fontset_font): Call regulalize_fontname.
2755 (Fset_overriding_fontspec_internal): New function.
2756 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
2757 Defsubr Sset_overriding_fontspec_internal.
2758
2759 * xfaces.c (face_font_available_p): New function.
2760
27612003-12-28 Richard M. Stallman <rms@gnu.org>
2762
2763 * buffer.c (Fother_buffer): Don't crash if BUF is nil
2764 or if its name is nil.
2765
2766 * buffer.c (Fkill_buffer): Don't delete auto-save file
2767 if it's the same as the visited file.
2768
27692003-12-28 Luc Teirlinck <teirllm@auburn.edu>
2770
2771 * coding.c (Fcheck_coding_system): Doc fix.
2772
27732003-12-28 Kim F. Storm <storm@cua.dk>
2774
2775 * Makefile.in (eval.o): Depend on dispextern.h.
2776
2777 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
2778 image glyph using image's ascent.
2779 (mode_line_string): Return image glyph as object clicked on.
2780 Adjust y0 for image glyph using image's ascent.
2781
2782 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
2783 (struct glyph): New members, ascent and descent. Used to save
2784 this glyph's ascent and descent, instead of having.
2785 (struct glyph): Declare member face_id using FACE_ID_BITS.
2786 (find_hot_spot): Add prototype.
2787
2788 * keyboard.c (Qimage): Remove extern (now in lisp.h).
2789 (QCmap): Declare extern.
2790 (make_lispy_position): When position is inside image hot-spot,
2791 use hot-spot element's id as posn element.
2792
2793 * lisp.h (IMAGEP): New macro to test for image object type.
2794 (Qimage): Declare extern.
2795
2796 * macfns.c (Qimage): Remove extern (now in lisp.h).
2797 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2798
2799 * macterm.c (Qface, Qmouse_face): Remove unused externs.
2800
2801 * w32fns.c (Qimage): Remove extern (now in lisp.h).
2802 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2803
2804 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
2805
2806 * w32term.c (Qface, Qmouse_face): Remove unused externs.
2807
2808 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
2809 pointer types.
2810 (Qrelative_width, Qalign_to): Remove unused variables.
2811 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
2812 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
2813 image maps.
2814 (x_y_to_hpos_vpos): Return glyph relative coordinates through
2815 new dx and dy args.
2816 Remove buffer_only_p arg (always 0). Simplify code accordingly.
2817 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
2818 than row's ascent and height, to get sensible height on tall rows.
2819 (build_desired_tool_bar_string): Remove Qimage extern.
2820 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
2821 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
2822 image glyph is alone on the last line.
2823 (append_glyph, append_composite_glyph, produce_image_glyph)
2824 (append_stretch_glyph): Set glyph's ascent and descent.
2825 (on_hot_spot_p): New function to check if position is inside an
2826 rectangular, circular, or polygon-shaped image hot-spot,
2827 (find_hot_spot): New function to search for image hot-spot.
2828 (Flookup_image_map): New defun to search for image hot-spot.
2829 (define_frame_cursor1): New aux function to determine frame pointer.
2830 (note_mode_line_or_margin_highlight, note_mouse_highlight):
2831 Handle `pointer' text property and :pointer image property to
2832 control frame pointer shape. Detect image hot-spots for pointer
2833 and help_echo properties. Use define_frame_cursor1.
2834 (note_mouse_highlight): Use Vvoid_text_area_pointer.
2835 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
2836 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
2837
2838 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
2839
2840 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
2841 (Qimage): Remove extern (now in lisp.h).
2842 (valid_image_p, parse_image_spec): Use IMAGEP macro.
2843
2844 * xmenu.c (show_help_event): Remove unused code.
2845
2846 * xterm.c (Qface, Qmouse_face): Remove unused externs.
2847 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
2848 row's ascent and descent, to get a sensible height on tall rows.
2849
28502003-12-25 Luc Teirlinck <teirllm@auburn.edu>
2851
2852 * minibuf.c (Fcompleting_read): Undo previous change.
2853
28542003-12-25 Lars Hansen <larsh@math.ku.dk>
2855
2856 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
2857 Arguments GCPRO'ed in call to file name handler.
2858
28592003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
2860
2861 * termcap.c (tgetst1): Scan for "%pN"; if all
2862 N are continuous in [1,9], remove all "%pN".
2863
28642003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2865
2866 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
2867
2868 * xfaces.c (lface_fully_specified_p): Take into account that
2869 MAC OS always have unspecified stipple.
2870
28712003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2872
2873 * tparam.c (tparam1): Add handling for `%pN', which
2874 means use param N for the next substitution.
2875
28762003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
2877
2878 * xfaces.c (Fcolor_gray_p): Fix omission bug:
2879 In case `frame' is nil, consult the selected frame.
2880 (Fcolor_supported_p): Likewise.
2881
28822003-12-23 Luc Teirlinck <teirllm@auburn.edu>
2883
2884 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
2885 Doc fixes.
2886
2887 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
2888 and an integer. Adapt the introductory comment accordingly.
2889 (Fread_from_minibuffer): Delete code moved into read_minibuf.
2890 Doc fix.
2891 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
2892 read_minibuf.
2893 (Fcompleting_read): Delete code moved into read_minibuf.
2894 (Ftest_completion): Make it handle obarrays and hash tables correctly.
2895
28962003-12-03 Kenichi Handa <handa@m17n.org>
2897
2898 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
2899 encoding sequence.
2900
29012003-12-01 Kenichi Handa <handa@m17n.org>
2902
2903 * composite.c (syms_of_composite): Don't make the compostion hash
2904 table week.
2905
29062003-11-30 Luc Teirlinck <teirllm@auburn.edu>
2907
2908 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
2909 * textprop.c (Fget_char_property_and_overlay): New function.
2910 (syms_of_textprop): Defsubr it.
2911
29122003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2913
2914 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
2915 to compile on terminal configuration.
2916
2917 * fileio.c (Fread_file_name): Check use_file_dialog also before
2918 calling Fx_file_dialog.
2919
2920 * fns.c: use_file_dialog: New variable.
2921 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
2922
29232003-11-29 Kim F. Storm <storm@cua.dk>
2924
2925 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
2926 (syms_of_msdos): Don't intern and staticpro them.
2927
29282003-11-27 Kim F. Storm <storm@cua.dk>
2929
2930 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
2931 coordinates relative to glyph at posn. If glyph is an image,
2932 return that as object at posn. Callers changed.
2933 (mode_line_string, marginal_area_string): Calculate and return
2934 pixel coordinates relative to glyph. Callers changed.
2935
2936 * dispextern.h (buffer_posn_from_coords, mode_line_string)
2937 (marginal_area_string): Fix prototypes.
2938 (window_box_left_offset, window_box_right_offset): Add prototypes.
2939
2940 * frame.h (get_specified_cursor_type, get_window_cursor_type):
2941 Remove prototypes.
2942
2943 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
2944
2945 * keyboard.c (make_lispy_position): Add x and y coordinates
2946 relative to the current glyph as 7th element of position.
2947 If glyph is an image, return it in the object element.
2948 (read_key_sequence): Skip checks for keymap property in cases
2949 where POSN_STRING is not a string (e.g. an image).
2950
2951 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
2952 (Vshow_text_cursor_in_void): New variable.
2953 (glyph_to_pixel_coords): Don't use negative hpos.
2954 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
2955 (append_stretch_glyph): Change ascent arg to be actual value
2956 in pixels rather than ratio to height. Callers changed.
2957 (calc_pixel_width_or_height): New aux function, implementing
2958 pixel based artihmetic for glyph widths and heights.
2959 (produce_stretch_glyph): Use calc_pixel_width_or_height for
2960 :width, :height, :align-to, and :ascent, thus allowing these to
2961 be specified in pixels as well as multiples of characters.
2962 Don't produce stretch glyphs with zero width or height.
2963 (get_specified_cursor_type): Declare static.
2964 (get_window_cursor_type): Declare static. Add glyph arg to be
2965 able to know when cursor is on an image; always substitute
2966 hollow-box cursor for filled-box cursor on images, to avoid
2967 negative images and flicker when blinking the cursor.
2968 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
2969 (note_mode_line_or_margin_highlight): Use non-text cursor rather
2970 than vertical scroll-bar cursor in display margins.
2971 (note_mouse_highlight): Use non-text cursor rather than text
2972 cursor in fringes and over images in the text area.
2973 Use non-text cursor when mouse pointer is outside editable text,
2974 i.e. in the void after end-of-line or end-of-buffer; this was
2975 already done for W32, but is now standard for all systems --
2976 user can toggle show-text-cursor-in-void to get old behaviour.
2977 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
2978 Vdisplay_pixels_per_inch.
2979
29802003-11-25 Andreas Schwab <schwab@suse.de>
2981
2982 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
2983 EMACS_INT to not lose bits.
2984 (Ffillarray): Don't set bits beyond the size of a bool vector.
2985
29862003-11-25 Kim F. Storm <storm@cua.dk>
2987
2988 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
2989 define this defun on systems that cannot use stderr as lvalue.
2990
29912003-11-24 Gerd Moellmann <gerd@gnu.org>
2992
2993 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
2994 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
2995 ld's default is incompatible with unexec.
2996
29972003-11-23 Kim F. Storm <storm@cua.dk>
2998
2999 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3000 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3001 (Fforce_window_update): New defun.
3002 (syms_of_window): Defsubr it.
3003 (Fset_window_margins, Fset_window_fringes): Doc fix.
3004
3005 * print.c (Fredirect_debugging_output): New defun.
3006 (syms_of_print): Defsubr it.
3007
30082003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3009
3010 * fns.c (Fset_char_table_parent): Doc fix.
3011
30122003-11-22 Kim F. Storm <storm@cua.dk>
3013
3014 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3015 for glyph clicked on, rather than (unused) pixel positions.
3016 (mode_line_string, marginal_area_string): Change X and Y args to
3017 pointers for returning actual row/column for glyph clicked on.
3018 Simplify and optimize loops.
3019
3020 * dispextern.h (mode_line_string, marginal_area_string):
3021 Update prototypes.
3022
3023 * keyboard.c (make_lispy_position): New function for generating
3024 mouse click positions from frame and pixel coordinates.
3025 Enhanced to return buffer position and actual row/column for
3026 events outside the text area using updated mode_line_string and
3027 marginal_area_string functions.
3028 Return left-fringe and right-fringe clicks as such, rather than
3029 clicks in text area.
3030 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3031 pixel_to_glyph_coords, as we never use the results.
3032 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3033 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3034 Eliminate unused code in WHEEL_EVENT handling.
3035 (make_lispy_movement): Use make_lispy_position.
3036
3037 * window.c (coordinates_in_window): Remove redundant tests.
3038 Fix returned X pixel value for left-margin.
3039
3040 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3041 mode_line_string and marginal_area_string parameters.
3042
30432003-11-22 Lars Hansen <larsh@math.ku.dk>
3044
3045 * w32.c (struct the_group, getgrgid): Add.
3046 * mac.c (struct my_group, getgrgid): Add.
3047
30482003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3049
3050 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3051
30522003-11-21 Lars Hansen <larsh@math.ku.dk>
3053
3054 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3055 include in call to file name handler. Optionally translate numeric
3056 UID and GID to strings. Update docstring.
3057 (directory_files_internal): Add parameter ID-FORMAT.
3058 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3059 include in call to file name handler and call to
3060 directory_files_internal. Update Docstring.
3061 (Fdirectory_files): Add dummy parameter in call to
3062 directory_files_internal.
3063 * lisp.h (Qinteger): Add.
3064 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3065 (Ffile_attributes): Add parameter.
3066 * data.c (Qinteger): Export.
3067
30682003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3069
3070 * fns.c (Freverse, Fnreverse): Doc fixes.
3071
30722003-11-19 Kim F. Storm <storm@cua.dk>
3073
3074 * xdisp.c (init_iterator): Initialize it->start to position
3075 before reseating (in case start position is invisible).
3076 (init_to_row_start): Set it->start to row-start.
3077 (redisplay_window): Accept optional_new_start if start position
3078 is invisible (in which case IT_CHARPOS overshoots PT).
3079 (display_line): Setup row->start from it->start (rather than
3080 it->current which is wrong if first char on line is invisible).
3081 When done, reseat it->start to it->current (= start of next row).
3082 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3083 is only partially visible.
3084
3085 * dispextern.h (struct it): New member start.
3086
30872003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3088
3089 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3090 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3091 of block_index outside of the macro call.
3092 (Fgarbage_collect): Remove null code.
3093
3094 * m/amdx86-64.h: Don't redefine XPNTR.
3095
3096 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3097 of VALMASK.
3098
3099 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3100 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3101 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3102
3103 * lisp.h (VALMASK): Only define for non-union type.
3104 (MARKBIT): Remove.
3105 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3106 (XTYPE): Define unconditionally.
3107 (XSETTYPE): Remove one more remnant.
3108 (EQ): Define differently for the union and non-union cases.
3109 (INTMASK): New bit mask.
3110 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3111 (GC_EQ): Delegate to EQ.
3112
3113 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3114
31152003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3116
3117 * xterm.c (x_window_to_scroll_bar): Move check of display to
3118 where window_id is compared.
3119
31202003-11-17 Kim F. Storm <storm@cua.dk>
3121
3122 * dispextern.h (struct it): New member first_vpos.
3123
3124 * xdisp.c (start_display): Set it->first_vpos.
3125 (try_window_id): Use first_vpos to start display in first _text_
3126 line if no reusable lines at start of window with header line.
3127
31282003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3129
3130 * w32fns.c (XPutPixel):
3131 * w32bdf.c (w32_init_bdf_font):
3132 * sunfns.c (sel_read):
3133 * process.c (Fmake_network_process):
3134 * frame.c (store_frame_param):
3135 * fontset.c (Fset_fontset_font):
3136 * emacs.c (shut_down_emacs):
3137 * ccl.c (ccl_driver): Remove period at end of error message.
3138
3139 * config.in: Regenerate.
3140
3141 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3142 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3143 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3144 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3145 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3146
3147 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3148
3149 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3150 (XTmouse_position, handle_one_xevent): Pass Display* to
3151 x_window_to_scroll_bar.
3152 (x_window_to_scroll_bar): Take a Display* argument.
3153 Check that display for frame is equal to Display* argument.
3154 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3155 x_display_info_for_display instead. Use Display in xev instead
3156 of GDK_DISPLAY.
3157 (x_dispatch_event): Call x_display_info_for_display.
3158 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3159 (x_connection_closed): Call xg_display_close for GTK.
3160 (x_term_init): Call xg_display_open for additional displays.
3161 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3162 for GTK.
3163
3164 * xmenu.c (single_menu_item, mouse_position_for_popup)
3165 (x_activate_menubar): Formatting adjustments.
3166
3167 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3168 adjustments.
3169
3170 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3171 (xg_display_close, xg_create_default_cursor)
3172 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3173 handling.
3174 (xg_left_ptr_cursor): Remove.
3175 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3176 cursor here.
3177 (xg_win_to_widget): Take Display* argument, call
3178 gdk_xid_table_lookup_for_display.
3179 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3180 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3181 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3182 in FRAME_X_DISPLAY_INFO.
3183 (xg_get_scroll_id_for_window): Take Display* argument.
3184 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3185 (xg_initialize): Remove xg_left_ptr_cursor.
3186
3187 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3188 Display* argument also. Declare xg_display_open,
3189 xg_display_close, xg_create_default_cursor.
3190
31912003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3192
3193 * xterm.c (x_detect_focus_change): Do not change focus frame for
3194 Enter/LeaveNotify if the current focus frame has explicit focus.
3195
31962003-11-14 Kim F. Storm <storm@cua.dk>
3197
3198 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3199 is active and first glyph is only partially visible.
3200
32012003-11-13 Kenichi Handa <handa@m17n.org>
3202
3203 * xdisp.c (select_frame_for_redisplay): New function.
3204 (redisplay_internal): Record also selected_frame for
3205 unwind_redisplay. Call select_frame_for_redisplay before
3206 redrawing each frame.
3207 (unwind_redisplay): Argument changed to a cons.
3208
32092003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3210
3211 * fns.c (Fstring_to_multibyte): Doc fix.
3212
32132003-11-11 Kenichi Handa <handa@m17n.org>
3214
3215 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3216
32172003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3218
3219 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3220 program specified positions.
3221
32222003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3223
3224 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3225
32262003-11-08 Kenichi Handa <handa@m17n.org>
3227
3228 * Makefile.in (lisp): Add kannada.el.
3229 (shortlisp): Likewise.
3230
32312003-11-07 Kenichi Handa <handa@m17n.org>
3232
3233 * coding.c (coding_allocate_composition_data):
3234 Reset coding->composing to COMPOSITION_NO.
3235 (coding_restore_composition): Detect invalid composition data.
3236 Give Fstring and Fvector a Lispy integer, not C int.
3237
32382003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3239
3240 * floatfns.c (Flogb): Don't use VALMASK.
3241
3242 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3243 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3244
3245 * lisp.h (XINT): Move the cast to clarify what is going on.
3246 (GCTYPEMASK, XSETTYPE): Remove.
3247 (XGCTYPE): Make it an alias of XTYPE.
3248
32492003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3250
3251 * xterm.c (x_term_init): Fix formatting.
3252
32532003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3254
3255 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3256 and xg_did_tearoff.
3257
3258 * gtkutil.c: Remove variable xg_did_tearoff.
3259 (xg_have_tear_offs): New function.
3260 (tearoff_remove): Just decrease xg_detached_menus.
3261 (tearoff_activate): Increase xg_detached_menus and call
3262 tearoff_remove when tearoff is removed.
3263 (xg_keep_popup): Remove function.
3264 (create_menus): Give add_tearoff_p as argument to recursive
3265 call to create_menus.
3266 (xg_create_widget): Use variables instead of multiple
3267 strcmp. Tell create_menus to create tear off only for
3268 menu bar menus.
3269 (xg_update_menubar): Change title for a detached menu also.
3270 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3271 of deep_p.
3272 (xg_initialize): Initialize xg_detached_menus, remove
3273 initialization of xg_did_tearoff.
3274
3275 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3276 xg_have_tear_offs returns non-zero.
3277 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3278 call to xg_keep_popup.
3279
32802003-11-01 Andrew Choi <akochoi@shaw.ca>
3281
3282 * macterm.c (XTread_socket): Handle menubar selection and grow
3283 window only for mouseDown events.
3284
32852003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3286
3287 * xterm.c (x_term_init): For GTK part, increase x_initialized
3288 to check for more than one display. Use error instead of return 0.
3289
32902003-10-31 Andrew Choi <akochoi@shaw.ca>
3291
3292 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3293 (copy_dysymtab): Call it.
3294
32952003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3296
3297 * eval.c (Fdefvaralias): Doc fix.
3298
32992003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3300
3301 * data.c (Fsetplist): Doc fix.
3302
33032003-10-14 Lute Kamstra <lute@gnu.org>
3304
3305 * window.c (Fset_window_fringes): Clarify docstring.
3306
33072003-10-14 Kim F. Storm <storm@cua.dk>
3308
3309 * window.c (Fset_window_margins): Simplify arg checking.
3310
33112003-10-13 Richard M. Stallman <rms@gnu.org>
3312
3313 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3314 (print_partial_compiled_pattern): Replace assert with a printout.
3315 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3316
3317 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3318
3319 * window.c (Fset_window_margins): Allow only integers as args.
3320 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3321 Doc fixes.
3322
33232003-10-13 Lute Kamstra <lute@gnu.org>
3324
3325 * window.c (Fset_window_fringes): Elaborate docstring.
3326
33272003-10-12 Andrew Choi <akochoi@shaw.ca>
3328
3329 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3330
3331 * s/darwin.h (GC_MARK_STACK): Define.
3332
33332003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3334
3335 * window.c (shrink_windows): New function.
3336 (size_window): Call shrink_windows to calculate window sizes when
3337 shrinking frame with more than one window.
3338
33392003-10-12 Kim F. Storm <storm@cua.dk>
3340
3341 * xdisp.c (compute_fringe_widths): Doc fix.
3342
33432003-10-08 Kenichi Handa <handa@m17n.org>
3344
3345 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3346
33472003-10-07 Kenichi Handa <handa@m17n.org>
3348
3349 * coding.c (Qcoding_system_define_form): New variable.
3350 (syms_of_coding): Intern and staticpro it.
3351 (Fcheck_coding_system): Try to autoload the definition of
3352 CODING-SYSTEM.
3353
33542003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3355
3356 * fns.c (Frequire): Doc fix.
3357
33582003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3359
3360 * xfns.c (Fx_send_client_event): New function as a base for
3361 manipulating extended window manager hints.
3362 (Fx_send_client_event): Remove unused variable s.
3363
3364 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3365 that function is removed.
3366
3367 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3368 x/y_pixels_outer_diff.
3369 (x_check_expected_move): Calculate move_offset_left/top.
3370
3371 * xterm.h (struct x_output): New members: move_offset_top/left.
3372
3373 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3374 call x_set_offset directly.
3375
3376 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3377
3378 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3379
3380 * xterm.c (x_delete_display): Free font names and font_encoder
3381 in dpyinfo->font_table.
3382
3383 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3384 Move xfree of font names to x_delete_display.
3385
3386 * xterm.h (struct x_display_info): New member, wm_type.
3387 (struct x_output): New members, expected_top/left and
3388 check_expected_move.
3389
3390 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3391 is received.
3392 (handle_one_xevent): Rename x_check_expected_move from
3393 x_check_fullscreen_move.
3394 (x_set_offset): Only add WM decoration sizes to modified_top/left
3395 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3396 (x_check_expected_move): Rename from x_check_fullscreen_move.
3397 Removed fullscreen specific code. Use check_expected_move,
3398 expected_left/top instead. Also, set wm_type.
3399 (x_term_init): Initialize wm_type to unknown.
3400
3401 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3402 sizes to move_x/y.
3403
34042003-10-03 Kenichi Handa <handa@m17n.org>
3405
3406 * macterm.c (x_load_font): Clear all members of FONTP before start
3407 filling them.
3408
34092003-10-02 Kenichi Handa <handa@m17n.org>
3410
3411 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3412 before calling find_ccl_program_func. Call find_ccl_program_func
3413 only when fontp->font_encoder is not NULL.
3414
3415 * xterm.c (x_load_font): Clear all members of FONTP before start
3416 filling them.
3417
34182003-10-03 John Paul Wallington <jpw@gnu.org>
3419
3420 * keymap.c (map_keymap): Don't abort when binding is a vector.
3421
34222003-10-02 Jason Rumney <jasonr@gnu.org>
3423
3424 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3425 Sync dependencies with Makefile.in.
3426 (alloca.o): Remove.
3427
3428 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3429 filling them.
3430
3431 * w32bdf.c (w32_load_bdf_font): Likewise.
3432
34332003-09-30 Richard M. Stallman <rms@gnu.org>
3434
3435 * term.c (set_tty_color_mode): Calculate current_mode_spec
3436 regardless of value of VAL.
3437
3438 * intervals.c (graft_intervals_into_buffer):
3439 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3440 Handle over_used when splitting UNDER.
3441
34422003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3443
3444 * regex.c (regex_compile): Free the stack when returning from function.
3445
34462003-09-28 Kenichi Handa <handa@m17n.org>
3447
3448 * fontset.c (Finternal_char_font): Change return value to
3449 cons (FONT-NAME . GLYPH-CODE).
3450
34512003-09-28 Eli Zaretskii <eliz@gnu.org>
3452
3453 * term.c (tty_setup_colors): Treat any negative argument as -1.
3454
34552003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3456
3457 * process.c (send_process): Delete unused temp_buf.
3458
34592003-09-26 Dave Love <fx@gnu.org>
3460
3461 * xterm.c (x_bitmap_mask): Declare.
3462
34632003-09-25 Dave Love <fx@gnu.org>
3464
3465 * Makefile.in (fns.o): Depend on md5.h.
3466
34672003-09-25 Kim F. Storm <storm@cua.dk>
3468
3469 * window.c (set_window_buffer): Fix redisplay problems when
3470 switching between buffers with different display margin widths.
3471
34722003-09-23 Kim F. Storm <storm@cua.dk>
3473
3474 * process.c (set_socket_option): Fix :bindtodevice option.
3475 (Fset_network_process_option): Update process contact list when
3476 setting option succeeds.
3477 (Fmake_network_process): Doc fix.
3478
34792003-09-23 Dave Love <fx@gnu.org>
3480
3481 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
3482
34832003-09-22 Eli Zaretskii <eliz@gnu.org>
3484
3485 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3486 color mode is an integer number (it could be -1).
3487
34882003-09-22 Richard M. Stallman <rms@gnu.org>
3489
3490 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3491 in the case where OVER is longer than UNDER.
3492
34932003-09-22 Masatake YAMATO <jet@gyve.org>
3494
3495 * window.c (Fset_window_scroll_bars): Validate the value of
3496 `vertical_type'.
3497
34982003-09-21 Kim F. Storm <storm@cua.dk>
3499
3500 * frame.c (Vdefault_frame_scroll_bars): New variable.
3501 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3502 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3503 window-system default scroll bar position.
3504
3505 * window.c (Fwindow_scroll_bars): Doc fix.
3506
35072003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3508
3509 * xterm.c (x_set_offset): Take window manager decorations into account.
3510
35112003-09-19 Richard M. Stallman <rms@gnu.org>
3512
3513 * atimer.h: Don't include lisp.h.
3514 (P_): Define it here (as well as elsewhere).
3515
3516 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3517 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3518
3519 * data.c (Fvariable_binding_locus): New function.
3520 (syms_of_data): defsubr it.
3521 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3522
35232003-09-18 Dave Love <fx@gnu.org>
3524
3525 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3526
3527 * process.c (Fnetwork_interface_info): Fix type error.
3528 (Fnetwork_interface_list): Doc fix.
3529 (read_process_output, read_process_output): Delete unused var.
3530
35312003-09-17 Kim F. Storm <storm@cua.dk>
3532
3533 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3534 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3535 (Fnetwork_interface_info): Check that ifreq struct has required
3536 fields before accessing them; this requires that those fields are
3537 defined as macros, which may be too restrictive on some platforms,
3538 but it is better than failing on other platforms.
3539 (syms_of_process): Only defsubr above fns when included.
3540
35412003-09-17 Dave Love <fx@gnu.org>
3542
3543 * unexalpha.c: Don't include varargs.h.
3544
35452003-09-17 Kim F. Storm <storm@cua.dk>
3546
3547 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3548 for network process.
3549 (socket_options): Add `:' prefix to option names. Add optbit field.
3550 (set_socket_option): Remove no_error arg and special handling of s < 0.
3551 Return 1<<optbit for known option, 0 for unknown.
3552 Do not interpret 0 as false for boolean option (only nil).
3553 Pass failed option and value to report_file_error.
3554 (Fset_network_process_options): Replace by Fset_network_process_option.
3555 (Fset_network_process_option): New function to set just one option.
3556 (Fmake_network_process): Allow :coding arg to be a cons.
3557 Allow :server arg to be an integer specifying backlog size.
3558 Remove :options arg, and allow options to be specified directly
3559 as :KEY, VALUE pairs. Parse these options before binding socket.
3560 As before, :reuseaddr t is default for a server process, but this
3561 can now be disabled by specifying :reuseaddr nil.
3562 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
3563 (init_process): Availability of network options is now checked with
3564 simpler syntax (featurep 'make-network-process :OPTION); use loop to
3565 setup features.
3566 (syms_of_process): Fix defsubr's for the replaced functions.
3567
35682003-09-16 Dave Love <fx@gnu.org>
3569
3570 * Makefile.in: Depend on coding.h.
3571
35722003-09-14 Kim F. Storm <storm@cua.dk>
3573
3574 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
3575 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
3576 (syms_of_process): Defsubr them.
3577
3578 * config.in: Regenerate.
3579
35802003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
3581
3582 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
3583 * m/news-r6.h (XUNMARK): Remove.
3584 * m/mips.h (XUNMARK): Remove.
3585 * m/mips-siemens.h (XUNMARK): Remove.
3586 * m/iris4d.h (XUNMARK): Remove.
3587 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
3588
35892003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
3590
3591 * lisp.h (VALBITS): Don't remove 1 for the markbit.
3592 (union Lisp_Object): Use unsigned int for types. Remove markbit.
3593 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
3594 (XTYPE): Use unsigned right-shift.
3595 (XMARKBIT, XMARK, XUNMARK): Remove.
3596
3597 * alloc.c (init_intervals, init_symbol, init_marker):
3598 Don't preallocate anything.
3599 (Fgarbage_collect, mark_object): Ignore the markbit.
3600
3601 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
3602
36032003-09-08 Lute Kamstra <lute@gnu.org>
3604
3605 * xdisp.c (pint2hrstr): New function.
3606 (decode_mode_spec): Add `%i' and `%I' specs.
3607 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
3608 for `mode-line-format'.
3609
36102003-09-07 Andreas Schwab <schwab@suse.de>
3611
3612 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
3613 avoid warning.
3614
36152003-09-07 Eli Zaretskii <eliz@gnu.org>
3616
3617 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
3618
36192003-09-03 Kim F. Storm <storm@cua.dk>
3620
3621 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
3622 change (superseded by 2002-08-30 change); the default blink-off
3623 cursor is now again "no cursor".
3624
36252003-09-01 Jason Rumney <jasonr@gnu.org>
3626
3627 * makefile.w32-in (alloca.o): Remove.
3628 (coding.o): Depend on intervals.h
3629 (emacs.o, bytecode.o): Depend on window.h
3630
36312003-09-01 Dave Love <fx@gnu.org>
3632
3633 * Makefile.in (alloca.o): Remove commands.
3634 (coding.o): Depend on intervals.h composite.h window.h.
3635 (emacs.o): Depend on window.h keyboard.h keymap.h.
3636 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
3637 (bytecode.o): Depend on window.h.
3638
36392003-08-31 Jason Rumney <jasonr@gnu.org>
3640
3641 * w32term.c (w32_per_char_metric): Allow cached metrics to be
3642 returned even when font_type is unknown.
3643
3644 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
3645
36462003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3647
3648 * xterm.c (x_term_init): Initialize new fields in x_display_info.
3649
3650 * xterm.h (struct x_display_info): Add red/green/blue_bits and
3651 *_offset.
3652
3653 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
3654 calculate pixel value.
3655
36562003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
3657
3658 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
3659 Don't tell redisplay display is accurate when it's actually been
3660 paused for pending input.
3661
36622003-08-29 Richard M. Stallman <rms@gnu.org>
3663
3664 * dispnew.c (adjust_glyph_matrix): Call window_box
3665 whenever W is nonzero.
3666
3667 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
3668 (Fkill_local_variable, Fmake_variable_frame_local)
3669 (Flocal_variable_p, Flocal_variable_if_set_p):
3670 Use indirect_variable to trace thru variable aliases.
3671
3672 * config.in: Updated.
3673
3674 * callint.c (Fcall_interactively): Save and restore
3675 Vthis_command, Vthis_original_command, real_this_command,
3676 and current_kboard->Vlast_command.
3677
3678 * abbrev.c (Fexpand_abbrev): Insert before deleting.
3679
36802003-08-29 Gerd Moellmann <gerd@gnu.org>
3681
3682 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
3683
36842003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
3685
3686 * coding.c (decode_coding_iso2022): Initialize local variable c2.
3687 (decode_coding_sjis_big5): Likewise.
3688
36892003-08-27 Jason Rumney <jasonr@gnu.org>
3690
3691 * w32.c (sys_pipe): Protect against file descriptor overflow.
3692
3693 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
3694
3695 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
3696
36972003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
3698
3699 * xfns.c (Vgtk_version_string): New variable.
3700 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
3701
37022003-08-24 Eli Zaretskii <eliz@gnu.org>
3703
3704 * term.c (term_init): Remove `const' from buffer_size's declaration.
3705
3706 * Makefile.in (msdos.o): Depend on intervals.h.
3707
3708 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
3709
37102003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3711
3712 * xterm.h (struct x_display_info): New fields: client_leader_window
3713 and Xatom_wm_client_leader.
3714
3715 * xterm.c (x_initialize): Move call to x_session_initialize to ...
3716 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
3717
3718 * xsmfns.c (create_client_leader_window): New function.
3719 (x_session_initialize): Call create_client_leader_window, take
3720 dpyinfo as argument.
3721
3722 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
3723
3724 * Makefile.in (xsmfns.o): Add more depenedencies.
3725
37262003-08-21 Dave Love <fx@gnu.org>
3727
3728 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
3729
37302003-08-21 Kenichi Handa <handa@m17n.org>
3731
3732 * term.c (term_init): Fix previous change; don't rely on the
3733 length of `buffer' if TERMINFO is defined.
3734
37352003-08-20 Dave Love <fx@gnu.org>
3736
3737 * atimer.h: Include lisp.h.
3738
3739 * lisp.h (EMACS_LISP_H): New.
3740 (popup_activated_flag): Don't declare.
3741
3742 * alloca.c: Some merging with gnulib. Change logic and doc
3743 concerning (x)malloc/(x)free -- no longer Emacs-specific.
3744 [DO_BLOCK_INPUT]: Don't include lisp.h.
3745 (xmalloc, xfree): Declare.
3746 (malloc): Don't declare.
3747
3748 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
3749 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
3750 atimer.h, blockinput.h.
3751
3752 * alloc.c (lisp_align_malloc): Change type of `aligned'.
3753
3754 * alloca.s: Removed.
3755
37562003-08-19 Gerd Moellmann <gerd@gnu.org>
3757
3758 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
3759 use -lncurses.
3760
3761 * term.c (term_init): Use a buffer of size 4096 for tgetent since
3762 FreeBSD returns something longer than 2044. Abort if the end of
3763 the buffer is overwritten.
3764
37652003-08-19 Miles Bader <miles@gnu.org>
3766
3767 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
3768
37692003-08-19 Gerd Moellmann <gerd@gnu.org>
3770
3771 * alloc.c (lisp_align_malloc): Check for memory full when
3772 allocating ablocks, which also avoids freeing a pointer into an
3773 ablocks structure.
3774
3775 * puresize.h (BASE_PURESIZE): Increase to 1100000.
3776
3777 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
3778
37792003-08-16 Richard M. Stallman <rms@gnu.org>
3780
3781 * editfns.c (Fencode_time): Doc fix.
3782
37832003-08-16 David Ponce <david@dponce.com>
3784
3785 * fileio.c (Fwrite_region): Fix conditional expression to issue
3786 the right message.
3787
37882003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
3789
3790 * syntax.c (Fforward_word): Argument changed to optional.
3791 Set default value to 1.
3792
37932003-08-15 Kenichi Handa <handa@m17n.org>
3794
3795 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
3796 what autoscaled.
3797 (best_matching_font): Once we find a better scalable font, set
3798 non_scalable_has_exact_height_p to 1.
3799 (try_font_list): Call try_alternative_families to try any family
3800 with the given registry.
3801
38022003-08-09 Andreas Schwab <schwab@suse.de>
3803
3804 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
3805
3806 * print.c (print_string): Fix printing of multibyte string with
3807 nontrivial printcharfun.
3808
38092003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3810
3811 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
3812
3813 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
3814
38152003-07-31 Kenichi Handa <handa@m17n.org>
3816
3817 * process.c (read_process_output): Return the actually read bytes
3818 instead of the result of decoding.
3819
38202003-07-31 Kenichi Handa <handa@m17n.org>
3821
3822 * xterm.h (struct x_bitmap_record): New member have_mask.
3823
3824 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
3825 to 0.
3826 (x_create_bitmap_from_file): Likewise.
3827 (x_destroy_bitmap): Check have_mask member before freeing a mask.
3828 (x_destroy_all_bitmaps): Likewise.
3829 (x_create_bitmap_mask): Set have_mask member to 1.
3830
38312003-07-30 Richard M. Stallman <rms@gnu.org>
3832
3833 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
3834
38352003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3836
3837 * gtkutil.c (xg_mark_data): Update calls to mark_object.
3838
38392003-07-29 Richard M. Stallman <rms@gnu.org>
3840
3841 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
3842 Conditionalize XIM code on HAVE_XIM.
3843
3844 * fns.c (Fclear_string): New function.
3845 (syms_of_fns): defsubr it.
3846
38472003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
3848
3849 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
3850
38512003-07-22 Stefan Monnier <monnier@cs.yale.edu>
3852
3853 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
3854
3855 * buffer.c (delete_all_overlays): New function.
3856 * buffer.h (delete_all_overlays): Declare.
3857 * coding.c (run_pre_post_conversion_on_str):
3858 * print.c (temp_output_buffer_setup):
3859 * fileio.c (Finsert_file_contents):
3860 * minibuf.c (get_minibuffer): Use it.
3861
38622003-07-22 Andrew Choi <akochoi@shaw.ca>
3863
3864 * unexmacosx.c (unexec_regions_sort_compare):
3865 (unexec_regions_merge): New functions. Sort and merge unexec
3866 regions before dumping them.
3867
38682003-07-22 Dave Love <fx@gnu.org>
3869
3870 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
3871
38722003-07-21 Stefan Monnier <monnier@cs.yale.edu>
3873
3874 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
3875 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
3876 MARKBIT as the gcmarkbit for strings.
3877
38782003-07-21 Richard M. Stallman <rms@gnu.org>
3879
3880 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
3881
3882 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
3883 (syms_of_fns): Corresponding change.
3884
3885 * alloc.c (syms_of_alloc): Doc fixes.
3886
38872003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
3888
3889 * s/netbsd.h: Use -Wl syntax.
3890
38912003-07-17 Richard M. Stallman <rms@gnu.org>
3892
3893 * xterm.c (xim_initialize): Redo 6/24 change.
3894
38952003-07-15 Stefan Monnier <monnier@cs.yale.edu>
3896
3897 * buffer.c (copy_overlays): Use EMACS_INT for positions.
3898 (Fswitch_to_buffer): Don't signal an error when switching to the same
3899 buffer in a dedicated window.
3900
3901 * alloc.c: Use bitmaps for cons, as was done for floats.
3902 (init_float, init_cons): Let the normal code allocate the first block.
3903 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
3904 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
3905 New macros.
3906 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
3907 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
3908 (live_cons_p): Check the pointer is not past the `conses' array.
3909 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
3910 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
3911 (survives_gc_p): Use CONS_MARKED_P and simplify.
3912 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
3913
39142003-07-13 Paul Eggert <eggert@twinsun.com>
3915
3916 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
3917 puts it into BSS instead, at least on Solaris 8 and 9.
3918 This is a valid optimization, and it may occur on other platforms,
3919 so Emacs should not assume that initializing a static variable to
3920 zero puts it into data.
3921 * alloc.c (pure, staticvec):
3922 Initialize these arrays to nonzero, so that they're not
3923 put into BSS by that optimization.
3924
39252003-07-13 Stefan Monnier <monnier@cs.yale.edu>
3926
3927 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
3928 (lisp_align_malloc): Use posix_memalign is available.
3929 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
3930 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
3931 for consistency. Update users.
3932
39332003-07-13 Richard M. Stallman <rms@gnu.org>
3934
3935 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
3936
39372003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
3938
3939 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
3940 and use the Gtk+ function gtk_window_icon_from_file if available.
3941
3942 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
3943 handle mask of bitmaps.
3944 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
3945 mask property.
3946 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
3947
3948 * xterm.h (xg_set_icon): New function.
3949
39502003-07-12 Paul Eggert <eggert@twinsun.com>
3951
3952 * unexelf.c (unexec): Consider a section to precede the .bss
3953 section if its addresses overlap that of .bss.
3954
39552003-07-12 Richard M. Stallman <rms@gnu.org>
3956
3957 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
3958
3959 * config.in (HAVE_CRTIN): Add #undef.
3960 (INLINE): Really inline only if OPTIMIZE is defined.
3961
3962 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
3963 END_FILES_1.
3964 (START_FILES_1, END_FILES_1): New macros (conditional).
3965 (LD_SWITCH_SYSTEM_TEMACS): Define.
3966
3967 * s/openbsd.h: Don't include bsd4-3.h.
3968 (TERMINFO): Define.
3969 (LIBS_TERMCAP): Define.
3970 (LD_SWITCH_SYSTEM): Define (two definitions).
3971
3972 * xfns.c: Include libpng/png.h instead of png.h.
3973
39742003-07-11 Andreas Schwab <schwab@suse.de>
3975
3976 * buffer.c (modify_overlay): Update prototype.
3977 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
3978 Likewise.
3979
39802003-07-09 Stefan Monnier <monnier@cs.yale.edu>
3981
3982 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
3983 (struct interval): Move to intervals.h.
3984 (struct Lisp_Marker): Use EMACS_INT for position info.
3985 (forward_point): Remove prototype of defunct function.
3986 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
3987 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
3988 (syms_of_textprop, set_text_properties): Remove prototypes that are
3989 already in intervals.h.
3990
3991 * intervals.h (struct interval): Move from lisp.h.
3992 Use EMACS_INT for position and size info.
3993
3994 * coding.c: Include intervals.h for Fset_text_properties.
3995
3996 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
3997 position and length information.
3998
39992003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4000
4001 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4002 position and length information.
4003
40042003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4005
4006 Change overlays_after and overlays_before so the overlays themselves
4007 are linked into lists, rather than using cons cells. After all each
4008 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4009 Lisp_Overlay for free and save up one cons cell per overlay (not
4010 to mention one indirection when traversing the list of overlay).
4011
4012 * lisp.h (struct Lisp_Overlay): New field `next'.
4013
4014 * buffer.h (struct buffer): Change overlays_before and overlays_after
4015 from Lisp lists of overlays to pointers to overlays.
4016
4017 * buffer.c (overlay_strings, recenter_overlay_lists):
4018 Fix typo in eassert in last commit.
4019 (unchain_overlay): New function.
4020 (add_overlay_mod_hooklist): Use AREF.
4021 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4022 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4023 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4024 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4025 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4026 Adjust to new type of overlays_(before|after).
4027
4028 * alloc.c (mark_object): Mark the new `next' field of overlays.
4029 (mark_buffer): Manually mark the overlays_(after|before) fields.
4030
4031 * coding.c (run_pre_post_conversion_on_str):
4032 * editfns.c (overlays_around):
4033 * xdisp.c (load_overlay_strings):
4034 * fileio.c (Finsert_file_contents):
4035 * indent.c (current_column):
4036 * insdel.c (signal_before_change, signal_after_change):
4037 * intervals.c (set_point_both):
4038 * print.c (temp_output_buffer_setup): Use new type for
4039 overlays_(before|after).
4040
40412003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4042
4043 * buffer.c (report_overlay_modification): Don't run hooks while
4044 traversing the list of overlays.
4045
4046 * buffer.h (struct buffer): Use an int for overlay_center.
4047 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4048 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4049
4050 * buffer.c (reset_buffer, recenter_overlay_lists)
4051 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4052 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4053 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4054 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4055 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4056
4057 * xdisp.c (fast_find_position): Remove unused var.
4058
4059 * cmds.c (Qexpand_abbrev): New sym.
4060 (syms_of_cmds): Initialize it.
4061 (internal_self_insert): Use it to call expand-abbrev.
4062
40632003-07-09 Kim F. Storm <storm@cua.dk>
4064
4065 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4066 was configured with --without-xim.
4067 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4068
40692003-07-07 Richard M. Stallman <rms@gnu.org>
4070
4071 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4072
4073 * alloc.c (Fgarbage_collect): Doc fix.
4074
40752003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4076
4077 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4078
40792003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4080
4081 * minibuf.c (read_minibuf): UNGCPRO before returning.
4082 (Ftry_completion, Fall_completions): Doc fix.
4083
4084 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4085 now that `floats' is not the last element of the struct any more.
4086
40872003-07-06 Jason Rumney <jasonr@gnu.org>
4088
4089 * w32term.h (ClipboardSequence_Proc): New type.
4090
4091 * w32fns.c (clipboard_sequence_fn): New variable.
4092 (globals_of_w32fns): Initialize it.
4093
4094 * w32select.c (last_clipboard_sequence_number): New variable.
4095 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4096 number if possible.
4097
40982003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4099
4100 * m/amdx86-64.h (MARKBIT):
4101 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4102 MARKBIT and ARRAY_MARK_FLAG any more.
4103
4104 * m/hp800.h (XSETMARKBIT):
4105 * m/sr2k.h (XSETMARKBIT):
4106 * lisp.h (XSETMARKBIT): Remove unused macro.
4107
4108 * lisp.h (mark_object): Change prototype.
4109
4110 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4111 (last_marked): Change accordingly.
4112 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4113 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4114 (mark_buffer): Update calls to mark_object.
4115
4116 * bytecode.c (mark_byte_stack):
4117 * fns.c (sweep_weak_table):
4118 * keyboard.c (mark_kboards): Update calls to mark_object.
4119
41202003-07-06 Jason Rumney <jasonr@gnu.org>
4121
4122 * alloc.c (struct ablock): Only include padding when there is some.
4123
41242003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4125
4126 * alloc.c (ALIGN): Add casts to simplify usage.
4127 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4128 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4129 (struct ablock, struct ablocks): New types.
4130 (free_ablock): New global var.
4131 (lisp_align_malloc, lisp_align_free): New functions.
4132 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4133 (struct float_block): Reorder and add gcmarkbits.
4134 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4135 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4136 (init_float, make_float): Use lisp_align_malloc.
4137 (free_float, live_float_p): Don't use `type' any more.
4138 (make_float): Use FLOAT_UNMARK to access to mark bit.
4139 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4140 Use FLOAT_MARKED_P to access the mark bit.
4141 (pure_alloc): Simplify use of ALIGN.
4142 (mark_object): Use FLOAT_MARK to access the mark bit.
4143 (gc_sweep): Use new macros to access the float's mark bit.
4144 (init_alloc_once): Init free_ablock.
4145
4146 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4147
41482003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4149
4150 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4151 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4152 (allocate_buffer): Move.
4153 (string_bytes): Don't mask markbit of `size_byte'.
4154 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4155 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4156 Use the `size' field of buffers (rather than the `name' field) for
4157 the mark bit, as is done for all other vectorlike objects.
4158 Use the new macros to access the mark bit of vectorlike objects.
4159
41602003-06-26 Richard M. Stallman <rms@gnu.org>
4161
4162 * puresize.h (BASE_PURESIZE): Increment base size.
4163
4164 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4165
4166 * xterm.c (xim_initialize): Undo previous change.
4167
41682003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4169
4170 * alloc.c (survives_gc_p): Simplify.
4171
4172 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4173
4174 * window.c (Fset_window_dedicated_p): Simplify.
4175 (display_buffer_1): Don't raise the win from which minibuf was entered.
4176 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4177 (Fminibuffer_selected_window): Simplify.
4178
4179 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4180
4181 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4182 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4183
4184 * insdel.c (check_markers, adjust_markers_for_delete)
4185 (adjust_markers_for_insert, adjust_markers_for_replace)
4186 (prepare_to_modify_buffer, RESTORE_VALUE):
4187 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4188 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4189 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4190 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4191 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4192 * editfns.c (save_excursion_restore, transpose_markers):
4193 * window.c (delete_window):
4194 * xdisp.c (message_dolog): Update for new types.
4195
41962003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4197
4198 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4199 (realize_default_face): Use default_face_done_p for the force_p
4200 argument to set_lface_from_font_name. Set default_face_done_p to one.
4201
4202 * frame.c (make_frame): Initialize default_face_done_p.
4203
4204 * frame.h (struct frame): Add default_face_done_p.
4205
4206 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4207 will be defined.
4208
42092003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4210
4211 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4212 Initialize the new field `gcmarkbit'.
4213 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4214 (mark_interval_tree): Don't mark the tree separately from the nodes.
4215 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4216 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4217 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4218
4219 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4220 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4221 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4222 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4223 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4224
42252003-06-24 Dave Love <fx@gnu.org>
4226
4227 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4228
4229 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4230 from gnulib.
4231
42322003-06-21 Richard M. Stallman <rms@gnu.org>
4233
4234 * fileio.c (Fwrite_region): Alternate messages
4235 for append and partial write.
4236
4237 * keyboard.c (read_key_sequence): When converting upcase fn key to
4238 downcase, update fkey and keytran so `backspace' gets translated.
4239
4240 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4241
4242 * process.c (wait_reading_process_input): Don't signal SIGIO
4243 in batch mode.
4244
42452003-06-17 Kenichi Handa <handa@m17n.org>
4246
4247 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4248 composite.h.
4249
4250 * xselect.c: Don't include charset.h, coding.h, composite.h.
4251 (Qforeign_selection): New variable.
4252 (syms_of_xselect): Intern and static it.
4253 (selection_data_to_lisp_data): Return a unibyte string made from
4254 data with `foreign-selection' text property.
4255
42562003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4257
4258 * termhooks.h (EVENT_INIT): New macro.
4259
4260 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4261
4262 * alloc.c (mark_kboards): Move to keyboard.c.
4263
4264 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4265 * xterm.c (x_dispatch_event):
4266 * xmenu.c (find_and_call_menu_selection):
4267 * xdisp.c (handle_tool_bar_click):
4268 * w32menu.c (menubar_selection_callback):
4269 * sysdep.c (kbd_input_ast, read_input_waiting):
4270 * msdos.c (dos_rawgetc):
4271 * macterm.c (mac_check_for_quit_char):
4272 * macmenu.c (menubar_selection_callback):
4273 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4274 data to kbd_buffer_store_event.
4275
42762003-06-15 Kim F. Storm <storm@cua.dk>
4277
4278 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4279 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4280
42812003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4282
4283 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4284
42852003-06-12 Kenichi Handa <handa@m17n.org>
4286
4287 * fileio.c (Fwrite_region): Save and restore restriction.
4288
42892003-06-12 Dave Love <fx@gnu.org>
4290
4291 * alloca.c (alloca): Declare arg as size_t.
4292
4293 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4294 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4295
42962003-06-11 Dave Love <fx@gnu.org>
4297
4298 * search.c (shrink_regexp_cache): Use xrealloc.
4299 (syms_of_search): Use xmalloc.
4300
43012003-06-10 Kim F. Storm <storm@cua.dk>
4302
4303 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4304 Adjust phys_cursor.x to be relative to window box, rather than
4305 text area before checking -- to ensure cursor is redrawn when
4306 exposing window.
4307 Note: This also fixes a similar (older) bug if display margins
4308 are present.
4309
43102003-06-06 Kenichi Handa <handa@m17n.org>
4311
4312 * coding.c (encoding_buffer_size): If coding->type is
4313 coding_type_ccl, double magnification on CRLF encoding.
4314
43152003-06-06 Jason Rumney <jasonr@gnu.org>
4316
4317 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4318 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4319
4320 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4321 Mac too.
4322
43232003-06-05 Dave Love <fx@gnu.org>
4324
4325 * strftime.c: Merge changes from gnulib.
4326
4327 * mktime.c (__mktime_internal): Merge changes from gnulib
4328 involving year 69 and dst2.
4329
4330 Changes to merge with gnulib version and be consistent with the
4331 autoconf test:
4332
4333 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4334 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4335 [HAVE_LOCALE_H]: Include locale.h.
4336 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4337
43382003-06-05 Kim F. Storm <storm@cua.dk>
4339
4340 * window.c (coordinates_in_window): Convert X and Y to window
4341 relative coordinates inside mode-line and header-line parts.
4342 Convert X and Y to margin area relative coordinates inside left
4343 and right display margin parts.
4344
43452003-06-05 Jason Rumney <jasonr@gnu.org>
4346
4347 * w32fns.c (add_system_logical_colors_to_map): New function.
4348 (Fx_open_connection): Use it.
4349
43502003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4351
4352 * process.c (allocate_pty): Revert part of the previous patch.
4353 (Faccept_process_output): Simplify.
4354
43552003-06-04 Jason Rumney <jasonr@gnu.org>
4356
4357 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4358
4359 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4360 (lispy_mouse_wheel_names): Remove.
4361 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4362 Always define drag_and_drop_syms.
4363
4364 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4365 WHEEL_EVENT events.
4366
43672003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4368
4369 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4370
4371 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4372
43732003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4374
4375 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4376 menu item label.
4377
43782003-06-03 Richard M. Stallman <rms@gnu.org>
4379
4380 * window.c (Fwindow_edges): Doc fix.
4381 (Fwindow_pixel_edges, Fwindow_inside_edges)
4382 (Fwindow_inside_pixel_edges): New functions.
4383 (syms_of_window): defsubr them.
4384
4385 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4386 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4387
43882003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4389
4390 * dispnew.c (Fsit_for): Don't lie about the number of args.
4391
43922003-06-02 Dave Love <fx@gnu.org>
4393
4394 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4395 (syms_of_callproc) <process-environment>: Doc fix.
4396
4397 * doc.c: Use HAVE_FCNTL_H, not USG5.
4398
4399 * xfaces.c (font_rescale_ratio): Fix for K&R.
4400
4401 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4402
4403 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4404
4405 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4406
4407 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4408 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4409
4410 * xterm.c (Qutf_8): Move to coding.c
4411
4412 * xmenu.c (ENCODE_MENU_STRING): New.
4413 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4414 Use it.
4415
4416 * coding.h (ENCODE_UTF_8): New.
4417 (Qutf_8): Declare.
4418
4419 * coding.c (Qutf_8): New.
4420 (syms_of_coding): Intern it.
4421
4422 * fns.c: Doc fixes.
4423
44242003-06-02 Kenichi Handa <handa@m17n.org>
4425
4426 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4427
44282003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4429
4430 * lread.c (openp): Make sure STR is a string.
4431
44322003-06-01 David Ponce <david@dponce.com>
4433
4434 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4435 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4436
4437 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4438 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4439 (discard_mouse_events): Discard WHEEL_EVENT events too.
4440 (lispy_wheel_names, wheel_syms): New.
4441 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4442 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4443 defined.
4444 (make_lispy_event): Add WHEEL_EVENT handler.
4445
4446 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4447 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4448 WHEEL_EVENT events.
4449
44502003-05-31 John Paul Wallington <jpw@gnu.org>
4451
4452 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4453 timer are in lisp/emacs-lisp.
4454
44552003-05-31 Kenichi Handa <handa@m17n.org>
4456
4457 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4458 region when a buffer is changed to unibyte.
4459
4460 * charset.h (VALID_LEADING_CODE_P): New macro.
4461 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4462
4463 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4464 is nonzero, accept multibyte form of eight-bit-control chars.
4465 (decode_composition_emacs_mule): Likewise.
4466 (decode_coding_emacs_mule): Likewise.
4467 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4468 multibyte form of eight-bit-control chars.
4469
4470 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4471 (Finsert_file_contents): If coding-system-for-read is bound to
4472 Qauto_save_coding, use the coding system emacs-mule with special
4473 setting for recovering a file.
4474 (choose_write_coding_system): On auto saving, use the coding
4475 system emacs-mule with special setting for auto saving.
4476 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4477
44782003-05-30 Kenichi Handa <handa@m17n.org>
4479
4480 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4481 properly before calling ccl_driver.
4482
4483 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
4484
4485 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4486 nonzero.
4487 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4488 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4489
44902003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4491
4492 * xfaces.c (realize_default_face): Do not abort if lface is
4493 non-existent - reverts change from 2003-05-19.
4494
44952003-05-29 Kenichi Handa <handa@m17n.org>
4496
4497 * coding.c (decode_coding_iso2022): Pay attention to the byte
4498 sequence of CTEXT extended segment, and retain those bytes as is.
4499
45002003-05-28 Kenichi Handa <handa@m17n.org>
4501
4502 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4503 of CODING_REPLACEMENT_CHARACTER.
4504 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4505 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4506 check this flag on encoding.
4507 (encode_coding_sjis_big5): Check
4508 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4509 (Fset_terminal_coding_system_internal): Set
4510 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4511 instead of setting CODING_FLAG_ISO_SAFE flag in
4512 terminal_coding.flags.
4513
4514 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4515 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4516 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4517
45182003-05-28 Richard M. Stallman <rms@gnu.org>
4519
4520 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4521
4522 * eval.c (unbind_to): Move init of this_binding to separate statement.
4523
45242003-05-28 Kim F. Storm <storm@cua.dk>
4525
4526 * xdisp.c (expose_window): Fix error in calculation of
4527 window relative coordinates of area to redisplay.
4528
45292003-05-27 Jason Rumney <jasonr@gnu.org>
4530
4531 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4532
45332003-05-27 David Ponce <david@dponce.com>
4534
4535 Handle W32 mouse wheel events as mouse click events, like in X.
4536
4537 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4538 MOUSE_WHEEL_EVENT anymore.
4539
4540 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4541 Scrolling down/up the mouse wheel is respectively mapped to mouse
4542 button 4 and 5.
4543 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4544 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4545 WM_MOUSEWHEEL events.
4546
45472003-05-27 Andreas Schwab <schwab@suse.de>
4548
4549 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4550
4551 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4552 partially visible line.
4553
4554 * alloc.c (Fgarbage_collect): Fix last change.
4555
45562003-05-26 John Paul Wallington <jpw@gnu.org>
4557
4558 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4559
45602003-05-25 Stefan Monnier <monnier@cs.yale.edu>
4561
4562 * window.c (Fset_window_buffer): Add type of `keep_margins'.
4563 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
4564
4565 * window.h (window_box_text_cols): Declare.
4566
4567 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
4568 (x_draw_vertical_border): Remove unused var `f'.
4569
4570 * xfaces.c (build_scalable_font_name): Remove `unused var
4571 pixel_size' warning.
4572
4573 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
4574
4575 * unexelf.c (unexec): Remove `unused var n' warning.
4576
4577 * strftime.c (my_strftime_localtime_r): Remove `defined but
4578 unused' warning.
4579
4580 * process.c (allocate_pty): Remove `unused var stb' and
4581 `cp might be used uninitialized' warnings.
4582
4583 * dispnew.c (mode_line_string): Remove unused var `f'.
4584
4585 * coding.c (find_safe_codings): Remove unused var `i'.
4586
4587 * bytecode.c (Fbyte_code): Remove `unused val' warning.
4588
4589 * buffer.c (Fkill_buffer): Remove unused var `list'.
4590
4591 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
4592
45932003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4594
4595 * frame.c (make_frame): Condition want_fullscreen with
4596 HAVE_WINDOW_SYSTEM.
4597
45982003-05-25 Juanma Barranquero <lektu@terra.es>
4599
4600 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
4601 (Fwindow_scroll_bars): Fix typo in docstring.
4602
46032003-05-24 Kim F. Storm <storm@cua.dk>
4604
4605 The following changes serve several purposes:
4606
4607 1) Swap the position of fringes and display margins in windows, i.e.
4608 the fringes are now displayed between the margins and the text area
4609 (by default).
4610
4611 2) Allow fringe and scroll bar parameters to be set per-buffer and
4612 per-window (like display margins). Such settings are now stored
4613 in window configurations, preserved when frames are resized, and
4614 copied when windows are split vertically or horizontally.
4615 Several bugs related to display margins have been fixed.
4616
4617 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
4618
4619 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
4620 rather than FRAME_WIDTH (FRAME_FONT (f)).
4621
4622 5) Introduce a consistent naming of variables, members and macros
4623 depending on whether their value is measured in pixels or in
4624 canonical columns/lines. Pixel dimensions are named *_width and
4625 *_height, while canonical columns/lines are named *_cols and
4626 *_lines. Pixel positions are named *_x and *_y, while column/line
4627 positions are named *_col and *_line.
4628
4629 6) Consolidate more of the X, W32, and MAC gui code by moving
4630 common data into struct frame, and generalize it for the non-gui
4631 case by using suitable defaults.
4632
4633 7) Cleanup and consolidate the macros controlling frame and window
4634 layout into frame.h and window.h, and generalize the use of the
4635 various window_box_* functions (enhanced to handle the new fringe
4636 position and the per-window fringe and scroll bar settings).
4637
4638 * frame.h (struct frame): Rename members height to text_lines,
4639 width to text_cols, window_height to total_lines, window_width to
4640 total_cols, new_height to new_text_lines, new_width to
4641 new_text_cols. All uses changed.
4642 (struct frame): New members which consolidate common members of
4643 x_output, w32_output, and mac_output structures: left_pos,
4644 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
4645 win_gravity, size_hint_flags, border_width, internal_border_width,
4646 line_height, fringe_cols, left_fringe_width, right_fringe_width,
4647 want_fullscreen. All uses changed.
4648 (struct frame): New member column_width contaning the canonical
4649 column width, analogue to line_height. All uses changed.
4650 (struct frame): Rename members scroll_bar_pixel_width to
4651 config_scroll_bar_width, and scroll_bar_cols to
4652 config_scroll_bar_cols. All uses changed.
4653 (struct frame): New member scroll_bar_actual_width which
4654 consolidates and renames the vertical_scroll_bar_extra member of
4655 x_output, w32_output, and mac_output structures. All uses changed.
4656 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
4657 from x/w32/macterm.h files. All uses changed. Also change code
4658 which referred to f->output_data...->pixel_height.
4659 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
4660 from x/w32/macterm.h files. All uses changed. Also change code
4661 which referred to f->output_data...->pixel_width.
4662 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
4663 Also change code which referred to f->height.
4664 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
4665 Also change code which referred to f->width.
4666 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
4667 to update new_text_lines and new_text_cols members directly.
4668 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
4669 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
4670 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
4671 FRAME_SCROLL_BAR_COLS. All uses changed.
4672 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
4673 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
4674 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
4675 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
4676 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
4677 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
4678 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
4679 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
4680 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
4681 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
4682 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
4683 return line_height member (it now has proper value also for
4684 non-window frames).
4685 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
4686 return new column_width member (rather than the default font width).
4687 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
4688 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
4689 from x/w32/macterm.h files. Unconditionally return corresponding
4690 member of frame structure (they now have proper values also for
4691 non-window frames).
4692 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
4693 Calculate return value from left and right widths.
4694 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
4695 internal_border_width member (has proper value for non-window frame).
4696 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
4697 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
4698 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
4699 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
4700 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
4701 consolidated from xterm.h, macterm.h, and w32term.h.
4702 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
4703 consolidated from xterm.h, macterm.h, and w32term.h.
4704 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
4705 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
4706 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
4707 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
4708 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
4709 consolidated from x/mac/w32term.h.
4710 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
4711 consolidated from x/mac/w32term.h.
4712 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
4713 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
4714 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
4715 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
4716
4717 * window.h (struct window): Rename members left to left_col,
4718 top to top_line, height to total_lines, width to total_cols,
4719 left_margin_width to left_margin_cols, right_margin_width to
4720 right_margin_cols, orig_height to orig_total_lines, orig_top to
4721 orig_top_line. All uses changed.
4722 (struct window): New members left_fringe_width, right_fringe_width,
4723 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
4724 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
4725 New macros primarily used to simplify other macros.
4726 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
4727 referred to XINT (w->width).
4728 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
4729 referred to XINT (w->height).
4730 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
4731 referred to XINT (w->width) * canon_x_unit.
4732 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
4733 referred to XINT (w->height) * canon_y_unit.
4734 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
4735 referred to XINT (w->left).
4736 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
4737 all uses and code that referred to XINT (w->left) + XINT (w->width).
4738 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
4739 referred to XINT (w->top).
4740 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
4741 referred to XINT (w->top) + XINT (w->height).
4742 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
4743 referred to XINT (w->left) * canon_x_unit.
4744 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
4745 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
4746 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
4747 referred to XINT (w->top) * canon_y_unit.
4748 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
4749 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
4750 (WINDOW_LEFTMOST_P): New macro.
4751 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
4752 All uses changed.
4753 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
4754 All uses changed.
4755 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
4756 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
4757 Do not exclude left fringe width.
4758 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
4759 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
4760 Do not exclude fringe widths.
4761 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
4762 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
4763 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
4764 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
4765 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
4766 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
4767 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
4768 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
4769 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
4770 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
4771 New macros. Change code which referenced corresponding
4772 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
4773 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
4774 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
4775 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
4776 allow per-window scroll-bar settings.
4777 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
4778 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
4779 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
4780 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
4781 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
4782 FRAME_SCROLL_BAR_WIDTH.
4783 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
4784 (WINDOW_SCROLL_BAR_AREA_X): New macros.
4785 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
4786 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
4787 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
4788 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
4789 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
4790 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
4791 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4792 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4793 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
4794 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
4795 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4796 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
4797 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
4798 (window_from_coordinates): Update prototype.
4799 (Fset_window_buffer): Update EXFUN.
4800 (set_window_buffer): Update prototype.
4801
4802 * dispextern.h (struct glyph_matrix): Rename members window_left_x
4803 to window_left_col, window_top_y to window_top_line. All uses
4804 changed.
4805 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
4806 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
4807 internal_border_width is now set to 0 for non-window frames.
4808 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
4809 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
4810 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
4811 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
4812 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
4813 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
4814 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
4815 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
4816 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
4817 Move to window.h and renamed [see window.h changes].
4818 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
4819 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
4820 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
4821 Use WINDOW_TOTAL_LINES.
4822 (frame_update_line_height): Remove prototype.
4823
4824 * buffer.h (struct buffer): Rename members measured in columns:
4825 left_margin_width to left_margin_cols, right_margin_width to
4826 right_margin_cols. All uses changed.
4827 New members left_fringe_width, right_fringe_width,
4828 fringes_outside_margins for per-buffer fringe settings.
4829 New members scroll_bar_width and vertical_scroll_bar_type for
4830 per-buffer scroll bar settings.
4831
4832 * buffer.c (init_buffer_once): Set buffer_defaults and
4833 buffer_local_flags for new buffer-local variables
4834 left_fringe_width, right_fringe_width, fringes_outside_margins,
4835 scroll_bar_width, and vertical_scroll_bar_type.
4836 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
4837 default-* variables for them.
4838
4839 * dispnew.c: Make (many) trivial substitutions for renamed and
4840 new macros in dispextern.h, frame.h and window.h.
4841 (mode_line_string): No need to adjust width for mode lines, as it
4842 is already adjusted by the caller.
4843 (marginal_area_string): Handle fringes inside/outside margins.
4844
4845 * frame.c: Make (many) trivial substitutions for renamed and
4846 new macros in dispextern.h, frame.h and window.h.
4847 (make_frame): Initialize left_fringe_width, right_fringe_width,
4848 fringe_cols, scroll_bar_actual_width, border_width,
4849 internal_border_width, column_width, line_height, x_pixels_diff,
4850 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
4851 members with values suitable for a non-window frames.
4852
4853 * gtkutil.c: Make (many) trivial substitutions for renamed and
4854 new macros in dispextern.h, frame.h and window.h.
4855
4856 * indent.c: Make (few) trivial substitutions for renamed and
4857 new macros in dispextern.h, frame.h and window.h.
4858
4859 * keyboard.c: Make (many) trivial substitutions for renamed and
4860 new macros in dispextern.h, frame.h and window.h.
4861 (make_lispy_event): Use window positions returned from
4862 window_from_coordinates when constructing the lisp event for
4863 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
4864 (incorrect) values locally.
4865 (make_lispy_movement): Use window positions returned from
4866 window_from_coordinates when constructing the lisp event, rather
4867 than calculating (incorrect) values locally.
4868
4869 * scroll.c: Make (some) trivial substitutions for renamed and
4870 new macros in dispextern.h, frame.h and window.h.
4871
4872 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
4873 scroll-bars.
4874
4875 * sysdep.c: Make (few) trivial substitutions for renamed and
4876 new macros in dispextern.h, frame.h and window.h.
4877
4878 * term.c: Make (some) trivial substitutions for renamed and
4879 new macros in dispextern.h, frame.h and window.h.
4880
4881 * widget.c: Make (few) trivial substitutions for renamed and
4882 new macros in dispextern.h, frame.h and window.h.
4883
4884 * window.c: Make (many) trivial substitutions for renamed and
4885 new macros in dispextern.h, frame.h and window.h.
4886 (make_window): Initialize new members
4887 left_margin_cols, right_margin_cols, left_fringe_width,
4888 right_fringe_width, fringes_outside_margins, scroll_bar_width,
4889 and vertical_scroll_bar_type.
4890 (coordinates_in_window): Adapted to new fringe/margin positions
4891 and per-window fringes and scroll-bars.
4892 Fix bug related to incorrectly adjusting coordinates by
4893 frame's internal_border_width (the effect normally negible since
4894 the internal_border_width is typically 0 or 1 pixel, but very
4895 noticeable for an internal_border_width of e.g. 25 pixels).
4896 Upon successful return (other than ON_NOTHING), the coordinates
4897 are now always properly converted to window relative for the
4898 given display element.
4899 (window_from_coordinates): Add new parameters wx and wy to
4900 return the window relative x and y position in the returned
4901 window and part. A null arg means, don't return the position.
4902 All callers changed.
4903 (adjust_window_margins): New function which may reduce the width
4904 of the display margins if a window's text area is too small after
4905 resizing or splitting windows.
4906 (size_window): Fix bug that did not account for display margin
4907 widths when checking the minimum width of a window; use
4908 adjust_window_margins.
4909 (set_window_buffer): Call Fset_window_fringes and
4910 Fset_window_scroll_bars to setup per-window elements.
4911 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
4912 existing display margin, fringe widths, and scroll bar settings
4913 (e.g. after splitting a window or resizing the frame).
4914 All callers changed.
4915 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
4916 (Fsplit_window): Duplicate original window's display margin,
4917 fringe, and scroll-bar settings; then call Fset_window_buffer with
4918 KEEP_MARGINS non-nil. This fixes a bug which caused a split
4919 window to only preserve the display margins in one of the windows.
4920 When splitting horizontally, call adjust_window_margins on both
4921 windows to ensure that the text area of the new windows is non too
4922 narrow. This fixes a bug which could cause Emacs to trap if the
4923 width of the split window was less than the width of the display
4924 margins.
4925 (window_box_text_cols): Renamed from window_internal_width.
4926 All uses changed. Adapt to per-window fringes and scroll bars.
4927 Fix bug that caused vertical separator to be subtracted also on
4928 window frames. Fix another bug that did not reduce the returned
4929 value by the columns used for display margins.
4930 (window_scroll_line_based): Fix bug related to scrolling too much
4931 when display margins are present (implicitly fixed by the fix to
4932 window_box_text_cols).
4933 (scroll_left, scroll_right): Fix bug related to scrolling too far
4934 by default when display margins are present (implicitly fixed by
4935 the fix to window_box_text_cols).
4936 (struct saved_window): Rename members left to left_col, top to
4937 top_line, width to total_cols, height to total_lines, orig_top to
4938 orig_top_line, orig_height to orig_total_lines. All uses changed.
4939 New members left_margin_cols, right_margin_cols,
4940 left_fringe_width, right_fringe_width, fringes_outside_margins,
4941 scroll_bar_width, and vertical_scroll_bar_type for saving
4942 per-window display elements.
4943 (Fset_window_configuration): Restore display margins, fringes,
4944 and scroll bar settings. This fixes a bug which caused display
4945 margins to be discarded when saving and restoring a window
4946 configuration.
4947 (save_window_save): Save display margins, fringes, and scroll bar
4948 settings. This fixes a bug which caused display margins to be
4949 discarded when saving and restoring a window configuration.
4950 (Fset_window_margins): Do nothing if display margins are not
4951 really changed. Otherwise, call adjust_window_margins to ensure
4952 the text area doesn't get too narrow. This fixes a bug which
4953 could cause Emacs to trap if setting display margins wider than
4954 the width of the window.
4955 (Fset_window_fringes): New defun to allow user to specifically set
4956 this window's fringe widths and position vs. display margins.
4957 (Fwindow_fringes): New defun to return window's actual fringe
4958 settings.
4959 (Fset_window_scroll_bars): New defun to allow user to specifically
4960 set this window's scroll bar width and position.
4961 (Fwindow_scroll_bars): New defun to return window's actual scroll
4962 bar settings.
4963 (compare_window_configurations): Also compare display margins,
4964 fringes, and scroll bar settings.
4965 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
4966
4967 * xdisp.c: Make (many) trivial substitutions for renamed and
4968 new macros in dispextern.h, frame.h and window.h.
4969 (window_box_width): Adapt to per-window fringes and scroll bars,
4970 and new fringe vs. display margin position. Note that returned
4971 value is no longer guaranteed to be a whole multiple of the frame
4972 column width, since per-window fringes may now be any width.
4973 (window_box_left_offset): New function like window_box_left, but
4974 value is relative to left border of window (rather than frame).
4975 (window_box_right_offset): New function like window_box_right,
4976 but value is relative to left border of window.
4977 (window_box_left): Adapt to per-window fringes and scroll bars,
4978 and new fringe vs. display margin position. Simplify by using
4979 WINDOW_LEFT_EDGE_X and window_box_left_offset.
4980 (window_box): Allow null args for unnecessary return values;
4981 change/simplify relevant callers.
4982 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
4983 and new fringe vs. display margin position.
4984 Use window_box_left_offset and window_box_right_offset
4985 (get_glyph_string_clip_rect): Adapt to per-window fringes and
4986 scroll bars, and new fringe vs. display margin position.
4987 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
4988 (draw_fringe_bitmap): Rework to handle per-window fringes and new
4989 fringe vs. display margin position.
4990 (hscroll_window_tree): Use window_box_width instead of window_box.
4991 (redisplay_window): Adapt to per-window scroll bars.
4992 (draw_glyphs): Rework to handle per-window fringes and scroll
4993 bars, and new fringe vs. display margin position.
4994 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
4995 (x_clear_end_of_line): Adapt to per-window fringes and scroll
4996 bars, and new fringe vs. display margin position. Fix bug which
4997 increased total width of full_width rows by width of scroll bars
4998 although window's total width already includes that.
4999 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5000 (expose_area): Simplify using window_box_left_offset.
5001 (x_draw_vertical_border): Handle per-window scroll bar settings,
5002 mixing windows with left, right and no scroll bars.
5003
5004 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5005 where it's used in x_list_fonts (for clarity).
5006 (frame_update_line_height): Remove unused function; functionality
5007 is now done directly when setting the default font in x_set_font.
5008
5009 * xfns.c: Make (many) trivial substitutions for renamed and
5010 new macros in dispextern.h, frame.h and window.h.
5011
5012 * xmenu.c: Make (some) trivial substitutions for renamed and
5013 new macros in dispextern.h, frame.h and window.h.
5014
5015 * xterm.h (struct x_output): Move members left_pos, top_pos,
5016 border_width, pixel_height, pixel_width, line_height,
5017 internal_border_width, vertical_scroll_bar_extra,
5018 left_fringe_width, right_fringe_width, fringe_cols,
5019 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5020 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5021 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5022 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5023 (PIXEL_WIDTH, PIXEL_HEIGHT)
5024 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5025 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5026 frame.h and renamed [see frame.h changes].
5027 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5028 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5029 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5030 and renamed [see frame.h changes].
5031
5032 * xterm.c: Make (several) trivial substitutions for renamed and
5033 new macros in dispextern.h, frame.h and window.h.
5034 (x_draw_glyph_string_box): Adapt to per-window fringes and
5035 scroll-bars.
5036 (scroll_run): Adapt to new fringe position.
5037 (glyph_rect): Use window coordinates returned from
5038 window_from_coordinates rather than frame_to_window_pixel_xy.
5039 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5040 scroll-bars.
5041 (handle_one_xevent): Simplify a USE_GTK conditional.
5042 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5043 (fringes are now inside margins, i.e. always in the clipping area).
5044 All callers changed.
5045 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5046 directly, then call compute_fringe_widths. Don't call
5047 frame_update_line_height.
5048
5049 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5050 border_width, pixel_height, pixel_width, line_height,
5051 internal_border_width, vertical_scroll_bar_extra,
5052 left_fringe_width, right_fringe_width, fringe_cols,
5053 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5054 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5055 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5056 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5057 (PIXEL_WIDTH, PIXEL_HEIGHT)
5058 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5059 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5060 frame.h and renamed [see frame.h changes].
5061 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5062 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5063 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5064 and renamed [see frame.h changes].
5065
5066 * w32term.c: Make (several) trivial substitutions for renamed and
5067 new macros in dispextern.h, frame.h and window.h.
5068 (x_draw_glyph_string_box): Adapt to per-window fringes and
5069 scroll-bars.
5070 (glyph_rect): Use window coordinates returned from
5071 window_from_coordinates rather than frame_to_window_pixel_xy.
5072 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5073 scroll-bars.
5074 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5075 (fringes are now inside margins, i.e. always in the clipping area).
5076 All callers changed.
5077 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5078 directly, then call compute_fringe_widths. Don't call
5079 frame_update_line_height.
5080
5081 * w32console.c: Make (few) trivial substitutions for renamed and
5082 new macros in dispextern.h, frame.h and window.h.
5083
5084 * w32fns.c: Make (many) trivial substitutions for renamed and
5085 new macros in dispextern.h, frame.h and window.h.
5086
5087 * w32menu.c: Make (few) trivial substitutions for renamed and
5088 new macros in dispextern.h, frame.h and window.h.
5089
5090 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5091 border_width, pixel_height, pixel_width, line_height,
5092 internal_border_width, vertical_scroll_bar_extra,
5093 left_fringe_width, right_fringe_width, fringe_cols,
5094 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5095 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5096 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5097 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5098 (PIXEL_WIDTH, PIXEL_HEIGHT)
5099 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5100 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5101 frame.h and renamed [see frame.h changes].
5102 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5103 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5104 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5105 and renamed [see frame.h changes].
5106
5107 * macterm.c: Make (several) trivial substitutions for renamed and
5108 new macros in dispextern.h, frame.h and window.h.
5109 (x_draw_glyph_string_box): Adapt to per-window fringes and
5110 scroll-bars.
5111 (glyph_rect): Use window coordinates returned from
5112 window_from_coordinates rather than frame_to_window_pixel_xy.
5113 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5114 scroll-bars.
5115 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5116 (fringes are now inside margins, i.e. always in the clipping area).
5117 All callers changed.
5118 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5119 directly, then call compute_fringe_widths. Don't call
5120 frame_update_line_height.
5121
5122 * macfns.c: Make (several) trivial substitutions for renamed and
5123 new macros in dispextern.h, frame.h and window.h.
5124 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5125
5126 * macmenu.c: Make (few) trivial substitutions for renamed and
5127 new macros in dispextern.h, frame.h and window.h.
5128
5129 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5130 and line_height, and use corresponding new members in struct
5131 frame. All uses changed.
5132 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5133 superseeded by corresponding macros in frame.h.
5134
5135 * msdos.c: Make (several) trivial substitutions for renamed and
5136 new macros in dispextern.h, frame.h and window.h.
5137 (IT_note_mouse_highlight): Use updated window coordinates returned
5138 by window_from_coordinates, rather than adjusting them locally.
5139 (internal_terminal_init): No need to initialize line_height here;
5140 it now defaults to 1.
5141
51422003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5143
5144 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5145 dropping `down' events.
5146
51472003-05-24 Andreas Schwab <schwab@suse.de>
5148
5149 * coding.c (find_safe_codings): Fix last change.
5150
51512003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5152
5153 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5154
51552003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5156
5157 * xdisp.c (display_mode_element): Increase max depth.
5158 Simplify the error handling code. Use a different error string
5159 for the case where we hit the depth limit.
5160
5161 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5162
5163 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5164
51652003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5166
5167 * intervals.c (get_local_map): Don't get char-property of previous
5168 point any more: get_pos_property already does it and better.
5169
51702003-05-21 Dave Love <fx@gnu.org>
5171
5172 [Merged from unicode branch.]
5173
5174 * xfns.c (x_window, x_window): Use use_xim.
5175
5176 * xterm.c (use_xim): Initialize.
5177 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5178 (x_term_init): Maybe set use_xim.
5179
5180 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5181
51822003-05-21 Jason Rumney <jasonr@gnu.org>
5183
5184 * unexw32.c (_start): Remove _fmode initialization.
5185
5186 * emacs.c (main) [WINDOWSNT]: Move it here.
5187
51882003-05-20 Dave Love <fx@gnu.org>
5189
5190 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5191
51922003-05-19 Richard M. Stallman <rms@gnu.org>
5193
5194 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5195 as value for QCfont attribute.
5196 (realize_default_face): lface should already exist; crash if not.
5197 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5198
5199 * frame.c (Fignore_event): Doc fix.
5200
52012003-05-19 Kenichi Handa <handa@m17n.org>
5202
5203 * coding.c (decode_coding_string): Handle post-read-conversion
5204 even if the coding doesn't require decoding.
5205
52062003-05-18 Richard M. Stallman <rms@gnu.org>
5207
5208 * callproc.c (Fcall_process_region): Doc fix.
5209
52102003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5211
5212 * lread.c (Fload): Print a message if package is obsolete.
5213
5214 * window.c (Fselect_window): Add optional `norecord' arg.
5215 (select_window_1): Fold into Fselect_window.
5216 (select_window_norecord): New function.
5217 (temp_output_buffer_show): Use it. Preserve current buffer.
5218
5219 * window.h (Fselect_window): Update declaration.
5220
5221 * window.c (delete_window, Fother_window, Fset_window_configuration):
5222 * minibuf.c (read_minibuf):
5223 * macterm.c (x_new_focus_frame):
5224 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5225 * callint.c (Fcall_interactively):
5226 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5227
5228 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5229
52302003-05-17 David Kastrup <dak@gnu.org>
5231
5232 * process.c (read_process_output): Back out change from 2003-03-09.
5233
52342003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5235
5236 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5237
5238 * textprop.c (text_property_stickiness): New arg `buffer'.
5239
5240 * intervals.h (text_property_stickiness): New arg `buffer'.
5241 (get_pos_property): Declare.
5242
5243 * intervals.c (get_local_map): Use get_pos_property, to obey
5244 stickiness and empty overlays.
5245 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5246 (merge_properties, intervals_equal, merge_properties_sticky):
5247 Use XCAR, XCDR.
5248 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5249
52502003-05-17 Richard M. Stallman <rms@gnu.org>
5251
5252 * minibuf.c (read_minibuf): If buffer is empty, record the default
5253 in the history.
5254 (Fminibuffer_complete_word): When deleting the overlap, take account
5255 of its real position.
5256
5257 * fns.c (map_char_table): Fix previous change.
5258
5259 * syntax.c (find_defun_start):
5260 When open_paren_in_column_0_is_defun_start,
5261 return beginning of buffer.
5262
5263 * lisp.h (map_char_table): Declare added arg.
5264
5265 * fns.c (map_char_table): New arg TABLE gets the master table.
5266 All calls changed.
5267 Process default and inheritance, resorting to Faref if necessary.
5268
5269 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5270 (Faccessible_keymaps): Pass new arg to map_char_table.
5271
5272 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5273
5274 * casetab.c (set_case_table): Pass new arg to map_char_table.
5275
5276 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5277
5278 * lisp.h (specbinding_func): New typedef.
5279 (struct specbinding): Use specbinding_func, to put the `volatile'
5280 in the right place.
5281
5282 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5283 to avoid GCC warning.
5284
52852003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5286
5287 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5288
52892003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5290
5291 * keyboard.c (apply_modifiers): Don't fill the other cache.
5292
52932003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5294
5295 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5296
5297 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5298 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5299 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5300 (Fset_window_configuration, Fcurrent_window_configuration)
5301 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5302 (Fpos_visible_in_window_p, mark_window_cursors_off)
5303 (window_internal_height, window_internal_width, Frecenter)
5304 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5305 (replace_buffer_in_all_windows, init_window_once, init_window)
5306 (syms_of_window, keys_of_window): Move from lisp.h.
5307 * lisp.h: Move window.c declarations to window.h.
5308
5309 * bytecode.c: Include window.h.
5310 * emacs.c: Include window.h.
5311
5312 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5313 (keyremap): Add `parent' field.
5314 (keyremap_step): Use it. Remove `parent' argument.
5315 (read_key_sequence): Setup and use the new `parent' field.
5316
53172003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5318
5319 * keyboard.c (adjust_point_for_property): Ensure termination.
5320
53212003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5322
5323 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5324 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5325 duplicated handling of function-key-map and key-translation-map
5326 in read_key_sequence.
5327 (read_key_sequence): Use them.
5328
5329 * keyboard.c (adjust_point_for_property): Try harder to move point
5330 to the non-sticky end of an invisible property.
5331
5332 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5333 property intangible as well.
5334
53352003-05-10 Andreas Schwab <schwab@suse.de>
5336
5337 * xmenu.c (single_menu_item): Change last parameter to void* to
5338 avoid warning.
5339
53402003-05-09 Richard M. Stallman <rms@gnu.org>
5341
5342 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5343 Bind Qinhibit_modification_hooks to t so there will be no GC.
5344 Rename local `tem' to `save_deactivate_mark'.
5345
5346 * eval.c (specpdl_ptr): Declare volatile.
5347 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5348 before doing the work of unbinding it.
5349
5350 * lisp.h (struct specbinding): Declare elements volatile.
5351 (specpdl_ptr): Declare volatile.
5352
5353 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5354
5355 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5356 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5357
53582003-05-08 Dave Love <fx@gnu.org>
5359
5360 * coding.c (Vlast_coding_system_used): Doc fix.
5361
53622003-05-07 Jason Rumney <jasonr@gnu.org>
5363
5364 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5365 when system does not support them.
5366
53672003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5368
5369 * fileio.c (Qwrite_region_annotate_functions): New var.
5370 (build_annotations): Use it to process the global part of the hook.
5371 (syms_of_fileio): Init and staticpro it.
5372
5373 * keyboard.c (safe_run_hooks_error): Display a message instead of
5374 silently ignoring the error.
5375
53762003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5377
5378 * keyboard.c (input_available_signal): Mark static.
5379 (menu_bar_items): Use map_keymap.
5380 (menu_bar_one_keymap): Remove.
5381 (menu_bar_item): Adjust arglist (for use in map_keymap).
5382 Properly hide a second binding when not both are keymaps.
5383
5384 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5385 (single_keymap_panes): Use it and map_keymap.
5386 (single_menu_item): Use skp as well.
5387
5388 * keymap.h (map_keymap_function_t): New type.
5389 (map_keymap): Declare.
5390
5391 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5392 (map_keymap_call, Fmap_keymap): New functions.
5393 (syms_of_keymap): Defsubr map-keymap.
5394
53952003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5396
5397 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5398 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5399 ..._with_mnemonic functions for menu items.
5400
54012003-05-01 Kenichi Handa <handa@m17n.org>
5402
5403 * coding.c (coding_system_accept_latin_extra_p): Delete this
5404 function.
5405 (find_safe_codings): Pay attention to
5406 the property tranlsation-table-for-encode of each codings.
5407 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5408
54092003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5410
5411 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5412
54132003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5414
5415 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5416
5417 * lisp.h (CHECK): Wrap args in parenthesis.
5418 (specbind): Fix doc: symbol = Qnil is not supported any more.
5419
5420 * bytecode.c (Fbyte_code) <unwind-protect>:
5421 Use Fprogn rather than 0 and Qnil.
5422
5423 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5424 `double', and `triple' modifiers as well.
5425
54262003-04-30 Richard M. Stallman <rms@gnu.org>
5427
5428 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5429
5430 * alloc.c (abort_on_gc): New variable.
5431 (Fgarbage_collect): Abort if abort_on_gc is set.
5432
5433 * lisp.h (abort_on_gc): Add decl.
5434
5435 * eval.c (Fsignal): Clear abort_on_gc.
5436
5437 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
5438 Reinit FORMAT_START and END before second scan.
5439
5440 * xdisp.c (move_it_vertically_backward): Do the final big else
5441 even if nlines is 0.
5442
5443 * xdisp.c (redisplay_internal): Finish the per-frame loop
5444 even if redisplay is suspended by input.
5445
54462003-04-24 Andrew Choi <akochoi@shaw.ca>
5447
5448 * macterm.c (x_list_fonts): Return all fonts that match if
5449 maxnames = -1.
5450
54512003-04-25 Kenichi Handa <handa@m17n.org>
5452
5453 * syntax.c (skip_chars): Fix previous change.
5454
54552003-04-24 Kenichi Handa <handa@m17n.org>
5456
5457 * syntax.c (skip_chars): Make the code faster by using the common
5458 technique of *p, *stop, and *endp.
5459
54602003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5461
5462 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
5463 tool_bar_items so GTK tool bar expose callback does not access items
5464 being updated.
5465
54662003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5467
5468 * eval.c (Fapply): Undo last change and add a comment about why.
5469
54702003-04-18 Miles Bader <miles@gnu.org>
5471
5472 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5473 pickier PARSE_MULTIBYTE_SEQ.
5474
54752003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5476
5477 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5478 Use XCDR, XCAR, CONSP.
5479 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5480 (Fapply): Remove unnecessary GCPRO.
5481
5482 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5483
5484 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5485
5486 * buffer.h: Don't hardcode BEG==1.
5487
5488 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5489
54902003-04-16 Richard M. Stallman <rms@gnu.org>
5491
5492 * xdisp.c (try_window, try_window_reusing_current_matrix):
5493 When at end of window, set window_end_pos to Z-ZV.
5494
5495 * buffer.c (Foverlay_recenter): Doc fix.
5496
54972003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5498
5499 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5500
55012003-04-14 Andrew Choi <akochoi@shaw.ca>
5502
5503 * macterm.c (mac_check_for_quit_char): Don't check more often than
5504 once a second.
5505
55062003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5507
5508 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5509 specially, so that they can't hide an implicit switch-frame event.
5510 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5511 (head_table): Use switch-frame as event_kind for select-window.
5512 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5513
5514 * editfns.c (Fformat): Lisp_Object/int mixup.
5515 (format2): Remove unused var numargs.
5516
55172003-04-11 Kenichi Handa <handa@m17n.org>
5518
5519 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
5520 (Qafter_insert_file_set_coding): New variable.
5521 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5522 for after-insert-file-adjust-coding-function.
5523 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5524 instead of Vafter_insert_file_adjust_coding_function.
5525
55262003-04-11 Kenichi Handa <handa@m17n.org>
5527
5528 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5529
5530 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5531 string. Callers changed.
5532
55332003-04-10 Kenichi Handa <handa@m17n.org>
5534
5535 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
5536 (syms_of_fileio): Declare it as a lisp variable.
5537 (Finsert_file_contents):
5538 Call Vafter_insert_file_adjust_coding_function before calling
5539 decode-format.
5540
55412003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5542
5543 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5544 get GtkAdjustment as widget now is a GtkRange.
5545
5546 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5547 GtkRange to avoid memory leak.
5548
55492003-04-09 Kenichi Handa <handa@m17n.org>
5550
5551 * xfaces.c (Vface_font_rescale_alist): New variable.
5552 (struct font_name): New member rescale_ratio.
5553 (font_rescale_ratio): New function.
5554 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
5555 (better_font_p): On comparing point sized, pay attention to
5556 recale_ratio member of fonts.
5557 (build_scalable_font_name): Reflect font->rescale_ratio in the
5558 font name.
5559 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
5560
5561 * lread.c (read1): Before calling index, check if the 2nd
5562 arguemnt is in ASCII range.
5563
55642003-04-08 Richard M. Stallman <rms@gnu.org>
5565
5566 * fileio.c (Ffile_symlink_p): Doc fix.
5567
5568 * editfns.c (Fformat): Translate positions of text properties
5569 in the format string to apply them to the result.
5570
5571 * fileio.c (Finsert_file_contents): Doc fix.
5572 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
5573
55742003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
5575
5576 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
5577
55782003-04-08 Steven Tamm <steventamm@mac.com>
5579
5580 * mac.c (init_mac_osx_environment): Switch libexec and bin so
5581 that self-contained application finds libexec files.
5582
55832003-04-08 Kenichi Handa <handa@m17n.org>
5584
5585 * coding.c (code_convert_region_unwind):
5586 Set Vlast_coding_system_used to the argument.
5587 (code_convert_region): If post-read-conversion function changed
5588 the value of last-coding-sytem, keep the new value in
5589 coding->symbol so that it won't be overridden.
5590 (run_pre_post_conversion_on_str): Likewise.
5591 (coding_system_accept_latin_extra_p): New function.
5592 (find_safe_codings): Pay attention to characters registered in
5593 latin-extra-code-table.
5594
55952003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
5596
5597 * Makefile.in (md5.o): Add missing dependency info.
5598
55992003-04-06 Richard M. Stallman <rms@gnu.org>
5600
5601 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
5602
5603 * marker.c (verify_bytepos): New function.
5604
5605 * intervals.c (set_intervals_multibyte_1): When becoming
5606 multibyte, adjust right and left child sizes to a whole set of
5607 characters. If an interval gets zero total-length, delete it.
5608 If an interval consists of just its children, delete one of them.
5609
5610 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
5611 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
5612
5613 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
5614 All calls deleted.
5615 (lisp_malloc): Do the work here directly.
5616
56172003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
5618
5619 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
5620 char tables.
5621
56222003-04-04 Kenichi Handa <handa@m17n.org>
5623
5624 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
5625 destructively change "%S" to "%s".
5626
56272003-04-03 Miles Bader <miles@gnu.org>
5628
5629 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
5630 always set.
5631
56322003-04-01 Dave Love <fx@gnu.org>
5633
5634 * xfns.c (xpm_lookup_color): Grok "opaque".
5635
56362003-03-31 Andrew Choi <akochoi@shaw.ca>
5637
5638 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
5639 parent window ID.
5640
5641 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
5642
5643 * macterm.h (struct mac_output): Define x_pixels_diff and
5644 y_pixels_diff.
5645
56462003-03-31 Juanma Barranquero <lektu@terra.es>
5647
5648 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
5649 blockinput.h and files included from it.
5650
56512003-03-31 Kim F. Storm <storm@cua.dk>
5652
5653 The following changes consolidates the common code related to
5654 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
5655 files into frame.c.
5656
5657 * frame.c: Include blockinput.h.
5658 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
5659 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
5660 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
5661 related vars here.
5662 (struct frame_parm_table, frame_parms): New table for describing
5663 frame parameters and their associated Q-variable.
5664 The order of the parameters corresponds to the sequence of the
5665 frame_parm_handlers table in redisplay_interface.
5666 (x_fullscreen_move, x_set_frame_parameters)
5667 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
5668 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
5669 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5670 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
5671 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
5672 Generic functions for processing of frame parameters.
5673 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
5674 (display_x_get_resource, x_get_resource_string): Functions for
5675 generic access to X resources.
5676 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5677 (x_default_parameter, Fx_parse_geometry): Functions for generic
5678 access to frame parameters.
5679 (x_figure_window_size): Generic calculation of frame size.
5680 Fixed to add space needed for tool bar. Also setup size_hint_flags.
5681 (syms_of_frame): Intern and staticpro frame parameter variables.
5682 Defvar_lisp Vx_resource_class and Vx_resource_name here.
5683 Defsubr Sx_get_resource and Sx_parse_geometry.
5684
5685 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
5686 parameter related vars defined in frame.c.
5687 (EMACS_CLASS): Define here.
5688 (enum FULLSCREEN_*): Define here.
5689 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
5690 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
5691 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
5692 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
5693 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
5694 (x_set_visibility, x_set_autoraise, x_set_autolower)
5695 (x_set_unsplittable, x_set_vertical_scroll_bars)
5696 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
5697 (x_figure_window_size): Add prototypes.
5698
5699 * dispextern.h (frame_parm_handler): New typedef.
5700 (struct redisplay_interface): New member frame_parm_handlers.
5701 (enum resource_types): Move declaration here.
5702 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
5703 (x_default_parameter): Add prototypes.
5704
5705 * window.c: Remove extern decl for frame parameter vars.
5706 (change_window_heights): New generic function;
5707 replaces x_change_window_heights. All users changed.
5708
5709 * window.h (change_window_heights): Add prototype.
5710
5711 * xfaces.c: Remove extern decl for frame parameter vars.
5712
5713 * xterm.h (EMACS_CLASS): Remove. Use generic define.
5714 (struct w32_display_info): Fix type of xrdb member.
5715 (enum FULLSCREEN_*): Remove.
5716 Remove prototypes for generic functions (in frame.h).
5717
5718 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5719 parameters now defined in frame.h and frame.c.
5720 (Vx_resource_name): Remove. Use generic var.
5721 (enum x_frame_parms): Remove (bogus, unused enum).
5722 (check_x_display_info): Make non-static (for frame.c).
5723 (struct x_frame_parm_table, x_frame_parms): Remove.
5724 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5725 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5726 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5727 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5728 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5729 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5730 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5731 Remove. Use generic functions instead.
5732 (enum resource_types): Remove.
5733 (x_set_scroll_bar_default_width): New global function (for frame.c).
5734 (Fx_create_frame): Depend on x_figure_window_size to add space for
5735 toolbar and setup size_hint_flags.
5736 (x_frame_parm_handlers): New table for redisplay_interface.
5737 (syms_of_xfns): Don't intern/staticpro removed vars.
5738
5739 * xterm.c: Remove unnecessary extern declarations.
5740 (x_fullscreen_adjust): Remove. Use generic instead.
5741 (x_redisplay_interface): Add x_frame_parm_handlers member.
5742
5743 * w32gui.h (XrmDatabase): New (dummy) typedef.
5744
5745 * w32term.h (EMACS_CLASS): Remove. Use generic define.
5746 (struct w32_display_info): Fix type of xrdb member.
5747 (enum FULLSCREEN_*): Remove.
5748 (x_fullscreen_adjust): Remove prototype.
5749
5750 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5751 parameters now defined in frame.h and frame.c.
5752 (Vx_resource_name): Remove. Use generic var.
5753 (enum x_frame_parms): Remove (bogus, unused enum).
5754 (check_x_display_info): Make non-static (for frame.c).
5755 (struct x_frame_parm_table, x_frame_parms): Remove.
5756 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5757 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5758 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5759 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5760 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5761 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5762 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5763 Remove. Use generic functions instead.
5764 (enum resource_types): Remove.
5765 (x_set_scroll_bar_default_width): New global function (for frame.c).
5766 (Fx_create_frame): Depend on x_figure_window_size to add space for
5767 toolbar and setup size_hint_flags.
5768 (w32_frame_parm_handlers): New table for redisplay_interface.
5769 (syms_of_w32fns): Don't intern/staticpro removed vars.
5770
5771 * w32term.c: Remove unnecessary extern declarations.
5772 (x_fullscreen_adjust): Remove. Use generic instead.
5773 (x_redisplay_interface): Add w32_frame_parm_handlers member.
5774
5775 * w32reg.c (x_get_string_resource): Use XrmDatabase.
5776
5777 * macgui.h (XrmDatabase): New (dummy) typedef.
5778
5779 * macterm.h (EMACS_CLASS): Remove.
5780 (struct mac_display_info): Add xrdb member.
5781 (struct mac_output): Add want_fullscreen member.
5782
5783 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
5784 parameters now defined in frame.h and frame.c.
5785 (Vx_resource_name): Remove. Use generic var.
5786 (check_x_display_info): Make non-static (for frame.c).
5787 (struct x_frame_parm_table, x_frame_parms): Remove.
5788 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
5789 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
5790 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
5791 (x_change_window_heights, x_set_autoraise, x_set_autolower)
5792 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
5793 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
5794 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
5795 Remove. Use generic functions instead.
5796 (enum resource_types): Remove.
5797 (x_set_scroll_bar_default_width): New global function (for frame.c).
5798 (mac_frame_parm_handlers): New table for redisplay_interface.
5799 (syms_of_macfns): Don't intern/staticpro removed vars.
5800
5801 * macterm.c: Remove unnecessary extern declarations.
5802 (x_redisplay_interface): Add mac_frame_parm_handlers member.
5803
5804 * Makefile.in (frame.o): Add dependency on blockinput.h and files
5805 included from it (atimer.h and systime.h).
5806
58072003-03-30 Andreas Schwab <schwab@suse.de>
5808
5809 * xdisp.c (x_insert_glyphs): Fix swapped width and height
5810 parameters for shift_glyphs_for_insert.
5811
5812 * macterm.c (x_redisplay_interface): Add missing entry for
5813 draw_vertical_window_border.
5814
58152003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5816
5817 * fileio.c (Fexpand_file_name): In the no-handler case, after
5818 expanding, look again for a handler and invoke it. This is needed
5819 for filenames like "/foo/../user@host:/bar/../baz" -- the first
5820 expansion produces "/user@host:/bar/../baz" which needs to be
5821 expanded again for the finame result "/user@host:/baz".
5822
58232003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5824
5825 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
5826 of area to be redrawn for better performance.
5827
58282003-03-28 Stefan Monnier <monnier@cs.yale.edu>
5829
5830 * xterm.c (take_vertical_position_into_account): Remove.
5831 (xt_action_hook): Call set_vertical_scroll_bar if needed.
5832 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
5833 (xm_scroll_callback, x_create_toolkit_scroll_bar)
5834 (x_set_toolkit_scroll_bar_thumb): Simplify.
5835 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
5836 (XTread_socket): Remove unused var.
5837 (x_make_frame_invisible): Replace goto with else.
5838
5839 * xdisp.c (set_vertical_scroll_bar): New fun.
5840 (redisplay_window): Use it.
5841
58422003-03-26 Richard M. Stallman <rms@gnu.org>
5843
5844 * xdisp.c (update_tool_bar): Recompute tool bar if
5845 update_mode_lines is set. Set w->update_mode_line
5846 only if the tool bar contents actually change.
5847 (update_menu_bar): Undo previous change.
5848
58492003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5850
5851 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
5852 (xg_frame_set_char_size): Calculate scroll bar width before frame
5853 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
5854 (xg_separator_p): Check for all documented separator types.
5855 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
5856 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
5857
5858 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
5859 so tool bar gets updated.
5860
58612003-03-26 Stefan Monnier <monnier@cs.yale.edu>
5862
5863 * data.c (store_symval_forwarding): Re-instate part of the code
5864 that was deleted with too much enthusiasm.
5865
58662003-03-25 Stefan Monnier <monnier@cs.yale.edu>
5867
5868 * data.c (store_symval_forwarding): Delete special read-only
5869 hack for type == -1, since we now use ->constant instead.
5870 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
5871
5872 * buffer.c (overlays_in): Declare static.
5873 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
5874 `constant' field rather than the variable's `type' field.
5875
58762003-03-24 Andrew Choi <akochoi@shaw.ca>
5877
5878 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
5879
5880 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
5881
5882 * fns.c [MAC_OSX]: Do not redefine vector.
5883
5884 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
5885
5886 * macgui.h: Remove definition of No_Cursor.
5887
5888 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
5889
5890 * xdisp.c: Define No_Cursor.
5891 (x_write_glyphs, notice_overwritten_cursor)
5892 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
5893 (note_mouse_highlight): Remove Mac-specific code.
5894 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
5895
58962003-03-24 John Paul Wallington <jpw@gnu.org>
5897
5898 * xdisp.c (redisplay_window): If mini window's buffer is not
5899 empty, then redisplay it like other windows.
5900
59012003-03-23 Kim F. Storm <storm@cua.dk>
5902
5903 * w32term.c (w32_draw_window_cursor): Fix last change.
5904
59052003-03-23 Kenichi Handa <handa@m17n.org>
5906
5907 * alloc.c (make_string_from_bytes, make_specified_string):
5908 Add `const' for the arg CONTENTS.
5909
5910 * lisp.h (make_string_from_bytes, make_specified_string):
5911 Prototypes adjusted.
5912
59132003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5914
5915 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
5916
5917 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
5918 (XG_SB_RANGE): New define.
5919
5920 * gtkutil.c (xg_fixed_handle_expose): New function.
5921 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
5922 expose events.
5923 (xg_update_scrollbar_pos): Take two more arguments, left and width
5924 of scroll bar including borders.
5925 Clear left and right part outside scroll bar separately as some
5926 themes have bars that are not an even number of pixels.
5927 Don't set reallocate_redraws, don't call
5928 gdk_window_process_all_updates.
5929 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
5930 so no need to change it. Calculate size and value with XG_SB_RANGE.
5931
5932 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
5933 Pass left and width of scroll bar including borders to
5934 xg_update_scrollbar_pos.
5935
59362003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
5937
5938 * Makefile.in: Make sure space precedes end-of-line backslashes.
5939
59402003-03-22 Kim F. Storm <storm@cua.dk>
5941
5942 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
5943 Add generic versions here. Remove system specific versions
5944 defined elsewhere.
5945
5946 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
5947 Add prototypes.
5948
5949 * xterm.h (STORE_NATIVE_RECT): New macro.
5950
59512003-03-21 Kim F. Storm <storm@cua.dk>
5952
5953 * xdisp.c (get_glyph_string_clip_rect):
5954 Use FRAME_INTERNAL_BORDER_WIDTH.
5955
5956 * dispextern.h (struct redisplay_interface): Add active_p
5957 argument to draw_window_cursor member. All uses changed.
5958
59592003-03-21 Kim F. Storm <storm@cua.dk>
5960
5961 The following changes consolidate code related to writing and
5962 inserting glyphs, exposing frame, the tool bar, the mouse face,
5963 the output cursor, and help echo from xterm.c, w32term.c and
5964 macterm.c into xdisp.c. It also generalizes the use of the
5965 window_part enum instead of using numeric values throughout.
5966
5967 * xdisp.c: Consolidate gui-independent code here.
5968 Include keymap.h.
5969 (Qhelp_echo): Import.
5970 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
5971 (help_echo_string, help_echo_window, help_echo_object)
5972 (previous_help_echo_string, help_echo_pos): Declare here.
5973 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
5974 (estimate_mode_line_height): Define here. Handle windowing
5975 systems directly (without using estimate_mode_line_height_hook).
5976 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
5977 (update_window_cursor, update_cursor_in_window_tree)
5978 (fast_find_position, fast_find_string_pos)
5979 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
5980 (expose_area, expose_line, expose_overlaps, expose_window)
5981 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
5982 declared static as they are only used locally in xdisp.c.
5983 (draw_glyphs): Rename from x_draw_glyphs and make static.
5984 (tool_bar_item_info, notice_overwritten_cursor): Make static.
5985 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
5986 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
5987 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
5988 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
5989 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
5990 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
5991 (note_mouse_highlight, x_clear_window_mouse_face)
5992 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
5993 (x_intersect_rectangles): New generic functions for use by xdisp.c
5994 and GUI front-ends.
5995 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
5996 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
5997
5998 * dispextern.h (Display_Info): Generic typedef for *_display_info.
5999 (NativeRectangle): Generic typedef for rectangle type.
6000 (enum window_part): Move here from window.c.
6001 (struct redisplay_interface): New members flush_display_optional,
6002 define_frame_cursor, clear_frame_area, draw_window_cursor,
6003 draw_vertical_window_border, shift_glyphs_for_insert.
6004 Rename member clear_mouse_face to clear_window_mouse_face.
6005 (estimate_mode_line_height_hook): Remove hook.
6006 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6007 (tool_bar_item_info): Remove prototype.
6008 (help_echo_string, help_echo_window, help_echo_object)
6009 (previous_help_echo_string, help_echo_pos)
6010 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6011 (x_stretch_cursor_p, output_cursor): Declare extern.
6012 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6013 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6014 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6015 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6016 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6017 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6018 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6019 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6020 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6021 Add prototypes.
6022 (mode_line_string, marginal_area_string): Fix prototypes.
6023
6024 * window.c (enum window_part): Move to dispextern.h.
6025 (coordinates_in_window): Use enum window_part member names
6026 instead of numbers to describe return value.
6027 (struct check_window_data): Change part member to window_part.
6028 (check_window_containing): Return window_part unaltered.
6029 (window_from_coordinates): Change part arg from int to enum
6030 window_part. Allow part arg to be null. All users changed.
6031
6032 * window.h (window_from_coordinates): Fix prototype.
6033
6034 * term.c (estimate_mode_line_height): Move to xdisp.c.
6035
6036 * keyboard.c (make_lispy_event): Use enum window_part.
6037
6038 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6039 window_part instead of int in arg list. Users changed.
6040
6041 * xterm.h (No_Cursor): Declare as None for X.
6042 (struct mac_output): Replace member cross_cursor by hand_cursor.
6043
6044 * xterm.c: Remove consolidated defines and code.
6045 (BETWEEN): Remove unused macro.
6046 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6047 (x_define_frame_cursor, x_clear_frame_area)
6048 (x_draw_window_cursor): New X-specific functions for RIF.
6049 (x_redisplay_interface): Add new members.
6050
6051 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6052
6053 * w32term.h (struct w32_output): Remove cross_cursor member.
6054
6055 * w32term.c: Remove consolidated defines and code.
6056 (BETWEEN): Remove unused macro.
6057 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6058 (w32_define_frame_cursor, w32_clear_frame_area)
6059 (w32_draw_window_cursor): New W32-specific functions for RIF.
6060 (w32_redisplay_interface): Add new members.
6061
6062 * w32gui.h (No_Cursor): Define as 0 for W32.
6063 (XRectangle): Add X compatible rectangle type.
6064 (NativeRectangle): Declare as RECT for W32.
6065 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6066
6067 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6068
6069 * w32console.c: Remove consolidated defines and code.
6070
6071 * msdos.h (Display_Info): Add generic typedef.
6072
6073 * msdos.c: Remove consolidated defines and code.
6074 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6075
6076 * macterm.h (struct mac_output): Replace member cross_cursor by
6077 hand_cursor.
6078 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6079
6080 * macterm.c: Remove consolidated defines and code.
6081 (BETWEEN): Remove unused macro.
6082 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6083 (mac_define_frame_cursor, mac_clear_frame_area)
6084 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6085 (x_redisplay_interface): Add new members.
6086
6087 * macgui.h (No_Cursor): Define as 0 for Mac.
6088 (XRectangle): Add X compatible rectangle type.
6089 (NativeRectangle): Declare as Rect for Mac.
6090 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6091
6092 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6093 (x_set_cursor_color): Use x_display_and_set_cursor.
6094
6095 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6096 included from it. Add dependency on keymap.h.
6097
6098 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6099
61002003-03-21 Kenichi Handa <handa@m17n.org>
6101
6102 * fileio.c (Fexpand_file_name): Fix previous change.
6103
61042003-03-19 Kenichi Handa <handa@m17n.org>
6105
6106 * fileio.c (Ffile_name_directory): Reconstruct file name by
6107 make_specified_string.
6108 (Ffile_name_nondirectory, Ffile_name_as_directory)
6109 (Fdirectory_file_name, Fexpand_file_name)
6110 (Fsubstitute_in_file_name): Likewise.
6111 (Fread_file_name): Compare decoded homedir with DIR and
6112 DEFAULT_FILENAME.
6113
6114 * alloc.c (make_specified_string): If NCHARS is negative, count
6115 the number of characters.
6116
61172003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6118
6119 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6120 all widgets.
6121
6122 * gtkutil.h: Removed xg_ignore_next_thumb.
6123
61242003-03-18 Kenichi Handa <handa@m17n.org>
6125
6126 * coding.c (Vchar_coding_system_table): Remove this variable.
6127 (Vcoding_system_safe_chars): New variable.
6128 (intersection): Remove this function.
6129 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6130 all codings in SAFE_CODINGS.
6131 (Ffind_coding_systems_region_internal): Adjust for the change of
6132 find_safe_codings. Get generic coding systems from
6133 Vcoding_system_safe_chars.
6134 (Fdefine_coding_system_internal): New function.
6135 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6136 Initialize and staticpro Vcoding_system_safe_chars.
6137
61382003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6139
6140 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6141 equal old values before updating.
6142
6143 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6144
6145 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6146
61472003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6148
6149 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6150 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6151 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6152 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6153 (xg_create_scroll_bar): Pass bar to button event callback.
6154 (xg_find_top_left_in_fixed): New function.
6155 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6156 whole scroll bar area. Get old position with
6157 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6158 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6159 dragging is in progress. Calculate whole as for Motif.
6160 Remove code that saved last values. Call gtk_range functions to
6161 set scroll bar sizes.
6162
6163 * gtkutil.h: Removed xg_ignore_next_thumb.
6164
61652003-03-17 Juanma Barranquero <lektu@terra.es>
6166
6167 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6168 and files included from it.
6169
61702003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6171
6172 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6173 multiple occurrences of the same keymap under different prefixes.
6174 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6175
61762003-03-16 Jason Rumney <jasonr@gnu.org>
6177
6178 * w32gui.h: Use HDC for Display.
6179
6180 * w32term.c (w32_encode_char): Prevent double-byte chars from
6181 crashing Emacs.
6182
6183 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6184 as binary.
6185
61862003-03-16 Juanma Barranquero <lektu@terra.es>
6187
6188 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6189
61902003-03-16 Kim F. Storm <storm@cua.dk>
6191
6192 The following changes consolidate some of the gui-independent
6193 parts of the processing and drawing of "glyph strings" from
6194 xterm.c, w32term.c, and macterm.c into xdisp.c.
6195
6196 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6197 21 bits (this reduces number of faces from 4M to 2M).
6198 Replace W32 specific w32_font_type member (2 bits) by generic
6199 font_type member (3 bits) for portability.
6200 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6201 (enum draw_glyphs_face): Define here.
6202 (struct glyph_string): Define here. Merge W32 and X versions.
6203 (struct redisplay_interface): New members per_char_metric,
6204 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6205 (VCENTER_BASELINE_OFFSET): Define here.
6206 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6207 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6208
6209 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6210 (dump_glyph_string): Moved here.
6211 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6212 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6213 (fill_composite_glyph_string, fill_glyph_string)
6214 (fill_image_glyph_string, fill_stretch_glyph_string)
6215 (left_overwritten, left_overwriting, right_overwritten)
6216 (right_overwriting, get_char_face_and_encoding)
6217 (set_glyph_string_background_width, compute_overhangs_and_x)
6218 (append_glyph, append_composite_glyph, produce_image_glyph)
6219 (take_vertical_position_into_account, append_stretch_glyph)
6220 (produce_stretch_glyph): New generic functions (based on X version).
6221 Call platform specific functions through rif.
6222 (INIT_GLYPH_STRING): New macro, hides W32 details.
6223 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6224 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6225 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6226 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6227 (notice_overwritten_cursor):
6228 Generic functions exported to platform modules. Users changed.
6229
6230 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6231 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6232 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6233 New macros for consolidated code.
6234
6235 * xterm.c: Remove consolidated defines and code.
6236 (x_per_char_metric, x_encode_char)
6237 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6238 (x_redisplay_interface): Add new members.
6239
6240 * w32gui.h (Display): Add dummy typedef for consolidation.
6241 (XChar2b): Define alias for wchar_t for consolidation.
6242 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6243
6244 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6245 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6246 New macros for consolidation.
6247
6248 * w32term.c: Remove consolidated defines and code.
6249 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6250 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6251 (w32_per_char_metric): Change font_type arg to int for RIF.
6252 (w32_encode_char): Return int according to RIF requirements.
6253 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6254 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6255 x_get_glyph_overhangs.
6256 (w32_redisplay_interface): Add new members.
6257
6258 * macgui.h (XChar2b): Move typedef here for consolidation.
6259 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6260
6261 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6262 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6263 consolidation.
6264
6265 * macterm.c: Remove consolidated defines and code.
6266 (mac_per_char_metric): New function for RIF.
6267 (mac_encode_char): Adapt to new RIF requirements.
6268 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6269 (x_redisplay_interface): Add new members.
6270
62712003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6272
6273 * keymap.c (Vmenu_events): New var.
6274 (syms_of_keymap): Initialize it.
6275 (where_is_internal): Check more carefully what is a menu event.
6276
62772003-03-14 Richard M. Stallman <rms@gnu.org>
6278
6279 * lread.c (read1): After #!, exit loop on eof.
6280
62812003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6282
6283 * gtkutil.h: Add declaration for xg_frame_cleared.
6284
6285 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6286
6287 * gtkutil.c (struct xg_last_sb_pos): New structure.
6288 (handle_fixed_child): New function.
6289 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6290 and force a redraw on them.
6291 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6292 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6293 so we can avoid unneeded redraws.
6294 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6295 and force a redraw on the scroll bar.
6296 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6297 if xg_last_sb_pos shows the positions are up to date.
6298 (xg_frame_cleared): New function.
6299
63002003-03-13 Kenichi Handa <handa@m17n.org>
6301
6302 * coding.c (Fdetect_coding_region): Fix docstring.
6303 (Fdetect_coding_string): Fix docstring.
6304
63052003-03-13 Andreas Schwab <schwab@suse.de>
6306
6307 * gtkutil.c: Add prototype for create_menus.
6308
6309 * data.c (long_to_cons): Fix type of top.
6310
6311 * xselect.c (selection_data_to_lisp_data): Use int instead of
6312 long for an integer of size 4.
6313
6314 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6315 (xg_tool_bar_help_callback): Likewise.
6316
63172003-03-12 Andreas Schwab <schwab@suse.de>
6318
6319 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6320
63212003-03-12 Kim F. Storm <storm@cua.dk>
6322
6323 The following changes consolidate the fringe handling from
6324 xterm.c, w32term.c, and macterm.c into xdisp.c.
6325
6326 * xdisp.c: Consolidate fringe handling code here.
6327 (left_bits, right_bits, continued_bits, continuation_bits)
6328 (ov_bits, zv_bits): Define fringe bitmaps.
6329 (fringe_bitmaps): New array holding fringe bitmaps.
6330 (draw_fringe_bitmap): Draw a specific bitmap; call display
6331 specific drawing routine via rif->draw_fringe_bitmap.
6332 (draw_row_fringe_bitmaps): Generic replacement for
6333 x_draw_row_fringe_bitmaps; all callers changed.
6334 (compute_fringe_widths): Generic replacement for
6335 x_compute_fringe_widths; all callers changed.
6336
6337 * dispextern.h (enum fringe_bitmap_type): Define here.
6338 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6339 (fringe_bitmaps): Declare extern.
6340 (struct redisplay_interface): New member draw_fringe_bitmap.
6341 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6342
6343 * xterm.c: Remove generic fringe code.
6344 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6345 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6346
6347 * w32term.c: Remove generic fringe code.
6348 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6349 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6350
6351 * macterm.c: Remove generic fringe code.
6352 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6353 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6354
63552003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6356
6357 * print.c (Fprin1_to_string): Return unibyte string if possible.
6358
63592003-03-09 David Kastrup <dak@gnu.org>
6360
6361 * process.c (read_process_output): We have allocated enough space
6362 for readmax and carryover, so actually use the alloted space.
6363
63642003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6365
6366 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6367 toolkit scrollbar click.
6368
6369 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6370 for USE_GTK.
6371 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6372 also.
6373 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6374 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6375
6376 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6377
6378 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6379 (xg_tool_bar_item_expose_callback): New function.
6380 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6381 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6382 on the tool bar widget.
6383 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6384 to expose on the tool bar item widgets.
6385
63862003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6387
6388 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6389 struct image* when deciding to update (struct image* may have been
6390 deleted from the image cache).
6391
6392 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6393 the event isn't for a frame (i.e. for dialogs).
6394
63952003-03-07 Kenichi Handa <handa@m17n.org>
6396
6397 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6398 composition components reaches the limit, terminate composing.
6399 (COMPOSITION_OK): New macro.
6400 (detect_coding_iso2022): Use it if an escape sequence for
6401 composition is found.
6402 (coding_restore_composition): Adjust the number of composition
6403 components if it is not sane.
6404
64052003-03-06 Juanma Barranquero <lektu@terra.es>
6406
6407 * w32term.h (struct w32_display_info): Add xrdb member to support
6408 passing resources via -xrm on Windows.
6409
6410 * w32term.c (w32_make_rdb): New function.
6411 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6412 struct. Delete leftover code.
6413
6414 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6415 for resources passed on the command line.
6416
6417 * w32reg.c (w32_get_rdb_resource): New function.
6418 (x_get_string_resource): Use it, so resources passed with -xrm
6419 supercede the ones in the registry.
6420
64212003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6422
6423 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6424 instead of x_top_window_to_frame.
6425
64262003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6427
6428 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6429 when restarting Emacs.
6430
64312003-03-03 Richard M. Stallman <rms@gnu.org>
6432
6433 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6434 to run kill-buffer-query-functions.
6435 (Qkill_buffer_query_functions): New var.
6436 (syms_of_buffer): Init and staticpro it.
6437
64382003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6439
6440 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6441
64422003-02-25 Kim F. Storm <storm@cua.dk>
6443
6444 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6445 If centering point failed to make whole line visible and vscroll
6446 is non-zero, disable vscroll and try centering point again.
6447
6448 * lread.c (read1): Accept `single space' syntax like (? x).
6449
64502003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6451
6452 * keyboard.c (cancel_hourglass_unwind): Surround with
6453 #ifdef HAVE_X_WINDOWS
6454
64552003-02-25 Kenichi Handa <handa@m17n.org>
6456
6457 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6458 process only when "subprocesses" is defined.
6459
64602003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6461
6462 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6463
64642003-02-24 Juanma Barranquero <lektu@terra.es>
6465
6466 * callint.c (fix_command): Declare as static void and move before
6467 Fcall_interactively.
6468
6469 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6470 (syms_of_xdisp): Don't initialize Qwhen.
6471
64722003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6473
6474 * keyboard.c (cancel_hourglass_unwind): New function.
6475 (command_loop_1): Cancel hourglass with unwind-protect.
6476
64772003-02-23 Richard M. Stallman <rms@gnu.org>
6478
6479 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6480 Detect (when ... (region-beginning)) etc.
6481 (Fcall_interactively): Call fix_command.
6482 (Qif, Qwhen): New variables.
6483 (syms_of_callint): Init and staticpro them.
6484
6485 * regex.c (print_partial_compiled_pattern): Output to stderr.
6486
64872003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6488
6489 * dired.c (directory_files_internal): Don't expand directory.
6490 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6491 instead. From Lars Hansen <larsh@math.ku.dk>.
6492
64932003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6494
6495 * fns.c (string_to_multibyte): Remove unused var i.
6496 (Flanginfo): Fix int/Lisp_Object mixup.
6497 (void_call2): New fun.
6498 (Fmap_char_table): Use it in place of call2.
6499
6500 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6501
6502 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6503
6504 * keymap.c (copy_keymap_1): Make it static.
6505
6506 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6507
65082003-02-22 David Ponce <david@dponce.com>
6509
6510 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6511
65122003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6513
6514 * process.h: Removed subtty field from struct Lisp_Process.
6515
6516 * process.c (create_process): Remove setting of subtty.
6517 (emacs_get_tty_pgrp): New function.
6518 (Fprocess_running_child_p, process_send_signal):
6519 Call emacs_get_tty_pgrp instead of ioctl.
6520 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6521
65222003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6523
6524 * keymap.c (Fdefine_key): Doc fix.
6525
65262003-02-21 Juanma Barranquero <lektu@terra.es>
6527
6528 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6529
6530 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6531 POLLING_PROBLEM_IN_SELECT.
6532
6533 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6534 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6535
6536 * s/hpux10-20.h: New file.
6537
6538 * process.c (wait_reading_process_input):
6539 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
6540
65412003-02-20 Kenichi Handa <handa@m17n.org>
6542
6543 * fontset.c (check_fontset_name): If NAME is nil, return the
6544 default fontset.
6545 (override_font_info): New function.
6546 (Fset_fontset_font): Document that NAME nil means the default fontset.
6547 (Ffontset_info): If FONTSET is not the default fontset, merge
6548 FONTSET onto the copy of the default fontset, and work on that
6549 copy. Document that NAME nil means the default fontset.
6550 (Ffontset_font): Document that NAME nil means the default fontset.
6551
6552 * process.c (setup_process_coding_systems): If the process's
6553 in/out descriptor is -1, do nothing.
6554
65552003-02-19 Andreas Schwab <schwab@suse.de>
6556
6557 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6558 Add prototypes.
6559
65602003-02-19 Kenichi Handa <handa@m17n.org>
6561
6562 * xfaces.c (try_alternative_families): Try all scalable fonts if
6563 Vscalable_fonts_allowed is not Qt.
6564
65652003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6566
6567 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
6568
65692003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6570
6571 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
6572 names.
6573
6574 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
6575 (sorted_font_list): Move allocation of struct font_name to
6576 x_face_list_fonts.
6577 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
6578 (Fx_list_fonts): Set maxnames to -1 to get all font names.
6579
65802003-02-18 Kim F. Storm <storm@cua.dk>
6581
6582 * lread.c (read1): Fix last change.
6583 "`" is not always special. Allow "?" after a character constant.
6584
65852003-02-18 Andrew Choi <akochoi@shaw.ca>
6586
6587 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
6588
65892003-02-18 Andreas Schwab <schwab@suse.de>
6590
6591 * window.c (window_scroll_pixel_based): Move outside a
6592 multi-glyph character before setting new window start.
6593
6594 * xdisp.c (in_display_vector_p): New function.
6595 * dispextern.h (in_display_vector_p): Declare.
6596
65972003-02-18 Kim F. Storm <storm@cua.dk>
6598
6599 * lread.c (read1): Fix and relax read syntax.
6600 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
6601 Only recognize "," after dotted-pair dot if inside backquote.
6602 Never include "`" or "," (inside backquote) in a symbol.
6603 Allow dotted-pair dot after a character constant.
6604 Allow "`" and "," (inside backquote) after a character constant.
6605
66062003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6607
6608 * gtkutil.c (xg_tool_bar_expose_callback): New function.
6609 (xg_create_tool_bar): Force style of tool bar to be horizontal with
6610 icons. Set name of tool bar to emacs-toolbar.
6611 (update_frame_tool_bar): Connect expose event to
6612 xg_tool_bar_expose_callback.
6613
66142003-02-17 Richard M. Stallman <rms@gnu.org>
6615
6616 * keyboard.c (this_command_key_count_reset): New variable.
6617 Initiatize to 0 where this_command_key_count is set.
6618 (read_char): Save and restore this_command_key_count_reset
6619 around input method code.
6620 (read_char): If this_command_key_count_reset, echo reread commands.
6621 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
6622
66232003-02-17 Kenichi Handa <handa@m17n.org>
6624
6625 * fns.c (string_to_multibyte): Always return a multibyte string.
6626
66272003-02-16 Jason Rumney <jasonr@gnu.org>
6628
6629 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
6630 Negative max_fonts parameter means list all.
6631
66322003-02-14 Dave Love <fx@gnu.org>
6633
6634 * fns.c (Flanginfo): Doc fix.
6635
66362003-02-13 Kim F. Storm <storm@cua.dk>
6637
6638 * lread.c (read_escape): Interpret \s as a SPACE character, except
6639 for \s-X in a character constant which still is the super modifier.
6640 (read1): Signal an `invalid read syntax' error if a character
6641 constant is immediately followed by a digit or symbol character.
6642
6643 * search.c (Fmatch_data): Doc fix. Explicitly state that
6644 match-data is undefined if last search failed.
6645
6646 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
6647 All uses changed.
6648
66492003-02-12 Juanma Barranquero <lektu@terra.es>
6650
6651 * eval.c (Fdefmacro): Fix typo.
6652
66532003-02-12 Kim F. Storm <storm@cua.dk>
6654
6655 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
6656 macro is a string, convert meta modifiers in string when copying
6657 the string into a vector.
6658
66592003-02-11 Kim F. Storm <storm@cua.dk>
6660
6661 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
6662
66632003-02-11 Kenichi Handa <handa@m17n.org>
6664
6665 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
6666
66672003-02-10 Kim F. Storm <storm@cua.dk>
6668
6669 * process.c: Doc fixes.
6670 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
6671
66722003-02-10 Kenichi Handa <handa@m17n.org>
6673
6674 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
6675
6676 * process.c (QCfilter_multibyte): New variable.
6677 (setup_process_coding_systems): New function.
6678 (Fset_process_buffer, Fset_process_filter):
6679 Call setup_process_coding_systems.
6680 (Fstart_process): Initialize the member `filter_multibyte' of
6681 struct Lisp_Process.
6682 (create_process): Call setup_process_coding_systems.
6683 (Fmake_network_process): New keyward `:filter-multibyte'.
6684 Initialize the member `filter_multibyte' of struct Lisp_Process.
6685 Call setup_process_coding_systems.
6686 (server_accept_connection): Call setup_process_coding_systems.
6687 (read_process_output): If the process has a filter, decide the
6688 multibyteness of a string to given to the filter by
6689 `filter_multibyte' member of the process. If the process doesn't
6690 have a filter and the result of conversion is unibyte, use
6691 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
6692 multibyte form.
6693 (Fset_process_coding_system): Call setup_process_coding_systems.
6694 (Fset_process_filter_multibyte): New function.
6695 (Fprocess_filter_multibyte_p): New function.
6696 (syms_of_process): Intern and staticpro QCfilter_multibyte.
6697 Defsubr Sset_process_filter_multibyte and
6698 Sprocess_filter_multibyte_p.
6699
6700 * process.h (struct Lisp_Process): New member filter_multibyte.
6701
6702 * lisp.h (setup_process_coding_systems): Add prototype.
6703
6704 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
6705 process, update coding systems for the process.
6706
67072003-02-09 Kenichi Handa <handa@m17n.org>
6708
6709 * fns.c (string_to_multibyte): New function.
6710 (Fstring_to_multibyte): New function.
6711 (syms_of_fns): Defsubr it.
6712
67132003-02-08 Andreas Schwab <schwab@suse.de>
6714
6715 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
6716 instead of the substitution.
6717
67182003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6719
6720 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
6721
6722 * xmenu.c (menu_position_func): Adjust menu popup position so that
6723 the menu is fully visible.
6724
67252003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6726
6727 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
6728 (x_make_frame_invisible, x_wm_set_icon_position):
6729 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
6730
6731 * xfns.c (x_set_name, x_set_title): Ditto.
6732
67332003-02-04 Richard M. Stallman <rms@gnu.org>
6734
6735 * keyboard.c (echo_now): Update before_command_echo_length.
6736 (Freset_this_command_lengths): Reset this_command_key_count etc.
6737 immediately rather than arranging to do it later.
6738 (before_command_key_count_1, before_command_echo_length_1)
6739 (before_command_restore_flag): Vars deleted.
6740 (add_command_key): Don't handle before_command_restore_flag.
6741 (read_char, record_menu_key): Don't update before_command_key_count or
6742 before_command_echo_length.
6743 (read_char): Don't handle before_command_restore_flag.
6744
6745 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
6746 in direct-output clauses if it wouldn't be called in the ordinary case.
6747
67482003-02-04 Kim F. Storm <storm@cua.dk>
6749
6750 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
6751
67522003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6753
6754 * gtkutil.c (remove_from_container): Copying list is not needed.
6755 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
6756 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
6757 on list returned from gtk_container_get_children to avoid memory leak.
6758
67592003-02-01 Jason Rumney <jasonr@gnu.org>
6760
6761 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
6762 local malloc.
6763 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
6764 definitions in xpm.h.
6765 (init_xpm_functions): New function.
6766 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
6767 (init_external_image_libraries): Try to load libXpm.dll.
6768
6769 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
6770 timestamp.
6771
67722003-01-31 Dave Love <fx@gnu.org>
6773
6774 * syntax.c (Fskip_chars_forward)
6775 (open-paren-in-column-0-is-defun-start): Doc fix.
6776
67772003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
6778
6779 * fileio.c: Support // at start of name for Cygwin (just added proper
6780 preprocessor tests).
6781
6782 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
6783
6784 * Makefile.in: Use @EXEEXT@ for Cygwin.
6785
6786 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
6787
6788 * s/cygwin.h: Added for Cygwin port.
6789
67902003-01-31 Juanma Barranquero <lektu@terra.es>
6791
6792 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
6793 when including gif_lib.h.
6794 (init_gif_functions, init_tiff_functions): New functions.
6795 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
6796 Windows. Disable color table lookups. Call library functions
6797 through pointers determined at runtime.
6798 (init_external_image_libraries): Try to load libungif.dll and
6799 libtiff.dll.
6800
68012003-01-31 Kenichi Handa <handa@m17n.org>
6802
6803 * xdisp.c (SKIP_GLYPHS): New macro.
6804 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
6805
68062003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6807
6808 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
6809
68102003-01-30 Dave Love <fx@gnu.org>
6811
6812 * alloc.c (Vgc_elapsed, gcs_done): New variables.
6813 (Fgarbage_collect): Use them.
6814 (init_alloc, syms_of_alloc): Set them up.
6815
68162003-01-30 Juanma Barranquero <lektu@terra.es>
6817
6818 * w32fns.c (init_external_image_libraries): Add missing operator.
6819
68202003-01-29 Jason Rumney <jasonr@gnu.org>
6821
6822 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
6823 an alternative name for jpeg.dll.
6824
68252003-01-29 Kenichi Handa <handa@m17n.org>
6826
6827 * xdisp.c (set_cursor_from_row): Pay attention to string display
6828 properties.
6829
68302003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6831
6832 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
6833 <escape>.
6834 (keycode_to_xkeysym_table): Reformat and add more comments.
6835 (XTread_socket): Drop special case for backspace.
6836
68372003-01-28 Andrew Choi <akochoi@shaw.ca>
6838
6839 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
6840 values in old-style RGB specs.
6841
68422003-01-27 Juanma Barranquero <lektu@terra.es>
6843
6844 * w32fns.c (init_external_image_libraries): Try alternate names for the
6845 jpeg dll.
6846
68472003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6848
6849 * gtkutil.c (create_dialog, xg_separator_p)
6850 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
6851 before calling strcmp or strlen.
6852
68532003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6854
6855 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
6856 and handle image load failure.
6857
68582003-01-26 Jason Rumney <jasonr@gnu.org>
6859
6860 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
6861 New functions.
6862 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
6863 Disable color table lookups. Call jpeg library functions
6864 through pointers determined at runtime.
6865 (init_external_image_libraries): Try to load jpeg.dll.
6866
68672003-01-25 Richard M. Stallman <rms@gnu.org>
6868
6869 * lisp.h: Declare format2 instead of format1.
6870
6871 * fileio.c (barf_or_query_if_file_exists):
6872 Call format2 instead of format1.
6873
6874 * editfns.c (format2): New function, replaces format1
6875 but takes exactly two Lisp Objects as format args.
6876
6877 * buffer.c (Fkill_buffer): Call format2 instead of format1.
6878
68792003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6880
6881 * xterm.h: Change to return value of x_dispatch_event to int.
6882
6883 * xterm.c (x_filter_event): New function.
6884 (event_handler_gdk, XTread_socket): Call x_filter_event.
6885 (x_dispatch_event): Change to return value of finish.
6886 (event_handler_gdk): Use return value from x_dispatch_event.
6887
6888 * xfns.c (x_window): Call create_frame_xic for GTK version to
6889 initialize input methods.
6890
6891 * gtkutil.h: Add (void) prototypes.
6892
6893 * gtkutil.c (create_menus): Remove code that puts the help menu to
6894 the right.
6895
68962003-01-25 Jason Rumney <jasonr@gnu.org>
6897
6898 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
6899 [HAVE_PNG]: Sync with xfns.c version.
6900 (png_load): Adjust colors for Windows. Use Windows
6901 bitmaps. Disable color table lookups.
6902 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
6903 (init_png_functions): New function.
6904 (png_read_from_memory, png_load): Call png library functions
6905 through pointers determined at runtime.
6906 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
6907 (init_external_image_libraries): New function.
6908 (init_xfns): Call it.
6909
69102003-01-24 Andreas Schwab <schwab@suse.de>
6911
6912 * minibuf.c (Fminibuffer_message): Verify type of parameter.
6913
69142003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6915
6916 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
6917 of static initializer.
6918
69192003-01-24 Dave Love <fx@gnu.org>
6920
6921 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
6922 architectures.
6923
6924 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
6925 Use __alignof__.
6926
69272003-01-24 Kenichi Handa <handa@m17n.org>
6928
6929 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
6930 It it is nonzero, don't pretend that an invisible area doesn't exist.
6931 (command_loop_1): Call adjust_point_for_property with proper
6932 second arg.
6933
69342003-01-22 Jason Rumney <jasonr@gnu.org>
6935
6936 Sync changes with xterm.c and xfns.c.
6937
6938 * w32term.c (x_draw_glyph_string_foreground)
6939 (x_draw_composite_glyph_string_foreground): Implement overstriking.
6940
6941 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
6942 phys_cursor's hpos is overwritten. This is still not completely
6943 correct, as it doesn't really make sense to use hpos at all to
6944 get the cursor glyph (as that is relative to the width of the
6945 characters on the line, which may have changed during the update).
6946
6947 * w32term.c (notice_overwritten_cursor): Handle the special case
6948 of the cursor being in the first blank non-text line at the
6949 end of a window.
6950
6951 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
6952 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
6953 Compute from the x position returned by x_draw_glyphs.
6954
6955 (x_display_and_set_cursor): Don't set phys_cursor_width here,
6956 except for NO_CURSOR and system caret, to make phys_cursor_width
6957 contain what its name suggests.
6958 (notice_overwritten_cursor): Consider the cursor image erased if
6959 the output area intersects the cursor image in y-direction.
6960
6961 * w32term.c (note_mode_line_or_margin_highlight): Rename from
6962 note_mode_line_highlight and extend.
6963
6964 * w32term.c (last_window): New variable.
6965 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
6966 (note_mouse_movement): Remove reimplemented code in #if 0.
6967
6968 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
6969 not update_mode_lines, and always set it to 1.
6970
69712003-01-21 Jason Rumney <jasonr@gnu.org>
6972
6973 * w32fns.c (IDC_HAND): Define it if system headers don't.
6974
69752003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
6976
6977 * w32term.h (struct w32_output): New member hand_cursor.
6978 (WM_EMACS_SETCURSOR): New message definition.
6979
6980 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
6981 function w32_define_cursor.
6982 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
6983 position, change member name output_data.x to output_data.w32 and
6984 add function w32_define_cursor.
6985 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
6986 and change member name output_data.x to output_data.w32.
6987 (w32_initialize_display_info):
6988 Setup dpyinfo->vertical_scroll_bar_cursor.
6989
6990 * w32fns.c (Vx_hand_shape): New variable.
6991 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
6992 WM_EMACS_SETCURSOR.
6993 (x-create-frame): Setup Cursor types.
6994
69952003-01-21 David Ponce <david@dponce.com>
6996
6997 * w32term.c (w32_encode_char): For DIM=1 charset, set
6998 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
6999 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7000 2002-09-30.)
7001 (w32_draw_relief_rect): Declare all args.
7002 (w32_define_cursor): New.
7003
7004 * w32fns.c (w32_load_cursor): New function.
7005 (w32_init_class): Use it.
7006 (x_put_x_image): Declare all args.
7007
70082003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7009
7010 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7011
70122003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7013
7014 * gtkutil.c: Must include stdio.h before termhooks.h
7015
70162003-01-21 Dave Love <fx@gnu.org>
7017
7018 * alloc.c (Fgc_status): Print zombie list.
7019 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7020 Fix assignment of zombies.
7021 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7022 Don't take car of non-cons.
7023
7024 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7025
7026 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7027
70282003-01-20 David Ponce <david@dponce.com>
7029
7030 * w32menu.c (digest_single_submenu): Declare all args.
7031
7032 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7033 changes in xmenu.c:
7034
7035 (parse_single_submenu): Use individual keymap's prompt
7036 string as pane name, if there is one.
7037 (set_frame_menubar): Save menu_items_n_panes from each call to
7038 parse_single_submenu and use it when calling digest_single_submenu.
7039
70402003-01-20 Steven Tamm <steventamm@mac.com>
7041
7042 * macterm.c (XTread_socket): Checks for valid, visible window
7043 before sending a scroll-wheel event.
7044
70452003-01-20 Richard M. Stallman <rms@gnu.org>
7046
7047 * xdisp.c (redisplay_window): If mini window's buffer is not
7048 a minibuffer, then redisplay it like other windows.
7049
70502003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7051
7052 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7053 external tool bar before setting tool bar height.
7054
70552003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7056
7057 * xterm.c (handle_one_xevent): Surround popup_activated
7058 with #ifdef:s for non-toolkit version.
7059
7060 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7061 (gtkutil.o): New file.
7062 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7063 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7064
7065 * gtkutil.c: New file for GTK version.
7066
7067 * gtkutil.h: New file for GTK version.
7068
7069 * xterm.h: Add xt_or_gtk_widget.
7070 Include gtk files for USE_GTK.
7071 (struct x_output): Add toolbar_height.
7072 (struct x_output): Add GTK widgets and Gdk size_hints.
7073 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7074 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7075 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7076
7077 * xterm.c: Include gtkutil.h for USE_GTK.
7078 Declare extern void free_frame_menubar for USE_GTK.
7079 (note_mouse_highlight): Check popup_activated for USE_GTK.
7080 (xt_action_hook): Don't compile if USE_GTK.
7081 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7082 (xg_scroll_callback): New function.
7083 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7084 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7085 for USE_GTK.
7086 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7087 xg_show_scroll_bar for USE_GTK.
7088 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7089 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7090 (event_handler_gdk): New function for USE_GTK.
7091 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7092 (handle_one_xevent): Make sure widget is mapped before
7093 calling x_real_positions for USE_GTK.
7094 (XTread_socket): Add GTK event loop for USE_GTK.
7095 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7096 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7097 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7098 (x_iconify_frame): Add code for USE_GTK.
7099 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7100 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7101 is in gtkutil.c.
7102 (x_term_init): Add initialization for GTK.
7103 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7104
7105 * xmenu.c: Include gtkutil.h for USE_GTK.
7106 (Fx_popup_menu): Use current position if x and y is NIL.
7107 (single_menu_item, single_menu_item, Fx_popup_dialog):
7108 Check for USE_GTK.
7109 (popup_widget_loop): New function for USE_GTK.
7110 (x_activate_menubar): Add code for USE_GTK.
7111 (popup_activate_callback, popup_deactivate_callback)
7112 (menu_highlight_callback, menubar_selection_callback):
7113 Add USE_GTK versions.
7114 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7115 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7116 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7117 is in gtkutil.c.
7118 (popup_selection_callback): New version for USE_GTK.
7119 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7120 one USE_X_TOOLKIT version.
7121 (xmenu_show): Call create_and_show_popup_menu.
7122 (dialog_selection_callback): New version for USE_GTK.
7123 (create_and_show_dialog): New fuction, one USE_GTK version and
7124 one USE_X_TOOLKIT version.
7125 (xdialog_show): Call create_and_show_dialog.
7126
7127 * xfns.c: Include gtkutil for USE_GTK.
7128 (x_window_to_frame, x_any_window_to_frame)
7129 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7130 (x_top_window_to_frame): Add code for USE_GTK.
7131 (x_set_background_color): Call xg_set_background_color for GTK.
7132 (x_set_menu_bar_lines): Check for USE_GTK.
7133 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7134 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7135 (x_window): Call xg_create_frame_widgets for USE_GTK.
7136 (Fx_create_frame): Check for USE_GTK
7137 (Fx_file_dialog): New implementation for USE_GTK.
7138
7139 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7140 (update_menu_bar): Add check for USE_GTK.
7141 (update_tool_bar): Add check for USE_GTK and external tool bar.
7142 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7143 (redisplay_internal): Add check for USE_GTK and popup_activated.
7144 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7145 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7146 (display_menu_bar): Add check for USE_GTK
7147
7148 * lisp.h: Declare Vx_resource_name extern.
7149
7150 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7151 for USE_GTK.
7152 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7153
7154 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7155 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7156 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7157
7158 * fileio.c (Fread_file_name): Add check for USE_GTK.
7159
7160 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7161 Add check for USE_GTK.
7162
7163 * config.in: Added HAVE_GTK
7164
7165 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7166
71672003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7168
7169 * charset.h (Funibyte_char_to_multibyte): Export.
7170
71712003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7172
7173 * xmenu.c (mouse_position_for_popup): New function.
7174 (Fx_popup_menu): Call mouse_position_for_popup for X and
7175 mouse_position_hook for others.
7176
71772003-01-17 Kim F. Storm <storm@cua.dk>
7178
7179 * editfns.c (Finsert): Mention `string-make-multibyte' and
7180 `string-as-multibyte' in doc string.
7181
71822003-01-17 Kenichi Handa <handa@m17n.org>
7183
7184 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7185
7186 * editfns.c (Fformat): Convert an unibyte char argument that is
7187 formatted by "%c" to multibyte if the total result must be a
7188 multibyte string.
7189
71902003-01-16 Kim F. Storm <storm@cua.dk>
7191
7192 * process.c (set-process-filter): Document unibyte/multibyte-ness
7193 of string argument.
7194
71952003-01-16 Kenichi Handa <handa@m17n.org>
7196
7197 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7198
7199 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7200 (re_search_2): Likewise.
7201
72022003-01-15 Kenichi Handa <handa@m17n.org>
7203
7204 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7205 buffer is unibyte.
7206
72072003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7208
7209 * fns.c (Fsubstring): Clarify doc string.
7210
7211 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7212 (Fprevious_char_property_change)
7213 (Fnext_single_char_property_change)
7214 (Fprevious_single_char_property_change, Fnext_property_change)
7215 (Fnext_single_property_change, Fprevious_property_change)
7216 (Fprevious_single_property_change, Fadd_text_properties)
7217 (Fput_text_property, Fset_text_properties)
7218 (Fremove_text_properties, Fremove_list_of_text_properties)
7219 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7220
72212003-01-14 Kim F. Storm <storm@cua.dk>
7222
7223 * process.h (struct Lisp_Process): New member plist replaces old
7224 member private_vars. All uses changed.
7225
7226 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7227 (QCplist): Rename from QCvars. Change all uses.
7228 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7229 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7230 (syms_of_process): Intern, staticpro, defsubr these.
7231 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7232
72332003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7234
7235 * m/delta.h: Remove (obsolete).
7236
72372003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7238
7239 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7240 behaviour in front of symlinks.
7241 (Fdelete_file): Raise an error on directories.
7242
72432003-01-13 Dave Love <fx@gnu.org>
7244
7245 * fns.c (Freverse): Use QUIT.
7246
72472003-01-13 Richard M. Stallman <rms@gnu.org>
7248
7249 * minibuf.c (minibuffer_completion_contents):
7250 Error if point is inside prompt.
7251
7252 * keyboard.c (command_loop_1): Don't redisplay directly
7253 if there's a post-command-hook.
7254
7255 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7256 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7257
72582003-01-12 Kim F. Storm <storm@cua.dk>
7259
7260 * process.h (struct Lisp_Process): New member private_vars.
7261
7262 * process.c (QCvars): New variable.
7263 (syms_of_process): Intern and staticpro it.
7264 (Fset_process_contact): Removed function.
7265 (Fprocess_variable, Fset_process_variable): New functions.
7266 (syms_of_process): Defsubr them.
7267 (Fstart_process): Initialize private_vars plist to nil.
7268 (Fmake_network_process): New arg :vars to setup the private
7269 variables for new network process.
7270 (server_accept_connection): Copy server's private variables to
7271 client process.
7272
7273 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7274 crashes). Code rewritten and simplified. Now directly aligns the
7275 pointer and recalculates pure_bytes_used, rather than aligning the
7276 size and adjusting the pointer.
7277
72782003-01-11 Kim F. Storm <storm@cua.dk>
7279
7280 * process.c (Fset_process_contact): New function.
7281 (syms_of_process): defsubr it.
7282 (make-network-process): Update doc.
7283
72842003-01-10 Andreas Schwab <schwab@suse.de>
7285
7286 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7287 Reported by Berthold Gunreben <b.gunreben@web.de>.
7288
72892003-01-10 Dave Love <fx@gnu.org>
7290
7291 * composite.c (syms_of_composite): Make composition_hash_table weak.
7292
72932003-01-09 Kim F. Storm <storm@cua.dk>
7294
7295 * process.c (Fmake_network_process): Convert new port number
7296 to host byte order for `:service t' case. From Mario Lang.
7297
72982003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7299
7300 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7301 instead of XtAppProcessEvent.
7302
7303 * xterm.c (handle_one_xevent): New function.
7304 (x_dispatch_event): New function.
7305 (XTread_socket): Call handle_one_xevent.
7306
7307 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7308
7309 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7310 call XQueryPointer to get coordinates.
7311 (popup_get_selection): Do not set popup_activated_flag to zero,
7312 let popup_deactivate_callback do that. Needed for Motif.
7313 Call x_dispatch_event instead of XtDispatchEvent.
7314 (xmenu_show): Calculate root coordinate from frame top/left position.
7315
73162003-01-08 Kim F. Storm <storm@cua.dk>
7317
7318 * process.c (server_accept_connection): Fix recording of new
7319 connection's local address in :local property of contact info.
7320 (Fmake_network_process): Record local network address for new
7321 client processes in :local property of contact info.
7322 (format-network-address): Add arg OMIT-PORT. Change callers.
7323
73242003-01-07 Dave Love <fx@gnu.org>
7325
7326 * Makefile.in (fns.o): Depend on coding.h.
7327
73282003-01-07 Markus Rost <rost@math.ohio-state.edu>
7329
7330 * minibuf.c (Fread_variable): Doc fix.
7331
7332 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7333 use the same test as for custom-variable-p.
7334
73352003-01-05 Richard M. Stallman <rms@gnu.org>
7336
7337 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7338 Count LAST_LINE_MISFIT in scroll margin for end of window.
7339 Move label too_near_end before setting SCROLL_MARGIN_POS.
7340 Set LAST_LINE_MISFIT before jumping there.
7341
7342 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7343 scroll_conservatively case. If scrolling that much doesn't change
7344 STARTP, move it down one line.
7345
7346 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7347 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7348
7349 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7350 selected frame.
7351
7352 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7353 (syms_of_keymap): staticpro them.
7354 (Fapropos_internal): Initialize them and clear them out.
7355 Don't GCPRO them.
7356
7357 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7358 Doc fixes.
7359
7360 * lisp.h: New misc type Lisp_Save_Value.
7361 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7362 (XSAVE_VALUE): New macro.
7363 (struct Lisp_Save_Value): New data type.
7364 (union Lisp_Misc): Add u_save_value alternative.
7365 (make_save_value): Declared.
7366
7367 * alloc.c (make_save_value): New function.
7368
7369 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7370 (x_catch_errors_unwind): Call XSync.
7371
73722003-01-01 Richard M. Stallman <rms@gnu.org>
7373
7374 * window.c (window_scroll_pixel_based): Partially undo last change.
7375
7376 * keyboard.c (command_loop_1): Call adjust_point_for_property
7377 in direct action cases for Qforward_char and Qbackward_char.
7378 Set already_adjusted so it won't be done twice.
7379
73802002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7381
7382 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7383 type definition of size_t.
7384
73852003-01-02 Steven Tamm <steventamm@mac.com>
7386
7387 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7388 distinguish Carbon GUI builds from X11 builds on darwin.
7389
73902002-12-30 Steven Tamm <steventamm@mac.com>
7391
7392 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7393 to default to t.
7394
73952002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7396
7397 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7398
73992002-12-28 Steven Tamm <steventamm@mac.com>
7400
7401 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7402 allow building in a different directory than source. Uses some
7403 GNU Make extensions, but there is no other make on Mac OS X.
7404
74052002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
7406
7407 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7408 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7409 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7410 (Fstring_to_number): Mention the returned value in the doc strings.
7411
74122002-12-23 Richard M. Stallman <rms@gnu.org>
7413
7414 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7415 <scroll-down-aggressively>: Doc fix.
7416
7417 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7418 string as pane name, if there is one.
7419 (set_frame_menubar): Save menu_items_n_panes from each call to
7420 parse_single_submenu and use it when calling digest_single_submenu.
7421
7422 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7423 Don't try to make last line fully visible if it is past end of window.
7424
74252002-12-22 Steven Tamm <steventamm@mac.com>
7426
7427 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7428 (mac_menu_show): Add support for hierarchical popup menus.
7429 (add_menu_item): Remove indentation support.
7430 (fill_submenu, fill_menu): Create hierarchical menus
7431 instead of using indentation.
7432
74332002-12-22 Richard M. Stallman <rms@gnu.org>
7434
7435 * xdisp.c (try_cursor_movement): Don't call try_window here.
7436 (redisplay_window): Never redisplay minibuffer when inactive.
7437
7438 * window.c (select_window_1): Undo 9/21 change.
7439
74402002-12-22 Steven Tamm <steventamm@mac.com>
7441
7442 * macterm.c (XTread_socket): Call KeyTranslate for control and
7443 meta to deal correctly shifted non-alpha characters, like C-S-5
7444 being treated like C-%. Does not look for shift key to deal
7445 with masking off control-key with mac-reverse-ctrl-meta.
7446
74472002-12-21 Richard M. Stallman <rms@gnu.org>
7448
7449 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7450 If it is non-nil, run timers. Use an unwind-protect to requeue
7451 the events that were read ahead.
7452 (popup_get_selection_unwind): New subroutine.
7453 (popup_get_selection_queue): File-scope variable now holds that queue.
7454 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7455 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7456 Use an unwind-protect to pop down the dialog box.
7457 (xdialog_show_unwind): New subroutine implements that.
7458
7459 * xdisp.c (row_containing_pos): Change exit test using last_y.
7460 (try_window_id): Abort if row_containing_pos returns null.
7461
7462 * lread.c (load_error_handler): New function.
7463 (Fload): Handle errors in Fsubstitute_in_file_name.
7464 Don't expect Fsignal to return.
7465
7466 * eval.c: Errors and throws work right with interrupt blocking.
7467 (struct catchtag): New elt interrupt_input_blocked.
7468 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7469 (internal_catch, Fcondition_case, internal_condition_case)
7470 (internal_condition_case_1, internal_condition_case_2): Save it.
7471 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
7472
7473 * editfns.c (Fformat): Add parens.
7474
7475 * dired.c (file_name_completion): Fix that change.
7476 Delete special quit-handling code; just use QUIT.
7477
74782002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
7479
7480 * dired.c (file_name_completion): Close directory on error
7481 just as in directory_files_internal.
7482
74832002-12-19 David Kastrup <David.Kastrup@t-online.de>
7484
7485 * window.c (Fset_window_configuration): Set old_point to correct
7486 value when new_current_buffer == current_buffer.
7487
74882002-12-17 Ben Key <bkey1@tampabay.rr.com>
7489
7490 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7491 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7492 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7493
7494 These changes were in part based upon suggestions made by Peter
7495 'Luna' Runestig [peter@runestig.com].
7496
7497 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7498 g_b_init_get_token_information, g_b_init_lookup_account_sid,
7499 g_b_init_get_sid_identifier_authority ): Add several static
7500 global variables.
7501
7502 * w32.c (globals_of_w32): New function. Used to initialize those
7503 global variables that must always be initialized on startup even
7504 when the global variable initialized is non zero. Its primary
7505 purpose at this time is to set the global variables
7506 g_b_init_is_windows_9x, g_b_init_open_process_token,
7507 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7508 g_b_init_get_sid_identifier_authority to 0 on startup.
7509 Called from main.
7510
7511 * w32.c (is_windows_9x): Perform initialization only if
7512 g_b_init_is_windows_9x is equal to 0. On initialization set
7513 g_b_init_is_windows_9x equal to 1.
7514
7515 * w32.c (open_process_token): Perform initialization only if
7516 g_b_init_open_process_token is equal to 0. On initialization set
7517 g_b_init_open_process_token equal to 1.
7518
7519 * w32.c (get_token_information): Perform initialization only if
7520 g_b_init_get_token_information is equal to 0. On initialization
7521 set g_b_init_get_token_information equal to 1.
7522
7523 * w32.c (lookup_account_sid): Perform initialization only if
7524 g_b_init_lookup_account_sid is equal to 0. On initialization
7525 set g_b_init_lookup_account_sid equal to 1.
7526
7527 * w32.c (get_sid_identifier_authority): Perform initialization
7528 only if g_b_init_get_sid_identifier_authority is equal to 0.
7529 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
7530
7531 * w32fns.c (globals_of_w32fns): New function. Used to initialize
7532 those global variables that must always be initialized on startup
7533 even when the global variable initialized is non zero.
7534 Its primary purpose at this time is to initialize the global variable
7535 track_mouse_event_fn.
7536
7537 * w32fns.c (w32_wnd_proc): Remove initialization of
7538 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
7539
7540 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
7541
7542 * w32menu.c (globals_of_w32menu): New function. Used to
7543 initialize those global variables that must always be initialized
7544 on startup even when the global variable initialized is non zero.
7545 Its primary purpose at this time is to initialize the global
7546 variables get_menu_item_info and set_menu_item_info.
7547
7548 * w32menu.c (initialize_frame_menubar): Remove initialization of
7549 get_menu_item_info and set_menu_item_info.
7550
7551 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
7552
7553 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7554 Declare them.
7555
7556 * emacs.c (main): Call globals_of_w32 prior to calling
7557 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7558 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7559 is defined.
7560
7561 * w32term.c (x_update_window_begin): Fix Windows API error
7562 detected by BoundsChecker. Test to determine if
7563 w32_system_caret_hwnd is NULL prior to attempting to use
7564 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
7565
7566 * w32term.c (x_update_window_end): Fix Windows API error
7567 detected by BoundsChecker. Test to determine if
7568 w32_system_caret_hwnd is NULL prior to attempting to use
7569 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
7570
75712002-12-17 Kenichi Handa <handa@m17n.org>
7572
7573 * coding.c (coding_system_require_warning): New variable.
7574 (syms_of_coding): DEFVAR it.
7575
7576 * coding.h (coding_system_require_warning): Extern it.
7577
7578 * fileio.c (choose_write_coding_system): Even if
7579 Vcoding_system_for_write is non-nil, if
7580 coding_system_require_warning is nonzero, call
7581 Vselect_safe_coding_system_function.
7582
75832002-12-17 Markus Rost <rost@math.ohio-state.edu>
7584
7585 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
7586 (lisp): Add font-core.
7587
75882002-12-13 Stefan Monnier <monnier@cs.yale.edu>
7589
7590 * textprop.c (text_read_only): New arg `propval'.
7591 (get_char_property_and_overlay): Remove unused var `next_overlay'.
7592 (verify_interval_modification): Use text_read_only's new arg.
7593
75942002-12-13 Kenichi Handa <handa@m17n.org>
7595
7596 * coding.c (Funencodable_char_position): Set pend correctly.
7597
75982002-12-12 Jason Rumney <jasonr@gnu.org>
7599
7600 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
7601 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
7602 Be more careful about when help_events are generated.
7603
76042002-12-12 Steven Tamm <steventamm@mac.com>
7605
7606 * macterm.c (mac_check_for_quit_char): Correctly set the
7607 modifiers of the event to 0.
7608 * mac.c (sys_select): Duplicate rfds before calling select to
7609 ensure that rfds survive the while loop.
7610
76112002-12-11 Kim F. Storm <storm@cua.dk>
7612
7613 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
7614 row_containing_pos returned NULL.
7615
76162002-12-10 Steven Tamm <steventamm@mac.com>
7617
7618 * mac.c (sys_read): Fix sys_read to not call select if IO is
7619 non-blocking.
7620 (sys_select): Fix sys_select to not use a timeout larger than
7621 the one given.
7622
76232002-12-10 Juanma Barranquero <lektu@terra.es>
7624
7625 * editfns.c (Fformat): Use alloca, not _alloca.
7626
76272002-12-09 Richard M. Stallman <rms@gnu.org>
7628
7629 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
7630 as the last thing.
7631
76322002-12-09 Dave Love <fx@gnu.org>
7633
7634 * s/sol2-8.h: Removed. (Not necessary.)
7635
76362002-12-09 Matthew Swift <swift@alum.mit.edu>
7637
7638 * editfns.c (Fformat): Handle precision in string conversion
7639 specifiers like libc functions do (ie, print at most that many
7640 characters).
7641
76422002-12-08 Richard M. Stallman <rms@gnu.org>
7643
7644 * xdisp.c (row_containing_pos): Check more carefully
7645 whether charpos is really in the row before returning it.
7646
76472002-12-07 Steven Tamm <steventamm@mac.com>
7648
7649 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
7650
7651 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
7652 each stack frame. This may change as it could be time consuming.
7653
7654 * macterm.c (mac_check_for_quit_char, quit_char_comp)
7655 (init_quit_char_handler, mac_determine_quit_char_modifiers)
7656 (mac_initialize): Add code to check for pressing of quit_char
7657 in the OS event queue.
7658
7659 * mac.c (sys_select): Call mac_check_for_quit_char every second
7660 while blocking on select.
7661
7662 * mac.c (sys_read): Use sys_select to test for input first
7663 before calling read, to allow C-g to break.
7664
76652002-12-07 Richard M. Stallman <rms@gnu.org>
7666
7667 * minibuf.c (Fcompleting_read): Doc fix.
7668
7669 * lread.c (syms_of_lread) <load-history>: Doc fix.
7670
7671 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
7672
7673 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
7674 autoload.
7675
7676 * data.c (Fdefalias): Record in load-history redefining an autoload.
7677
7678 * alloca.c: Undo ifdef change accidentally made on 12-04.
7679
76802002-12-06 Francesco Potorti` <pot@gnu.org>
7681
7682 * xfns.c (png_load): Avoid double gamma correction for PNG images.
7683
76842002-12-04 Richard M. Stallman <rms@gnu.org>
7685
7686 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
7687
7688 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
7689
7690 * alloca.c: Don't use #error.
7691
76922002-12-03 Dave Love <fx@gnu.org>
7693
7694 * buffer.c (Qucs_set_table_for_input): New.
7695 (Fget_buffer_create): Use it.
7696 (Qset_buffer_major_mode_hook): Deleted.
7697 (Fset_buffer_major_mode): Revert previous change.
7698 (init_buffer_once): Intern ucs-set-table-for-input.
7699 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
7700 Add &Qucs_set_table_for_input.
7701
77022002-12-03 Andreas Schwab <schwab@suse.de>
7703
7704 * callint.c (Fcall_interactively): Use next_event only if less
7705 than key_count.
7706
77072002-12-02 Andrew Choi <akochoi@shaw.ca>
7708
7709 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
7710 names to 255 characters.
7711
7712 * macterm.c (XTread_socket): If all frames have been collapsed,
7713 expand the first one before handling drag-and-drop events.
7714
7715 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
7716 which is detected by autoconf.
7717
77182002-12-01 Steven Tamm <steventamm@mac.com>
7719
7720 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
7721 offset in two hints table to allow prebinding to be redone and
7722 allow the executable to be stripped.
7723
77242002-11-29 Dave Love <fx@gnu.org>
7725
7726 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
7727 already provided.
7728
77292002-11-29 Richard M. Stallman <rms@gnu.org>
7730
7731 * xdisp.c (start_display): Check more intelligently for
7732 whether the line is continued.
7733 (move_it_vertically_backward): Clear it->continuation_lines_width.
7734
77352002-11-28 Dave Love <fx@gnu.org>
7736
7737 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
7738 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
7739
77402002-11-27 Steven Tamm <steventamm@mac.com>
7741
7742 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
7743 more descriptive error output from lread.c:Fload upon most require
7744 cycles during boostrapping.
7745
77462002-11-27 Jason Rumney <jasonr@gnu.org>
7747
7748 * fileio.c (Finsert_file_contents): Give a more appropriate error
7749 for files bigger than 2Gb when off_t is 32 bit.
7750
7751 * dired.c (Ffile_attributes): Don't return negative file sizes for
7752 files bigger than 2Gb when off_t is 32 bit.
7753
77542002-11-27 Dave Love <fx@gnu.org>
7755
7756 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7757
7758 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
7759 Test GETPGRP_VOID instead.
7760 [BSD_TERMIOS]: Remove definitions (never used).
7761
7762 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
7763 Don't define.
7764 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7765
7766 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
7767
77682002-11-25 Jason Rumney <jasonr@gnu.org>
7769
7770 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
7771 supported.
7772
77732002-11-25 Dave Love <fx@gnu.org>
7774
7775 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
7776
7777 * Makefile.in (TEMACS_LDFLAGS): Update last change.
7778
77792002-11-25 Andreas Schwab <schwab@suse.de>
7780
7781 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
7782
77832002-11-24 Steven Tamm <steventamm@mac.com>
7784
7785 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
7786 determine the size of pointers alloced in unexed space instead
7787 of using possibly invalid emacs_zone pointers. This fixes the
7788 binary incompatibility problems caused by updates to libSystem.B.
7789
77902002-11-24 Richard M. Stallman <rms@gnu.org>
7791
7792 * search.c (Fstring_match): Doc fix.
7793
7794 * callint.c (Fcall_interactively): If a command fails because
7795 `*' detects a read-only buffer, but RECORD_FLAG is set,
7796 record it anyway if the args don't actually do tty input.
7797
77982002-11-22 Dave Love <fx@gnu.org>
7799
7800 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
7801
7802 * keyboard.c (interrupt_signal): Provide forward declaration.
7803 (kbd_buffer_store_event): Don't declare interrupt_signal.
7804
7805 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
7806
78072002-11-21 Richard M. Stallman <rms@gnu.org>
7808
7809 * eval.c (interactive_p): Skip any number of bytecode
7810 and special form frames, in any order.
7811
78122002-11-20 Jason Rumney <jasonr@gnu.org>
7813
7814 * w32fns.c (convert_mono_to_color_image): New function.
7815 (xbm_load, xbm_load_image): Use it when foreground or background
7816 is explicitly set.
7817
78182002-11-19 Dave Love <fx@gnu.org>
7819
7820 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
7821
78222002-11-18 Jason Rumney <jasonr@gnu.org>
7823
7824 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
7825 (XPutPixel): Swap blue and red.
7826 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
7827 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
7828 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
7829 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
7830
78312002-11-18 Dave Love <fx@gnu.org>
7832
7833 * m/orion105.h (HAVE_ALLOCA): Don't define.
7834
7835 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
7836
7837 * m/intel386.h: Don't include alloca.h or define alloca.
7838
7839 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
7840 malloc, realloc, calloc.
7841
7842 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
7843 (bcmp): Don't define.
7844
7845 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
7846
7847 * m/amdahl.h: Don't define LIB_STANDARD.
7848
7849 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
7850
7851 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
7852
7853 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
7854 Don't include alloca.h.
7855
7856 * s/aix3-2.h (HAVE_FSYNC): Don't define.
7857
7858 * regex.c (_GNU_SOURCE): Don't define.
7859
7860 * process.c (_GNU_SOURCE): Don't define.
7861
7862 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
7863
78642002-11-18 Markus Rost <rost@math.ohio-state.edu>
7865
7866 * s/sol2-8.h: Include sol2-6.h.
7867
78682002-11-18 Miles Bader <miles@gnu.org>
7869
7870 * dispextern.h (struct face): Add `overstrike' field.
7871 * xterm.c (x_draw_glyph_string_foreground)
7872 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7873 * xfaces.c (load_face_font): Set `face->overstrike' based on
7874 result from choose_face_font.
7875 (best_matching_font, choose_face_font): Add `needs_overstrike'
7876 argument, and use it to return whether overstriking is desirable
7877 for this face/font combo.
7878 (set_font_frame_param: Pass new argument to choose_face_font.
7879
78802002-11-17 Ben Key <BKey1@tampabay.rr.com>
7881
7882 This change is my fix for the following entry in etc/PROBLEMS:
7883 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7884 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7885
7886 * w32.c: Added wrapper functions around the win32 API functions
7887 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
7888 GetSidIdentifierAuthority. These wrapper functions serve two
7889 purposes:
7890 1. They ensure that the wrapped function can never be called
7891 when Emacs is running on an operating system on which they are
7892 not supported (Microsoft Windows 95 / 98 / ME).
7893 2. They call the wrapped functions via function pointers rather
7894 than calling them directly. This avoids taking advantage of the
7895 undocumented fact that although these functions are not supported
7896 in the 9x branch of Microsoft Windows, the functions do exist in
7897 the version of advapi32.dll that is found in the 9x branch of
7898 Microsoft Windows.
7899
7900 * w32.c (init_user_info): Replace the calls to the win32 API
7901 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
7902 and GetSidIdentifierAuthority with calls to the newly added
7903 wrapper functions.
7904
7905 * w32.h: Added extern declarations for the following functions:
7906 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
7907 syms_of_w32menu, and void syms_of_fontset.
7908
7909 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
7910 function pointer track_mouse_event_fn in the handler for the
7911 WM_SETFOCUS message.
7912
7913 * w32menu.c (initialize_frame_menubar): Add code to
7914 reinitialize the function pointers set_menu_item_info and
7915 get_menu_item_info.
7916
79172002-11-17 Ben Key <BKey1@tampabay.rr.com>
7918
7919 * sound.c: Added a partial implementation of play-sound-internal
7920 for Microsoft Windows. Added various #ifdef / #else / #endif
7921 code blocks to separate the code that will compile under
7922 Microsoft Windows from the code that is specific to Gnu/Linux.
7923 Moved several blocks of code around to make this separation of code
7924 into Windows compatible and Gnu/Linux compatible code blocks easier.
7925
7926 * makefile.w32-in: Include sound.c and link with WinMM.lib.
7927
7928 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
7929 added support for play-sound-internal under Windows would be
7930 included in the build of Emacs.
7931
79322002-11-16 Jason Rumney <jasonr@gnu.org>
7933
7934 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
7935
7936 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
7937
79382002-11-15 Stefan Monnier <monnier@cs.yale.edu>
7939
7940 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
7941 (adjust_point_for_property): Move out of display and invisible even if
7942 we were already inside before (in case a property was added while
7943 we weren't looking). Be more careful when handling invisible props.
7944 Skip invisible text as if it really wasn't there at all.
7945
79462002-11-15 Jason Rumney <jasonr@gnu.org>
7947
7948 * w32term.c (x_draw_image_foreground)
7949 (w32_draw_image_foreground_1): Use standard copy and invert
7950 operations to draw images.
7951
7952 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
7953 depth of 1.
7954 (xbm_read_bitmap_data): Invert bits as xbm is read in.
7955 (XPutPixel): Don't invert bits here.
7956
79572002-11-15 Jason Rumney <jasonr@gnu.org>
7958
7959 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
7960 (w32_draw_image_foreground_1): Handle image masks.
7961 (x_draw_image_glyph_string): Don't BitBlt transparently.
7962
7963 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
7964 (x_from_xcolors): Adjust RGB values for W32.
7965 (image_background, image_background_transparent)
7966 (postprocess_image, x_to_xcolors, x_disable_image)
7967 (x_build_heuristic_mask): Adapt for W32 and enable.
7968 (x_create_x_image_and_pixmap): Mark images with palettes as such.
7969 (xbm_load): Remove unused variable.
7970
79712002-11-14 Richard M. Stallman <rms@gnu.org>
7972
7973 * buffer.c (syms_of_buffer): Doc fix.
7974
79752002-11-14 Dave Love <fx@gnu.org>
7976
7977 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
7978
7979 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
7980 * xmenu.c (unuse_menu_items, digest_single_submenu):
7981 * xfns.c (x_put_x_image):
7982 * xdisp.c (message2_nolog, set_message):
7983 * undo.c (record_point):
7984 * terminfo.c (tparam):
7985 * syntax.c (scan_sexps_forward):
7986 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
7987 * composite.c (update_compositions):
7988 * cm.c (calccost, cmgoto):
7989 * charset.c (c_string_width): Declare all args (per C99).
7990
7991 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
7992
7993 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
7994 Don't declare.
7995
7996 * emacs.c (main) [!VMS]: Avoid third arg.
7997
7998 * fns.c (Fcopy_sequence): Doc fix.
7999 (Fmap_char_table): Cast `call2'.
8000
80012002-11-14 Francesco Potorti` <pot@gnu.org>
8002
8003 * s/sol2-8.h: New file.
8004
80052002-11-14 Kim F. Storm <storm@cua.dk>
8006
8007 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8008 dependency on `risky-local-variable' and the :propertize form.
8009
80102002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8011
8012 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8013
8014 * syntax.c (scan_sexps_forward): Undo last patch.
8015 Use a more obvious fix: check eob before updating the syntax table.
8016
80172002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8018
8019 * syntax.c (scan_sexps_forward): Update syntax table before reading
8020 a char rather than after so we don't update the table past eob.
8021
80222002-11-09 Dave Love <fx@gnu.org>
8023
8024 * buffer.c (Fset_buffer_major_mode): Fix last change.
8025
8026 * regex.c (regexec): Fix pmatch declaration.
8027
8028 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8029
8030 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8031 to self-inserting characters.
8032 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8033
8034 * coding.c (Vtranslation_table_for_input): New.
8035 (syms_of_coding): DEFVAR it.
8036
80372002-11-08 Juanma Barranquero <lektu@terra.es>
8038
8039 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8040 window.
8041
80422002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8043
8044 * process.c (Fformat_network_address): Remove unused locals p,
8045 cp, and i.
8046
80472002-11-06 Dave Love <fx@gnu.org>
8048
8049 * buffer.c (Qset_buffer_major_mode_hook): New.
8050 (Fset_buffer_major_mode): Use it.
8051
80522002-11-06 Richard M. Stallman <rms@gnu.org>
8053
8054 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8055 and stop_polling.
8056
8057 * process.c (wait_reading_process_input):
8058 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8059 Avoid initialization for auto Lisp_Object var.
8060
8061 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8062
8063 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8064
80652002-11-05 Richard M. Stallman <rms@gnu.org>
8066
8067 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8068
8069 * callint.c (Fcall_interactively): New local filter_specs.
8070 (Fcall_interactively): Check for progn as well as let.
8071 Add a gcpro.
8072 (Qprogn): New variable.
8073 (syms_of_callint): Staticpro and init Qprogn.
8074
80752002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8076
8077 * lread.c (Feval_buffer): Doc fix.
8078
80792002-11-04 Dave Love <fx@gnu.org>
8080
8081 * keyboard.c (read_char): Always translate iff
8082 Vkeyboard_translate_table is a char table and c is valid.
8083
8084 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8085 and fix C types.
8086
80872002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8088
8089 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8090
8091 * editfns.c (get_pos_property): Don't hardcode Qfield.
8092
8093 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8094 overlays. Also handle `invisible' prop.
8095
80962002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8097
8098 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8099 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8100
81012002-11-01 Andreas Schwab <schwab@suse.de>
8102
8103 * editfns.c (Fmessage): Revert last change to properly handle %%.
8104
81052002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8106
8107 * xmenu.c (unuse_menu_items): New fun.
8108 (menu_items_inuse): New var.
8109 (syms_of_xmenu): Initialize it.
8110 (init_menu_items): Use it to detect re-entrance.
8111 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8112 (Fx_popup_menu): Remove spurious XSETFRAME.
8113
8114 * editfns.c (find_field): Make an exception for nil fields.
8115
81162002-11-01 Dave Love <fx@gnu.org>
8117
8118 * m/gec63.h: Deleted.
8119
81202002-10-31 Dave Love <fx@gnu.org>
8121
8122 * xterm.c (XTread_socket): Fix last change.
8123 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8124
81252002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8126
8127 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8128
81292002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8130
8131 * editfns.c (overlays_around, get_pos_property): New funs.
8132 (find_field): Use them.
8133 Also be careful not to modify POS before its last use.
8134 (Fmessage): Don't Fformat if there's nothing to format.
8135
81362002-10-30 Dave Love <fx@gnu.org>
8137
8138 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8139 [HAVE_PTY_H]; Include pty.h.
8140
8141 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8142
8143 * xterm.c (Qeql): Declare.
8144 (Vx_keysym_table): New.
8145 (syms_of_xterm): Initialize it.
8146 (XTread_socket): Use it. Deal with ASCII keysyms.
8147 (XSetIMValues) [HAVE_X11R6]: Prototype.
8148
8149 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8150 (lispy_kana_keys): Comment out.
8151 (make_lispy_event) [XK_kana_A]: Comment out.
8152 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8153 Fix sprintf call.
8154
8155 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8156 regexp.h change).
8157 (TERMINFO, LIBS_TERMCAP): Define.
8158
8159 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8160 (bcmp): Define conditional on HAVE_BCMP.
8161 (NO_SIOCTL_H): Don't define.
8162 (TIOCSIGSEND): Don't make conditional on IRIX6.
8163
8164 * s/sol2-5.h: Don't include strings.h.
8165 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8166
8167 * s/irix6-0.h (IRIX6): Don't define.
8168 (bcopy, bcmp, bzero): Don't undef.
8169
8170 * s/irix6-5.h: Don't include strings.h.
8171 (IRIX6): Don't define.
8172 (bcopy, bcmp, bzero): Don't undef.
8173
8174 * syntax.c (Fforward_comment): Doc fix.
8175
81762002-10-29 Kim F. Storm <storm@cua.dk>
8177
8178 * process.c (Fsignal_process): Allow PROCESS to be specified by
8179 name in addition to pid (as integer or string).
8180
81812002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8182
8183 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8184 environments.
8185
81862002-10-27 Kim F. Storm <storm@cua.dk>
8187
8188 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8189
8190 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8191
8192 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8193
8194 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8195
81962002-10-26 Richard M. Stallman <rms@gnu.org>
8197
8198 * editfns.c (Fformat): Detect invalid format letters for floats.
8199
82002002-10-25 Kenichi Handa <handa@m17n.org>
8201
8202 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8203 (x_set_title): Likewise.
8204
82052002-10-25 Juanma Barranquero <lektu@terra.es>
8206
8207 * macgui.h:
8208 * w32gui.h: Remove definition of XColor.
8209
8210 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8211
82122002-10-24 Kim F. Storm <storm@cua.dk>
8213
8214 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8215 Callers changed (supply dummy arg).
8216
8217 * lisp.h (get_window_cursor_type): Update prototype.
8218
8219 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8220 get_window_cursor_type to track system caret.
8221
82222002-10-24 Kim F. Storm <storm@cua.dk>
8223
8224 * process.c (Fformat_network_address): New function.
8225 (syms_of_process): Defsubr it.
8226 (list_processes_1): Use it to format :local/:remote address if
8227 service/host is not set; before Emacs would crash in that case.
8228 (Fmake_network_process): Don't use Ffind_operation_coding_system
8229 to setup coding system if host or service is not set.
8230
82312002-10-23 Juanma Barranquero <lektu@terra.es>
8232
8233 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8234
8235 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8236 COLORREF.
8237
8238 * macgui.h:
8239 * w32gui.h: Add definition of XColor.
8240
8241 * macfns.c:
8242 * w32fns.c:
8243 * xfaces.c: Remove definition of XColor.
8244
82452002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8246
8247 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8248
8249 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8250 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8251 window if it is dedicated.
8252 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8253 (Vspecial_display_function): Update docstring.
8254
8255 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8256 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8257 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8258
82592002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8260
8261 * casefiddle.c (casify_region): Don't treat a prefix char as part
8262 of a word when at the beginning.
8263
82642002-10-17 Juanma Barranquero <lektu@terra.es>
8265
8266 * lread.c (syms_of_lread): Fix typos.
8267
82682002-10-17 Dave Love <fx@gnu.org>
8269
8270 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8271
82722002-10-16 Richard M. Stallman <rms@gnu.org>
8273
8274 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8275
82762002-10-14 Juanma Barranquero <lektu@terra.es>
8277
8278 * w16select.c (syms_of_win16select): Fix docstring for
8279 `selection-coding-system'.
8280
8281 * w32select.c (syms_of_w32select): Likewise.
8282
82832002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8284
8285 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8286 a backslash-quoted char.
8287 (scan_lists, scan_sexps_forward): Pacify the compiler.
8288
82892002-10-13 Richard M. Stallman <rms@gnu.org>
8290
8291 * window.c (window_scroll): Set immediate_quit.
8292
8293 * print.c (print): When backquote form is the car of a list,
8294 output in old style. Use old_backquote_output to output all
8295 comma forms inside it in old style too.
8296
8297 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8298
82992002-10-11 Markus Rost <rost@math.ohio-state.edu>
8300
8301 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8302 batch mode).
8303
8304 * lread.c (Fload): Doc fix (load-suffixes).
8305
83062002-10-10 Steven Tamm <steventamm@mac.com>
8307
8308 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8309 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8310 Also switch the default to Qnil from Qt.
8311
83122002-10-08 Kenichi Handa <handa@m17n.org>
8313
8314 * coding.c (code_convert_region): When we need more GAP for
8315 conversion, pay attention to the case that coding->produced is not
8316 greater than coding->consumed.
8317
83182002-10-07 Richard M. Stallman <rms@gnu.org>
8319
8320 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8321
83222002-10-06 Andrew Choi <akochoi@shaw.ca>
8323
8324 * macmenu.c (mac_menu_show): Add j to count menu items; match
8325 menu_item_selection to it to find selected item.
8326
83272002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8328
8329 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8330 cases. The correct fix is to pass ReparentNotify to Xt.
8331 The shell widget interprets ConfigureNotify differently depending
8332 on if it has been reparented or not.
8333
83342002-10-05 Markus Rost <rost@math.ohio-state.edu>
8335
8336 * editfns.c (Fformat_time_string): Doc fix.
8337
83382002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8339
8340 * fns.c (Flength): Doc fix.
8341
83422002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8343
8344 * keyboard.c (keyremap): New struct.
8345 (read_key_sequence): Use it: globally replace keytran_foo with
8346 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8347 keytran_next and fkey_next to just `next'.
8348
83492002-10-04 Steven Tamm <steventamm@mac.com>
8350
8351 * macterm.c (keycode_to_xkeysym_table): Change return to be
8352 treated like an X keysym.
8353
83542002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8355
8356 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8357 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8358 This is to also handle x/y changes that occur because of a resize.
8359
83602002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8361
8362 * frame.c (Vdelete_frame_functions): New variable.
8363 (syms_of_frame): Initialize and defvar it.
8364 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8365 it when frame's `tooltip' parameter is non-nil.
8366
8367 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8368
8369 * w32fns.c (x_create_tip_frame): Likewise.
8370
8371 * macfns.c (x_create_tip_frame): Likewise.
8372
83732002-09-30 Kenichi Handa <handa@m17n.org>
8374
8375 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8376 -1 before calling ccl_driver.
8377
8378 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8379 Only when it is non-nil, handle composition sequence.
8380 (setup_coding_system) <0>: Don't force composition handling.
8381
8382 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8383
83842002-09-29 Richard M. Stallman <rms@gnu.org>
8385
8386 * search.c (Freplace_match): Adjust match data for the substitution
8387 just made in the buffer.
8388
8389 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8390 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8391
83922002-09-27 Richard M. Stallman <rms@gnu.org>
8393
8394 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8395 (read_char): Use them. Do all exits thru the end of the function.
8396
83972002-09-27 Kenichi Handa <handa@etl.go.jp>
8398
8399 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8400 is nil.
8401
84022002-09-26 Richard M. Stallman <rms@gnu.org>
8403
8404 * regex.h (__restrict_arr): Don't define if already defined.
8405
8406 * coding.c (run_pre_post_conversion_on_str):
8407 Save and restore Vdeactivate_mark.
8408
84092002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8410
8411 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8412
84132002-09-26 Kenichi Handa <handa@etl.go.jp>
8414
8415 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8416 nonzero, try face's family at first. Otherwise try FAMILY at first.
8417 (choose_face_font): If C is a single byte char or latin-1, call
8418 try_font_list with PREFER_FACE_FAMILY 1.
8419
84202002-09-21 Richard M. Stallman <rms@gnu.org>
8421
8422 * window.c (select_window_1): Don't select frame.
8423 Set frame's selected window only when frame itself is selected.
8424 (Fselect_window): Doc fix.
8425
84262002-09-18 Kim F. Storm <storm@cua.dk>
8427
8428 * process.c (make-network-process): Doc fix (there is no
8429 network-server-log-function hook).
8430
84312002-09-18 Richard M. Stallman <rms@gnu.org>
8432
8433 * print.c (print): Clear out the unused parts of Vprint_number_table.
8434 (syms_of_print): Doc fix for `print-number-table'.
8435
8436 * unexelf.c (unexec): Undo previous change.
8437
84382002-09-17 Andreas Schwab <schwab@suse.de>
8439
8440 * m/alpha.h [LINUX]: Don't define DATA_START.
8441
84422002-09-16 Dave Love <fx@gnu.org>
8443
8444 * unexelf.c (unexec): Deal with .got, reinstating change from
8445 25-08-1999.
8446
84472002-09-13 Richard M. Stallman <rms@gnu.org>
8448
8449 * s/sol2-6.h (UNEXEC): Comment out definition.
8450
8451 * unexsol.c (unexec): Don't downcase first letter of error msg.
8452
8453 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8454
84552002-09-12 Markus Rost <rost@math.ohio-state.edu>
8456
8457 * unexsol.c: Include buffer.h, charset.h, coding.h.
8458
84592002-09-11 Richard M. Stallman <rms@gnu.org>
8460
8461 * unexsol.c: Don't use report_file_error; do it by hand
8462 using dlerror.
8463
8464 * process.c (wait_reading_process_input, both versions):
8465 Before calling turn_on_atimers, call stop_polling.
8466
8467 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8468
8469 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8470 we go to too_near_end, call clear_glyph_matrix.
8471 (redisplay_window): After make_cursor_line_fully_visible,
8472 call clear_glyph_matrix and bypass `goto done'.
8473
8474 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8475 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8476
84772002-09-10 Richard M. Stallman <rms@gnu.org>
8478
8479 * fileio.c (Fdo_auto_save): Catch error making directory.
8480 Only call push_message if we need to.
8481 At the same time, make an unwind-protect to pop it.
8482 Rename local message_p to old_message_p.
8483 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8484 (do_auto_save_unwind): Don't call pop_message.
8485
8486 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8487
8488 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8489
8490 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8491
8492 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8493
84942002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8495
8496 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8497 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8498 (re_match_2_internal): Be more careful with infinite loops.
8499
85002002-09-10 Kim F. Storm <storm@cua.dk>
8501
8502 * macros.c (end_kbd_macro): New function.
8503 (Fend_kbd_macro): Use it.
8504
8505 * macros.h (end_kbd_macro): Declare extern.
8506
8507 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8508 end and save it instead of discarding it.
8509
85102002-09-09 Markus Rost <rost@math.ohio-state.edu>
8511
8512 * s/sol2-6.h: Fix typo. Add comment.
8513
85142002-09-09 Richard M. Stallman <rms@gnu.org>
8515
8516 * regex.c (regnum_t): Use signed int, not unsigned int.
8517
8518 * s/sol2-6.h: New file.
8519
8520 * s/sol2-5.h (UNEXEC): Definition deleted.
8521
85222002-09-08 Kim F. Storm <storm@cua.dk>
8523
8524 * macros.c (executing_macro_index): Change type to EMACS_INT.
8525 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8526
8527 * macros.h (executing_macro_index): Change type to EMACS_INT.
8528
85292002-09-06 Richard M. Stallman <rms@gnu.org>
8530
8531 * casetab.c (set_case_table): Make canon table point to eqv table.
8532
85332002-09-06 Juanma Barranquero <lektu@terra.es>
8534
8535 * coding.c (syms_of_coding): Fix spacing.
8536
8537 * composite.c (Fcompose_region_internal)
8538 (Fcompose_string_internal): Likewise.
8539
8540 * data.c (Flsh): Likewise.
8541
8542 * fontset.c (Fset_fontset_font): Likewise.
8543
8544 * macfns.c (Fx_server_max_request_size): Likewise.
8545
8546 * w16select.c (syms_of_win16select): Likewise.
8547
8548 * w32select.c (syms_of_w32select): Likewise.
8549
8550 * xselect.c (syms_of_xselect): Likewise.
8551
85522002-09-05 Richard M. Stallman <rms@gnu.org>
8553
8554 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8555 call EXTEND_RANGE_TABLE and return a proper value.
8556 (set_image_of_range): Don't call set_image_of_range_1
8557 if no TRANSLATE or if range includes all of Latin-1.
8558 Only call it for the Latin-1 part of the range.
8559 For other cases, make two separate ranges,
8560 one for the original specified characters and one for
8561 their case-conversions.
8562
85632002-09-04 Richard M. Stallman <rms@gnu.org>
8564
8565 * s/sol2-5.h (UNEXEC): Use unexsol.o.
8566
8567 * window.c (displayed_window_lines): Correct for one-off bug
8568 in HEIGHT on non-window displays.
8569
8570 * regex.c (set_image_of_range_1): New function.
8571 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
8572 Return a value to indicate running out of memory.
8573 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
8574 (extend_range_table_work_area): New subroutine.
8575 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
8576 Different calling conventions, and used from set_image_of_range{,_1}.
8577 (IMMEDIATE_QUIT_CHECK): Definitions moved.
8578
85792002-09-04 Juanma Barranquero <lektu@terra.es>
8580
8581 * makefile.w32-in: All dependencies updated.
8582
85832002-09-01 Richard M. Stallman <rms@gnu.org>
8584
8585 * unexsol.c: New file.
8586
8587 * xfns.c (Qbox): Declare external, don't define.
8588
8589 * xdisp.c (redisplay_window) <force-start case>:
8590 If point is on semi-visible last line, reposition
8591 it at previous line.
8592
8593 * alloc.c (display_malloc_warning): Use display-warning.
8594 (malloc_warning_1): Function deleted.
8595
8596 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
8597
8598 * lread.c (read1): Handle #! by skipping the line.
8599
86002002-08-31 Richard M. Stallman <rms@gnu.org>
8601
8602 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
8603 Don't include LDFLAGS.
8604 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
8605
86062002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
8607
8608 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
8609 member of x_display_info unless we compile for some window system.
8610
86112002-08-31 Kim F. Storm <storm@cua.dk>
8612
8613 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
8614 (get_window_cursor_type): Don't use them.
8615 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
8616
86172002-08-30 Kenichi Handa <handa@etl.go.jp>
8618
8619 * xdisp.c (get_next_display_element): Fix previous change.
8620
86212002-08-30 Andrew Choi <akochoi@shaw.ca>
8622
8623 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
8624 (expose_window): Use it to fix the display of overlapping
8625 rows (merge code from xterm.c).
8626
8627 * macfns.c (Qbox): Add extern declaration.
8628
86292002-08-30 Juanma Barranquero <lektu@terra.es>
8630
8631 * w32fns.c (Qbox): Make extern.
8632 (syms_of_w32fns): Remove initialization of Qbox.
8633
86342002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
8635
8636 * xfns.c (Fx_open_connection): Fix error message.
8637
86382002-08-30 Kim F. Storm <storm@cua.dk>
8639
8640 The following changes consolidates the handling of the cursor
8641 type in xdisp.c, moving duplicate code and functionality from
8642 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
8643
8644 * frame.h (enum text_cursor_kinds): Consolidated here.
8645 Added DEFAULT_CURSOR value.
8646 (struct frame) <desired_cursor, cursor_width>
8647 <blink_off_cursor, blink_off_cursor_width>: New fields.
8648 Consolidated from output_x, output_w32 and output_mac structs.
8649 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8650 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
8651
8652 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
8653 Variables consolidated here.
8654 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
8655 (Vcursor_in_non_selected_windows): Renamed from
8656 cursor_in_non_selected_windows and changed to Lisp_Object.
8657 (syms_of_xdisp): Define and staticpro new and moved variables.
8658 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
8659 consolidated here. Recognize Qhollow setting.
8660 (set_frame_cursor_types): New function to set frame cursor types
8661 based on the frame parameters.
8662 (get_window_cursor_type): New function to calculate new cursor
8663 type and width for the specified window. Based on duplicated
8664 code consolidated here.
8665 Enhancements: cursor-in-non-selected-windows may be a cursor type,
8666 check buffer-local alternate-cursor-type and blink-cursor-alist
8667 before using built-in blink off methods.
8668
8669 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
8670
8671 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
8672 (get_specified_cursor_type, get_window_cursor_type)
8673 (set_frame_cursor_types): Added prototypes.
8674
8675 * macfns.c (x_specified_cursor_type): Removed.
8676 (x_set_cursor_type): Use set_frame_cursor_types.
8677 (Qbar, Qbox): Removed.
8678 (syms_of_macfns): Don't intern or staticpro them.
8679
8680 * macterm.c (x_specified_cursor_type): Remove prototype.
8681 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8682 (x_display_and_set_cursor): Use get_window_cursor_type.
8683 Remove unused local variables cursor_non_selected, active_cursor.
8684 Redraw cursor if hbar cursor width changes.
8685 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
8686
8687 * macterm.h (enum text_cursor_kinds): Removed.
8688 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
8689 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8690 (FRAME_DESIRED_CURSOR): Macro removed.
8691
8692 * w32fns.c (Vblink_cursor_alist): Removed.
8693 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8694 (syms_of_w32fns): Don't intern, staticpro, or define them.
8695 (x_specified_cursor_type): Removed.
8696 (x_set_cursor_type): Use set_frame_cursor_types.
8697
8698 * w32term.c (x_specified_cursor_type): Remove prototype.
8699 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8700 (x_display_and_set_cursor): Use get_window_cursor_type.
8701 Remove unused local variables cursor_off_state.
8702 Redraw cursor if hbar cursor width changes.
8703 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
8704
8705 * w32term.h (enum text_cursor_kinds): Removed.
8706 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
8707 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8708 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8709 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8710 (struct w32_display_info) <x_highlight_frame>: Renamed member from
8711 w32_highlight_frame.
8712
8713 * xfns.c (Vblink_cursor_alist): Removed.
8714 (Qbar, Qhbar, Qbox, Qhollow): Removed.
8715 (syms_of_xfns): Don't intern, staticpro, or define them.
8716 (x_specified_cursor_type): Removed.
8717 (x_set_cursor_type): Use set_frame_cursor_types.
8718
8719 * xterm.c (x_specified_cursor_type): Remove prototype.
8720 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
8721 (x_display_and_set_cursor): Use get_window_cursor_type.
8722 Remove unused local variables cursor_off_state.
8723 Redraw cursor if hbar cursor width changes.
8724
8725 * xterm.h (enum text_cursor_kinds): Removed.
8726 (struct output_x) <current_cursor, desired_cursor, cursor_width>
8727 <blink_off_cursor, blink_off_cursor_width>: Members removed.
8728 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
8729 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
8730 (x_specified_cursor_type): Remove prototype.
8731
87322002-08-28 Richard M. Stallman <rms@gnu.org>
8733
8734 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8735 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8736 (Vblink_cursor_alist): New variable.
8737 (syms_of_w32fns): Initialize and defvar it.
8738 (x_specified_cursor_type): Recognize Qbox for filled box.
8739 Exceptions are hollow boxes.
8740 (Qbox, Qhollow): New variables.
8741 (syms_of_w32fns): Initialize and staticpro them.
8742
8743 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8744 New macros.
8745 (struct w32_output): New fields blink_off_cursor,
8746 blink_off_cursor_width.
8747 (FRAME_CURSOR_WIDTH): New macro.
8748
8749 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8750 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8751
8752 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
8753 for bar cursor.
8754
8755 * w32term.c (expose_overlaps): New function.
8756 (expose_window): Use it to fix the display of overlapping rows.
8757
87582002-08-28 Simon Josefsson <jas@extundo.com>
8759
8760 * xfns.c (Fx_open_connection): Improve help when X connection
8761 fails, xhost is insecure and xauth is better.
8762
87632002-08-28 Juanma Barranquero <lektu@terra.es>
8764
8765 * makefile.w32-in: Add missing dependencies on w32term.h and
8766 composite.h.
8767
8768 * emacs.c (USAGE1): Add missing newline.
8769
87702002-08-27 Andrew Choi <akochoi@shaw.ca>
8771
8772 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
8773
87742002-08-27 Richard M. Stallman <rms@gnu.org>
8775
8776 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
8777 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
8778 (Vblink_cursor_alist): New variable.
8779 (syms_of_xfns): Initialize and defvar it.
8780 (x_specified_cursor_type): Recognize Qbox for filled box.
8781 Exceptions are hollow boxes.
8782 (Qbox, Qhollow): New variables.
8783 (syms_of_xfns): Initialize and staticpro them.
8784
8785 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
8786 New macros.
8787 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
8788
8789 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
8790 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
8791
8792 * emacs.c (main): Handle --script.
8793 (USAGE1): Mention --script.
8794 (standard_args): Define sort order for --script.
8795
87962002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
8797
8798 * xdisp.c (redisplay_updating_p): Variable removed.
8799 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
8800 New variables.
8801 (init_iterator): Don't free realized faces if
8802 inhibit_free_realized_faces is set.
8803 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
8804 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
8805 initialize Qinhibit_free_realized_faces.
8806
8807 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
8808 when iterator is adding glyphs to a glyph matrix.
8809
88102002-08-27 Kenichi Handa <handa@etl.go.jp>
8811
8812 * xdisp.c (get_next_display_element): In unibyte case, don't use
8813 octal form for such eight-bit characters that can be converted to
8814 multibyte char.
8815
88162002-08-26 Kim F. Storm <storm@cua.dk>
8817
8818 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
8819 and background colors. From Joe Buehler (tiny change).
8820
88212002-08-26 Miles Bader <miles@gnu.org>
8822
8823 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
8824
88252002-08-25 Andrew Choi <akochoi@shaw.ca>
8826
8827 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
8828 defined instead of MAC_OSX.
8829
8830 * s/darwin.h (select): Define select to sys_select only if
8831 HAVE_CARBON is defined.
8832 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
8833 (DONT_REOPEN_PTY): #def it.
8834
8835 * macterm.c (XTread_socket): Remove code to call
8836 SendEventToEventTarget for keys with command modifiers when
8837 mac_command_key_is_meta is nil.
8838
88392002-08-24 Andreas Schwab <schwab@suse.de>
8840
8841 * eval.c (Fdefvar): Fix last change.
8842
88432002-08-23 Richard M. Stallman <rms@gnu.org>
8844
8845 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
8846 Record variables in load history as (defvar . VAR).
8847 (Fdefvar): Don't record in load history if no initial value.
8848 (Qdefvar): New variable.
8849 (syms_of_eval): Init and staticpro it.
8850
8851 * lread.c (syms_of_lread): Doc fix.
8852 (build_load_history): Use Fmember to see if a definition
8853 is already in the Vload_history element.
8854
8855 * process.c (Fstart_process): Remove /: from program name.
8856
8857 * emacs.c (decode_env_path): Don't add /: if file name handler
8858 has a `safe-magic' property.
8859
8860 * callproc.c (Fcall_process): Remove /: from program name.
8861
88622002-08-23 Stefan Monnier <monnier@cs.yale.edu>
8863
8864 * regex.c (PATFETCH): Remove the translating fetch.
8865 (PATFETCH_RAW): Rename to PATFETCH.
8866 (set_image_of_range): New fun.
8867 (SET_RANGE_TABLE_WORK_AREA): Use it.
8868 (regex_compile): Don't translate the pattern chars so eagerly.
8869 Only do it when inserting an `exactn' bytecode or when handling
8870 a char-range.
8871 (mutually_exclusive_p): Avoid empty statement.
8872
88732002-08-22 Kim F. Storm <storm@cua.dk>
8874
8875 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
8876 end up on a partially visible line; this reverts a specific part
8877 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
8878 display error which has been reported several times now.
8879 However it introduces the problem that changes was supposed to fix.
8880 See my comments in the source if you want to debug this further.
8881
88822002-08-20 Kenichi Handa <handa@etl.go.jp>
8883
8884 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
8885
88862002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
8887
8888 * msdos.c (croak): Add `void' to definition.
8889
8890 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
8891 Don't define them, they are defined in msdos.c.
8892
8893 * mem-limits.h [MSDOS]: Declare etext.
8894
8895 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
8896 `const' since CORRECT_DIR_SEPS modifies its target.
8897
88982002-08-19 Kim F. Storm <storm@cua.dk>
8899
8900 * keyboard.c (Fclear_this_command_keys): Add optional arg
8901 KEEP-RECORD to avoid clearing lossage when we just want to clear
8902 the current key sequence (kmacro needs this).
8903
89042002-08-19 Kenichi Handa <handa@localhost>
8905
8906 * composite.c (run_composition_function): Call FUNC if it is fboundp.
8907
8908 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
8909 cons, return Qnil.
8910
89112002-08-17 Richard M. Stallman <rms@gnu.org>
8912
8913 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
8914
8915 * sysdep.c [!VMS]: Include sys/files.h.
8916
8917 * editfns.c (save_restriction_restore): Defend from unchained marker.
8918
8919 * buffer.c (overlays_at): Handle extending vec uniformly.
8920 (overlays_in): Handle extending vec from length 0 as in overlays_at.
8921
89222002-08-15 Andrew Choi <akochoi@shaw.ca>
8923
8924 * mac.c (init_mac_osx_environment): New function.
8925
8926 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
8927
89282002-08-14 Kim F. Storm <storm@cua.dk>
8929
8930 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
8931 executing macro before appending to it (when used from Lisp).
8932 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
8933 which is called prior to each iteration of macro (for kmacro.el).
8934 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
8935
8936 * lisp.h (Fexecute_kbd_macro): Update prototype.
8937
8938 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
8939
89402002-08-14 Kenichi Handa <handa@etl.go.jp>
8941
8942 * xselect.c (QUTF8_STRING): New variable.
8943 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
8944 (x_atom_to_symbol): Likewise.
8945 (x_get_local_selection): New argument local_request. If it is
8946 nonzero, call handler_fn with the second arg nil.
8947 (x_handle_selection_request): Call x_get_local_selection with
8948 local_request 0.
8949 (lisp_data_to_selection_data): Don't encode the string here.
8950 (Fx_get_selection_internal): Call x_get_local_selection with
8951 local_request 1.
8952 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
8953
8954 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
8955
8956 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
8957
89582002-08-13 Richard M. Stallman <rms@gnu.org>
8959
8960 * minibuf.c (Fminibufferp): New function.
8961 (syms_of_minibuf): Defsubr it.
8962 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
8963
89642002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
8965
8966 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
8967
89682002-08-12 Richard M. Stallman <rms@gnu.org>
8969
8970 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
8971 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
8972 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
8973 already.
8974
8975 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
8976
89772002-08-11 Andrew Choi <akochoi@shaw.ca>
8978
8979 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
8980 (Vmac_pass_command_to_system): New variable.
8981 (Vmac_pass_control_to_system): New variable.
8982 (do_mouse_moved): Check wp with is_emacs_window.
8983 (XTread_socket): Check window_ptr with is_emacs_window.
8984 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
8985 events back to Mac Toolbox for processing, depending on values of
8986 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
8987 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
8988 Vmac_pass_control_to_system.
8989
89902002-08-10 Kenichi Handa <handa@etl.go.jp>
8991
8992 * coding.c (unencodable_char_position): New function.
8993 (Funencodable_char_position): New function.
8994 (syms_of_coding): Defsubr Funencodable_char_position.
8995
89962002-08-10 Andrew Choi <akochoi@shaw.ca>
8997
8998 * mac.c (sys_select) [MAC_OSX]: New function.
8999
9000 * macterm.c (MakeMeTheFrontProcess): New function.
9001 (mac_initialize): Call MakeMeTheFrontProcess.
9002
9003 * s/darwin.h: Define select to sys_select.
9004
90052002-08-09 Richard M. Stallman <rms@gnu.org>
9006
9007 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9008
90092002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9010
9011 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9012 end of the buffer.
9013
90142002-08-08 Ken Raeburn <raeburn@mit.edu>
9015
9016 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9017
9018 * puresize.h (BASE_PURESIZE): Increase to 910000.
9019
90202002-08-08 Kenichi Handa <handa@etl.go.jp>
9021
9022 * coding.c (Ffind_operation_coding_system): For write-region, if
9023 VISIT is a filename, make it the target.
9024
90252002-08-07 Richard M. Stallman <rms@gnu.org>
9026
9027 * alloc.c (mark_object): Detect long lists for debugging.
9028 (mark_object_loop_halt): New variable.
9029
9030 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9031
9032 * data.c (Fmake_variable_frame_local): Doc fix.
9033
90342002-08-01 David Ponce <david@dponce.com>
9035
9036 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9037 (malloc_widget_value, free_widget_value)
9038 (w32_free_submenu_strings): Use them.
9039
9040 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9041 (push_menu_pane, push_menu_item, single_keymap_panes)
9042 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9043 (single_submenu, set_frame_menubar)
9044 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9045
9046 (Fx_popup_menu): Don't show pop up menu until preceding one is
9047 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9048
9049 * w32menu.c: Changes adapted from xmenu.c
9050 (set_frame_menubar): First parse all submenus,
9051 then make widget_value trees from them.
9052 Don't allocate any widget_value objects
9053 until we are done with the parsing.
9054 (parse_single_submenu): New function.
9055 (digest_single_submenu): New function.
9056 (single_submenu): Function deleted, replaced by those two.
9057
90582002-08-04 Andrew Choi <akochoi@shaw.ca>
9059
9060 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9061 returns a valid window pointer before proceeding for keyDown and
9062 autoKey events.
9063
90642002-08-03 Andrew Choi <akochoi@shaw.ca>
9065
9066 * macterm.c (USE_CARBON_EVENTS): New macro.
9067 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9068 (x_iconify_frame): Call CollapseWindow.
9069 (Vmac_reverse_ctrl_meta): New variable.
9070 (Vmac_wheel_button_is_mouse_2): New variable.
9071 (init_mac_drag_n_drop): New function.
9072 (mac_do_receive_drag): New function.
9073 (mac_handle_service_event): New function.
9074 (init_service_handler): New function.
9075 (mac_to_emacs_modifiers): New function.
9076 (mac_event_to_emacs_modifiers): New function.
9077 (mac_get_mouse_btn): New function.
9078 (mac_convert_event_ref): New function.
9079 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9080 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9081 mac_get_mouse_btn.
9082 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9083
9084 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9085 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9086 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9087 TOOL_BAR_EVENT for MAC_OS as well.
9088 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9089 as for WINDOWS_NT.
9090 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9091
9092 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9093
90942002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9095
9096 * xdisp.c (forward_to_next_line_start): Fix a condition that
9097 lead to a newline being skipped.
9098
90992002-08-02 Andrew Choi <akochoi@shaw.ca>
9100
9101 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9102
91032002-08-01 Richard M. Stallman <rms@gnu.org>
9104
9105 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9106
91072002-07-31 Andrew Choi <akochoi@shaw.ca>
9108
9109 * macfns.c: #undef init_process before #define-ing it.
9110
9111 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9112 HAVE_CARBON is defined.
9113
91142002-07-31 Richard M. Stallman <rms@gnu.org>
9115
9116 * xmenu.c (set_frame_menubar): First parse all submenus,
9117 then make widget_value trees from them.
9118 Don't allocate any widget_value objects
9119 until we are done with the parsing.
9120 (parse_single_submenu): New function.
9121 (digest_single_submenu): New function.
9122 (single_submenu): Function deleted, replaced by those two.
9123
91242002-07-30 Juanma Barranquero <lektu@terra.es>
9125
9126 * w32proc.c (syms_of_ntproc): Fix docstring of
9127 `w32-get-true-file-attributes'.
9128
91292002-07-28 Richard M. Stallman <rms@gnu.org>
9130
9131 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9132 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9133
9134 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9135
9136 * keyboard.c (make_lispy_event):
9137 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9138 Explicitly clear up_modifier in event->modifiers.
9139
91402002-07-27 Richard M. Stallman <rms@gnu.org>
9141
9142 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9143
9144 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9145 for bar cursor.
9146
91472002-07-26 Kenichi Handa <handa@etl.go.jp>
9148
9149 * coding.c (detect_coding_iso2022): While checking a byte sequence
9150 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9151 it in the normal loop.
9152
91532002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9154
9155 * xterm.c (expose_overlaps): New function.
9156 (expose_window): Use it to fix the display of overlapping rows.
9157
9158 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9159
91602002-07-23 Ken Raeburn <raeburn@gnu.org>
9161
9162 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9163 since it only depends on XUINT.
9164
9165 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9166 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9167 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9168 Macros deleted.
9169
9170 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9171 its value over other approaches.
9172 * sysdep.c (start_of_data): Don't define the function if a macro
9173 form has been defined.
9174
91752002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9176
9177 * xdisp.c (redisplay_updating_p): New variable.
9178 (init_iterator): Don't free realized faces when
9179 redisplay_updating_p is set.
9180 (redisplay_internal): Set redisplay_updating_p while updating
9181 the display.
9182
91832002-07-23 Richard M. Stallman <rms@gnu.org>
9184
9185 * editfns.c (Fmessage): Treat "" like nil.
9186
91872002-07-23 Kenichi Handa <handa@etl.go.jp>
9188
9189 * xdisp.c (face_before_or_after_it_pos):
9190 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9191
91922002-07-22 Juanma Barranquero <lektu@terra.es>
9193
9194 * callproc.c (init_callproc) [DOS_NT]:
9195 Initialize Vshared_game_score_directory to nil.
9196 (syms_of_callproc) [DOS_NT]: Likewise.
9197
91982002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9199
9200 * xdisp.c (display_line): Replace an abort with xassert.
9201
92022002-07-21 Richard M. Stallman <rms@gnu.org>
9203
9204 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9205 and END_UNCHANGED when setting buffer_unchanged_p.
9206 Use current_matrix_up_to_date_p to decide whether to use
9207 try_cursor_movement.
9208
9209 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9210
9211 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9212
9213 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9214 Set to nil if dir does not exist.
9215 (syms_of_callproc): Init unconditionally and simply.
9216
9217 * buffer.c (Fbuffer_list): Doc fix.
9218
92192002-07-21 Ken Raeburn <raeburn@gnu.org>
9220
9221 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9222
9223 * buffer.c (mmap_realloc): When shrinking, make sure number of
9224 pages to unmap is rounded towards zero.
9225
9226 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9227 (XSETINT): Deleted.
9228
9229 * m/att3b.h (XINT): Don't define.
9230 (VALBITS, VALMASK, XTYPE): Deleted.
9231 (DATA_SEG_BITS): Define.
9232 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9233 ARRAY_MARK_FLAG): Deleted.
9234 (DATA_SEG_BITS): Define.
9235 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9236 (DATA_SEG_BITS): Define.
9237
92382002-07-20 Richard M. Stallman <rms@gnu.org>
9239
9240 * print.c (print_error_message): New args CONTEXT and CALLER.
9241 Calls changed.
9242
9243 * lisp.h (print_error_message): Declare new args.
9244
9245 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9246 and CONTEXT to print_error_message, don't print them here.
9247 For a Quit, don't use Vsignaling_function.
9248 Call message_log_maybe_newline.
9249
9250 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9251
92522002-07-20 Kim F. Storm <storm@cua.dk>
9253
9254 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9255
92562002-07-19 Ken Raeburn <raeburn@gnu.org>
9257
9258 * bytecode.c (struct byte_stack): Pointers into byte string now
9259 point to const.
9260 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9261 const.
9262 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9263 * coding.c (encode_eol, detect_coding, detect_eol):
9264 (decode_coding, encode_coding, detect_coding_system):
9265 Source strings now treated as const.
9266 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9267 modify Lisp string contents.
9268 * coding.h (decode_coding, encode_coding, detect_coding,
9269 detect_eol): Declarations updated.
9270 * composite.c (compose_chars_in_text): Treat Lisp string contents
9271 as const.
9272 * dispnew.c (safe_bcopy): Source pointer now points to const.
9273 * lisp.h (STRING_COPYIN): New macro.
9274 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9275 (internal_with_output_to_temp_buffer): Declarations updated.
9276 * print.c (temp_output_buffer_setup):
9277 (internal_with_output_to_temp_buffer): Buffer name argument is now
9278 pointer to const.
9279 * sound.c (struct sound_device): Function pointer field "write"
9280 buffer argument now points to const.
9281 (vox_write): Buffer argument points to const.
9282 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9283 contents as const.
9284 * sysdep.c (emacs_write): Buffer pointer now const.
9285 * term.c (encode_terminal_code): Buffer pointer now const.
9286 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9287 (x_face_list_fonts, x_update_menu_appearance):
9288 (hash_string_case_insensitive): Treat Lisp string contents as const.
9289
92902002-07-19 Juanma Barranquero <lektu@terra.es>
9291
9292 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9293
9294 * fileio.c (syms_of_fileio): Likewise.
9295 (Ffile_name_as_directory): Fix argument name in docstring.
9296 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9297
92982002-07-18 Richard M. Stallman <rms@gnu.org>
9299
9300 * data.c (Fdefalias): Doc fix.
9301
93022002-07-17 Dave Love <fx@gnu.org>
9303
9304 * intervals.h (text_property_stickiness): Use P_.
9305
9306 * ccl.c: Remove `emacs' conditionals.
9307 (ccl_backtrace_table): Fix size spec.
9308 (ccl_driver): Fix type errors.
9309
93102002-07-16 Ken Raeburn <raeburn@gnu.org>
9311
9312 * alloc.c (xstrdup, make_string, make_unibyte_string)
9313 (make_multibyte_string, build_string): String pointer args now
9314 point to const.
9315 * charset.c (find_charset_in_text, c_string_width):
9316 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9317 * fileio.c (report_file_error):
9318 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9319 (count_combining_before, count_combining_after, insert_1_both):
9320 (insert, insert_and_inherit, insert_string):
9321 (insert_before_markers, insert_before_markers_and_inherit):
9322 * lread.c (intern, oblookup, hash_string):
9323 * minibuf.c (temp_echo_area_glyphs):
9324 * search.c (fast_c_string_match_ignore_case):
9325 * sysdep.c (emacs_open, set_file_times):
9326 * xfaces.c (xstricmp):
9327 * xdisp.c (store_frame_title, string_char_and_length):
9328 (message_dolog, message2, message2_nolog, set_message): Likewise.
9329 (set_message_1): Cast message string argument to const pointer.
9330 * editfns.c (general_insert_function): Insertion function now
9331 takes pointer to const for input data.
9332 * charset.h (find_charset_in_text, c_string_width):
9333 (parse_str_as_multibyte): Declarations updated.
9334 * dispextern.h (xstricmp): Declaration updated.
9335 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9336 (count_size_as_multibyte, count_combining_before):
9337 (count_combining_after, insert_1, insert_1_both, message_dolog):
9338 (insert, insert_and_inherit, insert_before_markers)
9339 (insert_before_markers_and_inherit, set_message, message2):
9340 (message2_dolog, build_string, make_string, make_unibyte_string):
9341 (make_multibyte_string, intern, oblookup, report_file_error):
9342 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9343 (emacs_open, xstrdup): Declarations updated.
9344 * systime.h (set_file_times): Declaration updated.
9345
9346 * charset.c (find_charset_in_text, lisp_string_width): Use const
9347 for pointer to lisp string data.
9348 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9349 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9350 * coding.c (Ffind_coding_systems_region_interval):
9351 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9352 (Fmake_directory_internal, Fdelete_directory):
9353 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9354 * fontset.c (font_family_registry, fs_query_fontset):
9355 (list_fontsets):
9356 * frame.c (Fframe_parameter):
9357 * keyboard.c (cmd_error_internal):
9358 * keymap.c (Fdescribe_buffer_bindings):
9359 * lread.c (complete_filename_p, openp):
9360 * minibuf.c (Fminibuffer_complete_word):
9361 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9362 (face_before_or_after_it_pos, next_element_from_string):
9363 (get_overlay_arrow_glyph_row, display_mode_element):
9364 (decode_mode_spec_coding):
9365 * xterm.c (same_x_server): Likewise.
9366
9367 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9368 settings of non-existent fields.
9369
9370 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9371 copy a lisp value.
9372
9373 * lread.c (Fintern_soft): Use string macros instead of
9374 Lisp_String fields.
9375 * keyboard.c (echo_char, parse_modifiers_uncached):
9376 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9377 * textprop.c (validate_interval_range, interval_of): Likewise.
9378
9379 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9380
9381 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9382 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9383 XSTRING()->size_byte.
9384
9385 * lisp.h (SDATA, SREF): Produce rvalue.
9386 (SSET): New macro.
9387 * alloc.c (make_event_array): Use SSET for storing into a string.
9388 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9389 a string.
9390 * casefiddle.c (casify_object): Use SSET.
9391 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9392 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9393 address of string contents.
9394 * data.c (Faref): Use SDATA.
9395 (Faset): Use SDATA, SSET.
9396 * dired.c (directory_files_internal): Use SSET.
9397 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9398 (Fread_file_name): Use SREF, SSET.
9399 * fns.c (concat): Use SSET.
9400 (concat, Fdelete): Use SDATA.
9401 * insdel.c (insert_from_string_1): Use SDATA.
9402 * keyboard.c (Fevent_convert_list): Use SREF.
9403 * lread.c (Fload): Use SDATA, SSET.
9404 * macfns.c (validate_x_resource_name): Use SSET.
9405 * process.c (status_message): Use SSET.
9406 * search.c (wordify): Use SDATA.
9407 (Freplace_match): Use SREF.
9408 * w32fns.c (validate_x_resource_name): Use SSET.
9409 * xfns.c (validate_x_resource_name): Use SSET.
9410 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9411
94122002-07-16 Richard M. Stallman <rms@gnu.org>
9413
9414 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9415
9416 * xdisp.c (reconsider_clip_changes):
9417 Don't test prevent_redisplay_optimizations_p.
9418 (redisplay_internal): Test prevent_redisplay_optimizations_p
9419 along with clip_changed in some cases.
9420 (try_window_id): Likewise.
9421 (redisplay_window): New local var buffer_unchanged_p.
9422
9423 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9424
9425 * process.c (create_process): Test USG_SUBTTY_WORKS.
9426 (process_send_signal): Clean up handling of GID.
9427 Detect errors in ioctls meant to set GID.
9428
9429 * window.c (temp_output_buffer_show):
9430 Don't set prevent_redisplay_optimizations_p.
9431
94322002-07-15 Juanma Barranquero <lektu@terra.es>
9433
9434 * eval.c (Fdefvaralias): Add docstring argument.
9435
94362002-07-15 Ken Raeburn <raeburn@gnu.org>
9437
9438 * lisp.h (STRING_INTERVALS): Produce rvalue.
9439 (STRING_SET_INTERVALS): New macro.
9440 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9441 * fns.c (Fstring_as_multibyte): Likewise.
9442 * intervals.c (balance_possible_root_interval, delete_interval)
9443 (create_root_interval, copy_intervals_to_string): Likewise.
9444 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9445 instead of 0.
9446
94472002-07-14 Ken Raeburn <raeburn@gnu.org>
9448
9449 * lisp.h (STRING_SET_CHARS): New macro.
9450 (SCHARS, SBYTES): Produce rvalues.
9451 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9452 * fns.c (concat): Likewise.
9453 * lread.c (read_vector): Likewise.
9454
9455 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9456 (STRING_SET_UNIBYTE): New macro.
9457 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9458 length of -1) changed to use STRING_SET_UNIBYTE.
9459 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9460 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9461 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9462 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9463 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9464 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9465 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9466 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9467 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9468 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9469 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9470 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9471 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9472 unchanged for now.
9473
94742002-07-13 Kim F. Storm <storm@cua.dk>
9475
9476 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9477
94782002-07-12 Richard M. Stallman <rms@gnu.org>
9479
9480 * fileio.c (Fwrite_region): Doc fix.
9481
9482 * print.c (print_error_message): Don't handle Vsignaling_function here.
9483
9484 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9485 (command_loop_1): Avoid certain actions after memory-full error.
9486
9487 * eval.c (Fsignal): Don't call cancel_hourglass.
9488 For a memory-full error, don't call Vsignal_hook_function
9489 and don't set Vsignaling_function.
9490
9491 * process.c (process_send_signal): Add abort call.
9492
94932002-07-11 Markus Rost <rost@math.ohio-state.edu>
9494
9495 * keymap.c (Fkey_binding): Fix typo.
9496
94972002-07-11 Richard M. Stallman <rms@gnu.org>
9498
9499 * alloc.c (Vmemory_full): New variable.
9500 (Vmemory_signal_data): Renamed from memory_signal_data.
9501 Uses changed.
9502 (syms_of_alloc): Defvar them.
9503 (memory_full, buffer_memory_full): Set Vmemory_full.
9504
9505 * lisp.h (Vmemory_full): Add declaration.
9506 (current_column, indented_beyond_p): Change declaration.
9507
9508 * indent.c (last_known_column): Declare as double, not float.
9509 (current_column, current_column_1, string_display_width)
9510 (position_indentation): Return `double'.
9511 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9512
9513 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9514 (back_to_previous_visible_line_start)
9515 (reseat_at_next_visible_line_start, next_element_from_buffer):
9516 Use `double', not `float', when calling indented_beyond_p.
9517
9518 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9519
9520 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9521
95222002-07-11 Juanma Barranquero <lektu@terra.es>
9523
9524 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
9525 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9526 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9527 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9528 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9529 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
9530
95312002-07-10 Juanma Barranquero <lektu@terra.es>
9532
9533 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9534 All callers changed.
9535
95362002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9537
9538 * data.c (Fdefalias): Add an optional `docstring' argument.
9539 (set_internal, Fsetq_default): Use XCAR/XCDR.
9540
9541 * composite.c (HASH_VALUE, HASH_KEY):
9542 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9543
95442002-07-09 Kenichi Handa <handa@etl.go.jp>
9545
9546 * callproc.c (Fcall_process): Fix previous change.
9547
95482002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9549
9550 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9551 Add support for hash-tables.
9552 (Ftry_completion): Return t even if the string appears multiple times.
9553
9554 * fns.c (Fnconc): Use XCDR.
9555 (Fprovide): Use CONSP and XCDR.
9556 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9557 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9558 (Fmake_hash_table): Accept `:size nil'.
9559 (Fmakehash): Delete: moved to subr.el.
9560 (syms_of_fns): Don't defsubr makehash.
9561
9562 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9563 (HASH_TABLE_SIZE): Move from fns.c.
9564
95652002-07-07 Richard M. Stallman <rms@gnu.org>
9566
9567 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
9568 Instead just return 0 when there is something to be done.
9569 (try_scrolling): If make_cursor_line_fully_visible returns 0,
9570 retry scrolling as if cursor were off the bottom.
9571 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
9572 return CURSOR_MOVEMENT_MUST_SCROLL.
9573 (redisplay_window): If make_cursor_line_fully_visible returns 0,
9574 go to try_to_scroll.
9575
9576 * buffer.c (Fbuffer_local_value): Store current value into its binding
9577 so we get the up-to-date value for the binding that is loaded.
9578
9579 * eval.c (Fdefmacro): Doc fix.
9580
95812002-07-05 Dave Love <fx@gnu.org>
9582
9583 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
9584 correctly.
9585
9586 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
9587 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
9588 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
9589 CCL_LookupCharConstTbl.
9590 (syms_of_ccl): Defvar translation-hash-table-vector.
9591
95922002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9593
9594 * xdisp.c: Remove unused variable `face'.
9595
95962002-07-04 Juanma Barranquero <lektu@terra.es>
9597
9598 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
9599 obsolescence information.
9600
96012002-07-03 Andrew Choi <akochoi@shaw.ca>
9602
9603 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
9604 pattern. Search cache first.
9605 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
9606 for Japanese font.
9607 (XLoadQueryFont): Use it.
9608
96092002-07-02 Richard M. Stallman <rms@gnu.org>
9610
9611 * keymap.c (Fdefine_key): Doc fix.
9612
9613 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
9614
96152002-07-02 Juanma Barranquero <lektu@terra.es>
9616
9617 * keymap.c (syms_of_keymap): Fix typo.
9618
96192002-07-01 Andrew Choi <akochoi@shaw.ca>
9620
9621 * s/darwin.h: Define POSIX_SIGNALS.
9622
9623 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
9624 and FSRefMakePath to convert FSSpec returned with Apple Event to
9625 Posix pathname.
9626 (mac_initialize) [TARGET_API_MAC_CARBON]:
9627 Call init_required_apple_events and disable the `Quit' menu item
9628 provided automatically by the Carbon Toolbox.
9629
96302002-07-01 Dave Love <fx@gnu.org>
9631
9632 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
9633 for K&R.
9634
9635 * xterm.c: Fix prototype for K&R.
9636
9637 * term.c (costs_set): Declare static, non-initialized for pcc.
9638
96392002-07-01 Richard M. Stallman <rms@gnu.org>
9640
9641 * keyboard.c (timer_last_idleness_start_time): New variable.
9642 (timer_start_idle): Set that.
9643 (read_key_sequence): Use that to reset timer_idleness_start_time
9644 to previous value.
9645
9646 * window.c (Frecenter): With arg, set optional_new_start.
9647
9648 * xdisp.c (redisplay_internal): Make optional_new_start really work.
9649
9650 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
9651 buffer for completion.
9652
96532002-06-29 Ken Raeburn <raeburn@gnu.org>
9654
9655 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
9656
96572002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9658
9659 * keyboard.c (readable_filtered_events): New function that filters
9660 FOCUS_IN_EVENT depending on parameter.
9661 (readable_events): Calls readable_filtered_events, not filtering
9662 FOCUS_IN_EVENT.
9663 (get_filtered_input_pending): New function, filtering parameter passed
9664 to readable_filtered_events.
9665 (get_input_pending): Calls get_filtered_input_pending, not filtering
9666 FOCUS_IN_EVENT.
9667 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
9668 FOCUS_IN_EVENT.
9669
9670 * xterm.h (struct x_output): Add focus_state.
9671
9672 * xterm.c (x_focus_changed): New function.
9673 (x_detect_focus_change): New function.
9674 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
9675 EnterNotify and LeaveNotify to track X focus changes.
9676
96772002-06-28 Andreas Schwab <schwab@suse.de>
9678
9679 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
9680
96812002-06-27 Kim F. Storm <storm@cua.dk>
9682
9683 * xdisp.c: (mode_line_string_list, mode_line_string_face)
9684 (mode_line_string_face_prop): New variables.
9685 (store_mode_line_string): New function.
9686 (display_mode_element): Use store_mode_line_string to
9687 add mode-line string elements to mode_line_string_list
9688 when mode_line_string_list is non-nil.
9689 (Fformat_mode_line): Now returns propertized string by
9690 default. New arg NO-PROPS to ignore properties.
9691 (decode_mode_spec): Only add two dashes for %- in propertized
9692 mode-line string.
9693 (syms_of_xdisp): Init and staticpro mode_line_string_list.
9694
96952002-06-27 Stefan Monnier <monnier@cs.yale.edu>
9696
9697 * minibuf.c (minibuffer_completion_contents): Add return type.
9698
96992002-06-27 Juanma Barranquero <lektu@terra.es>
9700
9701 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
9702
97032002-06-26 Juanma Barranquero <lektu@terra.es>
9704
9705 * fileio.c (read_file_name_cleanup): Add missing return.
9706
97072002-06-26 Richard M. Stallman <rms@gnu.org>
9708
9709 * window.c (Frecenter): Don't set force_start flag.
9710
9711 * minibuf.c (do_completion, Fminibuffer_complete_word)
9712 (Fminibuffer_completion_help): Complete just the text before point.
9713 (minibuffer_completion_contents): New function.
9714
9715 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
9716
9717 * frame.c (frames_bury_buffer): Function deleted.
9718
97192002-06-25 Miles Bader <miles@gnu.org>
9720
9721 * callint.c (Fcall_interactively): When checking to see if doprnt hit
9722 the end of callint_message, allow for a terminating '\0'.
9723
97242002-06-24 Juanma Barranquero <lektu@terra.es>
9725
9726 * w32select.c: Include composite.h
9727
9728 * w16select.c: Likewise.
9729
97302002-06-24 Kenichi Handa <handa@etl.go.jp>
9731
9732 * callproc.c (Fcall_process): If code detection is necessary,
9733 call detect_coding directly here.
9734
9735 * coding.c (detect_eol): Preserve coding->cmp_data.
9736
9737 * w16select.c (Fw16_get_clipboard_data):
9738 * w32fns.c (w32_to_x_font):
9739 * w32select.c (Fw32_get_clipboard_data):
9740 * xselect.c (selection_data_to_lisp_data):
9741 * xterm.c (XTread_socket): Disable composition handling.
9742
97432002-06-24 Stefan Monnier <monnier@cs.yale.edu>
9744
9745 * print.c (temp_output_buffer_setup): Kill all local variables.
9746
97472002-06-22 Stefan Monnier <monnier@cs.yale.edu>
9748
9749 * lread.c (Fread): Remove redundant and imprecise declaration.
9750
9751 * xfns.c (check_x_display_info): Use check_x_frame.
9752
9753 * .gdbinit (xprintsym): Use the new `xname' field.
9754 (xsymbol): Use it.
9755
97562002-06-22 Jason Rumney <jasonr@gnu.org>
9757
9758 * w32fns.c (file_dialog_callback): New function.
9759 (Fx_file_dialog): Allow selecting directories as well as files.
9760
97612002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9762
9763 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
9764 OpenBSD. Add support for mipseb-*-netbsd* machines.
9765
97662002-06-17 Andrew Choi <akochoi@shaw.ca>
9767
9768 * macterm.c (mac_scroll_area): Set foreground and backcolor to
9769 black and white before scrolling. Restore frame background and
9770 foreground color after scrolling.
9771 (do_window_update): Call XClearWindow before calling expose_frame.
9772 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
9773 FRAME_FOREGROUND_PIXEL of frame.
9774
9775 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9776 test Mac command key as <ALT> key.
9777
97782002-06-17 Stefan Monnier <monnier@cs.yale.edu>
9779
9780 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
9781
9782 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
9783 Lookup keys in function-key-map immediately so that key-translation-map
9784 can be applied earlier.
9785 Remove function_key_possible and key_translation_possible, replaced
9786 by checking `keytran_start < t'.
9787
9788 * .gdbinit (xsymbol): Use the new `xname' field.
9789
97902002-06-17 Andrew Choi <akochoi@shaw.ca>
9791
9792 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
9793 test Mac command key as <ALT> key.
9794
9795 * mac.c (do_applescript): Call initialize_applescript if necessary
9796 when first called. Dispose of result_desc only when there is no error.
9797 (Fdo_applescript): Use %d format specifier instead of %ld.
9798
97992002-06-16 Andrew Choi <akochoi@shaw.ca>
9800
9801 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
9802 of FrontWindow for cases keyDown and autoKey.
9803
9804 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
9805 Vdefault_fontset to Monaco with mac-roman coding.
9806
9807 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
9808 init_process before and after inclusion of Carbon/Carbon.h, resp.
9809
9810 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
9811 cursor_gc.
9812 (add_font_name_table_entry): New function.
9813 (init_font_name_table): Use add_font_name_table_entry; add italic,
9814 bold, and bold-italic entries for truetype fonts.
9815
9816 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
9817 for Mac too.
9818 (try_font_list) [MAC_OS]: If no font matches given registry, try
9819 fonts with any registry matching face_family.
9820 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
9821
9822 * s/darwin.h: If autoconf detects the Ncurses library, define
9823 LIBS_TERMCAP to -lncurses to use it.
9824
98252002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
9826
9827 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
9828
98292002-06-15 Richard M. Stallman <rms@gnu.org>
9830
9831 * window.c (Fset_window_configuration): Explicitly preserve
9832 the point value that new_current_buffer had at the start.
9833
98342002-06-14 Juanma Barranquero <lektu@terra.es>
9835
9836 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
9837 Fix typos.
9838
98392002-06-14 Kim F. Storm <storm@cua.dk>
9840
9841 * insdel.c (insert_1_both, insert_from_string_1)
9842 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
9843 insert happened in the end_unchanged region. Otherwise, the
9844 redisplay may be confused and duplicate the last line in the
9845 buffer [seen after save-buffer when require-final-newline==t].
9846
98472002-06-13 Jason Rumney <jasonr@gnu.org>
9848
9849 * w32.c (init_environment): Remove EMACSLOCKDIR.
9850 (stat): Swap _S_IFDIR and _S_IFREG.
9851
98522002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9853
9854 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
9855 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
9856 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
9857 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
9858 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
9859 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
9860 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
9861 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
9862 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
9863 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
9864 SELECTION_REQUEST_EVENT, selection_clear_event to
9865 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
9866 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
9867 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
9868 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
9869 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
9870 no_event to NO_EVENT.
9871
98722002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9873
9874 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
9875
98762002-06-12 Stefan Monnier <monnier@cs.yale.edu>
9877
9878 * intervals.c (textget): Don't forget to `return'.
9879 (lookup_char_property): Use XCAR/XCDR.
9880
98812002-06-12 Juanma Barranquero <lektu@terra.es>
9882
9883 * xdisp.c (Fformat_mode_line): Fix typo.
9884
98852002-06-12 Kim F. Storm <storm@cua.dk>
9886
9887 * xdisp.c (Fformat_mode_line): New function.
9888 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
9889 (store_frame_title_char, store_frame_title): Use unconditionally.
9890 (init_xdisp): Defsubr Fformat_mode_line.
9891 Initialize frame_title_buf etc. unconditionally.
9892
98932002-06-11 Stefan Monnier <monnier@cs.yale.edu>
9894
9895 * keyboard.c (read_key_sequence):
9896 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
9897 things through those maps after downcasing events.
9898 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
9899 applies after function-key-map.
9900 Make sure that keytran can be done in the middle in the sequence.
9901 Be careful not to throw away events past the one we downcase.
9902
9903 * lread.c (read_integer): Remove unused var `tem'.
9904 (read1): Fix int/Lisp_Object mixup.
9905
9906 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
9907
99082002-06-11 Richard M. Stallman <rms@gnu.org>
9909
9910 * keyboard.c (readable_events): Ignore any number of
9911 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
9912
99132002-06-09 Miles Bader <miles@gnu.org>
9914
9915 * xfaces.c (Ftty_supports_face_attributes_p): New function.
9916 (parse_rgb_list, tty_lookup_color): New functions.
9917 (tty_defined_color): Use `tty_lookup_color' to do all the work.
9918 (color_distance, Fcolor_distance): New functions.
9919 (TTY_SAME_COLOR_THRESHOLD): New macro.
9920 (Qtty_color_standard_values): New variable.
9921 (syms_of_xfaces): Initialize new vars & functions.
9922
99232002-06-08 Colin Walters <walters@verbum.org>
9924
9925 * textprop.c (Vchar_property_alias_alist): New variable.
9926 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
9927
9928 * intervals.c (lookup_char_property): New function for looking up
9929 overlay and text properties, created from textget.
9930 (textget): Use it.
9931
9932 * intervals.h (lookup_char_property): Declare.
9933 (Vchar_property_alias_alist): Declare.
9934
9935 * buffer.c (Foverlay_get): Use lookup_char_property.
9936
99372002-06-07 Sam Steingold <sds@gnu.org>
9938
9939 * xselect.c (lisp_data_to_selection_data): Fix last change:
9940 *data_ret is not a Lisp string, while unibyte_string is.
9941
99422002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
9943
9944 * xselect.c (lisp_data_to_selection_data): Fix last change:
9945 set size_ret.
9946
99472002-06-07 Andreas Schwab <schwab@suse.de>
9948
9949 * m/amdx86-64.h: New file.
9950
99512002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
9952
9953 * fns.c (Fstring_make_unibyte): Doc fix.
9954
9955 * xselect.c (lisp_data_to_selection_data): If the requested type
9956 is STRING, call string_make_unibyte to encode the selected text
9957 as a string.
9958
9959 * window.c (Fset_window_hscroll): Doc fix.
9960
99612002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9962
9963 * fileio.c (choose_write_coding_system):
9964 Call select-safe-coding-system properly.
9965
99662002-06-03 Richard M. Stallman <rms@gnu.org>
9967
9968 * xdisp.c (message_with_string): Error if STRING is not a string.
9969
9970 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
9971
9972 * fileio.c (choose_write_coding_system): Pass FILE arg to
9973 Vselect_safe_coding_system_function.
9974
99752002-06-03 Ken Raeburn <raeburn@gnu.org>
9976
9977 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
9978
99792002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
9980
9981 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
9982 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
9983 * keymap.c (describe_command): Likewise.
9984 * minibuf.c (read_minibuf): Likewise.
9985
9986 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
9987 Cast `current_column' return value to int.
9988 (back_to_previous_visible_line_start)
9989 (reseat_at_next_visible_line_start, next_element_from_buffer):
9990 Cast `indented_beyond_p' 3rd arg to float.
9991
9992 * indent.c (last_known_column): Now a float.
9993 (current_column_1, position_indentation, current_column)
9994 (string_display_width): Return float.
9995 (Fcurrent_column): Cast `current_column' return value to int.
9996 (Fcurrent_indentation): Cast `position_indentation' retval to int.
9997 (indented_beyond_p): Third arg now a float.
9998 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
9999
10000 * lisp.h (current_column): Now returns float.
10001 (indented_beyond_p): 3rd arg now a float.
10002
100032002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10004
10005 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10006 is Qcompound_text_with_extensions.
10007
10008 * xselect.c (lisp_data_to_selection_data): Always set selection
10009 type as string if x_encode_text returns streingp non-NULL.
10010
10011 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10012
100132002-05-30 Richard M. Stallman <rms@gnu.org>
10014
10015 * window.c (Fset_window_configuration): Correct the handling
10016 of point in current buffer, to work with multiple windows.
10017
100182002-05-29 Colin Walters <walters@verbum.org>
10019
10020 * lread.c (Fread_from_string): Don't depend on order of evaluation
10021 for C function parameters.
10022
100232002-05-28 Richard M. Stallman <rms@gnu.org>
10024
10025 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10026 way for blinked-off state and for a nonselected window.
10027
10028 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10029 instead, see if the new start pos is at beginning of line.
10030
10031 * fileio.c (Fwrite_region): If START is a string, don't
10032 make any annotations.
10033
10034 * eval.c (syms_of_eval): Doc fix.
10035
100362002-05-28 Colin Walters <walters@debian.org>
10037
10038 * emacs.c (USAGE1): Add --no-splash.
10039 (standard_args): Ditto.
10040
100412002-05-28 Colin Walters <walters@gnu.org>
10042
10043 * lread.c (readchar_count): New variable.
10044 (readchar): Increment it.
10045 (unreadchar): Decrement it.
10046 (read_multibyte): Decrement it.
10047 (Vread_with_symbol_positions): New variable.
10048 (Vread_symbol_positions_list): New variable.
10049 (read_internal_start): New function, created from Fread and
10050 Fread_from_string. Handle Vread_symbol_positions_list and
10051 Vread_with_symbol_positions.
10052 (readevalloop, Fread, Fread_from_string): Use it.
10053 (read1): Use readchar_count to add symbol positions to
10054 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10055 (syms_of_lread): DEFVAR_LISP and initialize them.
10056
10057 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10058 (substitute_object_recurse, substitute_object_in_subtree)
10059 (substitute_in_interval): Prototype.
10060 (read_multibyte): Return c if it's less than zero.
10061
100622002-05-28 Kim F. Storm <storm@cua.dk>
10063
10064 * fileio.c (Fread_file_name_internal): Added brute-force
10065 speed up for using predicate file-directory-p.
10066
100672002-05-28 Kim F. Storm <storm@cua.dk>
10068
10069 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10070 New variables.
10071 (syms_of_fileio): DEFVAR_LISP them.
10072 (read_file_name_cleanup): New unwind function.
10073 (Fread_file_name_internal): Only return completions satifying
10074 Vread_file_name_predicate. Temporarily unwind protect and rebind
10075 default-directory while checking completions against the predicate.
10076 (Fread_file_name): Added PREDICATE argument. Specbind it to
10077 Vread_file_name_predicate during completion.
10078 Call Vread_file_name_function to read the file name if non-nil.
10079
10080 * lisp.h (Fread_file_name): Now has 6 args.
10081
10082 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10083 predicate for Fread_file_name when reading directory name.
10084 Supply Qnil for predicate in other calls to Fread_file_name.
10085
100862002-05-26 Miles Bader <miles@gnu.org>
10087
10088 * term.c (tty_capable_p): New function.
10089 * dispextern.h (tty_capable_p): New function declaration.
10090 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10091 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10092
100932002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10094
10095 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10096 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10097 (Vwrite_region_annotate_functions): Docstring fix.
10098
100992002-05-23 Kim F. Storm <storm@cua.dk>
10100
10101 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10102 phys_cursor's hpos is overwritten. This is still not completely
10103 correct, as it doesn't really make sense to use hpos at all to
10104 get the cursor glyph (as that is relative to the width of the
10105 characters on the line, which may have changed during the update).
10106
101072002-05-22 Jason Rumney <jasonr@gnu.org>
10108
10109 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10110 Lisp_Object.
10111 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10112 Use modified enumfont_t struct.
10113
10114 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10115
10116 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10117 Handle the `hbar' cursor type.
10118 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10119
10120 * w32fns.c (Qhbar): New variable.
10121 (x_specified_cursor_type): Use it.
10122
101232002-05-21 Ken Raeburn <raeburn@gnu.org>
10124
10125 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10126 now, when the address is needed.
10127
101282002-05-21 Colin Walters <walters@gnu.org>
10129
10130 * Makefile.in (shortlisp): Add font-core.el.
10131
101322002-05-20 Richard M. Stallman <rms@gnu.org>
10133
10134 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10135
10136 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10137 equivalent key bindings here.
10138
101392002-05-20 Ken Raeburn <raeburn@gnu.org>
10140
10141 Change symbol structure to contain a lisp object for the symbol
10142 name:
10143 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10144 object field named "xname".
10145 (SYMBOL_NAME): New macro.
10146 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10147 name field.
10148 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10149 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10150 instead of name field.
10151 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10152 SYMBOL_NAME instead of XSYMBOL and name field.
10153 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10154 instead of XSYMBOL and name field.
10155 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10156 and SYMBOL_NAME instead of XSYMBOL and name field.
10157 * coding.c (Fread_coding_system, code_convert_region1)
10158 (code_convert_string1, code_convert_string_norecord)
10159 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10160 XSYMBOL and name field.
10161 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10162 (Fmake_variable_buffer_local, Fmake_local_variable)
10163 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10164 of XSYMBOL and name field.
10165 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10166 XSYMBOL and name field.
10167 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10168 instead of XSYMBOL and name field.
10169 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10170 XSYMBOL and name field.
10171 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10172 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10173 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10174 instead of XSYMBOL and name field.
10175 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10176 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10177 (parse_solitary_modifier, Fexecute_extended_command):
10178 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10179 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10180 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10181 of XSYMBOL and name field.
10182 (describe_command, describe_translation): Use SYMBOL_NAME and
10183 assignment instead of XSYMBOL and name field and XSETSTRING.
10184 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10185 instead of XSYMBOL and name field.
10186 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10187 name field and XSETSTRING.
10188 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10189 of XSYMBOL and name field.
10190 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10191 assignment instead of XSYMBOL and name field and XSETSTRING.
10192 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10193 XSTRING instead of XSYMBOL and name field.
10194 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10195 and XSTRING instead of XSYMBOL and name field.
10196 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10197 and XSTRING instead of XSYMBOL and name field.
10198 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10199 XSTRING instead of XSYMBOL and name field.
10200 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10201 of XSYMBOL and name field.
10202 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10203 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10204
102052002-05-19 Ken Raeburn <raeburn@gnu.org>
10206
10207 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10208 and XCDR real rvalues in most configurations.
10209
10210 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10211 Don't take the address of the cdr part of a cons cell; instead, track
10212 the parent cell and call XSETCDR, or set the variable for the head
10213 of the list if we haven't started down the list yet.
10214
102152002-05-19 Richard M. Stallman <rms@gnu.org>
10216
10217 * doc.c (reread_doc_file): Don't ask for confirmation.
10218
102192002-05-18 Jason Rumney <jasonr@gnu.org>
10220
10221 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10222 (xbm_load_image): Use it.
10223 (xbm_load): Ditto.
10224 (xbm_read_bitmap_data): Reverted to xfns.c version.
10225 From David Ponce <david@dponce.com>.
10226
102272002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10228
10229 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10230 2.02 and later.
10231
102322002-05-16 Juanma Barranquero <lektu@terra.es>
10233
10234 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10235
102362002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10237
10238 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10239 meaningful test.
10240 (read_char_minibuf_menu_prompt): Fix typo.
10241
102422002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10243
10244 * eval.c (Fcommandp): Doc fix.
10245
102462002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10247
10248 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10249 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10250 (Fset_keymap_parent): Gcpro a bit more.
10251 (access_keymap): Gcpro around meta_map call and around the main loop.
10252 (get_keyelt): Gcpro when following indirect references.
10253 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10254 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10255 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10256 Remove useless ad-hoc remap code.
10257
102582002-05-13 Richard M. Stallman <rms@gnu.org>
10259
10260 * search.c (search_buffer): Give up boyer moore search if inverse
10261 translation change charset_base.
10262
102632002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10264
10265 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10266 characters is carried over from the previous block of text, adjust
10267 coding->produced to account for the extra character.
10268
102692002-05-11 Andreas Schwab <schwab@suse.de>
10270
10271 * coding.c (intersection): Keep the elements of the returned list
10272 in the same order as in the first list.
10273
102742002-05-11 Kim F. Storm <storm@cua.dk>
10275
10276 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10277 only update cmm_size if realloc actually succeeds.
10278 Testing with initial size of 2 elements revealed that using
10279 realloc on GNU/Linux would cause a random trap in xmalloc
10280 later on, so I rewrote the code to use malloc/bcopy/free instead
10281 of realloc.
10282
102832002-05-10 Jason Rumney <jasonr@gnu.org>
10284
10285 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10286
102872002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10288
10289 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10290 parens, to ensure correct evaluation order.
10291
102922002-05-10 Kim F. Storm <storm@cua.dk>
10293
10294 * keymap.c (Vemulation_mode_map_alists): New variable.
10295 (syms_of_keymap): DEFVAR_LISP it.
10296 (current_minor_maps): Process keymap alists in that list before
10297 minor-mode-overriding-map-alist and minor-mode-map-alist.
10298
102992002-05-09 Richard M. Stallman <rms@gnu.org>
10300
10301 * search.c (Freplace_match): Doc fix.
10302
103032002-05-09 Kim F. Storm <storm@cua.dk>
10304
10305 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10306 Enlarge cursor rectangle drawn around image with non-zero relief.
10307
10308 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10309 Enlarge cursor rectangle drawn around image with non-zero relief.
10310
10311 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10312 Enlarge cursor rectangle drawn around image with non-zero relief.
10313
103142002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10315
10316 * xselect.c (lisp_data_to_selection_data): Don't set selection
10317 type if comes from the Lisp object's car. If the selection
10318 contains a pure ASCII text, always return QSTRING as its type.
10319
103202002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10321
10322 * mac.c (mac-cut-function): Doc fix.
10323
103242002-05-05 Richard M. Stallman <rms@gnu.org>
10325
10326 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10327
103282002-05-04 Jason Rumney <jasonr@gnu.org>
10329
10330 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10331 for event-click-count.
10332
10333 * process.c (init_process): Only add server subfeature if we can
10334 use non-blocking I/O.
10335
103362002-05-04 Andrew Choi <akochoi@shaw.ca>
10337
10338 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10339 repeatedly.
10340
103412002-05-03 Jason Rumney <jasonr@gnu.org>
10342
10343 * process.c (Fmake_network_process): Only support server sockets
10344 when we can make them non-blocking.
10345
10346 * s/ms-w32.h (HAVE_SELECT): Define.
10347
10348 * w32.h (FILE_NDELAY): New flag.
10349
10350 * w32.c (sys_getpeername, fcntl): New functions.
10351 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10352
10353 * w32proc.c: include sys/file.h.
10354
103552002-05-03 Colin Walters <walters@verbum.org>
10356
10357 * callproc.c (Vgame_score_directory): Renamed to
10358 Vshared_game_score_directory.
10359
103602002-04-30 Richard M. Stallman <rms@gnu.org>
10361
10362 * s/gnu.h [emacs]: Include stdio.h.
10363 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10364
10365 * eval.c (do_autoload): Error if called while preparing to dump.
10366
10367 * fns.c (Frequire): Error if need to load while preparing to dump.
10368
103692002-04-28 Colin Walters <walters@verbum.org>
10370
10371 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10372 Default to "~/.emacs.d/games".
10373
103742002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10375
10376 * lread.c (openp): Change arg exec_only to predicate.
10377 (build_load_history): Use XCAR/XCDR.
10378 (Flocate_file_internal): New fun.
10379 (syms_of_lread): Defsubr it.
10380 (Fload): Update call to openp.
10381
10382 * lisp.h (openp): Update prototype.
10383
10384 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10385 * w32proc.c (sys_spawnve):
10386 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10387 * w32.c (check_windows_init_file):
10388 * sound.c (Fplay_sound_internal):
10389 * process.c (Fstart_process):
10390 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10391 * mac.c (run_mac_command):
10392 * emacs.c (init_cmdargs):
10393 * callproc.c (Fcall_process): Update call to openp.
10394
10395 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10396
10397 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10398
103992002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10400
10401 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10402 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10403
104042002-04-28 Richard M. Stallman <rms@gnu.org>
10405
10406 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10407
10408 * eval.c (Fcommandp): New arg for_call_interactively.
10409 * lisp.h (Fcommandp): Declare new arg.
10410
104112002-04-28 Jason Rumney <jasonr@gnu.org>
10412
10413 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10414
10415 * w32.c (stat, fstat): Use file index information to generate
10416 inodes for directories where available.
10417
104182002-04-26 Andrew Choi <akochoi@shaw.ca>
10419
10420 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10421 [HAVE_CARBON]: Include Mac object files.
10422
10423 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10424 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10425 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10426 MAC_OSX, and MAC_OS instead of macintosh.
10427
10428 * editfns.c [MAC_OS8]: Include stdio.h.
10429
10430 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10431
10432 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10433 Apple Monaco.
10434
10435 * process.c: Declare QCfamily and QCfilter as extern.
10436 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10437 calling select.
10438
10439 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10440
10441 * tparam.c [MAC_OSX]: Don't define BC and UP.
10442
10443 * config.in [HAVE_CARBON]: Add.
10444
10445 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10446 Move here from mac/src and mac/inc.
10447
10448 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10449
104502002-04-26 Gerd Moellmann <gerd@gnu.org>
10451
10452 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10453 Compute phys_cursor_width from the x position returned
10454 by x_draw_glyhs, which is cheaper.
10455 (x_display_and_set_cursor): Compute the buffer-local value
10456 of `cursor-in-non-selected-windows' only when needed.
10457
104582002-04-25 Gerd Moellmann <gerd@gnu.org>
10459
10460 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10461 cursor on a stretch glyph has a width that depends on
10462 x_stretch_cursor_p.
10463
104642002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10465
10466 * abbrev.c (abbrev-start-location): Doc fix.
10467
10468 * indent.c (Fvertical_motion): Fix last change.
10469
104702002-04-25 Gerd Moellmann <gerd@gnu.org>
10471
10472 * indent.c (Fvertical_motion): Move to the start of the line
10473 containing PT before moving up or down.
10474
104752002-04-24 Gerd Moellmann <gerd@gnu.org>
10476
10477 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10478 case of writing a whole row, more or less analogous to the case of
10479 writing only parts of a row.
10480
10481 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10482 0 for NO_CURSOR.
10483
10484 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10485
104862002-04-23 Colin Walters <walters@verbum.org>
10487
10488 * buffer.c (syms_of_buffer): Doc fix.
10489
104902002-04-23 Gerd Moellmann <gerd@gnu.org>
10491
10492 * xterm.c (notice_overwritten_cursor): Handle the special case
10493 of the cursor being in the first blank non-text line at the
10494 end of a window.
10495
10496 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10497 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10498 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10499 bar cursors only, to make phys_cursor_width contain what its name
10500 suggests.
10501 (notice_overwritten_cursor): Consider the cursor image erased if
10502 the output area intersects the cursor image in y-direction.
10503
105042002-04-23 Simon Marshall <simon@gnu.org>
10505
10506 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10507 to XC_hand2.
10508
105092002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10510
10511 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10512
105132002-04-22 Kim F. Storm <storm@cua.dk>
10514
10515 * textprop.c (remove_properties): Fixed trap for malformed plist.
10516
105172002-04-22 Richard M. Stallman <rms@gnu.org>
10518
10519 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10520
10521 * window.c (make_window): Initialize height_fixed_p,
10522 last_cursor_off_p, and p->cursor_off_p slots.
10523
105242002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10525
10526 * fns.c (use-dialog-box): Doc fix.
10527
105282002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10529
10530 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10531 variables `row', `i' and `area'.
10532 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10533 toolkit library.
10534
105352002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10536
10537 * xfaces.c (clear_font_table): Don't free the default font of
10538 a frame even if it's on another display.
10539 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10540 that could be Qt.
10541
105422002-04-19 Juanma Barranquero <lektu@terra.es>
10543
10544 * indent.c (Fmove_to_column): Remove unused local variable
10545 `next_boundary_byte'.
10546 (current_column_1): Likewise.
10547
105482002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10549
10550 * msdos.c (Qhbar): New variable.
10551 (syms_of_msdos): Intern and staticpro it.
10552 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10553 cursor type.
10554
105552002-04-19 Dave Lambert <dlambert@acm.org>
10556
10557 Theses change implement an underscore-like (`hbar') cursor.
10558
10559 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10560
10561 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
10562 Handle the `hbar' cursor type.
10563 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10564
10565 * xfns.c (Qhbar): New variable.
10566 (syms_of_xfns): Intern and staticpro it.
10567 (x_specified_cursor_type): Handle `hbar' cursor.
10568
10569 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
10570 not defined.
10571
105722002-04-18 Richard M. Stallman <rms@gnu.org>
10573
10574 * textprop.c (remove_properties): New arg LIST allows scanning
10575 either a list or a plist.
10576 (interval_has_some_properties_list): New function, like
10577 interval_has_some_properties using list instead of plist.
10578 All callers changed.
10579 (Fremove_list_of_text_properties): New function.
10580 (syms_of_textprop): Defsubr it.
10581
105822002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10583
10584 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
10585
105862002-04-17 Juanma Barranquero <lektu@terra.es>
10587
10588 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
10589
105902002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
10591
10592 * window.c (coordinates_in_window): Don't report on margin area
10593 if its width is zero.
10594
105952002-04-16 Jason Rumney <jasonr@gnu.org>
10596
10597 * w32fns.c (Fx_file_dialog): Decode file name before using.
10598
10599 * w32term.c (construct_drag_n_drop): Likewise.
10600
106012002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
10602
10603 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
10604 store load-history in pure space.
10605
10606 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
10607
106082002-04-16 Stefan Monnier <monnier@cs.yale.edu>
10609
10610 * xterm.c (Qlatin_1, Qutf_8): New vars.
10611 (syms_of_xterm): Initialize them.
10612 (XTread_socket): Eliminate incorrect optimization that tried to avoid
10613 decoding the output of X*LookupString.
10614 Always use latin-1 to decode the output of XLookupString.
10615 Try Xutf8LookupString if XmbLookupString failed.
10616
10617 * region-cache.c (new_region_cache): Use BEG.
10618
106192002-04-16 Gerd Moellmann <gerd@gnu.org>
10620
10621 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
10622 configuration files.
10623 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
10624 returns 0.
10625
106262002-04-15 Andreas Schwab <schwab@suse.de>
10627
10628 * config.in: Regenerated using autoheader.
10629
10630 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
10631 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
10632 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
10633 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
10634 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
10635 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
10636 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
10637 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
10638 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
10639 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
10640 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
10641 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
10642 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
10643 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
10644 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
10645 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
10646 STACK_DIRECTION, now set by autoconf.
10647
106482002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10649
10650 * dispnew.c (marginal_area_string): Sort arguments.
10651
10652 * dispextern.h (marginal_area_string): Add prototype.
10653
106542002-04-13 Richard M. Stallman <rms@gnu.org>
10655
10656 * fileio.c (Finsert_file_contents):
10657 Don't call temp_output_buffer_setup--do just part, by hand.
10658
10659 * coding.c (run_pre_post_conversion_on_str):
10660 Don't call temp_output_buffer_setup--do just part, by hand.
10661
10662 * keyboard.c (command_loop_1): Don't call start_hourglass
10663 or cancel_hourglass when executing a macro.
10664
10665 * marker.c (count_markers): New function.
10666
10667 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
10668 grow without limit. Move recently used elements to the front.
10669
106702002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
10671
10672 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
10673
106742002-04-12 Gerd Moellmann <gerd@gnu.org>
10675
10676 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
10677 rows marginal areas.
10678 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
10679 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
10680
10681 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
10682
106832002-04-12 Dave Love <fx@gnu.org>
10684
10685 * dispnew.c (marginal_area_string): New.
10686
10687 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
10688 (Qleft_margin, Qright_margin): Declare.
10689 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
10690
10691 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
10692 note_mode_line_highlight and extended.
10693
10694 * keyboard.c (Qleft_margin, Qright_margin): Declare.
10695 (make_lispy_event): Deal with mouse events in margins.
10696
106972002-04-12 Stefan Monnier <monnier@cs.yale.edu>
10698
10699 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
10700
10701 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
10702 than deactivating the mark if tmm is set to `lambda'.
10703 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
10704 Use a single event for HELP_EVENT.
10705 (Fexecute_extended_command): Save last_point_position.
10706
107072002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10708
10709 * lisp.h (Fpropertize): Add prototype.
10710
10711 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
10712
107132002-04-10 Colin Walters <walters@verbum.org>
10714
10715 * config.in: Add HAVE_SHARED_GAME_DIR.
10716
10717 * callproc.c: (Vgame_score_directory): New variable.
10718 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
10719
107202002-04-10 Richard M. Stallman <rms@gnu.org>
10721
10722 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
10723
107242002-04-09 Stefan Monnier <monnier@cs.yale.edu>
10725
10726 * minibuf.c (read_minibuf): Use empty_string.
10727 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
10728 Short-circuit the search as soon as it "failed".
10729 (Fall_completions): Allow lambda forms and lists of strings for alist.
10730 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
10731 when require_match is nil.
10732 (Ftest_completion): Rename from `test_completion' and export to elisp.
10733 Call the predicate also when alist is a list.
10734 Obey Vcompletion_regexp_list.
10735 (do_completion, Fminibuffer_complete_and_exit): Use it.
10736 (Fassoc_string): Rename from `assoc_for_completion'.
10737 Allow list of strings as well and export to elisp.
10738
107392002-04-08 Stefan Monnier <monnier@cs.yale.edu>
10740
10741 * puresize.h (BASE_PURESIZE): Increase to 900KB.
10742
107432002-04-08 Juanma Barranquero <lektu@terra.es>
10744
10745 * w32.c (sys_accept): Don't hide variable `s'.
10746
107472002-04-05 Gerd Moellmann <gerd@gnu.org>
10748
10749 * callint.c (Fcall_interactively): Use INTEGERP instead of
10750 NUMBERP for checking Vhistory_length.
10751
107522002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10753
10754 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
10755 Doc fix to reflect it.
10756
107572002-04-04 Richard M. Stallman <rms@gnu.org>
10758
10759 * xdisp.c (display_mode_element): New arg RISKY.
10760 Disregard text props found or specified within a variable
10761 that isn't marked risky-local-variable.
10762 (Qrisky_local_variable): New variable.
10763 (syms_of_xdisp): Init and staticpro it.
10764
107652002-04-04 Stefan Monnier <monnier@cs.yale.edu>
10766
10767 * undo.c (record_point): New fun.
10768 (record_delete, record_insert): Use it.
10769
107702002-04-03 Juanma Barranquero <lektu@terra.es>
10771
10772 * doc.c (Fdocumentation): Add missing parentheses.
10773 (Fdocumentation_property): Likewise.
10774
107752002-04-03 Stefan Monnier <monnier@cs.yale.edu>
10776
10777 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
10778 data is 0, just return nil.
10779
107802002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
10781
10782 * msdos.c (syms_of_msdos): Fix last change with
10783 mouse_autoselect_window.
10784
107852002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10786
10787 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
10788 mouse_autoselect_window.
10789
107902002-04-02 Stefan Monnier <monnier@cs.yale.edu>
10791
10792 * keyboard.c (make_lispy_event): Handle unknown keysyms together
10793 with system-specific keysyms. Use it also for unknown function keys.
10794
10795 * doc.c (reread_doc_file): Return whether reload was attempted.
10796 (Fdocumentation, Fdocumentation_property): Don't try to reload
10797 if the doc is 0 and only ask once.
10798
10799 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
10800
108012002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
10802
10803 * keyboard.c (read_char): If the event was Qselect_window,
10804 restore timer_idleness_start_time to its previous value.
10805
10806 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
10807
108082002-04-01 Stefan Monnier <monnier@cs.yale.edu>
10809
10810 * region-cache.c (new_region_cache): Use BEG.
10811
10812 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
10813 Use BEG and BEG_BYTE.
10814
10815 * doc.c (get_doc_string): Return nil if the location is wrong.
10816 (reread_doc_file): New fun.
10817 (Fdocumentation, Fdocumentation_property):
10818 Call it if get_doc_string fails.
10819 (Fsnarf_documentation): Make it work for a dumped Emacs.
10820
10821 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
10822 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
10823
10824 * charset.c (Fstring): Allow 0 arguments.
10825
10826 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
10827
10828 * process.c (DATAGRAM_CONN_P, list_processes_1)
10829 (Fprocess_datagram_address, Fset_process_datagram_address)
10830 (Fset_network_process_options, server_accept_connection):
10831 Fix some int/Lisp_Object confusions (thank you union types).
10832
108332002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10834
10835 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
10836
10837 * w32term.c: Likewise.
10838 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
10839
10840 * keyboard.c (Qselect_window): New symbol.
10841 (head_table): Use it.
10842 (keys_of_keyboard): Bound select-window event to handle-select-window.
10843 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
10844
10845 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
10846 (last_window): New variable.
10847 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
10848 (note_mouse_movement): Remove reimplemented code in #if 0.
10849 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
10850 Emacs windows.
10851
10852 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
10853
108542002-03-31 Gerd Moellmann <gerd@gnu.org>
10855
10856 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
10857 Callers changed.
10858
108592002-03-30 Richard M. Stallman <rms@gnu.org>
10860
10861 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
10862 loop whenever it stops making progress.
10863
10864 * widget.c (set_frame_size): Don't call change_frame_size.
10865
108662002-03-30 Gerd Moellmann <gerd@gnu.org>
10867
10868 * dispnew.c (direct_output_for_insert):
10869 Call mark_window_display_accurate.
10870
108712002-03-29 Jason Rumney <jasonr@gnu.org>
10872
10873 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
10874
108752002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
10876
10877 * Makefile.in (lread.o): Depend on coding.h.
10878
10879 * lread.c (openp, Fload): Encode the file name before passing it
10880 to `stat', `access', and `emacs_open'.
10881 (openp): GCPRO the encoded file name. Don't recompute Lisp
10882 strings unnecessarily.
10883
108842002-03-29 Kim F. Storm <storm@cua.dk>
10885
10886 * fns.c (Flax_plist_put): Doc fix.
10887
108882002-03-28 Miles Bader <miles@gnu.org>
10889
10890 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
10891
108922002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10893
10894 * process.c (set-network-process-options): Add usage.
10895 (make-network-process): Doc fix.
10896
108972002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
10898
10899 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
10900
109012002-03-26 Richard M. Stallman <rms@gnu.org>
10902
10903 * fns.c (Fsubstring_no_properties): New function.
10904 (Flax_plist_get, Flax_plist_put): New functions.
10905 (syms_of_fns): defsubr them.
10906
10907 * xdisp.c (update_menu_bar): Test only update_mode_lines;
10908 don't test or alter w->update_mode_line.
10909
10910 * window.c (Fdisplay_buffer): Doc fix.
10911
109122002-03-24 Richard M. Stallman <rms@gnu.org>
10913
10914 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
10915
109162002-03-24 Gerd Moellmann <gerd@gnu.org>
10917
10918 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
10919 (Fdefmacro): Handle `(declare ...)'.
10920 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
10921 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
10922
109232002-03-24 Jason Rumney <jasonr@gnu.org>
10924
10925 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
10926 (xbm_file_p): Add prototypes.
10927 (xbm_format, xbm_image_p): Sync with xfns.c.
10928 (reflect_byte): New function.
10929 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
10930 (xbm_load_image): Create bitmaps with a depth of 1.
10931 (init_xfns): Enable XBM images.
10932
109332002-03-23 Jason Rumney <jasonr@gnu.org>
10934
10935 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
10936 correctly. Do not pass up_modifier to keyboard buffer.
10937
10938 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
10939
109402002-03-22 Stefan Monnier <monnier@cs.yale.edu>
10941
10942 * Makefile.in (bootstrapclean): New target.
10943 (bootstrap-temacs, bootstrap-doc): Remove.
10944 (bootstrap-emacs): Use a bog-standard `temacs'.
10945 Don't bother to build a DOC file.
10946
10947 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
10948
10949 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
10950 in temacs even if !CANNOT_DUMP.
10951 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
10952
10953 * alloc.c (check_pure_size): Only output a warning.
10954
109552002-03-22 Jason Rumney <jasonr@gnu.org>
10956
10957 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
10958 supported.
10959
10960 * w32term.c (zv_bits): Declare as short, for word alignment.
10961 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
10962 (syms_of_w32term): Define x-use-underline-position-properties.
10963
10964 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
10965 (clear_image_cache): Block input, fix logic, clear matrices in
10966 all frames that share this cache.
10967
109682002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
10969
10970 * emacs.c (main): Update the Copyright year in the blurb printed
10971 by "emacs --version".
10972
10973 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
10974
10975 * xterm.c (XTread_socket): If XK_ISO_Lock and
10976 XK_ISO_Last_Group_Lock are defined, handle keysyms between
10977 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
10978
109792002-03-21 Kim F. Storm <storm@cua.dk>
10980
10981 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
10982 menu-bar bindings in keymap and local-map properties _are_ used.
10983 But try keymap property first in accordance with 2002-01-03 patch.
10984 Added comment describing why this is not always reliable.
10985 (tool_bar_items): Ditto for tool-bar.
10986
109872002-03-21 Jason Rumney <jasonr@gnu.org>
10988
10989 * w32fns.c (x_clear_image_1): Disable color table code.
10990
109912002-03-21 Kim F. Storm <storm@cua.dk>
10992
10993 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
10994 removed the wrong version of the DEFUN macro; fixed it.
10995
10996 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
10997 Fmember rather than Fmemq).
10998 (Fprovide): Check that subfeatures is a list.
10999
11000 * process.c (QCfeature, QCdatagram): Removed variables.
11001 (QCtype, Qdatagram): New variables.
11002 (network_process_featurep): Removed function.
11003 (Fmake_network_process): Removed :feature check.
11004 Use :type 'datagram instead of :datagram t to create a datagram
11005 socket. This allows us to add other connection types (e.g. raw
11006 sockets) later in a consistent manner.
11007 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11008 supported subfeatures for feature make-network-process.
11009 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11010 Intern and staticpro QCtype and Qdatagram.
11011 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11012
11013 * xfns.c: (QCtype): Remove duplicate declaration and
11014 initialization (is now declared in process.c).
11015
11016 * w32fns.c: (QCtype): Remove duplicate declaration and
11017 initialization (is now declared in process.c).
11018
110192002-03-21 Richard M. Stallman <rms@gnu.org>
11020
11021 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11022 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11023 when jumping to `fail' to avoid undoing reg changes in the
11024 last iteration of the loop.
11025 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11026
11027 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11028 Depend on process.h.
11029
110302002-03-20 Jason Rumney <jasonr@gnu.org>
11031
11032 Most of the following changes are still conditional on HAVE_IMAGES
11033 which is not set by default on Windows.
11034
11035 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11036
11037 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11038 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11039 (four_corners_best, x_clear_image_1, x_clear_image)
11040 (x_alloc_image_color, postprocess_image)
11041 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11042 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11043 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11044
11045 * w32gui.h (struct XImage): Define.
11046
11047 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11048 extract mouse co-ordinates.
11049
110502002-03-20 Jason Rumney <jasonr@gnu.org>
11051
11052 * w32.c (init_winsock): Dynamically load new server and UDP
11053 socket functions.
11054 (socket_to_fd): New function.
11055 (sys_socket): Use it.
11056 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11057 (sys_recvfrom, sys_sendto): New wrapper functions.
11058
11059 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11060 and initialization.
11061
11062 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11063
110642002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11065
11066 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11067 Don't use "sun" as a variable, it's a predefined constant on Sun
11068 machines.
11069
110702002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11071
11072 * bytecode.c (Fbyte_code): Revert last change.
11073
110742002-03-19 Kim F. Storm <storm@cua.dk>
11075
11076 * makefile.w32-in (LIBS): Add $(WSOCK32).
11077 From David Ponce <dponce@voila.fr>.
11078
110792002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11080
11081 * process.c (wait_reading_process_input): Move variables `pname'
11082 and `pnamelen' down where they are used.
11083
11084 * bytecode.c (Fbyte_code): Discard unused computed value to
11085 prevent gcc warning.
11086
11087 * lisp.h (Fplist_member): Add prototype.
11088
110892002-03-18 Kim F. Storm <storm@cua.dk>
11090
11091 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11092 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11093
11094 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11095 Remove explicit GNU_LINUX settings for datagram support.
11096
110972002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11098
11099 * process.c (Fmake_network_process): Remove unused variable `sa'.
11100 Doc fix. Add usage:.
11101 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11102
111032002-03-17 Richard M. Stallman <rms@gnu.org>
11104
11105 * xdisp.c (cursor_type_changed): New variable.
11106 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11107 Clear it when clearing windows_or_buffers_changed.
11108 (try_cursor_movement, redisplay_window, try_window_id)
11109 (try_window_reusing_current_matrix): Test cursor_type_changed
11110 along with windows_or_buffers_changed.
11111
11112 * window.h (cursor_type_changed): New variable.
11113
11114 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11115 not update_mode_lines, and always set it to 1.
11116
11117 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11118 if no frames needed redrawing.
11119
111202002-03-17 Kim F. Storm <storm@cua.dk>
11121
11122 The following changes add support for network server processes,
11123 datagram connections, and local (unix) sockets.
11124
11125 * process.h (struct Lisp_Process): New member log.
11126 Doc fix: Member command used to indicate stopped network process.
11127 Doc fix: Member childp contains plist for network process.
11128 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11129
11130 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11131 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11132 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11133 New variables.
11134 (NETCONN1_P): New macro.
11135 (DATAGRAM_SOCKETS): New conditional symbol.
11136 (datagram_address): New array.
11137 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11138 (status_message): Use concat3.
11139 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11140 for a stopped network process.
11141 (Fset_process_buffer): Update contact plist for network process.
11142 (Fset_process_filter): Ditto. Don't enable input for stopped
11143 network processes. Server must listen, even if filter is t.
11144 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11145 New functions.
11146 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11147 (Fprocess_contact): Added KEY argument. Handle datagrams.
11148 (list_processes_1): Optionally show only processes with the query
11149 on exit flag set. Dynamically adjust column widths. Omit tty
11150 column if not needed. Report stopped network processes.
11151 Identify server and datagram network processes.
11152 (Flist_processes): New optional arg `query-only'.
11153 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11154 (conv_lisp_to_sockaddr, set_socket_options)
11155 (network_process_featurep, unwind_request_sigio): New helper functions.
11156 (Fprocess_datagram_address, Fset_process_datagram_address):
11157 (Fset_network_process_options): New lisp functions.
11158 (Fopen_network_stream): Removed. Now defined in simple.el.
11159 (Fmake_network_process): New lisp function. Code is based on previous
11160 Fopen_network_stream, but heavily reworked with new property list based
11161 argument list, support for datagrams, server processes, and local
11162 sockets in addition to old client-only functionality.
11163 (server_accept_connection): New function.
11164 (wait_reading_process_input): Use it to handle incoming connects.
11165 Do not enable input on a new connection if process is stopped.
11166 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11167 (send_process): Handle datagram sockets.
11168 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11169 network process is indicated by setting command field to t .
11170 (Fprocess_send_eof): No-op if datagram connection.
11171 (Fstatus_notify): Don't read input for a stream server socket or a
11172 stopped network process.
11173 (init_process): Initialize datagram_address array.
11174 (syms_of_process): Intern and staticpro new variables, defsubr new
11175 functions.
11176
111772002-03-16 Jason Rumney <jasonr@gnu.org>
11178
11179 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11180 startup case.
11181
111822002-03-16 Richard M. Stallman <rms@gnu.org>
11183
11184 * xdisp.c (redisplay_internal, redisplay_windows):
11185 Use list_of_error to call internal_condition_case_1.
11186 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11187 so as to catch all errors with no possibility of debugger redisplay.
11188 (list_of_error): New variable.
11189 (syms_of_xdisp): Init and staticpro it.
11190
11191 * print.c (print_object): Delete `\ ' from printed rep of frame.
11192
111932002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11194
11195 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11196 until its implementation is fixed.
11197
111982002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11199
11200 * xfns.c (png_load): Remove unused variable `gamma_str'.
11201
112022002-03-14 Richard M. Stallman <rms@gnu.org>
11203
11204 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11205
112062002-03-14 Miles Bader <miles@gnu.org>
11207
11208 * intervals.c (adjust_for_invis_intang): New function.
11209 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11210 work for dealing with invisible+intangible regions. Do so before
11211 and after both forward and backward movements, to handle both
11212 front-sticky and rear-sticky cases.
11213 * textprop.c (text_property_stickiness): Function moved here from
11214 `editfns.c'.
11215 * intervals.h (text_property_stickiness): New declaration.
11216 * editfns.c (char_property_eq): Function removed.
11217 (text_property_stickiness): Function moved to `textprop.c'.
11218
112192002-03-13 Jason Rumney <jasonr@gnu.org>
11220
11221 * config.in: Add STRFTIME_NO_POSIX2.
11222
11223 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11224 and %OX when underlying strftime does not.
11225
112262002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11227
11228 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11229 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11230 line) to avoid annoying flicker.
11231 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11232 (XTread_socket): Mark it static.
11233
11234 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11235
112362002-03-13 Kim F. Storm <storm@cua.dk>
11237
11238 * puresize.h (BASE_PURESIZE): Increase to 775000.
11239
112402002-03-12 Juanma Barranquero <lektu@terra.es>
11241
11242 * editfns.c (syms_of_editfns): Fix typo.
11243
112442002-03-12 Gerd Moellmann <gerd@gnu.org>
11245
11246 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11247 Include termopt.h for interrupt_input.
11248
112492002-03-11 Andreas Schwab <schwab@suse.de>
11250
11251 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11252
112532002-03-11 Gerd Moellmann <gerd@gnu.org>
11254
11255 * xterm.c (note_mouse_movement): Put code for
11256 x_autoselect_window_p in #if 0.
11257
11258 * lread.c (Fload): Don't assume that message_with_string uses the
11259 string it is given like a C string.
11260
112612002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11262
11263 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11264
11265 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11266 x_session_have_connection.
11267 (x_initialize): Add call to x_session_initialize.
11268
11269 * termhooks.h (enum event_kind): Add save_session_event.
11270
11271 * keyboard.c: Add Emacs event save_session_event.
11272
11273 * emacs.c (main): Add call to syms_of_xsmfns.
11274
11275 * lisp.h: Declare syms_of_xsmfns as extern.
11276
11277 * config.in: Add HAVE_X_SM.
11278
11279 * Makefile.in (LIBXT): Add -lSM -lICE
11280 if HAVE_X_SM and not USE_X_TOOLKIT.
11281 (XOBJ): New file xsmfns.c added.
11282
11283 * xsmfns.c: New file for X session management.
11284
112852002-03-09 Jason Rumney <jasonr@gnu.org>
11286
11287 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11288 read-only when setting modified time.
11289
112902002-03-08 Gerd Moellmann <gerd@gnu.org>
11291
11292 * xdisp.c (move_it_vertically_backward): At the end of the function,
11293 when moving forward by lines, treat terminal frames specially.
11294
11295 * keyboard.c (echo_char): Make sure to add a separator between
11296 keys even if echo_dash hasn't been called.
11297
11298 * xdisp.c: Use new string macros.
11299 (update_echo_area): Pass number of bytes to message3 instead of
11300 number of chars.
11301 (set_message_1): Don't access a string's size_byte directly.
11302 (decode_mode_spec_coding): Use number of bytes of eoltype string
11303 instead number of chars.
11304
11305 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11306
113072002-03-08 Juanma Barranquero <lektu@terra.es>
11308
11309 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11310 24-bit.
11311
113122002-03-06 Jason Rumney <jasonr@gnu.org>
11313
11314 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11315
113162002-03-06 Gerd Moellmann <gerd@gnu.org>
11317
11318 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11319 (cancel_echoing, echo_length, echo_truncate): Changed to
11320 work with new kboard definition.
11321 (echo_now): Use message3_nolog instead of message2_nolog.
11322
11323 * alloc.c (mark_kboards): Mark echo_string.
11324
11325 * keyboard.h (ECHOBUFSIZE): Removed.
11326 (struct kboard): Member echoptr removed, member echobuf renamed
11327 to echo_string.
11328
11329 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11330 message3 instead of message2 to display the message using STRING's
11331 text properties.
11332
113332002-03-05 Andreas Schwab <schwab@suse.de>
11334
11335 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11336
113372002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11338
11339 * frame.c (default-frame-alist): Explain that setting it doesn't
11340 affect existing frames.
11341
113422002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11343
11344 * indent.c (skip_invisible): Fix my brain fart.
11345
11346 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11347
113482002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11349
11350 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11351 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11352 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11353 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11354 and variables to use EMACS_INT instead of just int.
11355
11356 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11357
113582002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11359
11360 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11361 environment, pass it down with corrected value.
11362
113632002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11364
11365 * lread.c (read_filtered_event): Do not call start_hourglass
11366 before returning.
11367
113682002-03-04 Juanma Barranquero <lektu@terra.es>
11369
11370 * w32term.c (x_display_and_set_cursor): Fix typo.
11371
113722002-03-03 Richard M. Stallman <rms@gnu.org>
11373
11374 * fileio.c (Fmake_temp_name): Doc fix.
11375
113762002-03-03 Gary Wong <gtw@gnu.org>
11377
11378 * termcap.c [!emacs]: Replace ospeed for building standalone
11379 libtermcap, for binary compatibility.
11380
11381 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11382
113832002-03-03 Richard M. Stallman <rms@gnu.org>
11384
11385 * xrdb.c (file_p): Rename arg `path' to `filename'.
11386
11387 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11388 only if it is an integer.
11389
11390 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11391 If png_get_sRGB gives an answer, call png_set_gamma
11392 using the default image gamma value.
11393
11394 * lread.c (read1): When reading from a file, default string to
11395 multibyte only if it has some multibyte characters.
11396
11397 * print.c (print_object): Output multibyte chars 128...255
11398 using \x even if ! print_escape_multibyte.
11399
11400 * xdisp.c (display_mode_element): Move the places where
11401 bytepos, charpos, this, and lisp_string are set.
11402 Use lisp_string to set bytepos.
11403
11404 * xdisp.c (redisplay_internal):
11405 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11406
11407 * xdisp.c (display_mode_element): Merge properties specified with
11408 :propertize onto those that come with the string.
11409
114102002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11411
11412 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11413 automatic-hscrolling. Users changed.
11414 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11415 Users changed.
11416 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11417
114182002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11419
11420 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11421
114222002-03-02 Kim F. Storm <storm@cua.dk>
11423
11424 * window.c (Fminibuffer_selected_window): New function.
11425 (syms_of_window): Defsubr it.
11426
114272002-03-01 Kim F. Storm <storm@cua.dk>
11428
11429 * window.h (struct window): New member phys_cursor_width.
11430
11431 * window.c (make_window, replace_window): Init phys_cursor_width.
11432
11433 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11434 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11435
11436 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11437 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11438
11439 * lisp.h (GCPRO6): New macro.
11440
11441 * process.c (Fopen_network_stream): Use GCPRO6.
11442
114432002-03-01 Kim F. Storm <storm@cua.dk>
11444
11445 * process.c (Qconnect, Qfailed): New variables.
11446 (syms_of_process): Intern and staticpro them.
11447 (Fprocess_status): Document connect and failed return values.
11448 [NON_BLOCKING_CONNECT]: New conditional.
11449 (connect_wait_mask, num_pending_connects): New variables.
11450 (status_message): Convert Qfailed status.
11451 (Fopen_network_stream): Added support for non-blocking connect.
11452 New optional args: filter, sentinel, non_blocking. Doc updated.
11453 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11454 (deactivate_process): Handle pending non-blocking connect.
11455 (wait_reading_process_input): Poll for status of non-blocking
11456 connects. Exec sentinel directly when connect succeeds.
11457 (status_notify): Don't read process output if not yet connected.
11458
114592002-02-28 Kim F. Storm <storm@cua.dk>
11460
11461 * window.c: (minibuf_selected_window): Renamed from
11462 Vminibuf_selected_window. Users changed.
11463 (syms_of_window): Staticpro it.
11464
114652002-02-26 Kim F. Storm <storm@cua.dk>
11466
11467 The following changes add a new Vminibuf_selected_window variable
11468 which is similar to Vminibuf_scroll_window, but which is only set
11469 on entry to the minibuffer (from a non-minibuffer window):
11470
11471 * window.c: (Vminibuf_selected_window): New variable.
11472 (struct save_window_data): New member minibuf_selected_window.
11473 (Fset_window_configuration): Restore Vminibuf_selected_window.
11474 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11475 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11476 (compare_window_configurations): Compare minibuf_selected_window.
11477
11478 * window.h: (Vminibuf_selected_window): Declare extern.
11479
11480 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11481 entry to minibuffer or on entry from a non-minibuffer window.
11482
11483 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11484 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11485
11486 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11487 instead of Vminibuf_scroll_window when deciding in which window
11488 the region should be highlighted. Consequently, the region remains
11489 highlighteded even when a completion buffer is also displayed.
11490
114912002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11492
11493 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11494
11495 * xselect.c (Qcompound_text_with_extensions): Renamed from
11496 Qcompound_text_no_extensions.
11497 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11498
114992002-02-26 Juanma Barranquero <lektu@terra.es>
11500
11501 * w32proc.c (syms_of_ntproc): Doc fix.
11502
115032002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11504
11505 * intervals.h: Include "dispextern.h" unconditionally.
11506
115072002-02-24 Jason Rumney <jasonr@gnu.org>
11508
11509 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11510 and disp-table.elc.
11511 (lisp): Add emacs-lisp/backquote.elc.
11512
115132002-02-24 Kim F. Storm <storm@cua.dk>
11514
11515 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11516 The validation of the event type was too strict as it didn't
11517 allow string events; buffer names are used in bindings for
11518 menu-bar-select-buffer (see `menu-bar-update-buffers').
11519
115202002-02-23 Kim F. Storm <storm@cua.dk>
11521
11522 The following changes rework my patch of 2002-02-06 which
11523 added command remapping by entering the commands directly into
11524 the keymaps. Now, command remapping uses an explicit `remap'
11525 prefix in the keymaps, i.e. [remap COMMAND].
11526
11527 * keymap.c (Qremap, remap_command_vector): New variables.
11528 (is_command_symbol): Removed function.
11529 (Fdefine_key): No longer accept a symbol for KEY.
11530 Added validation of [remap COMMAND] argument for KEY.
11531 The DEF is no longer required to be a symbol when remapping a command.
11532 (Fremap_command): New function to remap command through keymaps.
11533 (Flookup_key): Perform command remapping initiated by
11534 Fremap_command directly for speed.
11535 (Fkey_binding): Use Fremap_command for command remapping.
11536 (where_is_internal): Handle new command remapping representation.
11537 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11538 staticpro them. Defsubr Fremap_command.
11539
11540 * keymap.h (Fremap_command): Declare extern.
11541 (is_command_symbol): Remove extern.
11542
11543 * keyboard.c (command_loop_1): Use Fremap_command for command
11544 remapping; now try command remapping for all symbols.
11545
115462002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11547
11548 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11549
115502002-02-23 Jason Rumney <jasonr@gnu.org>
11551
11552 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11553 on the string before encoding it.
11554 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11555 after decoding it.
11556
11557 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11558
115592002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11560
11561 * w32term.c (enter_timestamp): Remove unused static variable to
11562 prevent warning.
11563
11564 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
11565
115662002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11567
11568 * w16select.c (Fw16_get_clipboard_data): Fix last change.
11569
11570 * xselect.c (selection_data_to_lisp_data): Fix last change.
11571
115722002-02-22 Jason Rumney <jasonr@gnu.org>
11573
11574 * w32term.h (struct w32_output): New member menu_command_in_progress.
11575
11576 * w32menu.c (menubar_selection_callback): Free the menu and
11577 clear the menu_command_in_progress flag.
11578
11579 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
11580 (menu_free_timer): New variable.
11581 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
11582 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
11583 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
11584 menu command is in progress.
11585 <WM_COMMAND>: Set the menu_command_in_progress flag.
11586 Kill any menu_free_timer that is running.
11587
11588 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
11589 Call ExtTextOutA rather than ExtTextOut.
11590
115912002-02-22 Eli Zaretskii <eliz@gnu.org>
11592
11593 * puresize.h (BASE_PURESIZE): Increase to 755000.
11594
115952002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11596
11597 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
11598 on the string before encoding it.
11599 (Fw16_get_clipboard_data): Run post-read-conversion on the string
11600 after decoding it.
11601
116022002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
11603
11604 Support for ICCCM Extended Segments in X selections:
11605
11606 * xselect.c <Qcompound_text_no_extensions>: New variable.
11607 (syms_of_xselect): Intern and staticpro it.
11608 (selection_data_to_lisp_data): Run post-read-conversion on decoded
11609 selection text.
11610 (lisp_data_to_selection_data): If next-selection-coding-system is
11611 compound-text-no-extensions, set the type of selection to be
11612 compound-text.
11613
11614 * xterm.h (x_encode_text): Update prototype.
11615
11616 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
11617 callers changed. If SELECTIONP is non-zero, run the
11618 pre-write-conversion function before encoding the selection text.
11619
116202002-02-21 Kim F. Storm <storm@cua.dk>
11621
11622 * frame.c (syms_of_frame): Change mouse-highlight default to t.
11623
11624 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
11625 Correct composing of language-change event.
11626
116272002-02-20 Kim F. Storm <storm@cua.dk>
11628
11629 * keyboard.c (menu_bar_items): Don't include keymap or local-map
11630 bindings at PT when building menu (the menu is not updated often
11631 enough for this to work reliable).
11632 (tool_bar_items): Likewise.
11633 (current_active_maps): Removed unused (and buggy) function.
11634
116352002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11636
11637 * xfns.c (gif_load): Use correct width and height for GIF images.
11638
116392002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
11640
11641 * floatfns.c (Fatan): Accept an optional second arg and call
11642 atan2 if passed 2 args.
11643
116442002-02-18 Jason Rumney <jasonr@gnu.org>
11645
11646 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
11647
116482002-02-17 Jason Rumney <jasonr@gnu.org>
11649
11650 * w32term.c (x_autoselect_window_p): New variable.
11651 (syms_of_w32term): DEFVAR_BOOL and initialize it.
11652 (note_mouse_movement): Use it.
11653
11654 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
11655
11656 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
11657
11658 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
11659 New variables.
11660 (syms_of_w32fns): Intern and staticpro them.
11661 (x_frame_parms) <"fullscreen">: New parameter.
11662 (x_fullscreen_move, x_set_fullscreen): New functions.
11663 (x_set_frame_parameters): Support Qfullscreen.
11664 (x_real_positions): Save x/y_pixels_diff frame params.
11665 (x_figure_window_size): Support full-screen frames.
11666 (Fx_create_frame): Default the fullscreen parameter.
11667
11668 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
11669 (x_fullscreen_adjust): New functions.
11670 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
11671 fullscreen. Call x_check_fullscreen_move, and set the
11672 want_fullscreen member of output_data.w32
11673 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
11674
11675 * w32term.h: New enum for FULLSCREEN_* constants.
11676 (struct w32_output): New members want_fullscreen, x_pixels_diff,
11677 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
11678 (x-fullscreen-adjust): New prototype.
11679
116802002-02-17 Kim F. Storm <storm@cua.dk>
11681
11682 * frame.c: (Vmouse_highlight): New variable.
11683 (syms_of_frame): DEFVAR_LISP it.
11684
11685 * frame.h: (Vmouse_highlight): Declare extern.
11686
11687 * xterm.h (struct x_display_info): Add mouse_face_hidden.
11688
11689 * xterm.c (disable_mouse_highlight): Removed variable.
11690 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11691 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11692 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
11693 and on after keyboard input.
11694 (x_term_init): Initialize mouse_face_hidden.
11695
11696 * msdos.h (struct display_info): Add mouse_face_hidden.
11697
11698 * msdos.c (disable_mouse_highlight): Removed variable.
11699 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11700 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
11701 (internal_terminal_init): Initialize mouse_face_hidden.
11702 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
11703 and on after keyboard input.
11704
11705 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
11706
11707 * w32term.c (disable_mouse_highlight): Removed variable.
11708 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
11709 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
11710 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
11711 and on after keyboard input.
11712 (w32_initialize_display_info): Initialize mouse_face_hidden.
11713
117142002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
11715
11716 * msdos.c (last_mouse_window): New variable.
11717 (dos_rawgetc): Fix last change--if the mouse is in the same window
11718 as recorded in last_mouse_window, don't select this window.
11719
11720 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
11721
11722 * msdos.c (x_autoselect_window_p): New variable.
11723 (syms_of_msdos): Defvar it.
11724 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
11725 which the last mouse movement occured, unless it is already selected.
11726
11727 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
11728 New variables.
11729 (syms_of_xdisp): DEVFAR them.
11730 (hscroll_window_tree): Use automatic_hscroll_margin and
11731 Vautomatic_hscroll_step to compute the amount of window scrolling.
11732
117332002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11734
11735 * xterm.c (x-autoselect-window): New variable.
11736 (note_mouse_movement): Use it.
11737
11738 * keyboard.c: Do not include "systime.h" twice.
11739
117402002-02-15 Andreas Schwab <schwab@suse.de>
11741
11742 * puresize.h (BASE_PURESIZE): Increase to 9/5.
11743
11744 * alloc.c (NSTATICS): Increase to 1280.
11745
117462002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
11747
11748 * alloc.c (NSTATICS): Bump to 1026.
11749
11750 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
11751 (Vx_super_keysym): New variables.
11752 (syms_of_xterm): DEFVAR_LISP them.
11753 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
11754 variables to determine which keys to use for the various modifiers.
11755
117562002-02-13 Kim F. Storm <storm@cua.dk>
11757
11758 * window.c: (Vmode_line_in_non_selected_windows): Removed.
11759 (mode_line_in_non_selected_windows): New variable.
11760 (syms_of_window): DEFVAR_BOOL it.
11761
11762 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
11763 Use mode_line_in_non_selected_windows.
11764 (mode_line_in_non_selected_windows): Declare extern.
11765 (Vmode_line_in_non_selected_windows): Removed extern.
11766
117672002-02-13 Richard M. Stallman <rms@gnu.org>
11768
11769 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
11770 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
11771 (Fclear_this_command_keys): Doc fixes.
11772
11773 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
11774 (update_face_from_frame_parameter): Increment face_change_count
11775 and windows_or_buffers_changed to force redisplay using changed faces.
11776
11777 * xdisp.c (QCpropertize): New variable.
11778 (mode_line_proptrans_alist): New variable.
11779 (display_mode_element): New arg PROPS; all calls changed.
11780 Implement this, for strings.
11781 Handle literal output of strings by sharing the
11782 main-line code for strings, using local var `literal'.
11783 Handle :propertize feature.
11784 (syms_of_xdisp): Initialze and staticpro QCpropertize and
11785 mode_line_proptrans_alist.
11786
117872002-02-11 Kim F. Storm <storm@cua.dk>
11788
11789 * window.c: (Vmode_line_in_non_selected_windows): New variable.
11790 (syms_of_window): DEFVAR_LISP it.
11791
11792 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
11793 (CURRENT_MODE_LINE_FACE_ID): Use it.
11794 (Vmode_line_in_non_selected_windows): Declare extern.
11795
11796 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
11797 to get mode line face.
11798
117992002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
11800
11801 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
11802 variables; cus-start.el doesn't need them anymore.
11803
118042002-02-09 Kim F. Storm <storm@cua.dk>
11805
11806 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
11807 reduction. This fixes a display problem where stray newlines were
11808 inserted in the window (corrected by C-l). Clarified code (IMHO).
11809
118102002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
11811
11812 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
11813
11814 * xdisp.c (display_mode_lines): Fix last change.
11815
118162002-02-09 Jason Rumney <jasonr@gnu.org>
11817
11818 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
11819 match each other.
11820 (w32_load_system_font): Prevent Cleartype fonts from loading.
11821 (Fx_show_tip): Ensure tip frames are above other topmost windows.
11822
118232002-02-09 Kim F. Storm <storm@cua.dk>
11824
11825 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
11826 (CURRENT_MODE_LINE_HEIGHT): Use it.
11827 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
11828
11829 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
11830 (pos_visible_p, handle_face_prop): Likewise.
11831 (display_mode_lines): Likewise, but for the real selected window.
11832 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
11833
11834 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
11835 in non-selected windows.
11836 (realize_basic_faces): Realize it.
11837 (syms_of_term): Intern and staticpro it.
11838
118392002-02-08 Kim F. Storm <storm@cua.dk>
11840
11841 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
11842 Changed mail addresses to emacs-devel@gnu.org.
11843
118442002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
11845
11846 * fileio.c (Fsubstitute_in_file_name): If the file name includes
11847 ~user, and there's no such user, don't discard everything before ~user.
11848
11849 * floatfns.c (Fround): Doc fix.
11850
118512002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11852
11853 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
11854
118552002-02-07 Stefan Monnier <monnier@cs.yale.edu>
11856
11857 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
11858
118592002-02-07 Kim F. Storm <storm@cua.dk>
11860
11861 * keymap.c (where_is_internal): Only check whether definition is
11862 remapped if it fulfills is_command_symbol.
11863
118642002-02-07 Andreas Schwab <schwab@suse.de>
11865
11866 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
11867
11868 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
11869
118702002-02-06 Kim F. Storm <storm@cua.dk>
11871
11872 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
11873 defining command remapping. Doc updated.
11874 (Flookup_key): Remap command through keymap if KEY is a symbol.
11875 (is_command_symbol): New function.
11876 (Fkey_binding): Use it. New optional argument NO-REMAP.
11877 Doc updated. Callers changed. Perform command remapping via
11878 recursive call unless that arg is non-nil.
11879 (where_is_internal): New argument no_remap. Callers changed.
11880 Call recursively to find original key bindings for a remapped
11881 comand unless that arg is non-nil.
11882 (Fwhere_is_internal): New optional argument NO-REMAP.
11883 Doc updated. Callers changed. Pass arg to where_is_internal.
11884
11885 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
11886 (is_command_symbol): Added prototype.
11887
11888 * keyboard.c (Vthis_original_command): New variable.
11889 (syms_of_keyboard): DEFVAR_LISP it.
11890 (command_loop_1): Set it, and perform command remapping.
11891
118922002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11893
11894 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
11895
118962002-02-06 Jason Rumney <jasonr@gnu.org>
11897
11898 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
11899
119002002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
11901
11902 * charset.c (get_charset_id): Use if-else instead of ?:.
11903
119042002-02-06 Richard M. Stallman <rms@gnu.org>
11905
11906 * filelock.c (S_ISLNK): Define if not defined.
11907
119082002-02-03 Richard M. Stallman <rms@gnu.org>
11909
11910 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
11911
11912 * lread.c (read1): Redesign strategy for force_multibyte and
11913 force_singlebyte. Now is_multibyte records whether read_buffer
11914 is multibyte. Encountering any multibyte character makes it so.
11915
119162002-02-02 Stefan Monnier <monnier@cs.yale.edu>
11917
11918 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
11919 with the same sequence, map that sequence to f10 rather than f0.
11920
119212002-02-03 Andreas Schwab <schwab@suse.de>
11922
11923 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
11924 latter never being defined on GNU/Linux.
11925
119262002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
11927
11928 * xfaces.c (realize_default_face): Don't set the weight and slant of
11929 the default face to Qnormal, unless these attributes are unspecified.
11930
119312002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11932
11933 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
11934 Call cancel_hourglass unconditionally.
11935
11936 * eval.c (Fsignal): Remove duplicated declaration of
11937 the variable `display_hourglass_p'.
11938
119392002-01-31 Richard M. Stallman <rms@gnu.org>
11940
11941 * editfns.c (region_limit): Nicer error message.
11942
11943 * coding.c (decode_composition_emacs_mule):
11944 Give up if NCOMPONENT gets too large to index `component'.
11945
11946 * callint.c (check_mark): New arg to specify clearer error message.
11947 Callers changed.
11948
119492002-01-27 Richard M. Stallman <rms@gnu.org>
11950
11951 * minibuf.c (Fcompleting_read): Doc fix.
11952
119532002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11954
11955 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
11956 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
11957 Fix doc-strings.
11958
119592002-01-26 Richard M. Stallman <rms@gnu.org>
11960
11961 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
11962
11963 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
11964 and scroll_up_aggressively.
11965
119662002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11967
11968 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
11969
119702002-01-25 Stefan Monnier <monnier@cs.yale.edu>
11971
11972 * textprop.c (Fnext_property_change, Fnext_single_property_change)
11973 (Fprevious_property_change, Fprevious_single_property_change):
11974 Stay within the narrowed-buffer boundaries.
11975
119762002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
11977
11978 * term.c (Ftty_display_color_cells): New function.
11979 (syms_of_term): Defsubr it.
11980 (Ftty_display_color_cells, Ftty_display_color_p): Change the
11981 argument name to DISPLAY. Doc fix.
11982
11983 * dispextern.h: Add prototype for set_tty_color_mode and
11984 tty_setup_colors.
11985
119862002-01-24 Jason Rumney <jasonr@gnu.org>
11987
11988 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
11989 If region left to draw is not what was expected, mark the frame as
11990 garbaged.
11991
11992 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
11993 Combine the regions returned by BeginPaint and GetUpdateRect.
11994
119952002-01-23 Jason Rumney <jasonr@gnu.org>
11996
11997 * w32term.c (x_update_window_begin): Only hide caret if
11998 w32_use_visible_system_caret is set.
11999 (x_update_window_end): Only show caret if
12000 w32_use_visible_system_caret is set.
12001 (syms_of_w32term): Handle SystemParametersInfo call failing.
12002
12003 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12004
120052002-01-22 Richard M. Stallman <rms@gnu.org>
12006
12007 * unexelf.c (unexec): Define n so as to cause compilation error
12008 for the code where people have often written n instead of nn.
12009
12010 * .gdbinit (hookpost-run): Defined.
12011
120122002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12013
12014 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12015
120162002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12017
12018 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12019 if fullscreen is being set.
12020
120212002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12022
12023 * minibuf.c (Fminibuffer_contents)
12024 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12025 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12026
120272002-01-21 Richard M. Stallman <rms@gnu.org>
12028
12029 * window.c (check_frame_size): Fix minimum height calculation.
12030
120312002-01-20 Ken Raeburn <raeburn@gnu.org>
12032
12033 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12034 height before comparison.
12035 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12036
120372002-01-20 Jason Rumney <jasonr@gnu.org>
12038
12039 * w32term.c (w32_system_caret_width): Remove.
12040 (w32_use_visible_system_caret): New user flag.
12041 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12042 Windows reports a screen reader running.
12043 (x_update_window_begin): Hide the system caret.
12044 (x_update_window_end): Show the system caret.
12045 (x_display_and_set_cursor): Don't draw a cursor when
12046 w32_use_visible_system_caret is set. Do not adjust width.
12047
12048 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12049 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12050 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12051 the user requests it. Use system default width when creating.
12052 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12053
12054 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12055 New window messages.
12056
120572002-01-20 Richard M. Stallman <rms@gnu.org>
12058
12059 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12060
120612002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12062
12063 * doprnt.c (doprnt1): Fix typos in error call.
12064
120652002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12066
12067 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12068
120692002-01-20 Jason Rumney <jasonr@gnu.org>
12070
12071 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12072 that Windows returns. If a double check fails, try to guess how
12073 ExtTextOut is going to act.
12074
12075 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12076 in place of stricmp.
12077 (w32_list_synthesized_fonts): Removed.
12078 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12079 (struct enumfont_t): New element; list.
12080 (enum_font_cb2): List all style and charset variations of a font.
12081 (Fw32_select_font): New optional argument; include_proportional.
12082 Exclude vertical fonts. Exclude proportional fonts unless
12083 include_proportional is non-nil.
12084 (w32_enable_synthesized_fonts): Change to a boolean.
12085 (Fw32_send_sys_command): Doc fix.
12086
120872002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12088
12089 * dispnew.c (update_frame): Move the variable `tem' to the block
12090 where it is used.
12091
120922002-01-19 Jason Rumney <jasonr@gnu.org>
12093
12094 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12095 call to face-set-after-frame-default.
12096
120972002-01-18 Richard M. Stallman <rms@gnu.org>
12098
12099 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12100 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12101
121022002-01-17 Richard M. Stallman <rms@gnu.org>
12103
12104 * window.c (enlarge_window): When exceeding size of parent,
12105 directly delete all the siblings instead of trying to resize it.
12106
121072002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12108
12109 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12110
121112002-01-16 Henrik Enberg <henrik@enberg.org>
12112
12113 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12114
121152002-01-16 Kim F. Storm <storm@cua.dk>
12116
12117 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12118 is invisible. This can happen if cursor is on top line of a
12119 window, and we switch to a buffer with a header line.
12120
12121 * w32term.c (x_erase_phys_cursor): Ditto.
12122
121232002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12124
12125 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12126 `dont_resize' only when used.
12127
12128 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12129
121302002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12131
12132 * xdisp.c (display_mode_element): When computing charpos, depend
12133 on multibyteness of elt, not the text in field.
12134
121352002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12136
12137 * buffer.c (Fkill_all_local_variables):
12138 Increment `update_mode_lines' only once.
12139
121402002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12141
12142 * lisp.h (adjust_after_replace_noundo)
12143 (Fupdate_coding_systems_internal): Add prototypes.
12144
12145 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12146
121472002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12148
12149 Support for the --color command-line argument and tty-color-mode
12150 frame parameter:
12151
12152 * term.c (tty_default_color_capabilities, tty_setup_colors)
12153 (set_tty_color_mode): New functions.
12154 (term_init): Call tty_default_color_capabilities.
12155 (Qtty_color_mode_alist): New variable.
12156 (syms_of_term): Intern and staticpro it.
12157
12158 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12159 frames.
12160 (do_switch_frame): For termcap frames, switch the tty
12161 color mode as specified by the frame's parameters.
12162 (Qtty_color_mode): New variable.
12163 (syms_of_frame): Intern and staticpro it.
12164
12165 * emacs.c (USAGE2): Add the --color option.
12166 (standard_args): Ditto.
12167
121682002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12169
12170 * xterm.h (struct x_output): New members want_fullscreen,
12171 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12172 y_pixels_outer_diff.
12173 New enum for FULLSCREEN_* constants.
12174 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12175 is NULL.
12176 (x_fullscreen_adjust): Add prototype.
12177
12178 * emacs.c (USAGE2): Add the new full-screen arguments.
12179 (standard_args): Ditto.
12180
12181 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12182 New variables.
12183 (syms_of_xfns): Intern and staticpro them.
12184 (x_frame_parms) <"fullscreen">: New parameter.
12185 (x_fullscreen_move, x_set_fullscreen): New functions.
12186 (x_set_frame_parameters): Support for Qfullscreen.
12187 (x_real_positions): More accurate computation of the frame position.
12188 (x_figure_window_size): Support full-screen frames.
12189 (Fx_create_frame): Default the fullscreen parameter.
12190
12191 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12192 (XTread_socket) <Expose>: Call x_check_fullscreen.
12193 <ConfigureNotify>: Don't resize to fullscreen.
12194 Call x_check_fullscreen_move, and set the want_fullscreen member of
12195 output_data.x.
12196
121972002-01-13 Jason Rumney <jasonr@gnu.org>
12198
12199 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12200 for mice with more than 3 buttons.
12201
12202 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12203 (w32_read_socket): Handle new "XBUTTON" messages.
12204
12205 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12206 (syms_of_w32fns): DEFVAR_BOOL it.
12207 (w32_wnd_proc): Handle new "XBUTTON" messages.
12208
122092002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12210
12211 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12212
122132002-01-13 Andreas Schwab <schwab@suse.de>
12214
12215 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12216
122172002-01-12 Andreas Schwab <schwab@suse.de>
12218
12219 * .gdbinit (xbuffer): Remove address operator since data is now a
12220 pointer.
12221
122222002-01-11 Richard M. Stallman <rms@gnu.org>
12223
12224 * insdel.c (adjust_after_replace_noundo): New function.
12225
12226 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12227
122282002-01-09 Jason Rumney <jasonr@gnu.org>
12229
12230 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12231 when checking for multiple frames.
12232
122332002-01-08 Richard M. Stallman <rms@gnu.org>
12234
12235 * window.c (delete_window): Rewrite the code for changing the
12236 selected window to handle the case where WINDOW is not a leaf.
12237
122382002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12239
12240 * process.c (send_process): Set src_multibyte to 1 after the call
12241 top setup_coding_system, not before the call.
12242
122432002-01-07 Jason Rumney <jasonr@gnu.org>
12244
12245 * xmenu.c (set_frame_menubar, xmenu_show):
12246 (xdialog_show): Initialize wv->help to Qnil.
12247
12248 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12249 (w32_dialog_show): Initialize wv->help to Qnil.
12250
122512002-01-06 Jason Rumney <jasonr@gnu.org>
12252
12253 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12254
12255 * w32menu.c (w32_menu_display_help): Revert last change.
12256
12257 * xmenu.c (menu_highlight_callback): Revert last change.
12258
122592002-01-06 Andreas Schwab <schwab@suse.de>
12260
12261 * insdel.c (make_gap_larger): Make sure buffer size does not
12262 overflow range of int.
12263
122642002-01-05 Jason Rumney <jasonr@gnu.org>
12265
12266 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12267 OVERLAPS_P.
12268
12269 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12270
12271 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12272 to the left or to the right of the pointer, put it against
12273 the left screen edge.
12274 (x_frame_parms): Add missing braces around initializer.
12275
12276 * w32term.c (x_setup_relief_colors): Don't compute an image's
12277 background color if it doesn't have a Pixmap.
12278 (notice_overwritten_cursor): Don't depend on
12279 output_cursor and updated_area. Compare pixel coordinates with
12280 window's cursor pixel coordinates.
12281 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12282 Call notice_overwritten_cursor with new arg list.
12283 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12284 unconditionally.
12285 (x_draw_image_relief): Use predefined macro instead of
12286 constant when the value of `tool_bar_button_relief' is negative.
12287
12288 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12289
122902002-01-04 Richard M. Stallman <rms@gnu.org>
12291
12292 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12293
122942002-01-03 Richard M. Stallman <rms@gnu.org>
12295
12296 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12297 (Fkey_binding): Try the `keymap' property map first.
12298 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12299 minor mode bindings.
12300
123012002-01-03 Kim F. Storm <storm@cua.dk>
12302
12303 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12304
123052002-01-02 Richard M. Stallman <rms@gnu.org>
12306
12307 * keyboard.c (read_key_sequence): Handle the keymap property
12308 before minor mode maps.
12309
12310 * editfns.c (Fformat): Update thissize from field_width
12311 based on the actual width, in the string case.
12312
123132002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12314
12315 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12316 when used as truth value to prevent gcc warnings.
12317
12318 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12319 * w32proc.c: Include <config.h>.
12320
123212002-01-01 Andreas Schwab <schwab@suse.de>
12322
12323 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12324 not EMACS_INT, to make them compatible with DEFVAR_INT.
12325 * lisp.h (max_specpdl_size): Adjust declaration.
12326
123272002-01-01 Richard M. Stallman <rms@gnu.org>
12328
12329 * print.c (print_object): Test print_escape_nonascii only for
12330 unibyte strings.
12331 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12332 when outputting to a multibyte buffer.
12333
123342001-12-29 Richard M. Stallman <rms@gnu.org>
12335
12336 * print.c (print_object): In multibyte string, use hex escapes.
12337 Use octal only for unibyte strings.
12338 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12339
12340 * lread.c (read_escape): New arg BYTEREP for reporting whether
12341 escape forces unibyte or multibyte.
12342 (read1): When reading a string, take note of that info.
12343
123442001-12-29 Ken Raeburn <raeburn@gnu.org>
12345
12346 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12347 comparison to test lisp value returned by Fget.
12348
123492001-12-29 Richard M. Stallman <rms@gnu.org>
12350
12351 * lisp.h (max_specpdl_size): Add declaration.
12352
12353 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12354
12355 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12356 Handle modifier bits. Correct typo in error message.
12357
123582001-12-28 Richard M. Stallman <rms@gnu.org>
12359
12360 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12361 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12362 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12363 Update calls to Fdefine_abbrev.
12364 (write_abbrev): Update for changed data format.
12365 Don't list "system" abbrevs.
12366 (Fexpand_abbrev): Update use count with new data format.
12367 (describe_abbrev): Update for changed data format.
12368 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12369
12370 * config.in (HAVE_MBSINIT): Add #undef.
12371
12372 * strftime.c (mbsinit): Define as no-op if not available.
12373
12374 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12375 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12376
12377 * keymap.c (Flookup_key): Error message if key has wrong data type.
12378 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12379 (exclude_key): New variable.
12380
123812001-12-28 Gerd Moellmann <gerd@gnu.org>
12382
12383 * xterm.c (x_setup_relief_colors): Don't compute an image's
12384 background color if it doesn't have a Pixmap.
12385
12386 * xterm.c (notice_overwritten_cursor): Don't depend on
12387 output_cursor and updated_area. Compare pixel coordinates with
12388 window's cursor pixel coordinates.
12389 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12390 Call notice_overwritten_cursor with new arg list.
12391 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12392 unconditionally.
12393
12394 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12395 height of the cursor line to the amount to scroll.
12396
123972001-12-27 Richard M. Stallman <rms@gnu.org>
12398
12399 * intervals.c (set_point_both): The position after an invisible,
12400 intangible character is not an acceptable stopping point.
12401
124022001-12-27 Ken Raeburn <raeburn@gnu.org>
12403
12404 * window.c (enlarge_window): In new preserve_before code, convert
12405 CURBEG from lisp object to integer before doing arithmetic.
12406
124072001-12-27 Richard M. Stallman <rms@gnu.org>
12408
12409 * bytecode.c (Fbyte_code): Undo previous change.
12410
124112001-12-26 Kim F. Storm <storm@cua.dk>
12412
12413 * keyboard.c (record_char): Ignore duplicate help-echo events only
12414 separated by mouse-movement. When tracking mouse, only record
12415 first and last mouse-movement event in same window.
12416 Don't record mouse-movement events in keyboard macros.
12417
124182001-12-25 Richard M. Stallman <rms@gnu.org>
12419
12420 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12421 (Fenlarge_window): New arg PRESERVE_BEFORE.
12422
12423 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12424 instead of Fstring_as_unibyte.
12425
124262001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12427
12428 The following changes remove mocklisp support:
12429
12430 * mocklisp.h, mocklisp.c: Files removed.
12431
12432 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12433 `Qmocklisp' and `Qmocklisp_arguments'.
12434 Remove prototype of syms_of_mocklisp.
12435
12436 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
12437
12438 * callint.c: Do not include mocklisp.h.
12439 (Fcall_interactively): Do not test for mocklisp case.
12440
12441 * eval.c: Remove variables `Qmocklisp_arguments',
12442 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12443 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12444 Do not test for mocklisp case.
12445 (Fwhile): Remove unused variable `tem'.
12446 (syms_of_eval): Remove variable `moclisp-arguments'.
12447
12448 * data.c (wrong_type_argument): Remove mocklisp case.
12449
12450 * doc.c (Fdocumentation): Remove mocklisp case.
12451
12452 * emacs.c (main): Do not call syms_of_mocklisp.
12453
124542001-12-21 Richard M. Stallman <rms@gnu.org>
12455
12456 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12457 to the left or to the right of the pointer, put it against
12458 the left screen edge.
12459
124602001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
12461
12462 * Makefile.in (distclean): Remove .gdbinit if we are building
12463 outside the source tree.
12464
124652001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
12466
12467 * w32.c (emacs_root_dir): New function.
12468
12469 * msdos.c (emacs_root_dir): New function.
12470
12471 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12472 of the current drive as the fallback for default_directory.
12473
12474 * dired.c (file_name_completion): Run the elements of
12475 completion-ignored-extensions through ENCODE_FILE.
12476
12477 * lisp.h (scmp): Remove prototype, since it's now a static
12478 function private to dired.c.
12479
124802001-12-18 Richard M. Stallman <rms@gnu.org>
12481
12482 * dired.c (scmp): Function moved from minibuf.c.
12483 Delete multibyte handling--used only on encoded strings.
12484
12485 * minibuf.c (scmp): Function moved to dired.c.
12486
12487 * fns.c (merge): Add QUIT call.
12488
124892001-12-18 Dave Love <fx@gnu.org>
12490
12491 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12492 language/georgian.el.
12493
124942001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
12495
12496 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12497 lisp/Makefile.in:DONTCOMPILE.
12498
124992001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12500
12501 * xdisp.c (window_box_height): Do not return negative values.
12502 From Gerd Moellmann <gerd@gnu.org>.
12503
12504 * keyboard.c (head_table): Add missing braces around initializer.
12505
12506 * term.c (keys): Likewise.
12507
12508 * xfns.c (x_frame_parms, visual_classes): Likewise.
12509
125102001-12-17 Sam Steingold <sds@gnu.org>
12511
12512 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12513 patch (COMPOSING_P, not COMPOSING).
12514
125152001-12-17 Richard M. Stallman <rms@gnu.org>
12516
12517 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
12518
12519 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12520 before calling decode_coding.
12521
12522 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
12523
12524 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12525 instead of only for COMPOSITION_DISABLED.
12526
125272001-12-16 Richard M. Stallman <rms@gnu.org>
12528
12529 * alloc.c (pure_alloc): After overflow, allocate just a small block.
12530
12531 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
12532
12533 * buffer.h (struct buffer): New field `display_error_modiff'.
12534 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
12535
12536 * window.c (Frecenter): Clear display_error_modiff field.
12537
12538 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12539 Call redisplay_window, but not if display_error_modiff field says no.
12540 (redisplay_window_error): New function.
12541 (displayed_buffer): New variable.
12542 (redisplay_internal, redisplay_windows): Call the new functions
12543 instead of redisplay_window directly.
12544
125452001-12-15 Richard M. Stallman <rms@gnu.org>
12546
12547 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
12548
125492001-12-14 Andrew Innes <andrewi@gnu.org>
12550
12551 * makefile.w32-in (EMACSLOADPATH): Define.
12552 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
12553 (bootstrap-temacs): Remove dependency on bootstrap-clean.
12554
125552001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
12556
12557 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12558 parameter have a numeric value all the time.
12559
12560 * w32fns.c (x_report_frame_params): Likewise.
12561
125622001-12-12 Richard M. Stallman <rms@gnu.org>
12563
12564 * fileio.c (Fwrite_region): Doc fix.
12565
12566 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
12567 (redisplay_internal): Call clear_image_cache only for window terminals.
12568
125692001-12-12 Gerd Moellmann <gerd@gnu.org>
12570
12571 * xdisp.c (move_it_vertically_backward): Change heuristic
12572 for the case that we didn't move far enough initially.
12573
12574 * window.c (Frecenter): Simplify computation in the case of window
12575 system frames and ARG < 0; use window_box_height.
12576
125772001-12-11 Richard M. Stallman <rms@gnu.org>
12578
12579 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
12580 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
12581
125822001-12-11 Andrew Innes <andrewi@gnu.org>
12583
12584 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
12585 arg is negative.
12586
125872001-12-11 Richard M. Stallman <rms@gnu.org>
12588
12589 * m/hp800.h: Split the __hpux conditional into the parts
12590 that are right for GNU/Linux too and the parts that are not.
12591 Use the former if GNU_LINUX.
12592 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
12593
12594 * s/gnu-linux.h (GNU_LINUX): Defined.
12595
125962001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12597
12598 * macros.c, msdos.c, w16select.c: Change doc-string comments to
12599 `new style' [w/`doc:' keyword].
12600
126012001-12-10 Jason Rumney <jasonr@gnu.org>
12602
12603 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
12604 before using.
12605
126062001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12607
12608 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
12609 keyword].
12610
126112001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
12612
12613 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
12614
12615 * s/hpux10.h (srand48): Don't undefine.
12616
126172001-12-09 Jason Rumney <jasonr@gnu.org>
12618
12619 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
12620 Add comment to explain where the struct came from.
12621 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
12622 (add_menu_item): Process pop-up menus first to avoid memory leak.
12623 (add_menu_item, w32_menu_display_help): Use `help' field as
12624 Lisp_Object.
12625 (w32_free_submenu_strings): Only free owner-drawn strings.
12626
126272001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12628
12629 * COPYING: Moved back.
12630
12631 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
12632 Add parentheses around && within ||.
12633
12634 * indent.c (compute_motion): Likewise.
12635
12636 * intervals.c (merge_properties_sticky): Likewise.
12637
12638 * coding.c (setup_coding_system, shrink_encoding_region)
12639 (Fdecode_sjis_char): Likewise.
12640
126412001-12-07 Andreas Schwab <schwab@suse.de>
12642
12643 * xdisp.c (display_mode_element): Don't read past end of string if
12644 it ends with '%'.
12645
12646 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
12647 can hold.
12648
12649 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
12650 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
12651 type changed to Lisp_Object.
12652 (syms_of_data): DEFVAR_LISP them.
12653
126542001-12-07 Richard M. Stallman <rms@gnu.org>
12655
12656 * callproc.c (init_callproc): Set Vdata_directory based on the source
12657 location whenever Emacs was run uninstalled.
12658
126592001-12-06 Paul Eggert <eggert@twinsun.com>
12660
12661 * config.in (HAVE_WORKING_VFORK): New #undefs.
12662 * process.c (create_process):
12663 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
12664 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
12665 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
12666 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
12667 * m/intel386.h (HAVE_VFORK): Likewise.
12668 * m/mips-siemens.h (HAVE_VFORK): Likewise.
12669 * m/mips.h (HAVE_VFORK): Likewise.
12670 * s/freebsd.h (vfork): Remove #define.
12671 * s/lynxos.h (HAVE_VFORK): Remove #undef.
12672 * s/usg5-4-2.h: Fix comment about vfork.
12673
126742001-12-06 Richard M. Stallman <rms@gnu.org>
12675
12676 * s/hpux10.h (random): Add undef.
12677 (HAVE_RANDOM): Define it just once.
12678
126792001-12-06 Stefan Monnier <monnier@cs.yale.edu>
12680
12681 * eval.c: Undo last change: the standard syntax is not wanted.
12682
126832001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
12684
12685 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
12686 scroll bars of the frame before deleting the frame itself. If the
12687 frame has a widget, delete the frame with XtDestroyWidget, and do
12688 not call XDestroyWindow before that.
12689
126902001-12-06 Kim F. Storm <storm@cua.dk>
12691
12692 * xfns.c (x_report_frame_params): Return actual fringe widths.
12693
12694 * w32fns.c (x_report_frame_params): Return actual fringe widths.
12695
126962001-12-05 Andrew Innes <andrewi@gnu.org>
12697
12698 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
12699 excessively large.
12700
12701 * insdel.c (make_gap_larger): New function.
12702 (make_gap_smaller): New function.
12703 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
12704 Call make_gap_smaller if arg is negative.
12705
127062001-12-04 Stefan Monnier <monnier@cs.yale.edu>
12707
12708 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
12709 Pass a dummy argument when calling interrupt_signal.
12710 (parse_menu_item): Mark disabled items before checking for empty def.
12711 (read_char_minibuf_menu_prompt): Make safety more visible.
12712 (read_key_sequence): Add a `first_unbound' variable.
12713 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
12714 unbound prefix as soon as we can detect it.
12715
12716 * doc.c (Fsnarf_documentation): Add prototype.
12717 (get_doc_string): Handle negative arguments.
12718 (Fdocumentation): Use AREF and ASIZE.
12719 Move the calls to get_doc_string to a single place.
12720 Don't confuse an interactive-spec for a docstring reference.
12721 (Fdocumentation_property): Take advantage of the fact that
12722 get_doc_string now ignores the sign of the docstring position.
12723
12724 * eval.c: Use standard syntax for usage in docstrings.
12725
127262001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12727
12728 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
12729
127302001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12731
12732 * xterm.c (x_draw_image_relief): Use predefined macro instead of
12733 constant when the value of `tool_bar_button_relief' is negative.
12734
127352001-12-02 Richard M. Stallman <rms@gnu.org>
12736
12737 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
12738 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
12739
12740 * fileio.c (read_non_regular): Delete Fsignal call.
12741
127422001-12-01 Stefan Monnier <monnier@cs.yale.edu>
12743
12744 * lisp.h (run_hook_list_with_args): Undo last change.
12745
127462001-12-01 Gerd Moellmann <gerd@gnu.org>
12747
12748 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
12749
127502001-12-01 Jason Rumney <jasonr@gnu.org>
12751
12752 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
12753
12754 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
12755 [!WM_MOUSELEAVE]: Define.
12756
12757 * w32menu.c (current_popup_menu, get_menu_item_info):
12758 (set_menu_item_info): New vars.
12759 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
12760 (w32_menu_show): Set current_popup_menu.
12761 (add_menu_item): Allocate new strings for owner-drawn menu items
12762 and help strings.
12763 Use owner-draw for disabled menu items again.
12764 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
12765 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
12766
12767 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
12768 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
12769 <WM_EXITMENULOOP>: Free menu strings.
12770 <WM_MOUSELEAVE>: Stop tracking mouse.
12771 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
12772
12773 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
12774 and mouse face.
12775
127762001-12-01 Kim F. Storm <storm@cua.dk>
12777
12778 The following changes add left-fringe and right-fringe
12779 frame parameters to adjust fringe widths, or remove one or
12780 both fringes.
12781
12782 * frame.h (struct frame): Remove trunc_area_pixel_width and
12783 trunc_area_cols fields.
12784 (Qleft_fringe, Qright_fringe): Declare.
12785 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
12786
12787 * frame.c (Qleft_fringe, Qright_fringe): New vars.
12788 (syms_of_frame): Initialize them.
12789
12790 * window.c (coordinates_in_window): Handle separate left and right
12791 fringe widths.
12792
12793 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
12794 and fringe_cols fields.
12795 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
12796 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
12797 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
12798 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
12799 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
12800 (x_compute_fringe_widths): Add prototype.
12801
12802 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
12803 fill fringe evenly with small dashes.
12804 (x_draw_fringe_bitmap): Clear background if necessary. Align and
12805 clip the new ZV bitmap to avoid jitter between rows.
12806 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
12807 background. Don't draw fringe bitmaps if fringe width is zero.
12808 (x_compute_fringe_widths): New function.
12809 (x_new_font, x_set_window_size_1): Use it.
12810
12811 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
12812 (x_set_frame_parameters): Process `font' parameter before other
12813 parameters as fringe widths depend on it.
12814 (x_set_fringe_width): New function.
12815 (x_figure_window_size): Use x_compute_fringe_widths.
12816 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
12817 parameters.
12818
12819 * widget.c (set_frame_size): Use x_compute_fringe_widths.
12820 (EmacsFrameSetCharSize): Ditto.
12821
12822 * w32term.h: Merged changes from xterm.h.
12823 * w32term.c: Merged changes from xterm.c.
12824 * w32fns.c: Merged changes from xfns.c.
12825
128262001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12827
12828 * COPYING: Removed.
12829
128302001-11-29 Dave Love <fx@gnu.org>
12831
12832 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
12833 extra extra slot.
12834 (detect_coding_mask): Fix call of detect_coding_iso2022.
12835
128362001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12837
12838 * fileio.c (file-name-coding-system)
12839 (default-file-name-coding-system): Doc fix (links to referenced
12840 variables added).
12841
128422001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12843
12844 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
12845 Add dummy uses of gcproN variables.
12846
12847 * category.c (describe_category, describe_category_1)
12848 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
12849 (syms_of_category): Don't defsubr Sdescribe_categories.
12850
128512001-11-28 Richard M. Stallman <rms@gnu.org>
12852
12853 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
12854
12855 * Makefile.in (lispdir): New variable, referring to build dir.
12856 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
12857
128582001-11-28 Andrew Innes <andrewi@gnu.org>
12859
12860 * w32menu.c (w32_menu_display_help): Actually add the new argument
12861 OWNER.
12862
128632001-11-28 Jason Rumney <jasonr@gnu.org>
12864
12865 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
12866 menu items. From David Ponce <dponce@wanadoo.fr>.
12867 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
12868 conditionally.
12869 (w32_menu_display_help): New argument OWNER. Rewritten to store a
12870 help event in the owner frame's keyboard buffer.
12871
12872 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
12873 (Fx_show_tip): Don't subtract last width from row width.
12874
12875 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
12876 (w32_read_socket): Use EQ to compare frames.
12877
128782001-11-28 Gerd Moellmann <gerd@gnu.org>
12879
12880 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12881 OVERLAPS_P.
12882
128832001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12884
12885 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
12886 `gcpro3' and `gcpro4'.
12887
12888 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
12889
128902001-11-28 Stefan Monnier <monnier@cs.yale.edu>
12891
12892 * ccl.c: Use AREF and ASIZE.
12893
128942001-11-27 Stefan Monnier <monnier@cs.yale.edu>
12895
12896 * lisp.h (run_hook_list_with_args): Remove.
12897 (LIST_END_P): Fix call to wrong_type_argument.
12898 (make_fixnum_or_float): Use EMACS_INT rather than int.
12899
129002001-11-26 Stefan Monnier <monnier@cs.yale.edu>
12901
12902 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
12903 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
12904
12905 * eval.c: Use AREF and ASIZE.
12906 (Ffetch_bytecode): Add the file name to the error message.
12907
12908 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
12909 which match the end of the file-name.
12910 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
12911 is not a valid env var, but leave it as is instead.
12912
12913 * keymap.c (access_keymap): Handle t bindings like nil bindings.
12914 Make nil bindings in char-tables transparent.
12915 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
12916
129172001-11-26 Richard M. Stallman <rms@gnu.org>
12918
12919 * textprop.c (set_text_properties_1): Allow START, END in either order.
12920 Do nothing if range is empty.
12921
12922 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
12923
12924 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
12925 (clean): Not here.
12926
129272001-11-25 Stefan Monnier <monnier@cs.yale.edu>
12928
12929 * textprop.c (set_text_properties_1): Clearly mark that the
12930 interval should not be empty.
12931
12932 * intervals.c (graft_intervals_into_buffer):
12933 Don't call set_text_properties_1 on an empty interval.
12934
129352001-11-25 Richard M. Stallman <rms@gnu.org>
12936
12937 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
12938
12939 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
12940 don't lose the data in it.
12941
129422001-11-25 Juanma Barranquero <lektu@terra.es>
12943
12944 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
12945
12946 * buffer.c (Fkill_buffer): Likewise.
12947
12948 * print.c (temp_output_buffer_setup): Likewise.
12949
129502001-11-25 Stefan Monnier <monnier@cs.yale.edu>
12951
12952 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
12953
129542001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
12955
12956 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
12957 Niemitalo <kon@iki.fi>.
12958
129592001-11-25 Jason Rumney <jasonr@gnu.org>
12960
12961 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
12962
12963 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
12964 (Fx_show_tip): Block input during frame creation.
12965 (Fx_show_tip, Fx_hide_tip): Enable.
12966
129672001-11-24 Richard M. Stallman <rms@gnu.org>
12968
12969 * lread.c (Fload): Detect recursive load error for more than 3
12970 nestings of the same file.
12971 (Vrecursive_load_depth_limit): Variable deleted.
12972 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
12973
129742001-11-24 Jason Rumney <jasonr@gnu.org>
12975
12976 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
12977 mouse position if either left or top is not specified.
12978
12979 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
12980 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
12981 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
12982 (my_create_tip_window): Assign tip_window.
12983 (x_create_tip_frame): Use same defaults as X.
12984 (compute_tip_xy): Remove unused variable. Use full screen width.
12985 (Fx_show_tip): Do not double height. Call ShowWindow directly.
12986
12987 * w32term.c (x_after_update_window_line): Doc fix.
12988 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
12989 frames.
12990 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
12991
12992 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
12993 for all Windowed systems.
12994
129952001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
12996
12997 * msdos.c (IT_clear_screen): If the frame's faces are not yet
12998 realized, use the initial screen colors to clear the screen.
12999
130002001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13001
13002 * textprop.c (Fset_text_properties): Remove unused variables
13003 `unchanged', `prev_changed', `s' and `len'.
13004
13005 * search.c (Freplace_match): Remove unused variable `inslen'.
13006
13007 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13008
130092001-11-22 Jason Rumney <jasonr@gnu.org>
13010
13011 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13012 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13013 (my_create_tip_window): New function.
13014 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13015 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13016
130172001-11-20 Jason Rumney <jasonr@gnu.org>
13018
13019 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13020 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13021
13022 * w32fns.c (Vw32_system_coding_system): Remove.
13023 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13024
130252001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13026
13027 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13028 after build_annotations.
13029
13030 * syntax.c (describe_syntax): Add dummy arg.
13031 (describe_syntax_1): Update call to describe_vector.
13032
13033 * category.c (describe_category): Add dummy arg.
13034 (describe_category_1): Update call to describe_vector.
13035
13036 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13037 (describe_command, describe_translation): Add dummy second param.
13038 (describe_map): Call elt_describer with two arguments.
13039 (describe_vector_princ): Add `fun' parameter.
13040 Call it instead of the hardcoded `princ'.
13041 (describe_vector): Add arg `args'.
13042 Pass it as a new second argument to elt_describer.
13043
13044 * keymap.h (describe_vector): Update prototype.
13045
13046 * frame.c: Don't include keymap.h any more.
13047 (keys_of_frame): Remove.
13048
13049 * lisp.h (keys_of_frame): Remove declaration.
13050
13051 * emacs.c (main): Don't call `keys_of_frame' any more.
13052
130532001-11-14 Andreas Schwab <schwab@suse.de>
13054
13055 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13056 if defined, 0 otherwise.
13057 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13058 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13059
130602001-11-19 Richard M. Stallman <rms@gnu.org>
13061
13062 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13063
130642001-11-18 Jason Rumney <jasonr@gnu.org>
13065
13066 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13067 (x_draw_bar_cursor): If the background color of the glyph under
13068 the cursor equals the frame's cursor color, use the glyph's
13069 foreground color for drawing the bar cursor.
13070 (x_after_update_window_line): Clear internal border in different
13071 circumstances.
13072 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13073 (w32_draw_relief_rect): Correct relief by 1 pixel.
13074 (x_set_glyph_string_background_width):
13075 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13076 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13077 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13078 if cursor_in_non_selected_windows is false.
13079 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13080 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13081 Notice if cursor gets overwritten.
13082 (notice_overwritten_cursor): Renamed from
13083 note_overwritten_text_cursor. Rewritten to take glyph widths
13084 into account, and to take X positions as parameters.
13085 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13086 around call to x_draw_glyphs.
13087 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13088 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13089 color to use for image glyph reliefs.
13090 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13091 (glyph_rect): Remove unused variable `area'.
13092
13093 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13094 some items.
13095 (x_set_internal_border_width): Set frame garbaged when window
13096 doesn't exist yet.
13097 (Fx_create_frame): Accept zero tool_bar_button_relief.
13098 (x_clear_image_1, four_corners_best, image_background)
13099 (image_background_transparent): New functions.
13100 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13101 (gs_format): Add `:background' entry.
13102 (lookup_image): Set IMG's background color if specified.
13103 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13104 when appropriate.
13105 (x_clear_image_1): Reset `background_valid' and
13106 `background_transparent_valid' fields.
13107 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13108 calculating it here. Set IMG's background_transparent field.
13109 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13110 (enum png_keyword_index): Add PNG_BACKGROUND.
13111 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13112 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13113 (enum gif_keyword_index): Add GIF_BACKGROUND.
13114 (enum gs_keyword_index): Add GS_BACKGROUND.
13115 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13116 Pre-calculate image background color where necessary.
13117 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13118 Use display info's n_cbits entry for screen depth.
13119 (Fx_show_tip): Remove unused variables `buffer', `top',
13120 `left', `max_width' and `max_height'.
13121
13122 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13123
131242001-11-18 Gerd Moellmann <gerd@gnu.org>
13125
13126 * puresize.h (BASE_PURESIZE): Increase to 750000.
13127
131282001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13129
13130 * frame.c (Fframe_live_p): Doc fix.
13131
131322001-11-18 Richard M. Stallman <rms@gnu.org>
13133
13134 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13135 (message_dolog_marker3): New static variables hold three markers.
13136 (syms_of_xdisp): Initialize and staticpro them.
13137 (message_dolog): Use message_dolog_marker1..3 instead of
13138 allocating markers each time. Unchain them when done.
13139
131402001-11-17 Richard M. Stallman <rms@gnu.org>
13141
13142 * doc.c (Fsnarf_documentation): Doc fix.
13143
131442001-11-17 Andreas Schwab <schwab@suse.de>
13145
13146 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13147
131482001-11-17 Richard M. Stallman <rms@gnu.org>
13149
13150 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13151
131522001-11-17 Jason Rumney <jasonr@gnu.org>
13153
13154 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13155
131562001-11-17 Gerd Moellmann <gerd@gnu.org>
13157
13158 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13159 with invalid position.
13160
131612001-11-16 Richard M. Stallman <rms@gnu.org>
13162
13163 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13164
13165 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13166 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13167 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13168
13169 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13170
131712001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13172
13173 * fileio.c (build_annotations): Split off the tail.
13174 (build_annotations_2): New fun. Extracted from build_annotations.
13175 (Fwrite_region): Split the call to build_annotations into two
13176 calls to build_annotations and build_annotations_2.
13177
131782001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13179
13180 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13181 clear_waiting_for_input with argument.
13182
13183 * xterm.h (x_update_cursor): Remove duplicated prototype.
13184
13185 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13186
13187 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13188
13189 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13190
131912001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13192
13193 * fileio.c (choose_write_coding_system): New fun, extracted
13194 from Fwrite_region.
13195 (Fwrite_region): Use it.
13196
13197 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13198 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13199 (ml_apply, find_handler_clause): Add prototype.
13200
132012001-11-16 Eli Zaretskii <eliz@gnu.org>
13202
13203 * config.in: Add #undef HAVE_COFF_H.
13204
13205 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13206 Required for ISC 4.1.
13207
132082001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13209
13210 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13211 Andrew Wiseman <a.wiseman@btclick.com>.
13212
132132001-11-16 Kim F. Storm <storm@cua.dk>
13214
13215 The following changes are made to clean up the various internal
13216 references to the fringes to actually use the term `fringe' for
13217 them. Previously, they were called `flags areas', `bitmap areas',
13218 `left/right side of windows', or implicitly as `flags' or
13219 `bitmaps':
13220
13221 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13222 Comments fixed. Use renamed symbols.
13223
13224 * dispnew.c: Comment fix. Use renamed symbols.
13225
13226 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13227 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13228 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13229
13230 * msdos.c: Comment fix.
13231
13232 * w32fns.c: Use renamed symbols.
13233
13234 * w32term.c: Comment fixes. Use renamed symbols.
13235 (fringe_bitmap_type): Renamed from bitmap_type.
13236 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13237 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13238 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13239
13240 * w32term.h: Comment fixes. Use renamed symbols.
13241 (fringes_extra): Renamed from flags_areas_extra.
13242 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13243 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13244 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13245 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13246 (FRAME_X_LEFT_FRINGE_WIDTH):
13247 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13248 (FRAME_X_RIGHT_FRINGE_WIDTH):
13249 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13250
13251 * widget.c: Use renamed symbols.
13252
13253 * window.c: Comment fixes. Use renamed symbols.
13254 (coordinates-in-window-p): Doc fix.
13255
13256 * xdisp.c: Comment fixes. Use renamed symbols.
13257
13258 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13259
13260 * xfns.c: Use renamed symbols.
13261
13262 * xterm.c: Comment fixes. Use renamed symbols.
13263 (fringe_bitmap_type): Renamed from bitmap_type.
13264 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13265 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13266 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13267
13268 * xterm.h: Comment fixes. Use renamed symbols.
13269 (fringes_extra): Renamed from flags_areas_extra.
13270 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13271 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13272 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13273 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13274 (FRAME_X_LEFT_FRINGE_WIDTH):
13275 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13276 (FRAME_X_RIGHT_FRINGE_WIDTH):
13277 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13278
132792001-11-15 Jason Rumney <jasonr@gnu.org>
13280
13281 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13282 work for most menu items. From David Ponce
13283 <david.ponce@wanadoo.fr>.
13284
132852001-11-15 Gerd Moellmann <gerd@gnu.org>
13286
13287 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13288 Some x_set_* function expect to be called even if old and new
13289 value are equal.
13290
13291 * xdisp.c (build_desired_tool_bar_string): Accept zero
13292 tool_bar_button_relief.
13293
13294 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13295
13296 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13297
13298 * xterm.c (x_draw_bar_cursor): If the background color of the
13299 glyph under the cursor equals the frame's cursor color, use
13300 the glyph's foreground color for drawing the bar cursor.
13301
13302 * dispnew.c (direct_output_forward_char): Fix character/byte
13303 position comparison.
13304
133052001-11-15 Miles Bader <miles@gnu.org>
13306
13307 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13308 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13309 Update arguments to find_field.
13310 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13311 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13312 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13313 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13314
133152001-11-14 Richard M. Stallman <rms@gnu.org>
13316
13317 * editfns.c (Fpropertize): Allow call with 1 arg.
13318
13319 * dispextern.h (image_background, image_background_transparent):
13320 Conditionalize on HAVE_X_WINDOWS.
13321
133222001-11-13 Richard M. Stallman <rms@gnu.org>
13323
13324 * print.c (Fprin1_to_string): Doc fix.
13325
13326 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13327
13328 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13329
13330 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13331
13332 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13333
13334 * eval.c (syms_of_eval): Doc fix.
13335
13336 * coding.c (syms_of_coding): Doc fix.
13337
13338 * doc.c (Fsnarf_documentation): Doc fix.
13339
13340 * dispnew.c (syms_of_display): Doc fix.
13341
13342 * category.c (Fget_unused_category): Doc fix.
13343
13344 * buffer.c (syms_of_buffer): Doc fixes.
13345
133462001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13347
13348 * print.c (prin1, print): Doc fix.
13349
133502001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13351
13352 * fontset.h: Remove declarations of variables
13353 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13354
13355 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13356 `Vclip_large_size_font'.
13357
133582001-11-13 Jason Rumney <jasonr@gnu.org>
13359
13360 * w32fns.c: Doc fix.
13361
133622001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13363
13364 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13365
13366 * fns.c: Doc fix.
13367
13368 * emacs.c: Doc fix.
13369
13370 * coding.c: Doc fix.
13371
13372 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13373 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13374 `new style' [w/`doc:' keyword].
13375
133762001-11-12 Richard M. Stallman <rms@gnu.org>
13377
13378 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13379 LeaveNotify events. Only FocusIn and FocusOut do that now.
13380 (x_display_and_set_cursor): Do display hollow cursors in active
13381 minibuffer windows when they are not selected.
13382
133832001-11-12 Jason Rumney <jasonr@gnu.org>
13384
13385 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13386 * w32term.c: Change doc-string comments to `new style'
13387 [w/`doc:' keyword]. Doc fixes.
13388
13389 * w32fns.c: Don't define max.
13390 (Fx_open_connection): Only execute once.
13391
133922001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13393
13394 * ccl.c: Change macros to use do-while block instead of if-else.
13395 Use braces to follow GNU Coding Standards.
13396
133972001-11-11 Richard M. Stallman <rms@gnu.org>
13398
13399 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13400
13401 * lread.c (read_escape): Use end_of_file_error for reporting eof.
13402
13403 * insdel.c (replace_range): Use adjust_markers_for_replace
13404 instead of adjust_markers_for_delete and adjust_markers_for_insert.
13405
13406 * intervals.h: Declare set_text_properties and set_text_properties_1.
13407
13408 * textprop.c (set_text_properties_1): New subroutine
13409 broken out of set_text_properties.
13410 (set_text_properties): Use set_text_properties_1.
13411
13412 * intervals.c (graft_intervals_into_buffer):
13413 Use set_text_properties_1 to clear out properties.
13414
13415 * search.c (Freplace_match): Use replace_range to insert
13416 and delete. Don't request property inheritance from
13417 surrounding text.
13418
134192001-11-10 Jason Rumney <jasonr@gnu.org>
13420
13421 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
13422 vertical fonts. Allow them if face name is explicitly specified.
13423 Do not give up if we find a font that cannot be converted to an xlfd.
13424
134252001-11-10 Gerd Moellmann <gerd@gnu.org>
13426
13427 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13428 instead of malloc/free.
13429
134302001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13431
13432 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13433 Coding Standards.
13434 (Finternal_set_lisp_face_attribute): Likewise.
13435
13436 * buffer.c (Fbury_buffer): Likewise.
13437
13438 * indent.c (current_column_1): Remove unused variable `prev_col'.
13439
13440 * coding.c (encode_coding): Use precomputed value of `src'.
13441 (encode_coding): Remove unused variable `src_end'.
13442 (code_convert_region): Remove unused variables `count'.
13443
134442001-11-07 Jason Rumney <jasonr@gnu.org>
13445
13446 * w32term.c (x_display_and_set_cursor): Do not move system caret
13447 if cursor_glyph is NULL.
13448
134492001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13450
13451 * keymap.c (access_keymap): Fix compilation error.
13452
134532001-11-07 Miles Bader <miles@gnu.org>
13454
13455 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
13456
134572001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13458
13459 * intervals.c (graft_intervals_into_buffer):
13460 Remove #ifdef'd-out code.
13461 (graft_intervals_into_buffer): Remove unused variable `middle'.
13462
13463 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13464 code (eval-current-buffer).
13465 Change doc-string comments to `new style' [w/`doc:' keyword].
13466
134672001-11-06 Richard M. Stallman <rms@gnu.org>
13468
13469 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
13470
134712001-11-06 Stefan Monnier <monnier@cs.yale.edu>
13472
13473 * lread.c (read1): Fix behavior with nested backquoting.
13474
13475 * keyboard.c (make_lispy_event): Check integerness and fix
13476 Lisp_Object/int mixup.
13477
134782001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13479
13480 * fns.c (copy_hash_table): Remove unused variable `v'.
13481
13482 * fontset.c (fontset_font_pattern): Remove unused variable
13483 `family_registry'.
13484
13485 * indent.c (current_column_1): Remove unused variable `prev_col'.
13486
134872001-11-05 Richard M. Stallman <rms@gnu.org>
13488
13489 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
13490
13491 * buffer.c (Fkill_buffer): Don't delete auto save file
13492 if buffer is modified.
13493
134942001-11-05 Andrew Innes <andrewi@gnu.org>
13495
13496 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13497 CHECK_NUMBER_CDR.
13498
134992001-11-05 Richard M. Stallman <rms@gnu.org>
13500
13501 * unexelf.c (unexec): Minor changes; clean up comments.
13502
135032001-11-05 Sam Steingold <sds@gnu.org>
13504
13505 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
13506
135072001-11-05 Andreas Schwab <schwab@suse.de>
13508
13509 * sound.c (sound_perror): Save errno from being clobbered.
13510
135112001-11-05 Dale Hagglund <rdh@yottayotta.com>
13512
13513 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13514 the program image directly.
13515
135162001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13517
13518 * buffer.h (Fbuffer_local_value): Add prototype.
13519
135202001-11-04 Richard M. Stallman <rms@gnu.org>
13521
13522 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13523 and CHECK_BUFFER.
13524
13525 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13526 (record_char): Likewise.
13527
13528 * keyboard.c (make_lispy_event): Don't insist a drag event must
13529 move to a different buffer position. Instead, check for moving at
13530 least double_click_fuzz.
13531
13532 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
13533
13534 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
13535
13536 * indent.c (current_column_1, Fmove_to_column): Separate the code
13537 for display-table glyphs from the code for buffer text, to fix
13538 bugs in the former.
13539
135402001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
13541
13542 * buffer.c (Fbuffer_local_value): New function.
13543 (syms_of_buffer): Defsubr it.
13544
13545 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13546 value of `cursor-in-non-selected-windows'.
13547
13548 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13549 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13550 (syms_of_xdisp): Initialize it.
13551
135522001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13553
13554 * xfns.c (Fx_create_frame): Doc fix.
13555
13556 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13557 keyword].
13558
13559 * eval.c (top_level_value, top_level_set): Remove commented and
13560 #ifdef'd-out code.
13561 (Fdefvar): Fix usage in doc-string.
13562
135632001-11-03 Richard M. Stallman <rms@gnu.org>
13564
13565 * xfns.c: Include unistd.h, if it exists.
13566
13567 * editfns.c: Move the include of ctype.h after unistd.h.
13568
13569 * gmalloc.c: Test BROKEN_PROTOTYPES.
13570
135712001-11-03 Ken Raeburn <raeburn@gnu.org>
13572
13573 * lisp.h (CHECK_STRING_CAR): New macro.
13574 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
13575 treating XCAR and XCDR as lvalues.
13576 (openp): Use CHECK_STRING_CAR.
13577 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
13578
135792001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
13580
13581 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
13582 (SIGMASKTYPE): Define.
13583
13584 * syssignal.h (sigunblock): Don't define if already defined.
13585
135862001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13587
13588 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
13589 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
13590 Fix typos in comments.
13591
13592 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
13593 and #ifdef'd-out code.
13594 Fix and reindent comments.
13595
13596 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
13597
13598 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
13599 argument `i' in macros.
13600
13601 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
13602 `i' in macros.
13603
13604 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
13605 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
13606 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
13607 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
13608 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
13609 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
13610 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
13611 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
13612 in macros.
13613
13614 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
13615 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
13616 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
13617 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
13618 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
13619 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
13620 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
13621 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
13622 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
13623 (remove unused second argument).
13624
136252001-11-02 Stefan Monnier <monnier@cs.yale.edu>
13626
13627 * syntax.c (describe_syntax): New wrapper.
13628 (Finternal_describe_syntax_value): Rename from describe_syntax.
13629 Don't insert space at front and \n at the end.
13630 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
13631
13632 * regex.c (re_wctype): Try to fix some warnings.
13633 (regcomp, regexec): Don't forget the __restrict.
13634
136352001-11-02 Richard M. Stallman <rms@gnu.org>
13636
13637 * textprop.c (Fget_char_property): Doc fix.
13638
136392001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13640
13641 * process.c (Fstart_process): Add usage to doc-string.
13642
13643 * data.c (Fsetq_default): Ditto.
13644
13645 * callint.c (Finteractive): Ditto.
13646
136472001-11-01 Stefan Monnier <monnier@cs.yale.edu>
13648
13649 * macros.c: Don't include keymap.h any more.
13650
136512001-11-01 Richard M. Stallman <rms@gnu.org>
13652
13653 * data.c (Fmake_local_variable): Doc fix.
13654
13655 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
13656 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
13657
13658 * keymap.c (Fdescribe_buffer_bindings): Print character property
13659 bindings along with or instead of the buffer local map.
13660 Make the overriding maps override what they should.
13661
136622001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13663
13664 * window.c (grow_mini_window): Fix typo in comment.
13665
136662001-11-01 Gerd Moellmann <gerd@gnu.org>
13667
13668 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
13669 (XTset_vertical_scroll_bar): Likewise.
13670
13671 * xfns.c (x_build_heuristic_mask): Use four_corners_best
13672 instead of IMAGE_BACKGROUND.
13673
13674 * xfns.c (four_corners_best): Reindent.
13675
13676 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
13677 Handle :box so that it is possible to specify sexprs.
13678
136792001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
13680
13681 * s/hpux11.h: New file.
13682
136832001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13684
13685 * emacs.c (USAGE1): Show command line option --no-window-system
13686 instead of --no-windows in usage.
13687 (standard_args): Rename --no-windows to --no-window-system.
13688 (bug_reporting_address): Follow Emacs coding conventions.
13689
13690 * eval.c (Fcommandp): Doc fix.
13691 Change doc-string comments to `new style' [w/`doc:' keyword].
13692
13693 * frame.c (Fframe_live_p): Doc fix.
13694
13695 * buffer.c (selective-display-ellipses): Doc fix.
13696
136972001-10-31 Gerd Moellmann <gerd@gnu.org>
13698
13699 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
13700
13701 * xfaces.c (realize_x_face): If C is not a single-byte character,
13702 set the face's colors_copied_bitwise_p instead of the defaulted_p
13703 members which have a different meaning.
13704 (free_face_colors): Do nothing for a face whose colors have been
13705 copied bitwise.
13706
13707 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
13708
137092001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13710
13711 * marker.c, mocklisp.c: Change doc-string comments to `new style'
13712 [w/`doc:' keyword].
13713
137142001-10-31 Gerd Moellmann <gerd@gnu.org>
13715
13716 * fns.c (require_unwind): Return Lisp_Object.
13717
137182001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13719
13720 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
13721 (last-input-char): Revert doc-string to be the same as the
13722 doc-string of `last-input-event'.
13723
13724 * xdisp.c: Fix typos in comments.
13725
137262001-10-31 Gerd Moellmann <gerd@gnu.org>
13727
13728 * window.c (grow_mini_window): Handle case that the root
13729 window is already smaller than the nominal mininum height.
13730
137312001-10-30 Stefan Monnier <monnier@cs.yale.edu>
13732
13733 * emacs.c (main): Don't call keys_of_macros any more.
13734
13735 * lisp.h (keys_of_macros): Remove.
13736
13737 * macros.c (keys_of_macros): Remove.
13738
13739 * xfaces.c (Fface_attribute_relative_p): Declare args.
13740
137412001-10-30 Jason Rumney <jasonr@gnu.org>
13742
13743 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
13744 (enum_font_cb2): Ignore fonts with vertical orientation.
13745
137462001-10-30 Richard M. Stallman <rms@gnu.org>
13747
13748 * keyboard.c (Finput_pending_p): Doc fix.
13749
137502001-10-30 Gerd Moellmann <gerd@gnu.org>
13751
13752 * xterm.c (x_after_update_window_line): Don't run the code
13753 clearing in borders for rows whose visible height is 0.
13754
13755 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
13756 resized_p flag is set. If not set, use the much less flickering
13757 method previously used.
13758
13759 * dispnew.c (change_frame_size_1): Set frame's resized_p.
13760
13761 * frame.h (struct frame) <resized_p>: New member.
13762
13763 * lread.c (to_multibyte): Ensure read_buffer is at least twice
13764 as large as the number of bytes to convert.
13765
13766 * lread.c (to_multibyte): New function.
13767 (read1): Use it.
13768
137692001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
13770
13771 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
13772
137732001-10-30 Gerd Moellmann <gerd@gnu.org>
13774
13775 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
13776 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
13777 if the row's fill_line_p is set and drawing the last glyph with
13778 DRAW_IMAGE_{RAISED,SUNKEN}.
13779
13780 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
13781
137822001-10-29 Stefan Monnier <monnier@cs.yale.edu>
13783
13784 * xmenu.c: Include coding.h and charset.h.
13785 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
13786 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
13787 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
13788 Explicitly set wv->help. Use `TRUE' rather than `True'.
13789 (menu_help_callback): Use empty_string.
13790
13791 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
13792 (Fx_popup_dialog): Explicitly init f.
13793 (w32_menu_display_help): Use empty_string.
13794
137952001-10-29 Richard M. Stallman <rms@gnu.org>
13796
13797 * fns.c (Frequire): Detect recursive try to require the same
13798 feature 3 or more levels deep, and get error.
13799 (require_unwind): New subroutine.
13800 (require_nesting_list): New variable.
13801 (syms_of_fns): Init and staticpro it.
13802
13803 * print.c (print_object): Clarify indication of insertion type.
13804
138052001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
13806
13807 * coding.c (syms_of_coding): Document that locale-coding-system is
13808 used for decoding input on X.
13809
13810 * window.c (Fscroll_left, Fscroll_right): Doc fix.
13811
138122001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13813
13814 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
13815 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
13816
138172001-10-29 Gerd Moellmann <gerd@gnu.org>
13818
13819 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
13820 use NO_CURSOR if cursor_in_non_selected_windows is false.
13821
13822 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
13823 the slant attribute if FRAME is t.
13824
13825 * xfns.c (x_set_internal_border_width): Set frame garbaged
13826 when X window doesn't exist yet.
13827
13828 * xterm.c (x_after_update_window_line): Clear internal border
13829 in different circumstances.
13830
13831 * xterm.c (XTread_socket) <KeyPress>: Don't use
13832 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
13833 <handa@etl.go.jp>.
13834
138352001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
13836
13837 * m/ibms390.h: New file. From Adam Thornton
13838 <athornton@sinenomine.net>.
13839
138402001-10-28 Gerd Moellmann <gerd@gnu.org>
13841
13842 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
13843
13844 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
13845 a loop counter.
13846
138472001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13848
13849 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
13850
13851 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
13852 keyword].
13853 Fix typos in comments.
13854
13855 * emacs.c (bug_reporting_address): New function.
13856 Use it when displaying usage message.
13857
13858 * minibuf.c (read_minibuf): Remove unused external declaration of
13859 variable `Qread_only'.
13860
13861 * keymap.c (access_keymap): Remove unused variable `charset'.
13862
138632001-10-28 Miles Bader <miles@gnu.org>
13864
13865 * xfaces.c (merge_face_heights): Handle TO being relative as well.
13866 Remove #ifdef'd-out code.
13867 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
13868 (syms_of_xfaces): Initialize them.
13869
138702001-10-27 Jason Rumney <jasonr@gnu.org>
13871
13872 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
13873 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
13874 position using the system caret.
13875
13876 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
13877 (w32_system_caret_height, w32_system_caret_x)
13878 (w32_system_caret_y): New variables for tracking system caret.
13879 (w32_initialize): Initialize them.
13880 (x_display_and_set_cursor): Make system caret follow the active cursor.
13881
13882 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
13883 New messages types.
13884
13885 * w32term.c (note_mouse_highlight): Clear old help_echo.
13886
138872001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13888
13889 * xterm.c: Fix typo in a comment.
13890
13891 * emacs.c: Fix typos in comments.
13892 Remove unnecessary spaces.
13893 Change doc-string comments to `new style' [w/`doc:' keyword].
13894 (USAGE2): Fix typos in usage string.
13895
13896 * xterm.c: Fix typo in a comment.
13897
13898 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
13899 emacs.c.
13900
139012001-10-27 Gerd Moellmann <gerd@gnu.org>
13902
13903 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
13904 instead of 1/2 line_height in the heuristic for skipping
13905 farther backward when target_y was not reached.
13906
13907 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
13908 Display errno only if non-zero.
13909 (sound_warning): New function.
13910 (vox_configure): Don't treat failing to set sample rate as error.
13911 (various places): Improve error messages.
13912
139132001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
13914
13915 * fileio.c (Faccess_file): Run the argument filename through
13916 Fexpand_file_name, before using it.
13917
13918 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
13919 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
13920
139212001-10-26 Gerd Moellmann <gerd@gnu.org>
13922
13923 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
13924
13925 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
13926 Fix clearing in the case of scroll bars on the right.
13927
139282001-10-26 Juanma Barranquero <lektu@terra.es>
13929
13930 * w32gui.h (XImage): Add a dummy typedef.
13931
139322001-10-26 Gerd Moellmann <gerd@gnu.org>
13933
13934 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
13935
139362001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
13937
13938 * frame.c (Fframe_parameter): Fix last change.
13939
13940 * fileio.c: Revert last change (which removed old commented-out
13941 version of expand-file-name). Add a comment that explains why
13942 this old version should not be removed.
13943
139442001-10-25 Gerd Moellmann <gerd@gnu.org>
13945
13946 * frame.c (Fframe_parameter): Fix a bug whereby some
13947 ``artificial'' frame parameters, like `minibuffer' were not
13948 obtained by calling Fframe_parameters.
13949
13950 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
13951 cursor differently.
13952
13953 * xdisp.c (move_it_vertically_backward): Compute line height
13954 differently. Add heuristic to try to be more compatible to 20.x.
13955
139562001-10-25 Stefan Monnier <monnier@cs.yale.edu>
13957
13958 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
13959
13960 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
13961 boolean.
13962
139632001-10-25 Miles Bader <miles@gnu.org>
13964
13965 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
13966 BG is a pointer to a structure, not a structure.
13967 (gif_format, png_format): Add missing commas.
13968
139692001-10-24 Richard M. Stallman <rms@gnu.org>
13970
13971 * xfaces.c (Fface_attributes_as_vector): New function.
13972 (syms_of_xfaces): Defsubr it.
13973
139742001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13975
13976 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
13977 variable `area'.
13978
139792001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13980
13981 * search.c (scan_newline): Remove unused variable `selective_display'.
13982
139832001-10-25 Miles Bader <miles@gnu.org>
13984
13985 * dispextern.h (struct image): Add `background',
13986 `background_valid', and `background_transparent' fields.
13987 (image_background, image_background_transparent): New declarations.
13988 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
13989 * xfns.c (image_background, image_background_transparent)
13990 (four_corners_best): New functions.
13991 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13992 (gs_format): Add `:background' entry.
13993 (lookup_image): Set IMG's background color if specified.
13994 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13995 when appropriate.
13996 (x_clear_image_1): Reset `background_valid' and
13997 `background_transparent_valid' fields.
13998 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13999 calculating it here. Set IMG's background_transparent field.
14000 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14001 (enum png_keyword_index): Add PNG_BACKGROUND.
14002 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14003 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14004 (enum gif_keyword_index): Add GIF_BACKGROUND.
14005 (enum gs_keyword_index): Add GS_BACKGROUND.
14006 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14007 Pre-calculate image background color where necessary.
14008 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14009 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14010 color to use for image glyph reliefs.
14011
140122001-10-24 Gerd Moellmann <gerd@gnu.org>
14013
14014 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14015 in full-width rows.
14016
14017 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14018 Fix clearing of area not covered by scroll bar.
14019
140202001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14021
14022 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14023 and `real_start'.
14024 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14025 (glyph_rect): Remove unused variable `area'.
14026
140272001-10-24 Gerd Moellmann <gerd@gnu.org>
14028
14029 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14030
14031 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14032 (row_containing_pos): Take additional argument DY.
14033 Treat rows ending in middle of char differently.
14034 (display_line): Handle tabs on window systems differently.
14035
14036 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14037 with additional argument.
14038
14039 * dispextern.h (row_containing_pos): Adjust prototype.
14040
14041 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14042 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14043 (try_window_id, try_window_reusing_current_matrix)
14044 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14045 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14046
140472001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14048
14049 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14050 gnuemacs).
14051 (HAVE_BOXES): Fix typo in comment.
14052 (push_menu_pane): Fix typo in comment.
14053
14054 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14055 of `Qwhen'.
14056 (single_display_prop_string_p): Remove unused local declarations
14057 of `Qwhen' and `Qmargin'.
14058 (string_buffer_position): Remove unused variable `around'.
14059 (store_frame_title): Remove unused variable `width'.
14060
14061 * window.c: Don't define max.
14062 (coordinates_in_window): Remove unused variable `uy'.
14063
14064 * widget.c: Don't define max.
14065
14066 * process.c: Don't define max.
14067 (create_process): Remove unused variable `buffer'.
14068
140692001-10-23 Gerd Moellmann <gerd@gnu.org>
14070
14071 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14072
140732001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14074
14075 * xfaces.c (Finternal_set_lisp_face_attribute)
14076 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14077 frame is on a windowed display.
14078
140792001-10-23 Gerd Moellmann <gerd@gnu.org>
14080
14081 * dispnew.c (sync_window_with_frame_matrix_rows):
14082 Fix handling of windows which aren't full-width, fix handling
14083 of marginal areas.
14084
14085 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14086
140872001-10-23 Andreas Schwab <schwab@suse.de>
14088
14089 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14090 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14091
140922001-10-23 Gerd Moellmann <gerd@gnu.org>
14093
14094 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14095 REAL_END. Notice if cursor gets overwritten.
14096 (notice_overwritten_cursor): Take X positions as parameters.
14097 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14098 around call to x_draw_glyphs.
14099
141002001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14101
14102 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14103 instead of C) and usage.
14104
14105 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14106 of C) and usage.
14107
14108 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14109 `left', `max_width' and `max_height'.
14110
141112001-10-23 Gerd Moellmann <gerd@gnu.org>
14112
14113 * xdisp.c (display_line): For a tab continued to the next line,
14114 set row's ends_in_middle_of_char_p.
14115
141162001-10-22 Gerd Moellmann <gerd@gnu.org>
14117
14118 * xdisp.c (display_line): Fix computation of continuation lines
14119 width for TABs.
14120
141212001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14122
14123 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14124 `Qlaplace'.
14125
14126 * fileio.c: Remove unused code.
14127
141282001-10-22 Miles Bader <miles@gnu.org>
14129
14130 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14131 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14132 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14133
141342001-10-21 Jason Rumney <jasonr@gnu.org>
14135
14136 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14137
141382001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14139
14140 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14141 (Finsert_string): Avoid the multi-line string literals warning.
14142
141432001-10-22 Miles Bader <miles@gnu.org>
14144
14145 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14146 (Fdocumentation): Don't use it.
14147 (syms_of_doc): Don't initialize it.
14148
14149 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14150 * print.c (Fwith_output_to_temp_buffer): Likewise.
14151 * window.c (Fsave_window_excursion): Likewise.
14152 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14153 (Fsave_restriction): Likewise.
14154 * eval.c (Frun_hooks, Frun_hook_with_args)
14155 (Frun_hook_with_args_until_failure)
14156 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14157 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14158 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14159 (Funwind_protect, Fcondition_case): Likewise.
14160 * coding.c (Ffind_operation_coding_system): Likewise.
14161 * keyboard.c (Ftrack_mouse): Likewise.
14162
141632001-10-21 Miles Bader <miles@gnu.org>
14164
14165 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14166 (Fmake_hash_table): Add usage: string to doc string.
14167 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14168 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14169 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14170 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14171 (Fml_prefix_argument_loop): Likewise.
14172
141732001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14174
14175 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14176
14177 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14178 style' [w/`doc:' keyword].
14179
14180 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14181 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14182 comments to `new style' [w/`doc:' keyword].
14183
141842001-10-21 Jason Rumney <jasonr@gnu.org>
14185
14186 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14187
14188 * w32term.c (remember_mouse_glyph): New function.
14189 (w32_mouse_position): Use it.
14190 (note_mouse_movement): If the mouse moved off the glyph, remember
14191 its new position.
14192
14193 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14194 (w32_display_info): Add mouse_face_overlay.
14195
14196 * w32term.c (notice_overwritten_cursor): Renamed from
14197 note_overwritten_text_cursor. Rewritten to take glyph widths into
14198 account.
14199 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14200 (fast_find_string_pos): New function.
14201 (fast_find_position): Return the correct vpos. Add parameter
14202 STOP. In the final row, stop before glyphs having STOP as object.
14203 Don't consider glyphs that are not from a buffer.
14204 (fast_find_position) [0]: Add a presumably more correct version
14205 for after 21.1.
14206 (expose_window_tree, expose_frame): Don't compute intersections here.
14207 (expose_window): Do it here instead.
14208 (expose_window_tree, expose_window, expose_line): Return 1 when
14209 overwriting mouse-face.
14210 (expose_window): If W is the window currently being updated, mark
14211 the frame garbaged.
14212 (expose_frame): If mouse-face was overwritten, redo it.
14213 (x_use_underline_position_properties): New variable.
14214 (syms_of_xterm): DEFVAR_BOOL it.
14215 (x_draw_glyph_string): Add comment to use it in future.
14216 (x_draw_glyph_string): Restore clipping after drawing box.
14217 Fix a computation of the underline position.
14218 (w32_get_glyph_string_clip_rect): Minor cleanup.
14219 (x_fill_stretch_glyph_string): Remove an assertion.
14220 (x_produce_glyphs): Don't convert multibyte characters
14221 to unibyte characters in unibyte buffers.
14222 (cursor_in_mouse_face_p): New function.
14223 (x_draw_stretch_glyph_string): Use it to choose a different GC
14224 when drawing a cursor within highlighted text. Don't draw
14225 background again if it has already been drawn.
14226 (x_draw_glyph_string_box): Don't draw a full-width
14227 box just because the glyph row's full_width_p flag is set.
14228 (x_draw_glyphs): Fix computation of rightmost x for
14229 full-width rows.
14230 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14231 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14232 change bottom shadow accordingly. Some cleanup.
14233 (x_update_window_end): Handle overwritten mouse face
14234 also for tool bar windows.
14235 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14236 DRAW is DRAW_IMAGE_RAISED.
14237 (clear_mouse_face): Return 1 if text with mouse face was
14238 actually redrawn. Make the function static.
14239 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14240 optimize away highlighting if we pass over that same overlay again.
14241 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14242 to detect a case where we have to highlight a different region
14243 despite not having left the currently highlighted region.
14244 Set mouse_face_overlay in the x_display_info. Avoid changing the
14245 mouse pointer shape when show_mouse_face has already done it, or
14246 there is no need. Handle mouse-face and help-echo in strings.
14247 (glyph_rect): New function.
14248 (w32_mouse_position): Use it to raise the threshold for mouse
14249 movement event generation.
14250 (w32_initialize_display_info): Initialize the x_display_info's
14251 mouse_face_overlay.
14252 (w32_set_vertical_scroll_bar): Don't clear a zero height
14253 or width area.
14254 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14255 a widget to zero height.
14256
14257 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14258 Protect unibyte strings created by replacing their multibyte
14259 equivalents in menu_items.
14260 (w32_menu_show): Don't overwrite an item's name with its key
14261 description in case the description is a multibyte string.
14262 (single_submenu): Some cleanup.
14263
14264 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14265 (postprocess_image): New function.
14266 (lookup_image): Call it for all image types except PostScript.
14267 (x_kill_gs_process): Call postprocess_image.
14268 (tiff_error_handler, tiff_warning_handler): New functions.
14269 (tiff_load): Install them as handlers.
14270 (x_kill_gs_process): Recognize if someone has cleared the image
14271 cache under us.
14272 (valid_image_p): Protect better against invalid image
14273 specifications. Previous code could signal an error.
14274 (Fx_hide_tip, Fshow_tip): Doc fix.
14275 (Fv_max_tooltip_size): New variable.
14276 (syns_of_xfns): DEFVAR_LISP it.
14277 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14278 window buffer to *tip* right after creating the frame. Set frame's
14279 window_width. Use a maximum tooltip size specified by
14280 Vx_max_tooltip_size, if that has valid contents.
14281 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14282 Make sure the tooltip is completely visible.
14283 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14284 (Fx_create_frame): Adjust the frame's height for presence
14285 of the tool bar before calling x_figure_window_size.
14286 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14287 when the window gets smaller.
14288 (x_set_foreground_color): Set frame's cursor_pixel.
14289 (x_set_foreground_color, x_set_background_color): Cleaned up.
14290 (x_set_font): Handle case of x_new_fontset returning the same name
14291 as before, although there was a change in fontsets.
14292
142932001-10-21 Miles Bader <miles@gnu.org>
14294
14295 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14296 (Flogxor): Add usage: string to doc string.
14297 * charset.c (Fstring): Likewise.
14298 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14299 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14300
143012001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14302
14303 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14304
14305 * alloc.c: Reindent DEFUNs with doc: keywords.
14306
14307 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14308
14309 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14310 keyword].
14311
14312See ChangeLog.9 for earlier changes.
14313
14314;; Local Variables:
14315;; coding: iso-2022-7bit
14316;; End:
14317
14318 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14319 Copying and distribution of this file, with or without modification,
14320 are permitted provided the copyright notice and this notice are preserved.
14321
14322;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4