* xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
[bpt/emacs.git] / src / ChangeLog
1 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2
3 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
4 instead of name and key.
5 (update_submenu_strings): New function.
6 (set_frame_menubar): Remove call to inhibit_garbage_collection,
7 call update_submenu_strings. Call ENCODE_MENU_STRING for top level
8 menu names.
9
10 * gtkutil.h (_widget_value): Added lname and lkey.
11
12 2004-08-30 Steven Tamm <steventamm@mac.com>
13
14 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
15 by using different names for inner loop variables.
16
17 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18
19 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
20 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
21
22 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
23 tool bar items is 0.
24
25 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
26
27 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
28 strings in menu items.
29 (single_submenu): Use ENCODE_MENU_STRING
30 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
31 button release isn't passed to event loop
32 (add_menu_item): Use SetMenuItemWithCFString
33
34 2004-08-26 Steven Tamm <steventamm@mac.com>
35
36 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
37 tool-bar/menu click
38 * macfns.c (Fx_file_dialog): Implemented using NavServices
39
40 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
41
42 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
43
44 * xfns.c (x_window_to_frame, x_any_window_to_frame)
45 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
46 (x_top_window_to_frame): Return 0 if wdesc is None.
47
48 2004-08-22 Richard M. Stallman <rms@gnu.org>
49
50 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
51 HAVE_TERMIOS]: If there's no char for this signal, drop through
52 and use system calls.
53
54 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
55
56 2004-08-20 Kim F. Storm <storm@cua.dk>
57
58 * process.c (wait_reading_process_output): Rename from
59 wait_reading_process_input. All uses changed.
60 (wait_reading_process_output_1): Rename from
61 wait_reading_process_input_1. All uses changed.
62
63 * dispnew.c (Fsleep_for): Remove obsolete code.
64
65 2004-08-20 Kenichi Handa <handa@m17n.org>
66
67 * syntax.c (skip_chars): Fix for unibyte case.
68
69 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
70
71 * syntax.c (char_quoted): Mixup byte/char pos.
72 (back_comment): Fixup globals in all cases.
73
74 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
75
76 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
77 passing it to gtk_window_set_title.
78
79 2004-08-19 Kim F. Storm <storm@cua.dk>
80
81 * process.c (wait_reading_process_input): Clean up.
82 Add wait_for_cell, wait_proc, and just_wait_proc args
83 to avoid overloading `read_kbd' and `do_display' args.
84 Change read_kbd arg to int. All callers changed.
85
86 * process.c (process_send_signal): Use CDISABLE.
87
88 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
89
90 2004-08-18 Kim F. Storm <storm@cua.dk>
91
92 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
93 forward to wait_reading_process_input via DO_DISPLAY arg.
94 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
95 object, only process output from that process; also inhibit
96 running timers if DO_DISPLAY==-2.
97
98 2004-08-17 Kim F. Storm <storm@cua.dk>
99
100 * process.c (process_send_signal): Fix last change--use
101 _POSIX_VDISABLE instead of CVDISABLE when available.
102
103 2004-08-16 Richard M. Stallman <rms@gnu.org>
104
105 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
106 Set VQUIT and VINTR chars to the standard ones if they are unset.
107 [AIX]: Don't do that here. And don't force VINTR to standard
108 when SIGNALS_VIA_CHARACTERS.
109
110 * process.c (process_send_signal)
111 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
112 Do nothing if the character is CVDISABLE.
113
114 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
115
116 * intervals.c (move_if_not_intangible):
117 Force POSITION to be between BEGV and ZV.
118
119 2004-08-14 John Paul Wallington <jpw@gnu.org>
120
121 * buffer.c (Frestore_buffer_modified_p): Doc fix.
122
123 * fileio.c (Fread_file_name): Doc fix.
124
125 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
126
127 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
128
129 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
130
131 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
132
133 * keyboard.c: Declare Qdisabled_command_function instead of
134 Qdisabled_command_hook.
135 (Fcommand_execute): Use Qdisabled_command_function instead of
136 Qdisabled_command_hook.
137 (syms_of_keyboard): Ditto.
138
139 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
140
141 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
142 (syms_of_keymap) <key-translation-map>: Doc fixes.
143
144 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
145
146 * window.c (window_list_1): YAILOM.
147
148 * fileio.c (make_temp_name): Handle multibyte prefixes.
149
150 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
151
152 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
153 Doc fix.
154
155 2004-08-03 Kenichi Handa <handa@m17n.org>
156
157 * coding.c (decode_coding_string): Adjust coding->consumed, and
158 etc. with shrinked_bytes.
159
160 2004-08-03 Kim F. Storm <storm@cua.dk>
161
162 * indent.c (compute_motion): Fix check for full width window
163 in non-window case. Do not count left truncation glyph on
164 window systems.
165
166 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
167
168 * data.c (Finteractive_form): Doc fix.
169
170 2004-08-02 Kim F. Storm <storm@cua.dk>
171
172 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
173 properly accounting for continuation glyph on non-window systems.
174 (Fcompute_motion): Use actual window width if WIDTH is nil, and
175 actual window width/height if TOPOS is nil, properly accounting for
176 continuation glyphs on non-window systems, and optional header lines.
177 (vmotion): Let compute_motion calculate actual window width.
178
179 * window.c (window_scroll_line_based): Let compute_motion
180 calculate actual window width.
181
182 2004-08-02 Kim F. Storm <storm@cua.dk>
183
184 * process.c (read_process_output): Use whole read buffer.
185 Don't trigger adaptive read buffering on errors.
186
187 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
188
189 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
190
191 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
192
193 * callint.c (Fcall_interactively): Doc fix.
194
195 2004-07-30 Richard M. Stallman <rms@gnu.org>
196
197 * abbrev.c (Fexpand_abbrev): Undo previous change.
198
199 2004-07-30 Kim F. Storm <storm@cua.dk>
200
201 * editfns.c (Fformat): Allocate extra (dummy) element in info.
202
203 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
204
205 * eval.c (Fdefvar, Fdefconst): Doc fixes.
206
207 2004-07-27 Kim F. Storm <storm@cua.dk>
208
209 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
210 we have ensured that the glyph fits on the current line (or returned
211 MOVE_LINE_CONTINUED otherwise).
212
213 2004-07-26 Kim F. Storm <storm@cua.dk>
214
215 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
216 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
217 if target position is at end of display line but char is not a newline.
218
219 2004-07-25 Richard M. Stallman <rms@gnu.org>
220
221 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
222 instead of ON_VERTICAL_BORDER, when on scroll bar.
223 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
224
225 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
226
227 * window.c (Fcoordinates_in_window_p):
228 Take account of FRAME_INTERNAL_BORDER_WIDTH.
229
230 * alloc.c (check_cons_list): New function (contents commented out).
231
232 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
233
234 * xfaces.c (Fcolor_supported_p): Doc fix.
235
236 * frame.c (Fselect_frame, Fset_frame_selected_window)
237 (Fframe_visible_p, Fraise_frame): Doc fixes.
238
239 2004-07-24 Richard M. Stallman <rms@gnu.org>
240
241 * keyboard.h (not_single_kboard_state): Declared.
242
243 * fileio.c (Fwrite_region): Doc fix.
244
245 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
246
247 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
248 only when a real abbrev is present.
249
250 * xfns.c (x_icon_verify): New function.
251 (Fx_create_frame): Use it.
252
253 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
254
255 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
256
257 2004-07-21 Kim F. Storm <storm@cua.dk>
258
259 * window.h (struct glyph_matrix): New members nrows_scale_factor
260 and ncols_scale_factor.
261
262 * window.c (make_window): Initialize nrows_scale_factor and
263 ncols_scale_factor members.
264
265 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
266 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
267 (required_matrix_height): Apply nrows_scale_factor.
268 (required_matrix_width): Apply ncols_scale_factor.
269
270 * xdisp.c (display_line): Increment nrows_scale_factor and set
271 fonts_changed_p if past last allocated row.
272 (append_glyph, append_composite_glyph, produce_image_glyph)
273 (append_stretch_glyph): Increment ncols_scale_factor and set
274 fonts_changed_p if current area is full.
275
276 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
277
278 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
279
280 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
281
282 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
283 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
284 (Fset_window_start, Fscroll_up, Fscroll_down)
285 (Fother_window_for_scrolling, Fscroll_other_window)
286 (Fsave_window_excursion, Fset_window_vscroll)
287 (syms_of_window) <window-size-fixed>: Doc fixes.
288
289 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
290
291 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
292 ENCODE_SYSTEM for filenames.
293
294 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
295
296 * mac.c (sys_select): Block input around call to
297 ReceiveNextEvent to prevent breakage. Correctly handle
298 blocking on event queue only by calling ReceiveNextEvent
299 instead of select (since GUI events aren't on an fd).
300 (sys_read): Remove function
301 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
302
303 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
304
305 * mac.c (sys_select): Redo sys_select to use alarm-based
306 polling instead of 1 sec timeouts (like solaris).
307
308 * macterm.c (x_make_frame_visible): Comment in polling on
309 frame creation.
310
311 * keyboard.c: Undef SIGIO on Carbon
312
313 * atimer.c (alarm_signal_handler): Call alarm handlers after
314 scheduling.
315
316 * eval.c (Feval): Remove quit_char test
317
318 * process.c (wait_reading_process_input): Remove clearing
319 stdin for select call on process input.
320
321 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
322
323 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
324 capitalization error in docstring.
325
326 2004-07-17 Juanma Barranquero <lektu@terra.es>
327
328 * keyboard.c (not_single_kboard_state): Do nothing unless
329 MULTI_KBOARD is defined.
330
331 2004-07-17 Richard M. Stallman <rms@gnu.org>
332
333 * window.c (coordinates_in_window): Inside the window but outside
334 its box to the L or R, return ON_VERTICAL_BORDER.
335 (window_list_1): Rotate the list to start with WINDOW.
336
337 * print.c (print_preprocess): Test for print_depth at limit
338 before entering in being_printed.
339
340 * keyboard.c (not_single_kboard_state): New function.
341 (stuff_buffered_input): Now no-op only if no SIGTSTP.
342
343 * frame.c (Fdelete_frame): If we're in single_bboard_state on
344 this kboard, and we delete its last frame, go to any_kboard_state.
345
346 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
347
348 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
349
350 * w32fns.c (Fx_file_dialog): Encode strings in system coding
351 system before passing them to OS functions for display.
352
353 2004-07-15 David Kastrup <dak@gnu.org>
354
355 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
356 Apparently fixes an abort condition.
357
358 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
359
360 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
361 instead of a cons.
362
363 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
364
365 * keyboard.c (echo_dash): Do nothing if there already is a dash
366 at the end of the echo string.
367
368 2004-07-12 Kim F. Storm <storm@cua.dk>
369
370 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
371 if GC_MARK_STACK.
372
373 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
374
375 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
376
377 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
378 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
379 (Freplace_buffer_in_windows, Fset_window_buffer)
380 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
381 (syms_of_window): Expand docstring of `display-buffer-function'.
382
383 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
384
385 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
386 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
387 that time values of the type (HIGH . LOW) are considered obsolete.
388
389 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
390
391 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
392 docstring.
393
394 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
395
396 2004-07-06 John Paul Wallington <jpw@gnu.org>
397
398 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
399
400 * fns.c (Fclear_string): Signal an error if STRING is not a string.
401
402 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
403
404 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
405 instead of CGMainDisplayID (only in OSX 10.2 and later).
406
407 2004-07-04 John Paul Wallington <jpw@gnu.org>
408
409 * fileio.c (read_file_name_completion_ignore_case): New variable.
410 (syms_of_fileio): Declare and initialise it.
411 (Fread_file_name): Bind `completion-ignore-case' to respect it.
412
413 2004-07-03 Eli Zaretskii <eliz@gnu.org>
414
415 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
416 for event.x and event.y.
417
418 2004-07-01 Kenichi Handa <handa@m17n.org>
419
420 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
421 after getting a new string by pre-write-conversion.
422
423 2004-06-30 Stefan <monnier@iro.umontreal.ca>
424
425 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
426 (x_calc_absolute_position): Remove unused var `child'.
427
428 * xfaces.c (x_supports_face_attributes_p)
429 (Fdisplay_supports_face_attributes_p): YAILOM.
430 (tty_supports_face_attributes_p): Remove unused var `i'.
431
432 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
433 back_unibyte_ok.
434
435 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
436
437 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
438
439 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
440
441 2004-06-30 Andreas Schwab <schwab@suse.de>
442
443 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
444 (Finit_image_library): Pass LIBRARIES through to
445 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
446 (lookup_image_type): Pass Qnil as second argument to
447 Finit_image_library.
448
449 * lisp.h: Declare Finit_image_library.
450
451 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
452
453 * macterm.c (do_window_activate, do_window_deactivate): Remove.
454 (XTread_socket): Send mouse button events to the toolbox
455 dispatcher even when the mouse is grabbed. Don't process window
456 activate events for non-Emacs windows. Replace function calls to
457 do_window_activate and do_window_deactivate with their contents.
458 Reset mouse grabbing status when a window is deactivated.
459
460 2004-06-29 Steven Tamm <steventamm@mac.com>
461
462 * macterm.c (mac_get_emulated_btn)
463 (mac_event_to_emacs_modifiers): Fix emulated mouse button
464 support to correctly mask out modifiers.
465
466 2004-06-29 David Kastrup <dak@gnu.org>
467
468 * search.c (Fset_match_data): Allow buffer before end of list
469 which can happen if set-match-data is using a pre-consed list.
470
471 2004-06-28 Steven Tamm <steventamm@mac.com>
472
473 * macterm.c (XTread_socket): Correctly set the frame position
474 after the window is moved.
475
476 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
477
478 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
479 gpix and gmask just before return to avoid memory leak.
480 (xg_get_image_for_pixmap): Add workaround for monochrome displays
481 so insensitive and activated icons look ok.
482
483 2004-06-27 Jason Rumney <jasonr@gnu.org>
484
485 * w32fns.c (file_dialog_callback): Disable edit control if set
486 to directories only on CDN_INITDONE message.
487 (Fx_file_dialog): Default to directories only when prompt starts
488 with "Dired".
489
490 2004-06-25 Kim F. Storm <storm@cua.dk>
491
492 * alloc.c (allocate_misc): Update total_free_markers.
493 (free_misc): New function.
494 (safe_alloca_unwind, free_marker): Use it.
495
496 * lisp.h (free_misc): Add prototype.
497
498 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
499
500 2004-06-24 Richard M. Stallman <rms@gnu.org>
501
502 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
503 (syms_of_emacs): Lisp variables deleted.
504
505 2004-06-23 David Kastrup <dak@gnu.org>
506
507 * search.c (Freplace_match): Adjust the match-data more thoroughly
508 when replacing strings in the buffer.
509 (Fmatch_data): When INTEGERS is non-nil and the last match was in
510 a buffer, add the buffer as last element to the match data.
511 (Fset_match_data): If an additional element of the match-data is a
512 buffer, restore it to last_thing_searched.
513 (save_search_regs): Save last_thing_searched as part of the match data.
514 (restore_match_data): Restore it again.
515
516 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
517
518 * keymap.c (Ftext_char_description): Doc fix.
519 * doc.c (Fsnarf_documentation): Doc fix.
520
521 2004-06-22 Kim F. Storm <storm@cua.dk>
522
523 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
524
525 * lisp.h (struct Lisp_Save_Value): New member dogc.
526 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
527 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
528 (SAFE_FREE_LISP): New macro.
529
530 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
531 (make_save_value): Init new dogc member.
532 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
533
534 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
535 SAFE_FREE_LISP macros.
536
537 2004-06-22 Kim F. Storm <storm@cua.dk>
538
539 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
540 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
541 in that memory area are unknown to GC. Add comments.
542
543 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
544
545 2004-06-21 Kim F. Storm <storm@cua.dk>
546
547 * lisp.h (MAX_ALLOCA): Define here.
548 (safe_alloca_unwind): Add prototype.
549 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
550
551 * alloc.c (safe_alloca_unwind): New function.
552
553 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
554
555 * charset.c (Fstring): Use SAFE_ALLOCA.
556
557 * coding.c (MAX_ALLOCA): Remove define.
558
559 * data.c (MAX_ALLOCA): Remove define.
560 (Faset): Use SAFE_ALLOCA.
561
562 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
563
564 * fns.c (string_make_multibyte, string_to_multibyte)
565 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
566 (MAX_ALLOCA): Remove define.
567 (Fbase64_encode_region, Fbase64_encode_string)
568 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
569 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
570 memory leak if encoding fails.
571
572 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
573
574 2004-06-21 Eli Zaretskii <eliz@gnu.org>
575
576 * print.c (Fwith_output_to_temp_buffer): Doc fix.
577
578 2004-06-20 Richard M. Stallman <rms@gnu.org>
579
580 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
581
582 * search.c (match_limit): Cleaner err msg when no match data available.
583
584 * window.c (syms_of_window): Doc fix.
585
586 * keyboard.c (command_loop_1): Handle values `only' and `identity'
587 for Vtransient_mark_mode.
588
589 * buffer.c (syms_of_buffer): Doc fix.
590
591 2004-06-21 David Kastrup <dak@gnu.org>
592
593 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
594 and unbinding of `case-fold-search' according to
595 `completion-ignore-case' around calls of string-match and
596 predicates, respectively. Should give satisfactory performance
597 in all relevant cases.
598
599 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
600
601 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
602 clip_x/y_origin.
603
604 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
605
606 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
607
608 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
609 on Mac OSX.
610
611 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
612
613 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
614
615 2004-06-16 Kim F. Storm <storm@cua.dk>
616
617 * dispextern.h (Vimage_types): Remove extern.
618
619 2004-06-16 Miles Bader <miles@gnu.org>
620
621 * image.c (lookup_image_type): Initialize image type if necessary.
622
623 2004-06-15 Kim F. Storm <storm@cua.dk>
624
625 * xdisp.c (try_cursor_movement): Exclude header line from scroll
626 margin at top of window.
627 (try_window_reusing_current_matrix): Calculate proper cursor position
628 after scrolling up with non-zero scroll margin, as the old cursor
629 position corresponds to value of PT before executing this command.
630 (try_window_id): Consider scroll margin at bottom of window too;
631 otherwise we fail to scroll when hl-line-mode is enabled.
632
633 * syntax.c (skip_chars): Only recognize [:class:] when it has the
634 proper format and class is a lower-case word.
635
636 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
637
638 * gtkutil.c (xg_get_image_for_pixmap): New function.
639 (xg_get_gdk_pixmap_and_mask): Remove.
640 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
641 xg_get_gdk_pixmap_and_mask.
642
643 * xterm.h (struct x_display_info): Typo in comment fixed.
644
645 2004-06-14 Juanma Barranquero <lektu@terra.es>
646
647 * dispextern.h (Vimage_types): Make it conditional on
648 HAVE_WINDOW_SYSTEM.
649
650 * image.c (Vimage_types): Move from xdisp.c.
651 (Vimage_type_cache): New variable.
652 (define_image_type): New argument indicating whether an image
653 library was loaded; cache loaded status and return t on success,
654 nil otherwise.
655 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
656 (w32_delayed_load): New function to load an image library from a
657 list of possible filenames.
658 (init_xpm_functions, init_png_functions, init_jpeg_functions)
659 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
660 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
661 (Finit_image_library): New function, extracted from `init_image'.
662 Try to initialize an image library on demand and cache whether we
663 were successful or not.
664 (syms_of_image): Initialize `Vimage_types' and
665 `Vimage_type_cache'. Add recognized image types to Vimage_types.
666 Export `init-image-library'.
667 (init_image): Remove initialization of all image types, except xbm
668 and pbm.
669
670 * xdisp.c (Vimage_types): Delete (moved to image.c).
671
672 2004-06-14 Andreas Schwab <schwab@suse.de>
673
674 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
675 Avoid calling specbind when completion-regexp-list is empty.
676
677 2004-06-13 Richard M. Stallman <rms@gnu.org>
678
679 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
680 (re_wctype, re_iswctype, re_wctype_to_bit):
681 Non-function definitions moved here from regex.c.
682
683 * regex.c (re_wctype, re_iswctype): Function defs longer static.
684 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
685 (re_wctype, re_iswctype, re_wctype_to_bit):
686 Non-function definitions moved to regex.h.
687
688 * window.c (Fselect_window): Doc fix.
689
690 * syntax.c: Include regex.h.
691 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
692 If requested, make a list of classes, then check the scanned
693 chars for membership in them.
694 (in_classes): New function.
695 Doc fix.
696
697 * keyboard.c (cmd_error): Don't call any_kboard_state
698 if inside a recursive edit level.
699
700 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
701
702 * keyboard.c (command_loop): Call any_kboard_state before
703 command_loop_2 when at top level.
704
705 2004-06-13 Andreas Schwab <schwab@suse.de>
706
707 * print.c (print_object): Always use %ld for printing EMACS_INT.
708
709 * keyboard.c (cancel_hourglass_unwind): Return a value.
710 (modify_event_symbol): Always use %ld for printing EMACS_INT.
711 (Fexecute_extended_command): Likewise.
712
713 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
714 avoid clashes.
715 (SYNTAX): Likewise.
716 (SYNTAX_WITH_FLAGS): Likewise.
717 (SYNTAX_MATCH): Likewise.
718
719 * syntax.c (char_quoted): Avoid warning about undefined operation.
720 (find_defun_start): Likewise.
721 (scan_lists): Likewise.
722 (INC_FROM): Likewise.
723 (scan_sexps_forward): Likewise.
724
725 * image.c: Include <ctype.h>.
726
727 * xfaces.c (face_attr_equal_p): Declare parameters.
728
729 2004-06-13 Kenichi Handa <handa@m17n.org>
730
731 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
732
733 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
734
735 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
736
737 2004-06-12 Kenichi Handa <handa@m17n.org>
738
739 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
740 ccl_prog_stack_struct and update it.
741 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
742 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
743 ccl->eof_ic on EOF.
744 (ccl_debug_hook): New function.
745 (struct ccl_prog_stack): New member eof_ic.
746 (ccl_driver): Handle EOF in subrountine call correctly.
747
748 2004-06-11 Kenichi Handa <handa@m17n.org>
749
750 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
751
752 2004-06-11 Kim F. Storm <storm@cua.dk>
753
754 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
755
756 2004-06-11 Juanma Barranquero <lektu@terra.es>
757
758 * keyboard.c (Fposn_at_point): Doc fix.
759
760 2004-06-11 David Kastrup <dak@gnu.org>
761
762 * search.c (match_limit): Don't flag an error if match-data
763 exceeding the allocated search_regs.num_regs gets requested, just
764 return Qnil.
765
766 2004-06-08 Miles Bader <miles@gnu.org>
767
768 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
769
770 2004-06-07 Juanma Barranquero <lektu@terra.es>
771
772 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
773 (Fcurrent_time_string, Fcurrent_time_zone)
774 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
775
776 2004-06-07 Miles Bader <miles@gnu.org>
777
778 * xfaces.c (struct named_merge_point): New type.
779 (push_named_merge_point): New function.
780 (merge_named_face): New function.
781 (merge_face_ref, face_at_buffer_position, face_at_string_position):
782 Use `merge_named_face'.
783 (merge_face_inheritance): Function removed.
784 (merge_face_ref): Rename from `merge_face_vector_with_property'.
785 Add new `err_msgs' and `named_merge_points' args. Return error
786 status. Only print error messages if ERR_MSGS is true. Don't try to
787 do :inherit attribute validation.
788 (merge_face_heights): Handle `unspecified' in both directions.
789 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
790 Call `merge_face_ref' instead of `merge_face_inheritance'.
791 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
792 (compute_char_face, face_at_buffer_position)
793 (face_at_string_position): Call `merge_face_ref' instead of
794 `merge_face_vector_with_property'.
795
796 2004-06-07 Kenichi Handa <handa@m17n.org>
797
798 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
799 the necessary places.
800
801 2004-06-07 Kim F. Storm <storm@cua.dk>
802
803 * process.c (Fdelete_process): Undo 2004-05-28 change.
804 Instead, call status_notify also for network process.
805 (status_message): Use process instead of status as arg.
806 Give messages "deleted" or "connection broken by remote peer" for
807 an exited network process.
808 (status_notify): Change call to status_message.
809 (read_process_output): Increase readmax to 4096. Do not increase
810 buffer size for datagram channels (default is now large enough).
811
812 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
813
814 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
815 problem due to newly defined variable.
816
817 2004-06-06 Miles Bader <miles@gnu.org>
818
819 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
820 immediately if non-interactive or not initialized.
821
822 2004-06-05 Richard M. Stallman <rms@gnu.org>
823
824 * minibuf.c (Fcompleting_read): Doc fix.
825
826 2004-06-05 Andreas Schwab <schwab@suse.de>
827
828 * macfns.c (x_create_tip_frame): Fix declaration after statement.
829
830 2004-06-05 Juanma Barranquero <lektu@terra.es>
831
832 * keymap.c (Fdescribe_vector): Fix docstring.
833 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
834
835 2004-06-05 Miles Bader <miles@gnu.org>
836
837 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
838 attributes have different values than the default face.
839
840 2004-06-04 Eli Zaretskii <eliz@gnu.org>
841
842 * xfaces.c (x_supports_face_attributes_p): Make this function
843 conditional on HAVE_WINDOW_SYSTEM.
844 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
845 Don't call x_supports_face_attributes_p if it was not compiled in.
846
847 2004-06-04 Miles Bader <miles@gnu.org>
848
849 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
850 from Ftty_supports_face_attributes_p.
851 (x_supports_face_attributes_p): New function.
852 (Ftty_supports_face_attributes_p): Function deleted.
853 (Fdisplay_supports_face_attributes_p): New function.
854 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
855 (face_attr_equal_p): New function.
856 (lface_equal_p): Use it.
857
858 2004-06-03 Juanma Barranquero <lektu@terra.es>
859
860 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
861 (Vw32_color_map): Fix typo in docstring.
862 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
863 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
864 Make argument names match their use in docstring.
865
866 2004-06-02 Juanma Barranquero <lektu@terra.es>
867
868 Work around bugs/problems with MinGW builds of graphics libraries
869 called from MSVC builds of Emacs.
870
871 * image.c (lookup_image): Make pointer to img static.
872 (png_read_from_memory): Disable "global" optimization.
873
874 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
875
876 * eval.c (Fcondition_case): Fix usage. Simplify.
877
878 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
879
880 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
881
882 * macfns.c: Don't include ccl.h.
883 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
884 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
885 TextUtils.h.
886 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
887 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
888 display height/width.
889 (compute_tip_xy, Vx_max_tooltip_size): Declare.
890 (unwind_create_tip_frame, compute_tip_xy): New functions.
891 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
892 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
893 and last_show_tip_args.
894
895 * macgui.h [!MAC_OSX]: Include Gestalt.h.
896 (Cursor, No_Cursor): New defines.
897 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
898 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
899
900 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
901
902 * macterm.c: Don't include Gestalt.h.
903 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
904 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
905 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
906 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
907 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
908 (construct_mouse_click, XTmouse_position)
909 (x_scroll_bar_report_motion, x_calc_absolute_position)
910 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
911 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
912 (note_mouse_movement): Clear the mouse face and reset the pointer
913 shape when the pointer goes outside the frame without grabbing.
914 (mac_front_window): New function.
915 (mac_window_to_frame): New macro.
916 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
917 (do_window_activate, do_window_deactivate, do_app_resume)
918 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
919 (do_zoom_window, mac_do_receive_drag, XTread_socket)
920 (mac_check_for_quit_char): Use mac_front_window and/or
921 mac_window_to_frame.
922 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
923 scroll-bar click event.
924 (mac_define_frame_cursor): Change the pointer shape.
925 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
926 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
927 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
928 (do_window_update): Don't do anything if the updated window is the
929 tooltip window.
930 (do_mouse_moved): Handle mouse movement events here (previously in
931 XTread_socket). Clear the mouse face if
932 dpyinfo->mouse_face_hidden is set.
933 (do_os_event, do_events): Remove (now in XTread_socket).
934 (XTread_socket): Immediately return if interrupt_input_blocked.
935 Loop until all the events in the queue are processed.
936 Rearrange codes for mouse grabbing. Add tooltip support. Include the
937 contents of do_os_event and do_events. Remove mouse movement
938 handling (now in do_mouse_moved). Add the case where
939 Vmouse_highlight has an integer value.
940 (NewMacWindow): Remove.
941 (make_mac_frame): Do what NewMacWindow previously did. Don't do
942 excess initializations.
943 (make_mac_terminal_frame): Previous initializations in
944 make_mac_frame are moved here.
945 (mac_initialize_display_info):
946 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
947
948 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
949 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
950
951 2004-05-29 Richard M. Stallman <rms@gnu.org>
952
953 * lisp.h (truncate_undo_list): Update decl.
954
955 * alloc.c (undo_outer_limit): New variable.
956 (syms_of_alloc): Defvar it.
957 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
958
959 * undo.c (truncate_undo_list): New arg LIMITSIZE.
960
961 * alloc.c (lisp_align_malloc): Check for base == 0
962 regardless of HAVE_POSIX_MEMALIGN.
963 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
964
965 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
966
967 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
968 (marker_blocks_pending_free): Remove.
969 (Fgarbage_collect): Sweep after cleaning up undo-lists.
970 Mark the undo lists after claning them up.
971 Don't free block in marker_blocks_pending_free.
972 (mark_buffer): Don't mark undo_list.
973 (gc_sweep): Sweep hash-tables and strings first.
974 Do free marker blocks that are empty.
975
976 2004-05-28 Jim Blandy <jimb@redhat.com>
977
978 * regex.c (print_partial_compiled_pattern): Add missing 'break'
979 after 'case wordend'. For symbeg and symend, print to stderr,
980 like the other cases.
981
982 2004-05-28 Noah Friedman <friedman@splode.com>
983
984 * process.c (Fdelete_process): Do not call remove_process.
985
986 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
987
988 * alloc.c (struct backtrace): Remove.
989 (Fgarbage_collect): Use the new mark_backtrace.
990
991 * eval.c (mark_backtrace): New function.
992
993 * minibuf.c (run_exit_minibuf_hook): New function.
994 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
995 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
996
997 2004-05-27 Kim F. Storm <storm@cua.dk>
998
999 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1000 over display properties, e.g. images, that replace buffer text.
1001
1002 2004-05-25 Kim F. Storm <storm@cua.dk>
1003
1004 * alloc.c (marker_blocks_pending_free): New var.
1005 (gc_sweep): Store free marker blocks on that list.
1006 (Fgarbage_collect): Free them after undo-list cleanup.
1007
1008 * process.c (wait_reading_process_input): Check connect_wait_mask
1009 before actually accepting connection in case it has already been
1010 accepted due to recursion.
1011
1012 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1013
1014 * coding.c (Fset_safe_terminal_coding_system_internal):
1015 Set suppress_error in safe_terminal_coding, not terminal_coding.
1016
1017 2004-05-22 Richard M. Stallman <rms@gnu.org>
1018
1019 * alloc.c (Fmake_string): Doc fix.
1020
1021 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1022 and the alist pairs too.
1023
1024 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1025
1026 * emacs.c (main): Update copyright year.
1027
1028 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1029
1030 * insdel.c (del_range_2, replace_range): Don't write an anchor
1031 if the gap is empty.
1032
1033 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1034 scroll-down-aggressively is small but positive, put point
1035 near the screen edge.
1036
1037 2004-05-22 Juanma Barranquero <lektu@terra.es>
1038
1039 * keymap.c (Fdefine_key): Doc fix.
1040
1041 2004-05-22 Kim F. Storm <storm@cua.dk>
1042
1043 * alloc.c (struct backtrace): Add debug_on_exit member.
1044 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1045 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1046 the removed cons cells.
1047 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1048 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1049 any cons cells pointing to unallocated stings.
1050 Do not lisp_free any marker blocks, as there may still be pointers
1051 to them from buffer undo lists at this stage of GC.
1052
1053 * keyboard.c (struct backtrace): Add debug_on_exit member.
1054 (Fcommand_execute): Clear it.
1055
1056 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1057
1058 * intervals.c (lookup_char_property): Do not prematurely return nil.
1059
1060 2004-05-19 Jim Blandy <jimb@redhat.com>
1061
1062 Add support for new '\_<' and '\_>' regexp operators, matching the
1063 beginning and end of symbols.
1064
1065 * regex.c (enum syntaxcode): Add Ssymbol.
1066 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1067 (re_opcode_t): New opcodes `symbeg' and `symend'.
1068 (print_partial_compiled_pattern): Print the new opcodes properly.
1069 (regex_compile): Parse the new operators.
1070 (analyse_first): Skip sym(beg|end) (they match only the empty string).
1071 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1072 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1073 (re_match_2_internal): Match symbeg and symend.
1074
1075 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1076
1077 2004-05-19 Kim F. Storm <storm@cua.dk>
1078
1079 * .gdbinit (xsymbol): Fix last change.
1080
1081 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1082
1083 * .gdbinit (xprintstr): New fun.
1084 (xstring, xprintsym): Use it.
1085
1086 * w32proc.c (create_child): Use INTMASK.
1087
1088 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1089 unmarked elements of the undo list.
1090
1091 2004-05-18 David Ponce <david@dponce.com>
1092
1093 * print.c (print): Reset print_depth before to call print_object.
1094
1095 2004-05-18 Jason Rumney <jasonr@gnu.org>
1096
1097 * w32console.c: Prefix RIF functions with w32con_ to avoid
1098 namespace clash with functions in term.c and w32term.c.
1099
1100 * w32menu.c (add_menu_item, w32_menu_display_help)
1101 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1102
1103 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
1104
1105 2004-05-18 Eli Zaretskii <eliz@gnu.org>
1106
1107 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1108
1109 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1110 with make_number.
1111 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1112 with XINT.
1113
1114 2004-05-18 Kim F. Storm <storm@cua.dk>
1115
1116 * blockinput.h (INPUT_BLOCKED_P): New macros.
1117
1118 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1119 (Ftop_level): Unblock input if blocked.
1120
1121 * buffer.h (GET_OVERLAYS_AT): New macro.
1122 * msdos.c (IT_note_mouse_highlight): Use it.
1123 * textprop.c (get_char_property_and_overlay): Use it.
1124 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1125 * xfaces.c (face_at_buffer_position): Use it.
1126
1127 * print.c (print_object): Increase buf size.
1128
1129 2004-05-17 Jason Rumney <jasonr@gnu.org>
1130
1131 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1132 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1133 Lisp_Object using i member.
1134 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1135 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1136 consistently.
1137
1138 * w32proc.c (create_child): Use make_number instead of masking pid.
1139
1140 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1141 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1142 Use EQ to compare Lisp_Objects.
1143 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1144
1145 * w32term.c (w32_num_mouse_buttons): Rename from
1146 Vw32_num_mouse_buttons and make it an int.
1147
1148 * w32.c (init_environment): Use it.
1149
1150 * w32fns.c (w32_wnd_proc): Likewise.
1151
1152 * w32proc.c (w32_pipe_read_delay): Rename from
1153 Vw32_pipe_read_delay and make it an int.
1154
1155 * w32.c (_sys_read_ahead): Use it.
1156
1157 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1158
1159 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1160
1161 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1162 (key_event): Don't mix Lisp_Object and int.
1163
1164 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1165
1166 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1167 modifiers in language change event.
1168
1169 2004-05-17 Kim F. Storm <storm@cua.dk>
1170
1171 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1172 Such objects may be freed markers which still exist on an undo list.
1173
1174 2004-05-16 Juanma Barranquero <lektu@terra.es>
1175
1176 * data.c (Fset_default): Make argument names match their use in
1177 docstring.
1178
1179 2004-05-15 Andreas Schwab <schwab@suse.de>
1180
1181 * emacs.c (gdb_array_mark_flag): Define.
1182 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1183
1184 2004-05-15 Eli Zaretskii <eliz@gnu.org>
1185
1186 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1187 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1188 defined for the MS-DOS build.
1189
1190 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1191
1192 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1193
1194 2004-05-14 Kenichi Handa <handa@m17n.org>
1195
1196 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1197
1198 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1199
1200 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1201 section to frame.c section.
1202 (Fxw_display_color_p, Fx_file_dialog): Declare if
1203 HAVE_WINDOW_SYSTEM defined.
1204
1205 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
1206
1207 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
1208
1209 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1210 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1211 (XTread_socket): Fix int/Lisp_Object mixup.
1212 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
1213
1214 * macterm.h (struct frame, struct face, struct image)
1215 (display_x_get_resource, Fx_display_color_p)
1216 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1217 Add prototypes.
1218
1219 2004-05-14 Kim F. Storm <storm@cua.dk>
1220
1221 * process.c (wait_reading_process_input): Make reentrant.
1222 Make Available and Connecting non-static. Save and restore value
1223 of waiting_for_user_input_p.
1224
1225 2004-05-13 Kim F. Storm <storm@cua.dk>
1226
1227 * keyboard.c (mark_kboards): Don't mark x and y members
1228 that are overloaded in selection request events.
1229
1230 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1231
1232 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1233
1234 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1235
1236 * window.c (Fdisplay_buffer, Fsplit_window)
1237 (split-height-threshold): Doc fix.
1238
1239 2004-05-13 Juanma Barranquero <lektu@terra.es>
1240
1241 * xfaces.c (Ftty_supports_face_attributes_p)
1242 (Finternal_copy_lisp_face): Fix typo in docstring.
1243 (Finternal_get_lisp_face_attribute): Fix docstring.
1244
1245 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1246
1247 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1248
1249 2004-05-11 Steven Tamm <steventamm@mac.com>
1250
1251 * macfns.c (Fx_create_frame): Default to using tool-bar by
1252 setting tool-bar-lines to 1 in default-frame-alist.
1253
1254 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1255
1256 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1257 (xpm_get_color_table_v, xpm_make_color_table_h)
1258 (xpm_put_color_table_h, xpm_get_color_table_h)
1259 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1260 (syms_of_image): Support XPM on Carbon Emacs. Does not
1261 depend on libXpm, but only supports XPM version 3 without extensions.
1262
1263 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1264
1265 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
1266 instead of FRAME_X_P
1267
1268 2004-05-11 Kim F. Storm <storm@cua.dk>
1269
1270 * process.c (read_process_output): Grow decoding_buf when needed;
1271 this could cause a crash in allocate_string and compact_small_strings.
1272
1273 2004-04-29 Jim Blandy <jimb@redhat.com>
1274
1275 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1276 against proper opcode.
1277
1278 2004-05-10 Juanma Barranquero <lektu@terra.es>
1279
1280 * process.c (Fstart_process): Fix docstring.
1281
1282 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1283 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1284 (Fsplit_char, Fchar_charset): Make argument names match their use
1285 in docstring.
1286
1287 2004-05-10 Richard M. Stallman <rms@gnu.org>
1288
1289 * print.c (print_preprocess): Use being_printed, loop_count and
1290 halftail to detect overdeep nesting and cyclic cdr chains.
1291
1292 2004-05-10 Andreas Schwab <schwab@suse.de>
1293
1294 * lisp.h: Declare Fmake_symbolic_link.
1295
1296 * fileio.c (Frename_file): Remove extra argument in call to
1297 Fmake_symbolic_link.
1298
1299 2004-05-10 Kim F. Storm <storm@cua.dk>
1300
1301 * xdisp.c (calc_line_height_property): Use string position when
1302 object is a string.
1303
1304 2004-05-10 Kenichi Handa <handa@m17n.org>
1305
1306 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1307 inhibit-modification-hooks to t temporarily before calling
1308 Ferase_buffer.
1309
1310 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1311 inhibit-modification-hooks to t temporarily before calling
1312 Ferase_buffer.
1313
1314 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1315 inhibit-modification-hooks to t temporarily before calling
1316 Ferase_buffer.
1317
1318 * fns.c (count_combining): Delete it.
1319 (concat): Don't check combining bytes.
1320
1321 2004-05-09 Jason Rumney <jasonr@gnu.org>
1322
1323 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1324 (globals_of_w32fns): Set it.
1325
1326 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1327
1328 * data.c (Fquo): Simplify.
1329
1330 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1331
1332 * data.c (Fquo): If any argument is float, do the computation in
1333 floating point.
1334
1335 2004-05-08 Juanma Barranquero <lektu@terra.es>
1336
1337 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1338 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1339 Fix spelling of Emacs on docstring.
1340 (Fset_process_coding_system, Fprocess_coding_system)
1341 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1342 Make argument names match their use in docstring.
1343 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1344 Fix docstring.
1345
1346 * editfns.c (Finsert_buffer_substring): Make argument names match their
1347 use in docstring.
1348
1349 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1350
1351 2004-05-07 Steven Tamm <steventamm@mac.com>
1352
1353 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1354 around call to ReceiveEvent to avoid certain crashes.
1355
1356 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1357
1358 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1359 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1360 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1361 Save/restore the current graphics port and device handle when
1362 drawing into an offscreen graphics world.
1363
1364 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1365 (gif_load): Likewise.
1366
1367 2004-05-07 Juanma Barranquero <lektu@terra.es>
1368
1369 * window.c (Fset_window_buffer): Fix docstring.
1370
1371 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1372
1373 * emacs.c (main) [VMS]: Fix var ref.
1374
1375 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1376
1377 * data.c (Fsetq_default): Fix docstring.
1378
1379 2004-05-06 Jason Rumney <jasonr@gnu.org>
1380
1381 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1382 to avoid name clash.
1383
1384 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1385
1386 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1387 (Frename_file): Handle renaming of symlinks across file systems.
1388 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
1389
1390 2004-05-04 Kim F. Storm <storm@cua.dk>
1391
1392 * xdisp.c (Qtotal): New var.
1393 (syms_of_xdisp): Intern and staticpro it.
1394 (calc_line_height_property): New arg total. Set it if
1395 line-spacing property has format (total . VALUE).
1396 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1397 Handle total line-spacing property.
1398
1399 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1400
1401 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1402 "under" scroll bar when size/position changes.
1403
1404 2004-05-03 Jason Rumney <jasonr@gnu.org>
1405
1406 * makefile.nt: Remove.
1407
1408 2004-05-02 Eli Zaretskii <eliz@gnu.org>
1409
1410 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1411 Avoid compiler warnings.
1412
1413 * Makefile.in (region-cache.o): Depend on config.h.
1414
1415 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1416
1417 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1418 with continuation lines, too.
1419
1420 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1421
1422 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1423
1424 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1425
1426 * xdisp.c (calc_line_height_property): YAILOM (yet another
1427 int/Lisp_Object mixup).
1428
1429 2004-05-01 Eli Zaretskii <eliz@gnu.org>
1430
1431 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1432 undo bad effect of pack(4) in some versions of system headers.
1433
1434 2004-05-01 Jason Rumney <jasonr@gnu.org>
1435
1436 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1437
1438 2004-04-30 Kim F. Storm <storm@cua.dk>
1439
1440 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
1441 (syms_of_buffer) <cursor-type>: Doc fix.
1442
1443 * dispextern.h (struct it): Remove member use_default_face.
1444 Add members override_ascent, override_descent, override_boff.
1445
1446 * xdisp.c (init_iterator): Handle line-spacing float value.
1447 Initialize override_ascent member.
1448 (append_space_for_newline): Reset override_ascent.
1449 Remove use_default_face.
1450 (calc_line_height_property): New function to calculate value of
1451 line-height and line-spacing properties. Look at overlays, too.
1452 Set override_ascent, override_descent, override_boff members when
1453 using another face than the current face. Float values are now
1454 relative to the frame default font, by default; accept a cons
1455 of ratio and face name to specify value relative to a specific face.
1456 (x_produce_glyphs): Use calc_line_height_property.
1457 Use override_ascent etc. when set to handle different face heights.
1458 A negative line-spacing property value is interpreted as a total
1459 line height, rather than inter-line spacing.
1460 (note_mouse_highlight): Allocate room for 40 overlays initially.
1461
1462 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1463
1464 * data.c (Fsubr_name): New fun.
1465 (syms_of_data): Defsubr it.
1466
1467 2004-04-29 Kim F. Storm <storm@cua.dk>
1468
1469 * xdisp.c (null_glyph_slice): New var.
1470 (append_glyph, append_composite_glyph, append_stretch_glyph):
1471 Use it to initialize glyph slice.
1472
1473 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1474
1475 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1476 (on_hot_spot_p): Make sure we always return a value.
1477 (Flookup_image_map): Remove unused var ix and iy.
1478 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1479
1480 2004-04-27 Eli Zaretskii <eliz@gnu.org>
1481
1482 * msdos.c (init_environment): If one of the TMP... environment
1483 variables is set to a drive letter without a trailing slash,
1484 append a slash.
1485
1486 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1487
1488 * editfns.c (lisp_time_argument): Provide externally.
1489
1490 * fileio.c (Fset_file_times): New function.
1491 (syms_of_fileio): Intern and staticpro it.
1492
1493 2004-04-27 Kim F. Storm <storm@cua.dk>
1494
1495 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1496 header line strings.
1497
1498 * dispextern.h (struct it): New member use_default_face.
1499
1500 * xdisp.c (Qline_height): New variable.
1501 (syms_of_xdisp): Intern and staticpro it.
1502 (append_space_for_newline): Partially undo 2004-04-25 change;
1503 add default_face_p arg, and restore callers.
1504 Clear it->use_default_face after use.
1505 (x_produce_glyphs): Set default font for ascii char if
1506 it->use_default_font is set. Change line-spacing property to set
1507 just extra line spacing. Handle new line-height property.
1508
1509 2004-04-26 Andreas Schwab <schwab@suse.de>
1510
1511 * print.c (print_object): Print non-ascii characters in bool
1512 vector representation as octal escapes.
1513
1514 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1515 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1516 bool vectors.
1517 * lread.c (read1): Likewise.
1518 * alloc.c (Fmake_bool_vector): Likewise.
1519 * data.c (Faref, Faset): Likewise.
1520 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1521 (mapcar1): Likewise.
1522
1523 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1524
1525 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1526
1527 2004-04-26 Miles Bader <miles@gnu.org>
1528
1529 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1530
1531 2004-04-26 Juanma Barranquero <lektu@terra.es>
1532
1533 * buffer.c (Fpop_to_buffer): Fix docstring.
1534
1535 2004-04-26 Steven Tamm <steventamm@mac.com>
1536
1537 * lread.c (init_lread): Don't display missing lisp directory
1538 warnings with Carbon Emacs because self-contained bundled Emacs
1539 may be built without correct installation path.
1540
1541 2004-04-25 Kim F. Storm <storm@cua.dk>
1542
1543 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1544
1545 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1546
1547 * xdisp.c (append_space_for_newline): Rename from append_space.
1548 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1549 (x_produce_glyphs): Handle line-spacing property on newline char.
1550 If value is t, adjust ascent and descent to fit current row height.
1551 If value is an integer or float, set extra_line_spacing to integer
1552 value, or to float value x current line height.
1553
1554 2004-04-23 Kenichi Handa <handa@m17n.org>
1555
1556 * fontset.c (Finternal_char_font): If POSITION is nil, return
1557 font for displaying CH with the default face.
1558
1559 2004-04-23 Juanma Barranquero <lektu@terra.es>
1560
1561 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1562
1563 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1564
1565 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1566 Don't make assumptions about the relative place of i and val.
1567 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1568
1569 2004-04-21 Kim F. Storm <storm@cua.dk>
1570
1571 * dispextern.h (struct glyph_slice): New struct.
1572 (struct glyph): New member slice.
1573 (GLYPH_SLICE_EQUAL_P): New macro.
1574 (GLYPH_EQUAL_P): Use it.
1575 (struct glyph_string): New member slice.
1576 (struct it_slice): New struct.
1577 (struct it): New member slice, add member to stack too.
1578 New member constrain_row_ascent_descent_p.
1579 (image_ascent): Add prototype.
1580
1581 * dispnew.c (buffer_posn_from_coords): Return full image width
1582 and height even for image slices (posn is relative to full image).
1583 (marginal_area_string): Adjust x0,y0 for image slice.
1584
1585 * image.c (image_ascent): Add slice arg; calculate ascent for
1586 image slice (or full image).
1587
1588 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1589 (syms_of_keyboard): Defsubr them.
1590
1591 * lisp.h (pos_visible_p): Fix prototype.
1592
1593 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1594 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1595 (x_draw_image_foreground, x_draw_image_relief)
1596 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1597 Draw sliced images.
1598
1599 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1600 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1601 (x_draw_image_foreground, x_draw_image_relief)
1602 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1603 Draw sliced images.
1604
1605 * w32term.h (image_ascent): Remove prototype.
1606
1607 * window.c (Fpos_visible_in_window_p): Return pixel position if
1608 PARTIALLY arg is non-nil. Simplify. Doc fix.
1609 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1610 to return/set vscroll in pixels.
1611
1612 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1613
1614 * xdisp.c (Qslice): New variable.
1615 (syms_of_xdisp): Intern and staticpro it.
1616 (pos_visible_p): Return pixel position in new x and y args.
1617 (init_iterator): Reset it->slice info.
1618 (handle_display_prop): Parse (slice ...) property.
1619 (push_it, pop_it): Save/restore slice info.
1620 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1621 force repositioning of tall row if window is vscrolled, as that
1622 would reset vscroll.
1623 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1624 increasing row height if row is non-empty.
1625 (fill_image_glyph_string): Copy slice info.
1626 (take_vertical_position_into_account): Simplify.
1627 (produce_image_glyph): Handle iterator slice info, setup glyph
1628 slice info. Do not force minimum line height.
1629 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1630 do not increase height (ascent/descent) of non-empty row when
1631 adding normal character glyph; instead reduce glyph ascent/descent
1632 appropriately; if row is higher than current glyph, adjust glyph
1633 descent/ascent to reposition glyph within the existing row.
1634 Likewise, when char is newline, only set ascent/descent if row is
1635 currently empty.
1636 (note_mouse_highlight): Handle hotspots with sliced image.
1637
1638 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1639 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1640 (x_draw_image_foreground, x_draw_image_relief)
1641 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1642 Draw sliced images.
1643
1644 * xterm.h (image_ascent): Remove prototype.
1645
1646 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1647
1648 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1649
1650 2004-04-20 John Paul Wallington <jpw@gnu.org>
1651
1652 * fns.c (Fassoc, Feql): Fix indentation.
1653
1654 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1655
1656 2004-04-19 John Paul Wallington <jpw@gnu.org>
1657
1658 * fns.c (Feql): New function.
1659 (syms_of_fns): Defsubr it.
1660
1661 2004-04-18 Jason Rumney <jasonr@gnu.org>
1662
1663 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1664 after closing the clipboard.
1665
1666 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1667
1668 * buffer.c (Fbuffer_base_buffer): Doc fix.
1669
1670 2004-04-17 Kim F. Storm <storm@cua.dk>
1671
1672 * keymap.c (Fkey_description): Add optional PREFIX arg.
1673 Combine prefix with KEYS to make up the full key sequence to describe.
1674 Correlate meta_prefix_char and following (simple) key to describe
1675 as meta modifier. All callers changed.
1676 (describe_map): Rename arg `keys' to `prefix'. Remove local
1677 `elt_prefix' var. Use Fkey_description with prefix instead of
1678 elt_prefix combined with Fsingle_key_description.
1679 (describe_vector): Declare static. Replace arg `elt_prefix' with
1680 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1681 if !KEYMAP_P. Use Fkey_description with prefix instead of
1682 Fsingle_key_description.
1683
1684 * keymap.h (Fkey_description): Fix prototype.
1685 (describe_vector): Remove prototype.
1686
1687 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1688
1689 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1690 (png_load): Fix calculation of transparent background color on X
1691 and W32 platforms.
1692
1693 2004-04-16 Juanma Barranquero <lektu@terra.es>
1694
1695 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1696 not too large before computing how much to scroll.
1697
1698 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1699
1700 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1701
1702 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1703
1704 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1705 Add hyperlink to Elisp manual to the docstring.
1706
1707 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1708
1709 * callint.c (fix_command): Use XDCR.
1710
1711 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
1712
1713 * window.c (Fget_lru_window): Doc fix.
1714
1715 2004-04-14 Kim F. Storm <storm@cua.dk>
1716
1717 * editfns.c (Fformat): Fix allocation size of precision array.
1718
1719 * dispnew.c (update_window): Only set changed_p if
1720 scrolling_window actually did scroll.
1721 (scrolling_window): Only return 1 if we actually did scroll.
1722
1723 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1724 height to glyph height when cursor row is not fully visible.
1725 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1726 failure in case row is higher than window. Callers changed.
1727 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1728 Try to scroll partially visible, higher-than-window cursor row.
1729 (redisplay_window): Always try to scroll partially visible,
1730 higher-than-window cursor row - both initially and again with
1731 centering_position = 0.
1732 Clear desired matrix before retrying with centering_position = 0.
1733
1734 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1735
1736 * syntax.c (scan_lists): Simplify backward string scan.
1737 Fix off-by-one boundary check for string and comment fences.
1738
1739 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
1740
1741 * sheap.c, unexcw.c: New files.
1742
1743 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1744
1745 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1746 base buffer has been killed. Correct the error message if the
1747 base buffer does not exist.
1748
1749 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
1750
1751 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1752 Cygwin itself. Add support for Xaw3d scrollbars.
1753
1754 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1755
1756 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1757
1758 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1759 before Cygwin unexec.
1760
1761 * Makefile.in: Link changes for Cygwin unexec() support.
1762
1763 2004-04-12 Andreas Schwab <schwab@suse.de>
1764
1765 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1766
1767 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1768
1769 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1770 IGNORE argument equals NAME. Doc fix.
1771
1772 2004-04-11 Masatake YAMATO <jet@gyve.org>
1773
1774 * buffer.c (fix_start_end_in_overlays): Make overlays
1775 empty if they are backwards.
1776
1777 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1778
1779 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1780
1781 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1782
1783 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1784
1785 2004-04-06 Kim F. Storm <storm@cua.dk>
1786
1787 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1788 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1789
1790 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1791 clearing highlight.
1792
1793 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1794
1795 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1796 clearing highlight.
1797
1798 * indent.c (vmotion): Do not reserve one column for continuation
1799 marks on window frames.
1800
1801 2004-04-04 Eli Zaretskii <eliz@gnu.org>
1802
1803 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1804 from GCC.
1805
1806 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1807
1808 * .gdbinit-union: Remove.
1809
1810 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1811 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1812 ($nonvalbits): Remove.
1813 ($valmask): Set it by calling xreload to avoid redundancy.
1814
1815 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1816 (gdb_emacs_intbits): Remove.
1817
1818 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1819
1820 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1821
1822 2004-03-30 Kenichi Handa <handa@m17n.org>
1823
1824 * editfns.c (Fformat): Fix initialization of the array info.
1825
1826 2004-03-30 Kim F. Storm <storm@cua.dk>
1827
1828 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1829 (syms_of_xterm): DEFVAR_BOOL it.
1830 (ignore_next_mouse_click_timeout): New var.
1831 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1832 Use it to filter mouse clicks following focus event.
1833
1834 2004-03-29 David Ponce <david@dponce.com>
1835
1836 * callint.c (Fcall_interactively): Fix last change.
1837
1838 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1839
1840 * eval.c (Fcommandp): Simplify.
1841
1842 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1843 Extend to handle all kinds of functions.
1844
1845 * lisp.h (Finteractive_form): Declare.
1846
1847 * callint.c (Fcall_interactively): Use it.
1848
1849 2004-03-26 Kim F. Storm <storm@cua.dk>
1850
1851 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1852 to catch errors in calc_pixel_width_or_height during redisplay.
1853
1854 2004-03-26 Masatake YAMATO <jet@gyve.org>
1855
1856 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1857
1858 * lisp.h (fix_start_end_in_overlays): Likewise.
1859
1860 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1861
1862 * editfns.c (Ftranspose_regions): Likewise.
1863
1864 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1865
1866 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1867
1868 2004-03-19 Richard M. Stallman <rms@gnu.org>
1869
1870 * s/sol2-6.h: Delete previous change.
1871
1872 2004-03-19 Kim F. Storm <storm@cua.dk>
1873
1874 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1875 to_charpos corresponds to newline in right fringe. Use local
1876 BUFFER_POS_REACHED_P macro.
1877
1878 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1879
1880 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1881 to compile on non-window system.
1882
1883 2004-03-19 Kim F. Storm <storm@cua.dk>
1884
1885 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1886
1887 * image.c (Qcenter): Move to xdisp.c.
1888
1889 * xdisp.c (Qcenter): Declare here.
1890 (syms_of_xdisp): Intern and staticpro it.
1891 (handle_single_display_prop): Allow space display property on all
1892 platforms.
1893 (display_mode_line): Set mode_line_p before displaying line.
1894 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1895 handling. Remove complex cases for fringes and scroll-bars.
1896 Add left, right, and center alignment positions. Add text (area)
1897 width/height. Return width or height for image specs.
1898 (produce_stretch_glyph): Improve handling of :align-to. Is now
1899 relative to left of text area by default, but other base offsets
1900 can be specified -- also for text lines.
1901
1902 * term.c (produce_glyphs): Handle IT_STRETCH.
1903 (produce_stretch_glyph): New function to handle space width and
1904 align-to display properties on non-window systems.
1905
1906 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1907
1908 * fileio.c (Fread_file_name): Set completion-ignore-case for
1909 case-insensitive systems.
1910
1911 2004-03-14 Masatake YAMATO <jet@gyve.org>
1912
1913 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1914 when keymap and cursor are setup.
1915
1916 2004-03-14 Steven Tamm <steventamm@mac.com>
1917
1918 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1919
1920 2004-03-14 Kim F. Storm <storm@cua.dk>
1921
1922 * dispextern.h (x_find_image_file): Add prototype.
1923
1924 * image.c (x_find_image_file): Make extern.
1925
1926 * xfns.c (x_find_image_file): Remove prototype.
1927
1928 2004-03-13 Eli Zaretskii <eliz@gnu.org>
1929
1930 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1931
1932 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1933
1934 2004-03-12 Richard M. Stallman <rms@gnu.org>
1935
1936 * fns.c (internal_equal): New arg PROPS controls comparing
1937 text properties. All callers changed.
1938 (Fequal_including_properties): New function.
1939 (syms_of_fns): defsubr it.
1940
1941 2004-03-12 Kim F. Storm <storm@cua.dk>
1942
1943 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1944
1945 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1946 (image_background, image_background_transparent): Fix prototypes.
1947
1948 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1949
1950 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1951 (x_query_font, x_find_ccl_program, x_set_window_size)
1952 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1953 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1954 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1955
1956 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1957 (x_query_font, x_find_ccl_program, x_set_window_size)
1958 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1959 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1960 (mac_draw_line_to_pixmap): Add prototypes.
1961
1962 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1963
1964 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1965
1966 2004-03-11 Kim F. Storm <storm@cua.dk>
1967
1968 * dispextern.h: Move image related prototypes from xfns.c section
1969 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1970 HAVE_X_WINDOWS.
1971
1972 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1973 Move gtkutil.o to new GTK_OBJ list.
1974 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1975 (GTK_OBJ) [USE_GTK]: New declaration.
1976 (obj): Add $(GTK_OBJ) to list.
1977
1978 2004-03-11 Steven Tamm <steventamm@mac.com>
1979
1980 * image.c [MAC_OSX]: Include sys/stat.h
1981
1982 * macfns.c (syms_of_macfns): Remove definitions of things now
1983 defined in image.c
1984
1985 2004-03-11 Kim F. Storm <storm@cua.dk>
1986
1987 The following changes consolidates the identical/similar image
1988 support code previously found in xfns.c, w32fns.c, and macfns.c
1989 into a new file image.c.
1990
1991 * makefile.w32-in (OBJ1): Add image.o.
1992 ($(BLD)/image.$(O)): Add dependencies.
1993
1994 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1995 (image.o): Add dependencies.
1996
1997 * image.c: New file with consolidated image support code.
1998 (COLOR_TABLE_SUPPORT): New define to control whether
1999 color table support is available (X only).
2000 (Bitmap_Record): Common name for x_bitmap_record,
2001 w32_bitmap_record, and mac_bitmap_record.
2002 (XImagePtr): Common name for pointer to XImage or equivalent.
2003 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2004 to XImagePtr on X+MAC, and to HDC on W32.
2005 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2006 (NO_PIXMAP): Common name for "None" or equivalent.
2007 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2008 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2009 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
2010 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2011 Define with suitable equivalents on W32 and MAC for code sharing.
2012 (XDrawLine): Define on MAC for code sharing.
2013 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2014 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2015 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2016 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2017 (x_reference_bitmap, x_create_bitmap_from_data)
2018 (x_create_bitmap_from_file, x_destroy_bitmap)
2019 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2020 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2021 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2022 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2023 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2024 (define_image_type, lookup_image_type, valid_image_p)
2025 (image_error, enum image_value_type, struct image_keyword)
2026 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2027 (make_image, free_image, prepare_image_for_display, image_ascent)
2028 (four_corners_best, image_background, image_background_transparent)
2029 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2030 (make_image_cache, free_image_cache, clear_image_cache)
2031 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2032 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2033 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2034 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2035 (init_image_func_pointer, image_load_quartz2d)
2036 (struct ct_color, init_color_table, free_color_table)
2037 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2038 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2039 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2040 (x_disable_image, x_build_heuristic_mask)
2041 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2042 (TIFF support, GIF support, Ghostscript support): Consolidate image
2043 code from xfns.c, w32fns.c, and macfns.c.
2044 (syms_of_image): Consolidate image related symbol setup here.
2045 (init_image): Consolidate image related initializations here.
2046
2047 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2048 and init_image. Remove call to init_xfns.
2049
2050 * macterm.h (struct mac_bitmap_record): Add file member.
2051 Not currently used, but simplifies code sharing.
2052
2053 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2054 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2055 (x_reference_bitmap, x_create_bitmap_from_data)
2056 (x_create_bitmap_from_file, x_destroy_bitmap)
2057 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2058 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2059 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2060 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2061 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2062 (define_image_type, lookup_image_type, valid_image_p)
2063 (image_error, enum image_value_type, struct image_keyword)
2064 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2065 (make_image, free_image, prepare_image_for_display, image_ascent)
2066 (four_corners_best, image_background, image_background_transparent)
2067 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2068 (make_image_cache, free_image_cache, clear_image_cache)
2069 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2070 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2071 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2072 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2073 (init_image_func_pointer, image_load_quartz2d)
2074 (struct ct_color, init_color_table, free_color_table)
2075 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2076 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2077 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2078 (x_disable_image, x_build_heuristic_mask)
2079 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2080 (TIFF support, GIF support, Ghostscript support): Merge with image
2081 code from xfns.c and macfns.c into image.c.
2082 (syms_of_xfns): Move image related symbols to image.c.
2083 (init_external_image_libraries, init_xfns): Remove; initialization
2084 moved to init_image in image.c.
2085
2086 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2087 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2088 (x_reference_bitmap, x_create_bitmap_from_data)
2089 (x_create_bitmap_from_file, x_destroy_bitmap)
2090 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2091 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2092 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2093 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2094 (define_image_type, lookup_image_type, valid_image_p)
2095 (image_error, enum image_value_type, struct image_keyword)
2096 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2097 (make_image, free_image, prepare_image_for_display, image_ascent)
2098 (four_corners_best, image_background, image_background_transparent)
2099 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2100 (make_image_cache, free_image_cache, clear_image_cache)
2101 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2102 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2103 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2104 (struct ct_color, init_color_table, free_color_table)
2105 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2106 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2107 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2108 (x_disable_image, x_build_heuristic_mask)
2109 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2110 (TIFF support, GIF support, Ghostscript support): Merge with image
2111 code from xfns.c and macfns.c into image.c.
2112 (syms_of_xfns): Move image related symbols to image.c.
2113 (init_external_image_libraries, init_xfns): Remove; initialization
2114 moved to init_image in image.c.
2115
2116 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2117 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2118 (x_reference_bitmap, x_create_bitmap_from_data)
2119 (x_create_bitmap_from_file, x_destroy_bitmap)
2120 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2121 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2122 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2123 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2124 (define_image_type, lookup_image_type, valid_image_p)
2125 (image_error, enum image_value_type, struct image_keyword)
2126 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2127 (make_image, free_image, prepare_image_for_display, image_ascent)
2128 (four_corners_best, image_background, image_background_transparent)
2129 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2130 (make_image_cache, free_image_cache, clear_image_cache)
2131 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2132 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2133 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2134 (struct ct_color, init_color_table, free_color_table)
2135 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2136 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2137 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2138 (x_disable_image, x_build_heuristic_mask)
2139 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2140 (TIFF support, GIF support, Ghostscript support): Merge with
2141 w32fns.c and macfns.c image code into image.c.
2142 (syms_of_xfns): Move image related symbols to image.c.
2143 (init_xfns): Remove; initialization moved to init_image in image.c.
2144
2145 * lisp.h (syms_of_image, init_image): Add protoypes.
2146 (init_xfns): Remove prototype.
2147
2148 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2149 (x_reference_bitmap, x_create_bitmap_from_data)
2150 (x_create_bitmap_from_file, x_destroy_bitmap)
2151 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2152 (gamma_correct) [MAC_OS]: Add prototype.
2153
2154 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2155 (x_reference_bitmap, x_create_bitmap_from_data)
2156 (x_create_bitmap_from_file, x_destroy_bitmap)
2157 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2158
2159 2004-03-09 Kenichi Handa <handa@etlken2>
2160
2161 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2162 correctly.
2163
2164 2004-03-04 Richard M. Stallman <rms@gnu.org>
2165
2166 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2167
2168 * window.c (Fdisplay_buffer): Doc fix.
2169
2170 * buffer.c (Fpop_to_buffer): Doc fix.
2171
2172 2004-03-03 Kim F. Storm <storm@cua.dk>
2173
2174 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2175
2176 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2177
2178 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2179
2180 2004-03-02 Richard M. Stallman <rms@gnu.org>
2181
2182 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2183
2184 2004-03-02 Kenichi Handa <handa@m17n.org>
2185
2186 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2187
2188 2004-03-02 Kim F. Storm <storm@cua.dk>
2189
2190 * window.h (struct window): New member overlay_arrow_bitmap.
2191
2192 * window.c (make_window): Initialize overlay_arrow_bitmap.
2193
2194 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2195 implement and integrate multiple overlay arrows with redisplay.
2196 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2197 (last_arrow_position, last_arrow_string): Replace by properties.
2198 (Qlast_arrow_position, Qlast_arrow_string)
2199 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2200 (syms_of_xdisp): Intern and staticpro them.
2201 (overlay_arrow_string_or_property, update_overlay_arrows)
2202 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2203 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2204 (redisplay_internal): Use them instead of directly accessing
2205 Voverlay_arrow_position etc. for multiple overlay arrows.
2206 (mark_window_display_accurate): Use update_overlay_arrows.
2207 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2208 (try_window_id): Use overlay_arrows_changed_p.
2209 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2210 (display_line): Use overlay_arrow_at_row to check multiple
2211 overlay arrows, and get relevant overlay-arrow-string and
2212 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
2213 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2214 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2215
2216 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2217 (update_window_fringes): Remove unused code.
2218
2219 2004-03-01 Jason Rumney <jasonr@gnu.org>
2220
2221 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2222
2223 2004-03-01 Juanma Barranquero <lektu@terra.es>
2224
2225 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2226
2227 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2228
2229 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2230
2231 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2232 how many colors can be displayed.
2233
2234 2004-03-01 Kenichi Handa <handa@m17n.org>
2235
2236 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2237 correctly.
2238
2239 2004-02-28 Kim F. Storm <storm@cua.dk>
2240
2241 * dispnew.c (update_window): Update header line also if there are
2242 no other changes in window (move code after set_cursor label).
2243
2244 * lisp.h (mark_window_display_accurate): Remove prototype.
2245
2246 * window.c (window_loop, Fforce_window_update): Force mode line
2247 updates by setting prevent_redisplay_optimizations_p and
2248 update_mode_lines.
2249
2250 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2251
2252 * xfns.c (x_window): Fix indentation.
2253
2254 * xterm.c (x_calc_absolute_position): Call x_real_positions
2255 to get WM window sizes and use those to calculate position.
2256 (x_set_offset): Remove code commented out.
2257
2258 2004-02-28 Miles Bader <miles@gnu.org>
2259
2260 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2261
2262 2004-02-28 Kim F. Storm <storm@cua.dk>
2263
2264 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2265 an event into kbd fifo, but with special handling of quit event;
2266 a quit event is saved for later, and further events are discarded
2267 until the saved quit event has been processed.
2268 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2269 (gen_help_event): Store help event in kbd fifo.
2270 (NREAD_INPUT_EVENTS): Remove.
2271 (read_avail_input): Adapt to new read_socket_hook interface.
2272 Remove allocation and initialization of local input_event buffer,
2273 as read_socket_hook stores events directly in fifo. Allocate and
2274 initialize local hold_quit event to handle postponed quit event
2275 (and store it if set by kbd_buffer_store_event_hold).
2276
2277 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2278 (gen_help_event): Fix prototype.
2279
2280 * macterm.c (XTread_socket): Remove bufp_r and
2281 numcharsp args. Add hold_quit arg.
2282 Rework to use just one, local, inev input_event. Store inev
2283 directly in fifo using kbd_buffer_store_event_hold.
2284
2285 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2286 (read_input_waiting): Adapt to new read_socket_hook interface.
2287 Remove allocation and initialization of local input_event buffer,
2288 as read_socket_hook stores events directly in fifo. Allocate and
2289 initialize local hold_quit event to handle postponed quit event
2290 (and store it if set by kbd_buffer_store_event_hold).
2291
2292 * term.c (read_socket_hook): Fix arg list.
2293
2294 * termhooks.h (read_socket_hook): Fix prototype.
2295
2296 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2297 numcharsp args. Add hold_quit arg.
2298 Rework to use just one, local, inev input_event. Store inev
2299 directly in fifo using kbd_buffer_store_event_hold.
2300
2301 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2302
2303 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
2304 Add hold_quit arg. Rework to use just one, local, inev
2305 input_event. Store inev directly in fifo using
2306 kbd_buffer_store_event_hold. Update count in one place.
2307 Postpone call to gen_help_event until inev is stored; use new
2308 local do_help for this.
2309 Remove local emacs_event in handing of ButtonPress event; just use
2310 inev instead (so no reason to copy it later).
2311
2312 * xsmfns.c (x_session_check_input): Remove numchars arg.
2313
2314 * xterm.c (x_focus_changed, x_detect_focus_change):
2315 Remove numchars arg. Always store event into bufp arg.
2316 Return nothing. Callers changed accordingly.
2317 (glyph_rect): Simplify.
2318 (STORE_KEYSYM_FOR_DEBUG): New macro.
2319 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2320 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2321 (current_hold_quit) [USE_GTK]: Add.
2322 (event_handler_gdk): Adapt to new handle_one_xevent.
2323 (handle_one_xevent): Remove bufp_r and numcharsp args.
2324 Add hold_quit arg. Rework to use just one, local, inev
2325 input_event. Store inev directly in fifo using
2326 kbd_buffer_store_event_hold. Update count in one place.
2327 Postpone call to gen_help_event until inev is stored; use new
2328 local do_help for this.
2329 Simplify handling of keysyms (consolidate common code). Fix bug
2330 where count was updated with nchars instead of nbytes.
2331 Remove local emacs_event in handing of ButtonPress event; just use
2332 inev instead (so no reason to copy it later).
2333 Remove `out' label. Rename label `ret' to `done'; add various
2334 `goto done' to clarify code flow in deeply nested blocks.
2335 (x_dispatch_event): Simplify as handle_one_xevent now calls
2336 kbd_buffer_store_event itself.
2337 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
2338 arg. Call handle_one_xevent with new arglist. Store event from
2339 x_session_check_input in fifo.
2340 [USE_GTK]: Setup current_hold_quit.
2341 Decrement handling_signal before unblocking input.
2342 (x_initialize) [USE_GTK]: Initialize current_count.
2343
2344 * xterm.h (x_session_check_input): Fix prototype.
2345
2346 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2347
2348 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
2349
2350 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2351 macgui.h).
2352
2353 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
2354
2355 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2356 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2357 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2358 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2359 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2360 (Bitmap): Remove typedef.
2361 (Pixmap): Change int to GWorldPtr.
2362
2363 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2364
2365 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2366 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2367 New #define to extract 16-bit depth color components from unsigned
2368 long representation.
2369 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2370 colors used for masks.
2371 (struct mac_display_info): Add color_p. Remove n_cbits.
2372
2373 * macfns.c: Include sys/types.h and sys/stat.h.
2374 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2375 Include QuickTime/QuickTime.h.
2376 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2377 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2378 functions defined in macterm.c.
2379 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2380 (ZPixmap): New #define for compatibility with xfns.c.
2381 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2382 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
2383 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2384 New functions.
2385 (four_corners_best, x_create_x_image_and_pixmap)
2386 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2387 (x_edge_detection, init_color_table, colors_in_color_table)
2388 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2389 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2390 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2391 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2392 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2393 long mixup.
2394 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2395 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2396 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2397 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2398 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2399 (x_alloc_image_color, clear_image_cache, lookup_image)
2400 (x_find_image_file, xbm_read_bitmap_file_data)
2401 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2402 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2403 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2404 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2405 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
2406 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
2407 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2408 #if 0.
2409 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2410 #if 0. Free white_relief.gc and black_relief.gc.
2411 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2412 New functions (from xfns.c).
2413 (Fx_create_frame): Record unwind_create_frame.
2414 (Fxw_display_color_p): Use dpyinfo->color_p.
2415 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2416 dpyinfo->n_cbits.
2417 (Fx_display_color_cells): Use dpyinfo->n_planes;
2418 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2419 (Qheuristic, cross_disabled_images, emboss_matrix)
2420 (laplace_matrix): New variables (from xfns.c).
2421 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2422 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2423 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
2424 (image_background_transparent): New function (from xfns.c).
2425 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2426 (image_load_quicktime): Add declaration.
2427 [MAC_OSX] (image_load_quartz2d): Likewise.
2428 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2429 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
2430 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
2431 (xbm_load_image_from_file, x_laplace_read_row)
2432 (x_laplace_write_row, pbm_read_file): Remove functions.
2433 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2434 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2435 (colors_in_color_table): Sync with xfns.c (although not used).
2436 (lookup_rgb_color): Don't lookup color table. Just do gamma
2437 correction.
2438 (COLOR_INTENSITY): New #define (from xfns.c).
2439 (x_disable_image): New function (from xfns.c).
2440 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2441 (x_build_heuristic_mask): Sync with xfns.c.
2442 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2443 (HAVE_PBM): Remove #ifdef.
2444 (pbm_load): Sync with xfns.c. Set img->width and img->height
2445 before IMAGE_BACKGROUND.
2446 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
2447 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2448 Don't enclose with #if HAVE_PNG.
2449 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
2450 symbol _CGImageCreateWithPNGDataProvider is defined.
2451 Otherwise use image_load_quicktime.
2452 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
2453 [HAVE_PNG] (png_load): Sync with xfns.c.
2454 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2455 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2456 HAVE_JPEG.
2457 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2458 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2459 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2460 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2461 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2462 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2463 HAVE_TIFF.
2464 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2465 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2466 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
2467 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2468 New functions (from xfns.c).
2469 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
2470 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
2471 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2472 Don't enclose with #if HAVE_GIF.
2473 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2474 animated gif. Otherwise use image_load_quicktime.
2475 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2476 gif_DrawText to avoid conflict with QuickdrawText.h.
2477 [HAVE_GIF] (gif_load): Sync with xfns.c.
2478 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2479 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2480 Ghostscript is not supported yet).
2481 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2482 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2483 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2484 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2485 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2486 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2487 HAVE_PNG. Call EnterMovies to support animated gifs.
2488 Call init_image_func_pointer to bind a symbol
2489 _CGImageCreateWithPNGDataProvider if it is defined.
2490
2491 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2492 (x_draw_bar_cursor): Sync declaration with xterm.c.
2493 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2494 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2495 graphics).
2496 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2497 (mac_draw_line_to_pixmap, XCreatePixmap)
2498 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
2499 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2500 New functions.
2501 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2502 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2503 Cast bits to char *.
2504 (reflect_byte): New function (from w32fns.c).
2505 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2506 due to byte alignment.
2507 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2508 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2509 (XSetForeground): Remove static (now used in macfns.c).
2510 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2511 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2512 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2513 (x_draw_glyph_string_box, x_draw_image_foreground)
2514 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2515 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2516 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2517 Sync with xterm.c.
2518 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2519 than the xterm.c version when a strictly horizontal or vertical
2520 line is drawn.
2521 (XTset_terminal_window): Add static.
2522 (x_make_frame_visible): Add UNBLOCK_INPUT.
2523 (x_free_frame_resources): New funcion (from xterm.c).
2524 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2525 occurs in tool bar area.
2526 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2527 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
2528 Initialize image cache.
2529 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2530 Enclose unused functions with #if 0.
2531 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2532 (decode_mac_font_name): New function to apply code conversions
2533 from a mac font name to an XLFD font name according to its script code.
2534 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
2535 font name to a mac font name according to REGISTRY and ENCODING fields.
2536 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2537 whose name starts with `.'.
2538 (init_font_name_table): Use decode_mac_font_name. Add both
2539 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2540 of a font is smJapanese.
2541 (mac_do_list_fonts): New function to list fonts that match a given
2542 pattern.
2543 (x_list_fonts, XLoadQueryFont): Use it.
2544 (XLoadQueryFont): Set rbearing field for each variable width
2545 character to avoid needless redraw.
2546 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2547
2548 2004-02-26 Kim F. Storm <storm@cua.dk>
2549
2550 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2551 as read_socket_hook handler on X aborts if buffer is too small
2552 and W32 handler doesn't always check buffer limit.
2553
2554 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2555 right-fringe similar to a display margin image. Specifically,
2556 the characters having the fringe prop are no longer shown, and
2557 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2558 do this. Set fringe bitmap face_id in it->face_id.
2559 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2560 still realize it->face (i.e. the fringe bitmap face).
2561
2562 2004-02-25 Miles Bader <miles@gnu.org>
2563
2564 * xdisp.c (check_it): Check string/string_pos consistency.
2565 (init_iterator): Initialize string-related fields properly.
2566
2567 2004-02-11 Miles Bader <miles@gnu.org>
2568
2569 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2570
2571 2004-02-10 Miles Bader <miles@gnu.org>
2572
2573 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2574 BLOCK_INPUT can be nested, so it doesn't make much sense.
2575
2576 2004-02-24 Michael Mauger <mmaug@yahoo.com>
2577
2578 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2579 (xbm_read_bitmap_data): Use unsigned char for image data.
2580
2581 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2582
2583 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2584
2585 2004-02-22 Jason Rumney <jasonr@gnu.org>
2586
2587 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2588 correctly over other bitmaps.
2589
2590 2004-02-21 Eli Zaretskii <eliz@gnu.org>
2591
2592 * emacs.c (USAGE1): Split into two halves.
2593 (USAGE2): Second half of the old USAGE1.
2594 (USAGE3): Rename from USAGE2.
2595 (USAGE4): Rename from USAGE3.
2596
2597 2004-02-21 Juri Linkov <juri@jurta.org>
2598
2599 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2600 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2601 --file. Fix -f, -l. Sort options. Untabify.
2602 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2603
2604 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2605
2606 * category.c (Fdefine_category, Fcategory_docstring)
2607 (Fget_unused_category, Fset_category_table)
2608 (Fcategory_set_mnemonics): Doc fixes.
2609
2610 2004-02-20 Kim F. Storm <storm@cua.dk>
2611
2612 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2613 The following changes are relative to the 2004-01-21 revision.
2614 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2615 in one call to read_socket_hook. Value is 8.
2616 (read_avail_input): Separate and rework handling of read_socket_hook
2617 and non-read_socket_hook cases. Use smaller input_event buffer
2618 in read_socket_hook case, and repeat if full buffer is read.
2619 Use new local variable 'discard' to skip input after C-g.
2620 In non-read_socket_hook case, just use a single input_event, and
2621 call kbd_buffer_store_event on the fly for each character.
2622
2623 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2624
2625 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2626 Remove unused `gu' alternative.
2627
2628 2004-02-19 Andreas Schwab <schwab@suse.de>
2629
2630 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2631 warning.
2632
2633 2004-02-18 Kim F. Storm <storm@cua.dk>
2634
2635 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2636 Fix last change.
2637
2638 2004-02-17 Kim F. Storm <storm@cua.dk>
2639
2640 * xdisp.c (fast_find_position): Fix return value of new version;
2641 it was inverted compared to the 21.1 version.
2642 (get_window_cursor_type): Don't look at glyph if NULL.
2643 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2644
2645 * keyboard.c: Rework previous change; it didn't consider that the
2646 buf array was allocated on the stack.
2647 (prev_read): Remove variable.
2648 (read_avail_input_buf): New static event buffer array.
2649 (in_read_avail_input): New static variable to handle re-entrancy.
2650 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2651 Use in_read_avail_input to handle re-entrance; when re-entered,
2652 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2653 Do not initialize read_avail_input_buf in full here; instead assume it
2654 is always cleared on entry. To ensure that, we clear (just) the
2655 entries that were used before we return.
2656 (init_keyboard): Initialize read_avail_input_buf here.
2657
2658 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2659
2660 * cmds.c (Fend_of_line): Doc fix.
2661
2662 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2663
2664 * keyboard.c (prev_read): New static variable.
2665 (read_avail_input): Use it to zero out only those slots in buf[]
2666 that were used last time we were called.
2667
2668 2004-02-16 Eli Zaretskii <eliz@gnu.org>
2669
2670 * Makefile.in (obj): Move fringe.o from here...
2671 (XOBJ, MAC_OBJ): ...to here.
2672
2673 2004-02-16 Stephen Eglen <stephen@gnu.org>
2674
2675 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2676
2677 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2678
2679 * data.c (Fbyteorder):
2680 * fringe.c (Fdefine_fringe_bitmap):
2681 * xdisp.c (handle_single_display_prop):
2682 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2683
2684 2004-02-16 Jason Rumney <jasonr@gnu.org>
2685
2686 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2687
2688 2004-02-15 Steven Tamm <steventamm@mac.com>
2689
2690 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2691 controlling emulation of a three button mouse with option and
2692 command keys.
2693 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2694 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2695
2696 2004-02-15 Kim F. Storm <storm@cua.dk>
2697
2698 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2699
2700 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2701 Perform byte-swapping.
2702
2703 2004-02-14 Kim F. Storm <storm@cua.dk>
2704
2705 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2706 bits from char to short to facilitate wider bitmaps.
2707 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2708 member.
2709
2710 * fringe.c (struct fringe_bitmap): Change member bits from char to
2711 short to facilitate 16 bits wide bitmaps. Modify all standard
2712 bitmaps accordingly.
2713 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2714 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2715 (draw_fringe_bitmap): Ditto.
2716 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2717 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2718 handle up to 16 bits wide bitmaps.
2719 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2720 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2721
2722 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2723 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2724 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2725
2726 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2727 so it is no longer necessary to expand them here.
2728
2729 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2730
2731 2004-02-12 Kim F. Storm <storm@cua.dk>
2732
2733 * window.c (Fwindow_fringes): Doc fix.
2734
2735 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2736
2737 * xselect.c (x_get_foreign_selection): Add new optional parameter
2738 time_stamp.
2739 (Fx_get_selection_internal): Ditto, pass time_stamp to
2740 x_get_foreign_selection.
2741
2742 * data.c (Fbyteorder): New function.
2743
2744 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2745
2746 * atimer.c: Move include stdio.h to same place as in other files.
2747
2748 * region-cache.c: Ditto.
2749
2750 * sysdep.c: Ditto.
2751
2752 * xfaces.c: Ditto.
2753
2754 2004-02-09 Sam Steingold <sds@gnu.org>
2755
2756 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2757
2758 2004-02-09 Kim F. Storm <storm@cua.dk>
2759
2760 * fringe.c: New file. Move original fringe related declarations
2761 and code from dispextern.h and xdisp.c here.
2762 Rework code to support user defined fringe bitmaps, redefining
2763 standard bitmaps, ability to overlay user defined bitmap with
2764 overlay arrow bitmap, and add faces to bitmaps.
2765 (Voverflow_newline_into_fringe): Declare here.
2766 (enum fringe_bitmap_align): New enum.
2767 (..._bits): All bitmaps are now defined without bitswapping; that
2768 is now done in init_fringe_once (if necessary).
2769 (standard_bitmaps): New array with specifications for the
2770 standard fringe bitmaps.
2771 (fringe_faces): New array.
2772 (valid_fringe_bitmap_id_p): New function.
2773 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2774 (draw_fringe_bitmap): New function which draws fringe bitmap,
2775 possibly overlaying bitmap with cursor in right fringe or the
2776 overlay arrow in the left fringe.
2777 (update_window_fringes): Do not handle overlay arrow here.
2778 Compare and copy fringe bitmap faces.
2779 (init_fringe_bitmap): New function.
2780 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2781 define and destroy user defined fringe bitmaps.
2782 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2783 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2784 (syms_of_fringe): New function. Defsubr new DEFUNs.
2785 DEFVAR_LISP Voverflow_newline_into_fringe.
2786 (init_fringe_once, init_fringe): New functions.
2787 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2788
2789 * Makefile.in (obj): Add fringe.o.
2790 (fringe.o): New dependencies.
2791
2792 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2793 bits allocated to hold a fringe number. Increase number of bits
2794 from 4 to 8 to allow user defined fringe bitmaps.
2795 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2796 left_user_fringe_face_id, right_user_fringe_bitmap,
2797 right_user_fringe_face_id.
2798 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2799 Move to new file fringe.c.
2800 (MAX_FRINGE_BITMAPS): Define here.
2801 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2802 and overlay_p. Change member which to int.
2803 (struct redisplay_interface): New members define_fringe_bitmap
2804 and destroy_fringe_bitmap.
2805 (valid_fringe_bitmap_id_p): Add prototype.
2806 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2807
2808 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2809 arrows.
2810 (update_frame): Do flush_display if force_flush_display_p to
2811 ensure display (specifically fringes) are updated in a timely
2812 manner when resizing the frame by dragging the mouse.
2813 (update_window_line): Update row if overlay arrow changed.
2814 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2815 or overlay arrow changed.
2816
2817 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2818 syms_of_fringe, and init_fringe.
2819
2820 * frame.h (struct frame): New member force_flush_display_p.
2821
2822 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2823 Add prototypes.
2824
2825 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2826 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2827 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2828 Use cursor color for displaying cursor in fringe.
2829 (x_redisplay_interface): Add null handlers for
2830 define_fringe_bitmap and destroy_fringe_bitmap functions.
2831
2832 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2833 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2834 for displaying cursor in fringe.
2835 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2836 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2837 (w32_redisplay_interface): Add them to redisplay_interface.
2838 (w32_term_init): Call w32_init_fringe instead of explicitly
2839 defining fringe bitmaps in fringe_bmp array.
2840 (x_delete_display): Call w32_reset_fringes instead of explicitly
2841 destroying fringe bitmaps in fringe_bmp array.
2842
2843 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2844 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2845 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2846 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2847 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2848 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2849 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2850 Move fringe handling vars and code to new file fringe.c.
2851 (handle_display_prop): Handle left-fringe and right-fringe
2852 display properties; store user fringe bitmaps in iterator.
2853 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2854 (clear_garbaged_frames): Set force_flush_display_p if resized.
2855 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2856 (display_line): Handle cursor in fringe at eob.
2857 (display_line): Set row user fringe bitmaps from iterator.
2858
2859 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2860 Use cursor color for displaying cursor in fringe.
2861 (x_redisplay_interface): Add null handlers for
2862 define_fringe_bitmap and destroy_fringe_bitmap functions.
2863
2864 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2865
2866 * macfns.c (Fx_change_window_property): Make doc string and
2867 parameters same as for X version.
2868
2869 * w32fns.c (Fx_change_window_property): Ditto.
2870
2871 2004-02-07 Kim F. Storm <storm@cua.dk>
2872
2873 * xdisp.c (hscroll_window_tree): Position cursor near to right
2874 margin in hscrolled window when jumping to end of line (rather
2875 than centering cursor).
2876
2877 * process.c (wait_reading_process_input): Don't do adaptive read
2878 buffering if waiting for a specific process.
2879
2880 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2881
2882 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2883 (Fread_minibuffer, Feval_minibuffer)
2884 (Fread_string, Fread_no_blanks_input)
2885 (Fcompleting_read): Doc fixes.
2886 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2887 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2888 (read_minibuf): Fix initial comment.
2889 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2890 case-fold-search to the value of completion-ignore-case when
2891 checking completion-regexp-list.
2892 (Fdisplay_completion_list): Make it handle arguments that are
2893 symbols. Doc fix.
2894
2895 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2896
2897 * xterm.h: Add declaration of free_frame_menubar.
2898
2899 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2900 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2901 (Fx_change_window_property): Add declaration of parameters type and
2902 format. Remove unused variable cons.
2903
2904 * xselect.c: Include stdio,h.
2905
2906 2004-02-05 Kenichi Handa <handa@m17n.org>
2907
2908 * fns.c (Fset_char_table_range): Fix previous change.
2909
2910 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2911
2912 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2913
2914 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2915
2916 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2917
2918 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2919 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2920
2921 2004-02-04 Kenichi Handa <handa@m17n.org>
2922
2923 * fns.c (Fset_char_table_range): Handle charsets ascii,
2924 eight-bit-control, and eight-bit-graphic correctly.
2925
2926 2004-02-03 Jason Rumney <jasonr@gnu.org>
2927
2928 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2929
2930 * w32fns.c (x_to_w32_font): Likewise.
2931
2932 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2933
2934 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2935 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2936
2937 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2938 ClientMessages.
2939
2940 * xselect.c: Include termhooks.h and X11/Xproto.h
2941 (x_check_property_data, x_fill_property_data)
2942 (x_property_data_to_lisp, mouse_position_for_drop)
2943 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2944 (Fx_send_client_event): Move here from xfns.c.
2945 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2946
2947 * xfns.c (x-send-client-message): Move to xselect.c
2948 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2949 OUTER_P.
2950 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2951 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2952 if vector_ret_p is true.
2953 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2954
2955 2004-02-02 Eli Zaretskii <eliz@gnu.org>
2956
2957 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2958 basename of FILE relative to it, not FILE itself.
2959
2960 2004-02-02 Kenichi Handa <handa@m17n.org>
2961
2962 * coding.c (coding_restore_composition): Check invalid
2963 composition data more rigidly.
2964
2965 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2966
2967 * fileio.c (Fread_file_name_internal): Correctly handle the case
2968 where insert-default-directory is nil.
2969 (Fread_file_name): Always return an empty string if the user exits
2970 with an empty minibuffer. Adapt the docstring accordingly.
2971 (syms_of_fileio): Adapt the docstring of insert-default-directory
2972 to the change in Fread_file_name.
2973
2974 2004-01-29 Eli Zaretskii <eliz@gnu.org>
2975
2976 * alloca.c [!alloca]: Fix the prototype for xfree.
2977
2978 2004-01-29 Kenichi Handa <handa@m17n.org>
2979
2980 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2981 (string_byte_to_char): Likewise.
2982
2983 2004-01-28 Peter Runestig <peter@runestig.com>
2984
2985 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2986
2987 2004-01-27 Steven Tamm <steventamm@mac.com>
2988
2989 * unexmacosx.c (unexec_copy): Do not copy more than was
2990 requested to prevent overwriting during unexec.
2991
2992 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2993
2994 * process.c (sigchld_handler): Add comment about not calling malloc.
2995
2996 * process.h: Add extern to synch_process_termsig.
2997
2998 2004-01-27 Steven Tamm <steventamm@mac.com>
2999
3000 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3001 Move setting of scroll bars from make_mac_frame to
3002 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
3003
3004 2004-01-26 Richard M. Stallman <rms@gnu.org>
3005
3006 * search.c (Freplace_match): Handle nonexistent
3007 back-references properly.
3008
3009 2004-01-03 Richard M. Stallman <rms@gnu.org>
3010
3011 * window.c (decode_any_window): New function.
3012 (Fwindow_height, Fwindow_width, Fwindow_edges)
3013 (Fwindow_pixel_edges, Fwindow_inside_edges)
3014 (Fwindow_inside_pixel_edges): Use decode_any_window.
3015
3016 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3017
3018 * process.h: synch_process_termsig new variable.
3019
3020 * callproc.c: Define synch_process_termsig.
3021 (Fcall_process): Initiate synch_process_termsig to zero and
3022 check if non-zero and get signal name after subprocess has ended.
3023
3024 * process.c (sigchld_handler): Set synch_process_termsig
3025 if terminated by a signal. synch_process_death setting removed.
3026
3027 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3028
3029 2004-01-26 Andreas Schwab <schwab@suse.de>
3030
3031 * print.c (print_preprocess): Declare size as EMACS_INT to not
3032 lose bits.
3033 (print_object): Likewise.
3034 * alloc.c (Fpurecopy): Likewise.
3035
3036 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3037
3038 * window.c (Fwindow_minibuffer_p): Doc fix.
3039
3040 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3041
3042 * editfns.c (Fformat): Make both passes accept the same set of flags.
3043
3044 2004-01-23 Kenichi Handa <handa@m17n.org>
3045
3046 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3047 one, set buffer to OBJECT temporarily.
3048
3049 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3050
3051 * keyboard.c (kbd_buffer_gcpro): Remove.
3052 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3053 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3054 Don't initialize and/or maintain the variable any more. It was made
3055 redundant by my commit of 2003-06-15.
3056
3057 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3058
3059 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3060
3061 * lisp.h: Add undef DECL_ALIGN.
3062
3063 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3064
3065 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3066 Check interrupt_input_pending explicitly.
3067
3068 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3069
3070 * keyboard.c (handle_async_input): New fun,
3071 extracted from input_available_signal.
3072 (input_available_signal, reinvoke_input_signal): Use it.
3073
3074 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3075
3076 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3077
3078 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3079 manipulation macros for when tags are in the lower bits.
3080 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3081 (DECL_ALIGN): New macro.
3082 (DEFUN): Use it.
3083
3084 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3085
3086 * s/darwin.h (__attribute__): Remove outdated workaround.
3087
3088 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3089
3090 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3091 Don't check range of malloc address.
3092 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3093
3094 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3095
3096 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3097
3098 2004-01-19 Kenichi Handa <handa@m17n.org>
3099
3100 * fontset.c (fontset_font_pattern): Fix previous change.
3101
3102 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3103
3104 * xdisp.c (Voverflow_newline_into_fringe)
3105 (move_it_in_display_line_to, redisplay_internal)
3106 (update_window_fringes, redisplay_window, display_line, window):
3107 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3108 that it compiles without a window-system.
3109 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3110
3111 2004-01-16 Kim F. Storm <storm@cua.dk>
3112
3113 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3114
3115 * buffer.c (init_buffer_once): Set buffer_defaults and
3116 buffer_local_flags for indicate_buffer_boundaries.
3117 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3118 default- variable for it.
3119
3120 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3121 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
3122 New members exact_window_width_line_p and cursor_in_fringe_p for
3123 overflowing newlines into right fringe.
3124 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3125 and indicate_bottom_line_p for buffer boundaries and scrolling.
3126 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3127 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3128 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3129 and HOLLOW_SQUARE_BITMAP.
3130 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3131 Add prototypes.
3132
3133 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3134 instead of related indicator fields.
3135 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3136 (direct_output_for_insert): Handle exact width lines like
3137 contined lines. Call update_window_fringes.
3138 (update_window): Call update_window_fringes.
3139 (scrolling_window): Don't skip desired rows with changed bitmaps.
3140 Check if fringe bitmaps changes when assigning scrolled rows.
3141
3142 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3143 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3144 (move_it_in_display_line_to): Overflow newline into fringe for
3145 rows that are exactly as wide as the window.
3146 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3147 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3148 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3149 (fringe_bitmaps): Add new bitmaps.
3150 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3151 Select proper bitmap for cursor in fringe when appropriate.
3152 Handle alignment of bitmap to top or bottom of row.
3153 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3154 done by update_window_fringes.
3155 (update_window_fringes, draw_window_fringes): New functions.
3156 (redisplay_internal): Call update_window_fringes in case only
3157 cursor row is updated.
3158 (redisplay_window): Call update_window_fringes.
3159 Explicitly call draw_window_fringes if redisplay was done using
3160 the current matrix or the overlay arrow is in the window.
3161 (try_window_reusing_current_matrix): Mark scrolled rows for
3162 fringe update (to update buffer-boundaries / scrolling icons).
3163 (find_last_unchanged_at_beg_row): Handle exact width lines line
3164 continued lines.
3165 (display_line): Overflow newline into fringe for rows that are
3166 exactly as wide as the window. Don't append space for newline
3167 in this case.
3168 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3169 in fringe as if it had been overwritten.
3170 (erase_phys_cursor): Erase cursor bitmap in fringe.
3171 (syms_of_xdisp): Mark show-trailing-whitespace and
3172 void-text-area-pointer as user options.
3173 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
3174
3175 * xterm.c (x_update_window_end): Call draw_window_fringes.
3176 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3177 in row instead of actually drawing fringe bitmaps.
3178 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3179 (x_draw_window_cursor): Draw cursor in fringe.
3180
3181 * w32term.c (x_update_window_end): Call draw_window_fringes.
3182 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3183 in row instead of actually drawing fringe bitmaps.
3184 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3185 (w32_draw_window_cursor): Draw cursor in fringe.
3186
3187 * macterm.c (x_update_window_end): Call draw_window_fringes.
3188 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3189 in row instead of actually drawing fringe bitmaps.
3190 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3191 (mac_draw_window_cursor): Draw cursor in fringe.
3192
3193 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3194
3195 * xterm.c (handle_one_xevent): Don't handle characters that are part
3196 of an old style (XLookupString) compose sequence.
3197
3198 2004-01-15 Kenichi Handa <handa@m17n.org>
3199
3200 * search.c (Freplace_match): Use make_multibyte_string or
3201 make_unibyte_string according to the buffer multibyteness.
3202
3203 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3204
3205 * alloc.c (struct interval_block, struct string_block)
3206 (struct symbol_block, struct marker_block, live_string_p)
3207 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3208 Better preserve alignment for objects in blocks.
3209 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3210
3211 * lread.c (defvar_per_buffer): Remove dead declaration.
3212
3213 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3214 space size.
3215
3216 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3217
3218 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3219 if a key press should pop down. Only pop down if a key is pressed
3220 outside the menu/dialog.
3221 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3222 popup_get_selection.
3223 (create_and_show_dialog): Pass 1 for down_on_keypress to
3224 popup_get_selection.
3225
3226 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3227
3228 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3229 BLOCK/UNBLOCK_INPUT.
3230
3231 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3232
3233 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3234 specified.
3235
3236 2004-01-08 Kenichi Handa <handa@m17n.org>
3237
3238 * editfns.c (Fformat): Fix '&' to '&&'.
3239
3240 2004-01-08 Andreas Schwab <schwab@suse.de>
3241
3242 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3243 size if PSEUDOVECTOR_FLAG is set.
3244
3245 2004-01-07 Kenichi Handa <handa@m17n.org>
3246
3247 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3248
3249 * fontset.c (fontset_ref_via_base): Fix previous change.
3250
3251 2004-01-07 Kim F. Storm <storm@cua.dk>
3252
3253 * process.c (read_process_output): Only activate adaptive
3254 buffering if we read less than 256 bytes at a time.
3255
3256 2004-01-06 Kim F. Storm <storm@cua.dk>
3257
3258 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3259 object and image object. Return glyph width and height.
3260 (mode_line_string, marginal_area_string): Ditto.
3261
3262 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3263 (marginal_area_string): Fix prototypes.
3264
3265 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
3266 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
3267 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3268
3269 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3270 buffer_posn_from_coords, and marginal_area_string functions to
3271 include both string object and image object in the lispy position.
3272 Also add actual glyph width and height to position.
3273 (read_key_sequence): Use real buffer position from mouse
3274 event to find keymap property even when click is in marginal area.
3275
3276 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3277 mode_line_string and marginal_area_string functions to handle
3278 both string object and image object properties.
3279
3280 2004-01-06 Andreas Schwab <schwab@suse.de>
3281
3282 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3283 character.
3284
3285 2004-01-02 Andreas Schwab <schwab@suse.de>
3286
3287 * macterm.c (emacs_options, x_initialized, same_x_server):
3288 Remove unused (and duplicated) definitions.
3289
3290 2004-01-02 Kim F. Storm <storm@cua.dk>
3291
3292 * process.h (struct Lisp_Process): New members for adaptive read
3293 buffering: adaptive_read_buffering, read_output_delay, and
3294 read_output_skip.
3295
3296 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3297 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3298 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3299 (process_output_delay_count, process_output_skip): New vars.
3300 (Vprocess_adaptive_read_buffering): New variable.
3301 (make_process): Initialize adaptive read buffering members.
3302 (Fstart_process): Set adaptive_read_buffering member.
3303 (deactivate_process): Cleanup adaptive read buffering.
3304 (wait_reading_process_input): Temporarily omit delayed
3305 subprocesses from the set of file descriptors to read from;
3306 adjust the select timeout if we skipped any subprocesses.
3307 (read_process_output): Increase adaptive read buffering delay if
3308 we read less than a full buffer; reduce delay when we read a
3309 full buffer.
3310 (send_process): Simplify using local Lisp_Process var.
3311 Reset adaptive read buffering delay after write.
3312 (init_process): Initialize process_output_delay_count and
3313 process_output_skip.
3314 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3315
3316 2004-01-01 Jason Rumney <jasonr@gnu.org>
3317
3318 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
3319
3320 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3321
3322 * print.c (Ferror_message_string): Add hyperlink in the docstring
3323 to the definition of `signal' in the Elisp manual.
3324 * eval.c (Fsignal): Ditto.
3325
3326 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
3327
3328 * fns.c (internal_equal): Return t for two NaN arguments.
3329
3330 2003-12-29 Richard M. Stallman <rms@gnu.org>
3331
3332 * data.c (store_symval_forwarding): Handle setting
3333 default-fill-column, etc., by changing the value in
3334 buffers that use the default.
3335
3336 * minibuf.c (Fset_minibuffer_window): Doc fix.
3337
3338 * fileio.c (choose_write_coding_system): Ignore auto_saving
3339 if using the visited file for auto saves.
3340 (Fwrite_region): Don't update SAVE_MODIFF
3341 if auto-saving in visited file.
3342
3343 2003-12-29 Kenichi Handa <handa@m17n.org>
3344
3345 * dispextern.h (face_font_available_p): Extern it.
3346
3347 * fontset.c (Voverriding_fontspec_alist): New variable.
3348 (lookup_overriding_fontspec): New function.
3349 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3350 (fontset_font_pattern): Likewise.
3351 (regulalize_fontname): New function.
3352 (Fset_fontset_font): Call regulalize_fontname.
3353 (Fset_overriding_fontspec_internal): New function.
3354 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3355 Defsubr Sset_overriding_fontspec_internal.
3356
3357 * xfaces.c (face_font_available_p): New function.
3358
3359 2003-12-28 Richard M. Stallman <rms@gnu.org>
3360
3361 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3362 or if its name is nil.
3363
3364 * buffer.c (Fkill_buffer): Don't delete auto-save file
3365 if it's the same as the visited file.
3366
3367 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3368
3369 * coding.c (Fcheck_coding_system): Doc fix.
3370
3371 2003-12-28 Kim F. Storm <storm@cua.dk>
3372
3373 * Makefile.in (eval.o): Depend on dispextern.h.
3374
3375 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3376 image glyph using image's ascent.
3377 (mode_line_string): Return image glyph as object clicked on.
3378 Adjust y0 for image glyph using image's ascent.
3379
3380 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3381 (struct glyph): New members, ascent and descent. Used to save
3382 this glyph's ascent and descent, instead of having.
3383 (struct glyph): Declare member face_id using FACE_ID_BITS.
3384 (find_hot_spot): Add prototype.
3385
3386 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3387 (QCmap): Declare extern.
3388 (make_lispy_position): When position is inside image hot-spot,
3389 use hot-spot element's id as posn element.
3390
3391 * lisp.h (IMAGEP): New macro to test for image object type.
3392 (Qimage): Declare extern.
3393
3394 * macfns.c (Qimage): Remove extern (now in lisp.h).
3395 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3396
3397 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3398
3399 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3400 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3401
3402 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3403
3404 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3405
3406 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3407 pointer types.
3408 (Qrelative_width, Qalign_to): Remove unused variables.
3409 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3410 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3411 image maps.
3412 (x_y_to_hpos_vpos): Return glyph relative coordinates through
3413 new dx and dy args.
3414 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3415 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3416 than row's ascent and height, to get sensible height on tall rows.
3417 (build_desired_tool_bar_string): Remove Qimage extern.
3418 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3419 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3420 image glyph is alone on the last line.
3421 (append_glyph, append_composite_glyph, produce_image_glyph)
3422 (append_stretch_glyph): Set glyph's ascent and descent.
3423 (on_hot_spot_p): New function to check if position is inside an
3424 rectangular, circular, or polygon-shaped image hot-spot,
3425 (find_hot_spot): New function to search for image hot-spot.
3426 (Flookup_image_map): New defun to search for image hot-spot.
3427 (define_frame_cursor1): New aux function to determine frame pointer.
3428 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3429 Handle `pointer' text property and :pointer image property to
3430 control frame pointer shape. Detect image hot-spots for pointer
3431 and help_echo properties. Use define_frame_cursor1.
3432 (note_mouse_highlight): Use Vvoid_text_area_pointer.
3433 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
3434 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3435
3436 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3437
3438 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3439 (Qimage): Remove extern (now in lisp.h).
3440 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3441
3442 * xmenu.c (show_help_event): Remove unused code.
3443
3444 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3445 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3446 row's ascent and descent, to get a sensible height on tall rows.
3447
3448 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3449
3450 * minibuf.c (Fcompleting_read): Undo previous change.
3451
3452 2003-12-25 Lars Hansen <larsh@math.ku.dk>
3453
3454 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3455 Arguments GCPRO'ed in call to file name handler.
3456
3457 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3458
3459 * termcap.c (tgetst1): Scan for "%pN"; if all
3460 N are continuous in [1,9], remove all "%pN".
3461
3462 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3463
3464 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3465
3466 * xfaces.c (lface_fully_specified_p): Take into account that
3467 MAC OS always have unspecified stipple.
3468
3469 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3470
3471 * tparam.c (tparam1): Add handling for `%pN', which
3472 means use param N for the next substitution.
3473
3474 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3475
3476 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3477 In case `frame' is nil, consult the selected frame.
3478 (Fcolor_supported_p): Likewise.
3479
3480 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3481
3482 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3483 Doc fixes.
3484
3485 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3486 and an integer. Adapt the introductory comment accordingly.
3487 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3488 Doc fix.
3489 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3490 read_minibuf.
3491 (Fcompleting_read): Delete code moved into read_minibuf.
3492 (Ftest_completion): Make it handle obarrays and hash tables correctly.
3493
3494 2003-12-03 Kenichi Handa <handa@m17n.org>
3495
3496 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3497 encoding sequence.
3498
3499 2003-12-01 Kenichi Handa <handa@m17n.org>
3500
3501 * composite.c (syms_of_composite): Don't make the compostion hash
3502 table week.
3503
3504 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3505
3506 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3507 * textprop.c (Fget_char_property_and_overlay): New function.
3508 (syms_of_textprop): Defsubr it.
3509
3510 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3511
3512 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3513 to compile on terminal configuration.
3514
3515 * fileio.c (Fread_file_name): Check use_file_dialog also before
3516 calling Fx_file_dialog.
3517
3518 * fns.c: use_file_dialog: New variable.
3519 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3520
3521 2003-11-29 Kim F. Storm <storm@cua.dk>
3522
3523 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3524 (syms_of_msdos): Don't intern and staticpro them.
3525
3526 2003-11-27 Kim F. Storm <storm@cua.dk>
3527
3528 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3529 coordinates relative to glyph at posn. If glyph is an image,
3530 return that as object at posn. Callers changed.
3531 (mode_line_string, marginal_area_string): Calculate and return
3532 pixel coordinates relative to glyph. Callers changed.
3533
3534 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3535 (marginal_area_string): Fix prototypes.
3536 (window_box_left_offset, window_box_right_offset): Add prototypes.
3537
3538 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3539 Remove prototypes.
3540
3541 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3542
3543 * keyboard.c (make_lispy_position): Add x and y coordinates
3544 relative to the current glyph as 7th element of position.
3545 If glyph is an image, return it in the object element.
3546 (read_key_sequence): Skip checks for keymap property in cases
3547 where POSN_STRING is not a string (e.g. an image).
3548
3549 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3550 (Vshow_text_cursor_in_void): New variable.
3551 (glyph_to_pixel_coords): Don't use negative hpos.
3552 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3553 (append_stretch_glyph): Change ascent arg to be actual value
3554 in pixels rather than ratio to height. Callers changed.
3555 (calc_pixel_width_or_height): New aux function, implementing
3556 pixel based artihmetic for glyph widths and heights.
3557 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3558 :width, :height, :align-to, and :ascent, thus allowing these to
3559 be specified in pixels as well as multiples of characters.
3560 Don't produce stretch glyphs with zero width or height.
3561 (get_specified_cursor_type): Declare static.
3562 (get_window_cursor_type): Declare static. Add glyph arg to be
3563 able to know when cursor is on an image; always substitute
3564 hollow-box cursor for filled-box cursor on images, to avoid
3565 negative images and flicker when blinking the cursor.
3566 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3567 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3568 than vertical scroll-bar cursor in display margins.
3569 (note_mouse_highlight): Use non-text cursor rather than text
3570 cursor in fringes and over images in the text area.
3571 Use non-text cursor when mouse pointer is outside editable text,
3572 i.e. in the void after end-of-line or end-of-buffer; this was
3573 already done for W32, but is now standard for all systems --
3574 user can toggle show-text-cursor-in-void to get old behaviour.
3575 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3576 Vdisplay_pixels_per_inch.
3577
3578 2003-11-25 Andreas Schwab <schwab@suse.de>
3579
3580 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3581 EMACS_INT to not lose bits.
3582 (Ffillarray): Don't set bits beyond the size of a bool vector.
3583
3584 2003-11-25 Kim F. Storm <storm@cua.dk>
3585
3586 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3587 define this defun on systems that cannot use stderr as lvalue.
3588
3589 2003-11-24 Gerd Moellmann <gerd@gnu.org>
3590
3591 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3592 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3593 ld's default is incompatible with unexec.
3594
3595 2003-11-23 Kim F. Storm <storm@cua.dk>
3596
3597 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3598 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3599 (Fforce_window_update): New defun.
3600 (syms_of_window): Defsubr it.
3601 (Fset_window_margins, Fset_window_fringes): Doc fix.
3602
3603 * print.c (Fredirect_debugging_output): New defun.
3604 (syms_of_print): Defsubr it.
3605
3606 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3607
3608 * fns.c (Fset_char_table_parent): Doc fix.
3609
3610 2003-11-22 Kim F. Storm <storm@cua.dk>
3611
3612 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3613 for glyph clicked on, rather than (unused) pixel positions.
3614 (mode_line_string, marginal_area_string): Change X and Y args to
3615 pointers for returning actual row/column for glyph clicked on.
3616 Simplify and optimize loops.
3617
3618 * dispextern.h (mode_line_string, marginal_area_string):
3619 Update prototypes.
3620
3621 * keyboard.c (make_lispy_position): New function for generating
3622 mouse click positions from frame and pixel coordinates.
3623 Enhanced to return buffer position and actual row/column for
3624 events outside the text area using updated mode_line_string and
3625 marginal_area_string functions.
3626 Return left-fringe and right-fringe clicks as such, rather than
3627 clicks in text area.
3628 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3629 pixel_to_glyph_coords, as we never use the results.
3630 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3631 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3632 Eliminate unused code in WHEEL_EVENT handling.
3633 (make_lispy_movement): Use make_lispy_position.
3634
3635 * window.c (coordinates_in_window): Remove redundant tests.
3636 Fix returned X pixel value for left-margin.
3637
3638 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3639 mode_line_string and marginal_area_string parameters.
3640
3641 2003-11-22 Lars Hansen <larsh@math.ku.dk>
3642
3643 * w32.c (struct the_group, getgrgid): Add.
3644 * mac.c (struct my_group, getgrgid): Add.
3645
3646 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3647
3648 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3649
3650 2003-11-21 Lars Hansen <larsh@math.ku.dk>
3651
3652 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3653 include in call to file name handler. Optionally translate numeric
3654 UID and GID to strings. Update docstring.
3655 (directory_files_internal): Add parameter ID-FORMAT.
3656 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3657 include in call to file name handler and call to
3658 directory_files_internal. Update Docstring.
3659 (Fdirectory_files): Add dummy parameter in call to
3660 directory_files_internal.
3661 * lisp.h (Qinteger): Add.
3662 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3663 (Ffile_attributes): Add parameter.
3664 * data.c (Qinteger): Export.
3665
3666 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3667
3668 * fns.c (Freverse, Fnreverse): Doc fixes.
3669
3670 2003-11-19 Kim F. Storm <storm@cua.dk>
3671
3672 * xdisp.c (init_iterator): Initialize it->start to position
3673 before reseating (in case start position is invisible).
3674 (init_to_row_start): Set it->start to row-start.
3675 (redisplay_window): Accept optional_new_start if start position
3676 is invisible (in which case IT_CHARPOS overshoots PT).
3677 (display_line): Setup row->start from it->start (rather than
3678 it->current which is wrong if first char on line is invisible).
3679 When done, reseat it->start to it->current (= start of next row).
3680 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3681 is only partially visible.
3682
3683 * dispextern.h (struct it): New member start.
3684
3685 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3686
3687 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3688 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3689 of block_index outside of the macro call.
3690 (Fgarbage_collect): Remove null code.
3691
3692 * m/amdx86-64.h: Don't redefine XPNTR.
3693
3694 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3695 of VALMASK.
3696
3697 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3698 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3699 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3700
3701 * lisp.h (VALMASK): Only define for non-union type.
3702 (MARKBIT): Remove.
3703 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3704 (XTYPE): Define unconditionally.
3705 (XSETTYPE): Remove one more remnant.
3706 (EQ): Define differently for the union and non-union cases.
3707 (INTMASK): New bit mask.
3708 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3709 (GC_EQ): Delegate to EQ.
3710
3711 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3712
3713 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3714
3715 * xterm.c (x_window_to_scroll_bar): Move check of display to
3716 where window_id is compared.
3717
3718 2003-11-17 Kim F. Storm <storm@cua.dk>
3719
3720 * dispextern.h (struct it): New member first_vpos.
3721
3722 * xdisp.c (start_display): Set it->first_vpos.
3723 (try_window_id): Use first_vpos to start display in first _text_
3724 line if no reusable lines at start of window with header line.
3725
3726 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3727
3728 * w32fns.c (XPutPixel):
3729 * w32bdf.c (w32_init_bdf_font):
3730 * sunfns.c (sel_read):
3731 * process.c (Fmake_network_process):
3732 * frame.c (store_frame_param):
3733 * fontset.c (Fset_fontset_font):
3734 * emacs.c (shut_down_emacs):
3735 * ccl.c (ccl_driver): Remove period at end of error message.
3736
3737 * config.in: Regenerate.
3738
3739 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3740 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3741 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3742 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3743 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3744
3745 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3746
3747 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3748 (XTmouse_position, handle_one_xevent): Pass Display* to
3749 x_window_to_scroll_bar.
3750 (x_window_to_scroll_bar): Take a Display* argument.
3751 Check that display for frame is equal to Display* argument.
3752 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3753 x_display_info_for_display instead. Use Display in xev instead
3754 of GDK_DISPLAY.
3755 (x_dispatch_event): Call x_display_info_for_display.
3756 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3757 (x_connection_closed): Call xg_display_close for GTK.
3758 (x_term_init): Call xg_display_open for additional displays.
3759 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3760 for GTK.
3761
3762 * xmenu.c (single_menu_item, mouse_position_for_popup)
3763 (x_activate_menubar): Formatting adjustments.
3764
3765 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3766 adjustments.
3767
3768 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3769 (xg_display_close, xg_create_default_cursor)
3770 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3771 handling.
3772 (xg_left_ptr_cursor): Remove.
3773 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3774 cursor here.
3775 (xg_win_to_widget): Take Display* argument, call
3776 gdk_xid_table_lookup_for_display.
3777 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3778 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3779 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3780 in FRAME_X_DISPLAY_INFO.
3781 (xg_get_scroll_id_for_window): Take Display* argument.
3782 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3783 (xg_initialize): Remove xg_left_ptr_cursor.
3784
3785 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3786 Display* argument also. Declare xg_display_open,
3787 xg_display_close, xg_create_default_cursor.
3788
3789 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3790
3791 * xterm.c (x_detect_focus_change): Do not change focus frame for
3792 Enter/LeaveNotify if the current focus frame has explicit focus.
3793
3794 2003-11-14 Kim F. Storm <storm@cua.dk>
3795
3796 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3797 is active and first glyph is only partially visible.
3798
3799 2003-11-13 Kenichi Handa <handa@m17n.org>
3800
3801 * xdisp.c (select_frame_for_redisplay): New function.
3802 (redisplay_internal): Record also selected_frame for
3803 unwind_redisplay. Call select_frame_for_redisplay before
3804 redrawing each frame.
3805 (unwind_redisplay): Argument changed to a cons.
3806
3807 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3808
3809 * fns.c (Fstring_to_multibyte): Doc fix.
3810
3811 2003-11-11 Kenichi Handa <handa@m17n.org>
3812
3813 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3814
3815 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3816
3817 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3818 program specified positions.
3819
3820 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3821
3822 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3823
3824 2003-11-08 Kenichi Handa <handa@m17n.org>
3825
3826 * Makefile.in (lisp): Add kannada.el.
3827 (shortlisp): Likewise.
3828
3829 2003-11-07 Kenichi Handa <handa@m17n.org>
3830
3831 * coding.c (coding_allocate_composition_data):
3832 Reset coding->composing to COMPOSITION_NO.
3833 (coding_restore_composition): Detect invalid composition data.
3834 Give Fstring and Fvector a Lispy integer, not C int.
3835
3836 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3837
3838 * floatfns.c (Flogb): Don't use VALMASK.
3839
3840 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3841 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3842
3843 * lisp.h (XINT): Move the cast to clarify what is going on.
3844 (GCTYPEMASK, XSETTYPE): Remove.
3845 (XGCTYPE): Make it an alias of XTYPE.
3846
3847 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3848
3849 * xterm.c (x_term_init): Fix formatting.
3850
3851 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3852
3853 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3854 and xg_did_tearoff.
3855
3856 * gtkutil.c: Remove variable xg_did_tearoff.
3857 (xg_have_tear_offs): New function.
3858 (tearoff_remove): Just decrease xg_detached_menus.
3859 (tearoff_activate): Increase xg_detached_menus and call
3860 tearoff_remove when tearoff is removed.
3861 (xg_keep_popup): Remove function.
3862 (create_menus): Give add_tearoff_p as argument to recursive
3863 call to create_menus.
3864 (xg_create_widget): Use variables instead of multiple
3865 strcmp. Tell create_menus to create tear off only for
3866 menu bar menus.
3867 (xg_update_menubar): Change title for a detached menu also.
3868 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3869 of deep_p.
3870 (xg_initialize): Initialize xg_detached_menus, remove
3871 initialization of xg_did_tearoff.
3872
3873 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3874 xg_have_tear_offs returns non-zero.
3875 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3876 call to xg_keep_popup.
3877
3878 2003-11-01 Andrew Choi <akochoi@shaw.ca>
3879
3880 * macterm.c (XTread_socket): Handle menubar selection and grow
3881 window only for mouseDown events.
3882
3883 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3884
3885 * xterm.c (x_term_init): For GTK part, increase x_initialized
3886 to check for more than one display. Use error instead of return 0.
3887
3888 2003-10-31 Andrew Choi <akochoi@shaw.ca>
3889
3890 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3891 (copy_dysymtab): Call it.
3892
3893 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3894
3895 * eval.c (Fdefvaralias): Doc fix.
3896
3897 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3898
3899 * data.c (Fsetplist): Doc fix.
3900
3901 2003-10-14 Lute Kamstra <lute@gnu.org>
3902
3903 * window.c (Fset_window_fringes): Clarify docstring.
3904
3905 2003-10-14 Kim F. Storm <storm@cua.dk>
3906
3907 * window.c (Fset_window_margins): Simplify arg checking.
3908
3909 2003-10-13 Richard M. Stallman <rms@gnu.org>
3910
3911 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3912 (print_partial_compiled_pattern): Replace assert with a printout.
3913 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3914
3915 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3916
3917 * window.c (Fset_window_margins): Allow only integers as args.
3918 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3919 Doc fixes.
3920
3921 2003-10-13 Lute Kamstra <lute@gnu.org>
3922
3923 * window.c (Fset_window_fringes): Elaborate docstring.
3924
3925 2003-10-12 Andrew Choi <akochoi@shaw.ca>
3926
3927 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3928
3929 * s/darwin.h (GC_MARK_STACK): Define.
3930
3931 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3932
3933 * window.c (shrink_windows): New function.
3934 (size_window): Call shrink_windows to calculate window sizes when
3935 shrinking frame with more than one window.
3936
3937 2003-10-12 Kim F. Storm <storm@cua.dk>
3938
3939 * xdisp.c (compute_fringe_widths): Doc fix.
3940
3941 2003-10-08 Kenichi Handa <handa@m17n.org>
3942
3943 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3944
3945 2003-10-07 Kenichi Handa <handa@m17n.org>
3946
3947 * coding.c (Qcoding_system_define_form): New variable.
3948 (syms_of_coding): Intern and staticpro it.
3949 (Fcheck_coding_system): Try to autoload the definition of
3950 CODING-SYSTEM.
3951
3952 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3953
3954 * fns.c (Frequire): Doc fix.
3955
3956 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3957
3958 * xfns.c (Fx_send_client_event): New function as a base for
3959 manipulating extended window manager hints.
3960 (Fx_send_client_event): Remove unused variable s.
3961
3962 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3963 that function is removed.
3964
3965 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3966 x/y_pixels_outer_diff.
3967 (x_check_expected_move): Calculate move_offset_left/top.
3968
3969 * xterm.h (struct x_output): New members: move_offset_top/left.
3970
3971 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3972 call x_set_offset directly.
3973
3974 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3975
3976 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3977
3978 * xterm.c (x_delete_display): Free font names and font_encoder
3979 in dpyinfo->font_table.
3980
3981 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3982 Move xfree of font names to x_delete_display.
3983
3984 * xterm.h (struct x_display_info): New member, wm_type.
3985 (struct x_output): New members, expected_top/left and
3986 check_expected_move.
3987
3988 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3989 is received.
3990 (handle_one_xevent): Rename x_check_expected_move from
3991 x_check_fullscreen_move.
3992 (x_set_offset): Only add WM decoration sizes to modified_top/left
3993 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3994 (x_check_expected_move): Rename from x_check_fullscreen_move.
3995 Removed fullscreen specific code. Use check_expected_move,
3996 expected_left/top instead. Also, set wm_type.
3997 (x_term_init): Initialize wm_type to unknown.
3998
3999 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4000 sizes to move_x/y.
4001
4002 2003-10-03 Kenichi Handa <handa@m17n.org>
4003
4004 * macterm.c (x_load_font): Clear all members of FONTP before start
4005 filling them.
4006
4007 2003-10-02 Kenichi Handa <handa@m17n.org>
4008
4009 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4010 before calling find_ccl_program_func. Call find_ccl_program_func
4011 only when fontp->font_encoder is not NULL.
4012
4013 * xterm.c (x_load_font): Clear all members of FONTP before start
4014 filling them.
4015
4016 2003-10-03 John Paul Wallington <jpw@gnu.org>
4017
4018 * keymap.c (map_keymap): Don't abort when binding is a vector.
4019
4020 2003-10-02 Jason Rumney <jasonr@gnu.org>
4021
4022 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4023 Sync dependencies with Makefile.in.
4024 (alloca.o): Remove.
4025
4026 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4027 filling them.
4028
4029 * w32bdf.c (w32_load_bdf_font): Likewise.
4030
4031 2003-09-30 Richard M. Stallman <rms@gnu.org>
4032
4033 * term.c (set_tty_color_mode): Calculate current_mode_spec
4034 regardless of value of VAL.
4035
4036 * intervals.c (graft_intervals_into_buffer):
4037 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4038 Handle over_used when splitting UNDER.
4039
4040 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4041
4042 * regex.c (regex_compile): Free the stack when returning from function.
4043
4044 2003-09-28 Kenichi Handa <handa@m17n.org>
4045
4046 * fontset.c (Finternal_char_font): Change return value to
4047 cons (FONT-NAME . GLYPH-CODE).
4048
4049 2003-09-28 Eli Zaretskii <eliz@gnu.org>
4050
4051 * term.c (tty_setup_colors): Treat any negative argument as -1.
4052
4053 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4054
4055 * process.c (send_process): Delete unused temp_buf.
4056
4057 2003-09-26 Dave Love <fx@gnu.org>
4058
4059 * xterm.c (x_bitmap_mask): Declare.
4060
4061 2003-09-25 Dave Love <fx@gnu.org>
4062
4063 * Makefile.in (fns.o): Depend on md5.h.
4064
4065 2003-09-25 Kim F. Storm <storm@cua.dk>
4066
4067 * window.c (set_window_buffer): Fix redisplay problems when
4068 switching between buffers with different display margin widths.
4069
4070 2003-09-23 Kim F. Storm <storm@cua.dk>
4071
4072 * process.c (set_socket_option): Fix :bindtodevice option.
4073 (Fset_network_process_option): Update process contact list when
4074 setting option succeeds.
4075 (Fmake_network_process): Doc fix.
4076
4077 2003-09-23 Dave Love <fx@gnu.org>
4078
4079 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
4080
4081 2003-09-22 Eli Zaretskii <eliz@gnu.org>
4082
4083 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4084 color mode is an integer number (it could be -1).
4085
4086 2003-09-22 Richard M. Stallman <rms@gnu.org>
4087
4088 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4089 in the case where OVER is longer than UNDER.
4090
4091 2003-09-22 Masatake YAMATO <jet@gyve.org>
4092
4093 * window.c (Fset_window_scroll_bars): Validate the value of
4094 `vertical_type'.
4095
4096 2003-09-21 Kim F. Storm <storm@cua.dk>
4097
4098 * frame.c (Vdefault_frame_scroll_bars): New variable.
4099 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4100 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4101 window-system default scroll bar position.
4102
4103 * window.c (Fwindow_scroll_bars): Doc fix.
4104
4105 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4106
4107 * xterm.c (x_set_offset): Take window manager decorations into account.
4108
4109 2003-09-19 Richard M. Stallman <rms@gnu.org>
4110
4111 * atimer.h: Don't include lisp.h.
4112 (P_): Define it here (as well as elsewhere).
4113
4114 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4115 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4116
4117 * data.c (Fvariable_binding_locus): New function.
4118 (syms_of_data): defsubr it.
4119 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4120
4121 2003-09-18 Dave Love <fx@gnu.org>
4122
4123 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4124
4125 * process.c (Fnetwork_interface_info): Fix type error.
4126 (Fnetwork_interface_list): Doc fix.
4127 (read_process_output, read_process_output): Delete unused var.
4128
4129 2003-09-17 Kim F. Storm <storm@cua.dk>
4130
4131 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4132 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4133 (Fnetwork_interface_info): Check that ifreq struct has required
4134 fields before accessing them; this requires that those fields are
4135 defined as macros, which may be too restrictive on some platforms,
4136 but it is better than failing on other platforms.
4137 (syms_of_process): Only defsubr above fns when included.
4138
4139 2003-09-17 Dave Love <fx@gnu.org>
4140
4141 * unexalpha.c: Don't include varargs.h.
4142
4143 2003-09-17 Kim F. Storm <storm@cua.dk>
4144
4145 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4146 for network process.
4147 (socket_options): Add `:' prefix to option names. Add optbit field.
4148 (set_socket_option): Remove no_error arg and special handling of s < 0.
4149 Return 1<<optbit for known option, 0 for unknown.
4150 Do not interpret 0 as false for boolean option (only nil).
4151 Pass failed option and value to report_file_error.
4152 (Fset_network_process_options): Replace by Fset_network_process_option.
4153 (Fset_network_process_option): New function to set just one option.
4154 (Fmake_network_process): Allow :coding arg to be a cons.
4155 Allow :server arg to be an integer specifying backlog size.
4156 Remove :options arg, and allow options to be specified directly
4157 as :KEY, VALUE pairs. Parse these options before binding socket.
4158 As before, :reuseaddr t is default for a server process, but this
4159 can now be disabled by specifying :reuseaddr nil.
4160 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4161 (init_process): Availability of network options is now checked with
4162 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4163 setup features.
4164 (syms_of_process): Fix defsubr's for the replaced functions.
4165
4166 2003-09-16 Dave Love <fx@gnu.org>
4167
4168 * Makefile.in: Depend on coding.h.
4169
4170 2003-09-14 Kim F. Storm <storm@cua.dk>
4171
4172 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4173 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4174 (syms_of_process): Defsubr them.
4175
4176 * config.in: Regenerate.
4177
4178 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4179
4180 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4181 * m/news-r6.h (XUNMARK): Remove.
4182 * m/mips.h (XUNMARK): Remove.
4183 * m/mips-siemens.h (XUNMARK): Remove.
4184 * m/iris4d.h (XUNMARK): Remove.
4185 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4186
4187 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4188
4189 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4190 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4191 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4192 (XTYPE): Use unsigned right-shift.
4193 (XMARKBIT, XMARK, XUNMARK): Remove.
4194
4195 * alloc.c (init_intervals, init_symbol, init_marker):
4196 Don't preallocate anything.
4197 (Fgarbage_collect, mark_object): Ignore the markbit.
4198
4199 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4200
4201 2003-09-08 Lute Kamstra <lute@gnu.org>
4202
4203 * xdisp.c (pint2hrstr): New function.
4204 (decode_mode_spec): Add `%i' and `%I' specs.
4205 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4206 for `mode-line-format'.
4207
4208 2003-09-07 Andreas Schwab <schwab@suse.de>
4209
4210 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4211 avoid warning.
4212
4213 2003-09-07 Eli Zaretskii <eliz@gnu.org>
4214
4215 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
4216
4217 2003-09-03 Kim F. Storm <storm@cua.dk>
4218
4219 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4220 change (superseded by 2002-08-30 change); the default blink-off
4221 cursor is now again "no cursor".
4222
4223 2003-09-01 Jason Rumney <jasonr@gnu.org>
4224
4225 * makefile.w32-in (alloca.o): Remove.
4226 (coding.o): Depend on intervals.h
4227 (emacs.o, bytecode.o): Depend on window.h
4228
4229 2003-09-01 Dave Love <fx@gnu.org>
4230
4231 * Makefile.in (alloca.o): Remove commands.
4232 (coding.o): Depend on intervals.h composite.h window.h.
4233 (emacs.o): Depend on window.h keyboard.h keymap.h.
4234 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4235 (bytecode.o): Depend on window.h.
4236
4237 2003-08-31 Jason Rumney <jasonr@gnu.org>
4238
4239 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4240 returned even when font_type is unknown.
4241
4242 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4243
4244 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4245
4246 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4247
4248 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4249 *_offset.
4250
4251 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4252 calculate pixel value.
4253
4254 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4255
4256 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4257 Don't tell redisplay display is accurate when it's actually been
4258 paused for pending input.
4259
4260 2003-08-29 Richard M. Stallman <rms@gnu.org>
4261
4262 * dispnew.c (adjust_glyph_matrix): Call window_box
4263 whenever W is nonzero.
4264
4265 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4266 (Fkill_local_variable, Fmake_variable_frame_local)
4267 (Flocal_variable_p, Flocal_variable_if_set_p):
4268 Use indirect_variable to trace thru variable aliases.
4269
4270 * config.in: Updated.
4271
4272 * callint.c (Fcall_interactively): Save and restore
4273 Vthis_command, Vthis_original_command, real_this_command,
4274 and current_kboard->Vlast_command.
4275
4276 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4277
4278 2003-08-29 Gerd Moellmann <gerd@gnu.org>
4279
4280 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4281
4282 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4283
4284 * coding.c (decode_coding_iso2022): Initialize local variable c2.
4285 (decode_coding_sjis_big5): Likewise.
4286
4287 2003-08-27 Jason Rumney <jasonr@gnu.org>
4288
4289 * w32.c (sys_pipe): Protect against file descriptor overflow.
4290
4291 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4292
4293 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4294
4295 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
4296
4297 * xfns.c (Vgtk_version_string): New variable.
4298 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4299
4300 2003-08-24 Eli Zaretskii <eliz@gnu.org>
4301
4302 * term.c (term_init): Remove `const' from buffer_size's declaration.
4303
4304 * Makefile.in (msdos.o): Depend on intervals.h.
4305
4306 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
4307
4308 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4309
4310 * xterm.h (struct x_display_info): New fields: client_leader_window
4311 and Xatom_wm_client_leader.
4312
4313 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4314 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4315
4316 * xsmfns.c (create_client_leader_window): New function.
4317 (x_session_initialize): Call create_client_leader_window, take
4318 dpyinfo as argument.
4319
4320 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4321
4322 * Makefile.in (xsmfns.o): Add more depenedencies.
4323
4324 2003-08-21 Dave Love <fx@gnu.org>
4325
4326 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4327
4328 2003-08-21 Kenichi Handa <handa@m17n.org>
4329
4330 * term.c (term_init): Fix previous change; don't rely on the
4331 length of `buffer' if TERMINFO is defined.
4332
4333 2003-08-20 Dave Love <fx@gnu.org>
4334
4335 * atimer.h: Include lisp.h.
4336
4337 * lisp.h (EMACS_LISP_H): New.
4338 (popup_activated_flag): Don't declare.
4339
4340 * alloca.c: Some merging with gnulib. Change logic and doc
4341 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4342 [DO_BLOCK_INPUT]: Don't include lisp.h.
4343 (xmalloc, xfree): Declare.
4344 (malloc): Don't declare.
4345
4346 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
4347 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4348 atimer.h, blockinput.h.
4349
4350 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4351
4352 * alloca.s: Removed.
4353
4354 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4355
4356 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4357 use -lncurses.
4358
4359 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4360 FreeBSD returns something longer than 2044. Abort if the end of
4361 the buffer is overwritten.
4362
4363 2003-08-19 Miles Bader <miles@gnu.org>
4364
4365 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4366
4367 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4368
4369 * alloc.c (lisp_align_malloc): Check for memory full when
4370 allocating ablocks, which also avoids freeing a pointer into an
4371 ablocks structure.
4372
4373 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4374
4375 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
4376
4377 2003-08-16 Richard M. Stallman <rms@gnu.org>
4378
4379 * editfns.c (Fencode_time): Doc fix.
4380
4381 2003-08-16 David Ponce <david@dponce.com>
4382
4383 * fileio.c (Fwrite_region): Fix conditional expression to issue
4384 the right message.
4385
4386 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4387
4388 * syntax.c (Fforward_word): Argument changed to optional.
4389 Set default value to 1.
4390
4391 2003-08-15 Kenichi Handa <handa@m17n.org>
4392
4393 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4394 what autoscaled.
4395 (best_matching_font): Once we find a better scalable font, set
4396 non_scalable_has_exact_height_p to 1.
4397 (try_font_list): Call try_alternative_families to try any family
4398 with the given registry.
4399
4400 2003-08-09 Andreas Schwab <schwab@suse.de>
4401
4402 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4403
4404 * print.c (print_string): Fix printing of multibyte string with
4405 nontrivial printcharfun.
4406
4407 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4408
4409 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4410
4411 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4412
4413 2003-07-31 Kenichi Handa <handa@m17n.org>
4414
4415 * process.c (read_process_output): Return the actually read bytes
4416 instead of the result of decoding.
4417
4418 2003-07-31 Kenichi Handa <handa@m17n.org>
4419
4420 * xterm.h (struct x_bitmap_record): New member have_mask.
4421
4422 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4423 to 0.
4424 (x_create_bitmap_from_file): Likewise.
4425 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4426 (x_destroy_all_bitmaps): Likewise.
4427 (x_create_bitmap_mask): Set have_mask member to 1.
4428
4429 2003-07-30 Richard M. Stallman <rms@gnu.org>
4430
4431 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4432
4433 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4434
4435 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4436
4437 2003-07-29 Richard M. Stallman <rms@gnu.org>
4438
4439 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4440 Conditionalize XIM code on HAVE_XIM.
4441
4442 * fns.c (Fclear_string): New function.
4443 (syms_of_fns): defsubr it.
4444
4445 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4446
4447 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
4448
4449 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4450
4451 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4452
4453 * buffer.c (delete_all_overlays): New function.
4454 * buffer.h (delete_all_overlays): Declare.
4455 * coding.c (run_pre_post_conversion_on_str):
4456 * print.c (temp_output_buffer_setup):
4457 * fileio.c (Finsert_file_contents):
4458 * minibuf.c (get_minibuffer): Use it.
4459
4460 2003-07-22 Andrew Choi <akochoi@shaw.ca>
4461
4462 * unexmacosx.c (unexec_regions_sort_compare):
4463 (unexec_regions_merge): New functions. Sort and merge unexec
4464 regions before dumping them.
4465
4466 2003-07-22 Dave Love <fx@gnu.org>
4467
4468 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4469
4470 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4471
4472 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4473 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4474 MARKBIT as the gcmarkbit for strings.
4475
4476 2003-07-21 Richard M. Stallman <rms@gnu.org>
4477
4478 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4479
4480 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
4481 (syms_of_fns): Corresponding change.
4482
4483 * alloc.c (syms_of_alloc): Doc fixes.
4484
4485 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4486
4487 * s/netbsd.h: Use -Wl syntax.
4488
4489 2003-07-17 Richard M. Stallman <rms@gnu.org>
4490
4491 * xterm.c (xim_initialize): Redo 6/24 change.
4492
4493 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4494
4495 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4496 (Fswitch_to_buffer): Don't signal an error when switching to the same
4497 buffer in a dedicated window.
4498
4499 * alloc.c: Use bitmaps for cons, as was done for floats.
4500 (init_float, init_cons): Let the normal code allocate the first block.
4501 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4502 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4503 New macros.
4504 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4505 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4506 (live_cons_p): Check the pointer is not past the `conses' array.
4507 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4508 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4509 (survives_gc_p): Use CONS_MARKED_P and simplify.
4510 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4511
4512 2003-07-13 Paul Eggert <eggert@twinsun.com>
4513
4514 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4515 puts it into BSS instead, at least on Solaris 8 and 9.
4516 This is a valid optimization, and it may occur on other platforms,
4517 so Emacs should not assume that initializing a static variable to
4518 zero puts it into data.
4519 * alloc.c (pure, staticvec):
4520 Initialize these arrays to nonzero, so that they're not
4521 put into BSS by that optimization.
4522
4523 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4524
4525 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4526 (lisp_align_malloc): Use posix_memalign is available.
4527 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4528 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4529 for consistency. Update users.
4530
4531 2003-07-13 Richard M. Stallman <rms@gnu.org>
4532
4533 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4534
4535 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4536
4537 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4538 and use the Gtk+ function gtk_window_icon_from_file if available.
4539
4540 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4541 handle mask of bitmaps.
4542 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4543 mask property.
4544 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4545
4546 * xterm.h (xg_set_icon): New function.
4547
4548 2003-07-12 Paul Eggert <eggert@twinsun.com>
4549
4550 * unexelf.c (unexec): Consider a section to precede the .bss
4551 section if its addresses overlap that of .bss.
4552
4553 2003-07-12 Richard M. Stallman <rms@gnu.org>
4554
4555 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4556
4557 * config.in (HAVE_CRTIN): Add #undef.
4558 (INLINE): Really inline only if OPTIMIZE is defined.
4559
4560 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4561 END_FILES_1.
4562 (START_FILES_1, END_FILES_1): New macros (conditional).
4563 (LD_SWITCH_SYSTEM_TEMACS): Define.
4564
4565 * s/openbsd.h: Don't include bsd4-3.h.
4566 (TERMINFO): Define.
4567 (LIBS_TERMCAP): Define.
4568 (LD_SWITCH_SYSTEM): Define (two definitions).
4569
4570 * xfns.c: Include libpng/png.h instead of png.h.
4571
4572 2003-07-11 Andreas Schwab <schwab@suse.de>
4573
4574 * buffer.c (modify_overlay): Update prototype.
4575 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4576 Likewise.
4577
4578 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4579
4580 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4581 (struct interval): Move to intervals.h.
4582 (struct Lisp_Marker): Use EMACS_INT for position info.
4583 (forward_point): Remove prototype of defunct function.
4584 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4585 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4586 (syms_of_textprop, set_text_properties): Remove prototypes that are
4587 already in intervals.h.
4588
4589 * intervals.h (struct interval): Move from lisp.h.
4590 Use EMACS_INT for position and size info.
4591
4592 * coding.c: Include intervals.h for Fset_text_properties.
4593
4594 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4595 position and length information.
4596
4597 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4598
4599 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4600 position and length information.
4601
4602 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4603
4604 Change overlays_after and overlays_before so the overlays themselves
4605 are linked into lists, rather than using cons cells. After all each
4606 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4607 Lisp_Overlay for free and save up one cons cell per overlay (not
4608 to mention one indirection when traversing the list of overlay).
4609
4610 * lisp.h (struct Lisp_Overlay): New field `next'.
4611
4612 * buffer.h (struct buffer): Change overlays_before and overlays_after
4613 from Lisp lists of overlays to pointers to overlays.
4614
4615 * buffer.c (overlay_strings, recenter_overlay_lists):
4616 Fix typo in eassert in last commit.
4617 (unchain_overlay): New function.
4618 (add_overlay_mod_hooklist): Use AREF.
4619 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4620 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4621 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4622 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4623 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4624 Adjust to new type of overlays_(before|after).
4625
4626 * alloc.c (mark_object): Mark the new `next' field of overlays.
4627 (mark_buffer): Manually mark the overlays_(after|before) fields.
4628
4629 * coding.c (run_pre_post_conversion_on_str):
4630 * editfns.c (overlays_around):
4631 * xdisp.c (load_overlay_strings):
4632 * fileio.c (Finsert_file_contents):
4633 * indent.c (current_column):
4634 * insdel.c (signal_before_change, signal_after_change):
4635 * intervals.c (set_point_both):
4636 * print.c (temp_output_buffer_setup): Use new type for
4637 overlays_(before|after).
4638
4639 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4640
4641 * buffer.c (report_overlay_modification): Don't run hooks while
4642 traversing the list of overlays.
4643
4644 * buffer.h (struct buffer): Use an int for overlay_center.
4645 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4646 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4647
4648 * buffer.c (reset_buffer, recenter_overlay_lists)
4649 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4650 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4651 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4652 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4653 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4654
4655 * xdisp.c (fast_find_position): Remove unused var.
4656
4657 * cmds.c (Qexpand_abbrev): New sym.
4658 (syms_of_cmds): Initialize it.
4659 (internal_self_insert): Use it to call expand-abbrev.
4660
4661 2003-07-09 Kim F. Storm <storm@cua.dk>
4662
4663 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4664 was configured with --without-xim.
4665 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4666
4667 2003-07-07 Richard M. Stallman <rms@gnu.org>
4668
4669 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4670
4671 * alloc.c (Fgarbage_collect): Doc fix.
4672
4673 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4674
4675 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4676
4677 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4678
4679 * minibuf.c (read_minibuf): UNGCPRO before returning.
4680 (Ftry_completion, Fall_completions): Doc fix.
4681
4682 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4683 now that `floats' is not the last element of the struct any more.
4684
4685 2003-07-06 Jason Rumney <jasonr@gnu.org>
4686
4687 * w32term.h (ClipboardSequence_Proc): New type.
4688
4689 * w32fns.c (clipboard_sequence_fn): New variable.
4690 (globals_of_w32fns): Initialize it.
4691
4692 * w32select.c (last_clipboard_sequence_number): New variable.
4693 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4694 number if possible.
4695
4696 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4697
4698 * m/amdx86-64.h (MARKBIT):
4699 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4700 MARKBIT and ARRAY_MARK_FLAG any more.
4701
4702 * m/hp800.h (XSETMARKBIT):
4703 * m/sr2k.h (XSETMARKBIT):
4704 * lisp.h (XSETMARKBIT): Remove unused macro.
4705
4706 * lisp.h (mark_object): Change prototype.
4707
4708 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4709 (last_marked): Change accordingly.
4710 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4711 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4712 (mark_buffer): Update calls to mark_object.
4713
4714 * bytecode.c (mark_byte_stack):
4715 * fns.c (sweep_weak_table):
4716 * keyboard.c (mark_kboards): Update calls to mark_object.
4717
4718 2003-07-06 Jason Rumney <jasonr@gnu.org>
4719
4720 * alloc.c (struct ablock): Only include padding when there is some.
4721
4722 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4723
4724 * alloc.c (ALIGN): Add casts to simplify usage.
4725 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4726 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4727 (struct ablock, struct ablocks): New types.
4728 (free_ablock): New global var.
4729 (lisp_align_malloc, lisp_align_free): New functions.
4730 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4731 (struct float_block): Reorder and add gcmarkbits.
4732 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4733 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4734 (init_float, make_float): Use lisp_align_malloc.
4735 (free_float, live_float_p): Don't use `type' any more.
4736 (make_float): Use FLOAT_UNMARK to access to mark bit.
4737 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4738 Use FLOAT_MARKED_P to access the mark bit.
4739 (pure_alloc): Simplify use of ALIGN.
4740 (mark_object): Use FLOAT_MARK to access the mark bit.
4741 (gc_sweep): Use new macros to access the float's mark bit.
4742 (init_alloc_once): Init free_ablock.
4743
4744 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4745
4746 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4747
4748 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4749 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4750 (allocate_buffer): Move.
4751 (string_bytes): Don't mask markbit of `size_byte'.
4752 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4753 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4754 Use the `size' field of buffers (rather than the `name' field) for
4755 the mark bit, as is done for all other vectorlike objects.
4756 Use the new macros to access the mark bit of vectorlike objects.
4757
4758 2003-06-26 Richard M. Stallman <rms@gnu.org>
4759
4760 * puresize.h (BASE_PURESIZE): Increment base size.
4761
4762 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4763
4764 * xterm.c (xim_initialize): Undo previous change.
4765
4766 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4767
4768 * alloc.c (survives_gc_p): Simplify.
4769
4770 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4771
4772 * window.c (Fset_window_dedicated_p): Simplify.
4773 (display_buffer_1): Don't raise the win from which minibuf was entered.
4774 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4775 (Fminibuffer_selected_window): Simplify.
4776
4777 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4778
4779 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4780 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4781
4782 * insdel.c (check_markers, adjust_markers_for_delete)
4783 (adjust_markers_for_insert, adjust_markers_for_replace)
4784 (prepare_to_modify_buffer, RESTORE_VALUE):
4785 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4786 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4787 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4788 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4789 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4790 * editfns.c (save_excursion_restore, transpose_markers):
4791 * window.c (delete_window):
4792 * xdisp.c (message_dolog): Update for new types.
4793
4794 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4795
4796 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4797 (realize_default_face): Use default_face_done_p for the force_p
4798 argument to set_lface_from_font_name. Set default_face_done_p to one.
4799
4800 * frame.c (make_frame): Initialize default_face_done_p.
4801
4802 * frame.h (struct frame): Add default_face_done_p.
4803
4804 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4805 will be defined.
4806
4807 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4808
4809 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4810 Initialize the new field `gcmarkbit'.
4811 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4812 (mark_interval_tree): Don't mark the tree separately from the nodes.
4813 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4814 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4815 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4816
4817 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4818 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4819 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4820 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4821 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4822
4823 2003-06-24 Dave Love <fx@gnu.org>
4824
4825 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4826
4827 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4828 from gnulib.
4829
4830 2003-06-21 Richard M. Stallman <rms@gnu.org>
4831
4832 * fileio.c (Fwrite_region): Alternate messages
4833 for append and partial write.
4834
4835 * keyboard.c (read_key_sequence): When converting upcase fn key to
4836 downcase, update fkey and keytran so `backspace' gets translated.
4837
4838 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4839
4840 * process.c (wait_reading_process_input): Don't signal SIGIO
4841 in batch mode.
4842
4843 2003-06-17 Kenichi Handa <handa@m17n.org>
4844
4845 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4846 composite.h.
4847
4848 * xselect.c: Don't include charset.h, coding.h, composite.h.
4849 (Qforeign_selection): New variable.
4850 (syms_of_xselect): Intern and static it.
4851 (selection_data_to_lisp_data): Return a unibyte string made from
4852 data with `foreign-selection' text property.
4853
4854 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4855
4856 * termhooks.h (EVENT_INIT): New macro.
4857
4858 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4859
4860 * alloc.c (mark_kboards): Move to keyboard.c.
4861
4862 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4863 * xterm.c (x_dispatch_event):
4864 * xmenu.c (find_and_call_menu_selection):
4865 * xdisp.c (handle_tool_bar_click):
4866 * w32menu.c (menubar_selection_callback):
4867 * sysdep.c (kbd_input_ast, read_input_waiting):
4868 * msdos.c (dos_rawgetc):
4869 * macterm.c (mac_check_for_quit_char):
4870 * macmenu.c (menubar_selection_callback):
4871 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4872 data to kbd_buffer_store_event.
4873
4874 2003-06-15 Kim F. Storm <storm@cua.dk>
4875
4876 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4877 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4878
4879 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4880
4881 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4882
4883 2003-06-12 Kenichi Handa <handa@m17n.org>
4884
4885 * fileio.c (Fwrite_region): Save and restore restriction.
4886
4887 2003-06-12 Dave Love <fx@gnu.org>
4888
4889 * alloca.c (alloca): Declare arg as size_t.
4890
4891 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4892 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4893
4894 2003-06-11 Dave Love <fx@gnu.org>
4895
4896 * search.c (shrink_regexp_cache): Use xrealloc.
4897 (syms_of_search): Use xmalloc.
4898
4899 2003-06-10 Kim F. Storm <storm@cua.dk>
4900
4901 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4902 Adjust phys_cursor.x to be relative to window box, rather than
4903 text area before checking -- to ensure cursor is redrawn when
4904 exposing window.
4905 Note: This also fixes a similar (older) bug if display margins
4906 are present.
4907
4908 2003-06-06 Kenichi Handa <handa@m17n.org>
4909
4910 * coding.c (encoding_buffer_size): If coding->type is
4911 coding_type_ccl, double magnification on CRLF encoding.
4912
4913 2003-06-06 Jason Rumney <jasonr@gnu.org>
4914
4915 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4916 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4917
4918 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4919 Mac too.
4920
4921 2003-06-05 Dave Love <fx@gnu.org>
4922
4923 * strftime.c: Merge changes from gnulib.
4924
4925 * mktime.c (__mktime_internal): Merge changes from gnulib
4926 involving year 69 and dst2.
4927
4928 Changes to merge with gnulib version and be consistent with the
4929 autoconf test:
4930
4931 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4932 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4933 [HAVE_LOCALE_H]: Include locale.h.
4934 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4935
4936 2003-06-05 Kim F. Storm <storm@cua.dk>
4937
4938 * window.c (coordinates_in_window): Convert X and Y to window
4939 relative coordinates inside mode-line and header-line parts.
4940 Convert X and Y to margin area relative coordinates inside left
4941 and right display margin parts.
4942
4943 2003-06-05 Jason Rumney <jasonr@gnu.org>
4944
4945 * w32fns.c (add_system_logical_colors_to_map): New function.
4946 (Fx_open_connection): Use it.
4947
4948 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4949
4950 * process.c (allocate_pty): Revert part of the previous patch.
4951 (Faccept_process_output): Simplify.
4952
4953 2003-06-04 Jason Rumney <jasonr@gnu.org>
4954
4955 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4956
4957 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4958 (lispy_mouse_wheel_names): Remove.
4959 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4960 Always define drag_and_drop_syms.
4961
4962 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4963 WHEEL_EVENT events.
4964
4965 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4966
4967 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4968
4969 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4970
4971 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4972
4973 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4974 menu item label.
4975
4976 2003-06-03 Richard M. Stallman <rms@gnu.org>
4977
4978 * window.c (Fwindow_edges): Doc fix.
4979 (Fwindow_pixel_edges, Fwindow_inside_edges)
4980 (Fwindow_inside_pixel_edges): New functions.
4981 (syms_of_window): defsubr them.
4982
4983 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4984 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4985
4986 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4987
4988 * dispnew.c (Fsit_for): Don't lie about the number of args.
4989
4990 2003-06-02 Dave Love <fx@gnu.org>
4991
4992 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4993 (syms_of_callproc) <process-environment>: Doc fix.
4994
4995 * doc.c: Use HAVE_FCNTL_H, not USG5.
4996
4997 * xfaces.c (font_rescale_ratio): Fix for K&R.
4998
4999 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5000
5001 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5002
5003 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5004
5005 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5006 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5007
5008 * xterm.c (Qutf_8): Move to coding.c
5009
5010 * xmenu.c (ENCODE_MENU_STRING): New.
5011 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5012 Use it.
5013
5014 * coding.h (ENCODE_UTF_8): New.
5015 (Qutf_8): Declare.
5016
5017 * coding.c (Qutf_8): New.
5018 (syms_of_coding): Intern it.
5019
5020 * fns.c: Doc fixes.
5021
5022 2003-06-02 Kenichi Handa <handa@m17n.org>
5023
5024 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5025
5026 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5027
5028 * lread.c (openp): Make sure STR is a string.
5029
5030 2003-06-01 David Ponce <david@dponce.com>
5031
5032 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5033 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5034
5035 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5036 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5037 (discard_mouse_events): Discard WHEEL_EVENT events too.
5038 (lispy_wheel_names, wheel_syms): New.
5039 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5040 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5041 defined.
5042 (make_lispy_event): Add WHEEL_EVENT handler.
5043
5044 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5045 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5046 WHEEL_EVENT events.
5047
5048 2003-05-31 John Paul Wallington <jpw@gnu.org>
5049
5050 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5051 timer are in lisp/emacs-lisp.
5052
5053 2003-05-31 Kenichi Handa <handa@m17n.org>
5054
5055 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5056 region when a buffer is changed to unibyte.
5057
5058 * charset.h (VALID_LEADING_CODE_P): New macro.
5059 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5060
5061 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5062 is nonzero, accept multibyte form of eight-bit-control chars.
5063 (decode_composition_emacs_mule): Likewise.
5064 (decode_coding_emacs_mule): Likewise.
5065 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5066 multibyte form of eight-bit-control chars.
5067
5068 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5069 (Finsert_file_contents): If coding-system-for-read is bound to
5070 Qauto_save_coding, use the coding system emacs-mule with special
5071 setting for recovering a file.
5072 (choose_write_coding_system): On auto saving, use the coding
5073 system emacs-mule with special setting for auto saving.
5074 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5075
5076 2003-05-30 Kenichi Handa <handa@m17n.org>
5077
5078 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5079 properly before calling ccl_driver.
5080
5081 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
5082
5083 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5084 nonzero.
5085 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5086 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5087
5088 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5089
5090 * xfaces.c (realize_default_face): Do not abort if lface is
5091 non-existent - reverts change from 2003-05-19.
5092
5093 2003-05-29 Kenichi Handa <handa@m17n.org>
5094
5095 * coding.c (decode_coding_iso2022): Pay attention to the byte
5096 sequence of CTEXT extended segment, and retain those bytes as is.
5097
5098 2003-05-28 Kenichi Handa <handa@m17n.org>
5099
5100 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5101 of CODING_REPLACEMENT_CHARACTER.
5102 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5103 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5104 check this flag on encoding.
5105 (encode_coding_sjis_big5): Check
5106 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5107 (Fset_terminal_coding_system_internal): Set
5108 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5109 instead of setting CODING_FLAG_ISO_SAFE flag in
5110 terminal_coding.flags.
5111
5112 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5113 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5114 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5115
5116 2003-05-28 Richard M. Stallman <rms@gnu.org>
5117
5118 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5119
5120 * eval.c (unbind_to): Move init of this_binding to separate statement.
5121
5122 2003-05-28 Kim F. Storm <storm@cua.dk>
5123
5124 * xdisp.c (expose_window): Fix error in calculation of
5125 window relative coordinates of area to redisplay.
5126
5127 2003-05-27 Jason Rumney <jasonr@gnu.org>
5128
5129 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5130
5131 2003-05-27 David Ponce <david@dponce.com>
5132
5133 Handle W32 mouse wheel events as mouse click events, like in X.
5134
5135 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5136 MOUSE_WHEEL_EVENT anymore.
5137
5138 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5139 Scrolling down/up the mouse wheel is respectively mapped to mouse
5140 button 4 and 5.
5141 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5142 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5143 WM_MOUSEWHEEL events.
5144
5145 2003-05-27 Andreas Schwab <schwab@suse.de>
5146
5147 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5148
5149 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5150 partially visible line.
5151
5152 * alloc.c (Fgarbage_collect): Fix last change.
5153
5154 2003-05-26 John Paul Wallington <jpw@gnu.org>
5155
5156 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5157
5158 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5159
5160 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5161 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5162
5163 * window.h (window_box_text_cols): Declare.
5164
5165 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5166 (x_draw_vertical_border): Remove unused var `f'.
5167
5168 * xfaces.c (build_scalable_font_name): Remove `unused var
5169 pixel_size' warning.
5170
5171 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5172
5173 * unexelf.c (unexec): Remove `unused var n' warning.
5174
5175 * strftime.c (my_strftime_localtime_r): Remove `defined but
5176 unused' warning.
5177
5178 * process.c (allocate_pty): Remove `unused var stb' and
5179 `cp might be used uninitialized' warnings.
5180
5181 * dispnew.c (mode_line_string): Remove unused var `f'.
5182
5183 * coding.c (find_safe_codings): Remove unused var `i'.
5184
5185 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5186
5187 * buffer.c (Fkill_buffer): Remove unused var `list'.
5188
5189 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5190
5191 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5192
5193 * frame.c (make_frame): Condition want_fullscreen with
5194 HAVE_WINDOW_SYSTEM.
5195
5196 2003-05-25 Juanma Barranquero <lektu@terra.es>
5197
5198 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5199 (Fwindow_scroll_bars): Fix typo in docstring.
5200
5201 2003-05-24 Kim F. Storm <storm@cua.dk>
5202
5203 The following changes serve several purposes:
5204
5205 1) Swap the position of fringes and display margins in windows, i.e.
5206 the fringes are now displayed between the margins and the text area
5207 (by default).
5208
5209 2) Allow fringe and scroll bar parameters to be set per-buffer and
5210 per-window (like display margins). Such settings are now stored
5211 in window configurations, preserved when frames are resized, and
5212 copied when windows are split vertically or horizontally.
5213 Several bugs related to display margins have been fixed.
5214
5215 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
5216
5217 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5218 rather than FRAME_WIDTH (FRAME_FONT (f)).
5219
5220 5) Introduce a consistent naming of variables, members and macros
5221 depending on whether their value is measured in pixels or in
5222 canonical columns/lines. Pixel dimensions are named *_width and
5223 *_height, while canonical columns/lines are named *_cols and
5224 *_lines. Pixel positions are named *_x and *_y, while column/line
5225 positions are named *_col and *_line.
5226
5227 6) Consolidate more of the X, W32, and MAC gui code by moving
5228 common data into struct frame, and generalize it for the non-gui
5229 case by using suitable defaults.
5230
5231 7) Cleanup and consolidate the macros controlling frame and window
5232 layout into frame.h and window.h, and generalize the use of the
5233 various window_box_* functions (enhanced to handle the new fringe
5234 position and the per-window fringe and scroll bar settings).
5235
5236 * frame.h (struct frame): Rename members height to text_lines,
5237 width to text_cols, window_height to total_lines, window_width to
5238 total_cols, new_height to new_text_lines, new_width to
5239 new_text_cols. All uses changed.
5240 (struct frame): New members which consolidate common members of
5241 x_output, w32_output, and mac_output structures: left_pos,
5242 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5243 win_gravity, size_hint_flags, border_width, internal_border_width,
5244 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5245 want_fullscreen. All uses changed.
5246 (struct frame): New member column_width contaning the canonical
5247 column width, analogue to line_height. All uses changed.
5248 (struct frame): Rename members scroll_bar_pixel_width to
5249 config_scroll_bar_width, and scroll_bar_cols to
5250 config_scroll_bar_cols. All uses changed.
5251 (struct frame): New member scroll_bar_actual_width which
5252 consolidates and renames the vertical_scroll_bar_extra member of
5253 x_output, w32_output, and mac_output structures. All uses changed.
5254 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5255 from x/w32/macterm.h files. All uses changed. Also change code
5256 which referred to f->output_data...->pixel_height.
5257 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
5258 from x/w32/macterm.h files. All uses changed. Also change code
5259 which referred to f->output_data...->pixel_width.
5260 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5261 Also change code which referred to f->height.
5262 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5263 Also change code which referred to f->width.
5264 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5265 to update new_text_lines and new_text_cols members directly.
5266 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5267 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5268 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5269 FRAME_SCROLL_BAR_COLS. All uses changed.
5270 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5271 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5272 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5273 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5274 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5275 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5276 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5277 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5278 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5279 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5280 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5281 return line_height member (it now has proper value also for
5282 non-window frames).
5283 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5284 return new column_width member (rather than the default font width).
5285 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5286 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5287 from x/w32/macterm.h files. Unconditionally return corresponding
5288 member of frame structure (they now have proper values also for
5289 non-window frames).
5290 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5291 Calculate return value from left and right widths.
5292 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5293 internal_border_width member (has proper value for non-window frame).
5294 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5295 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5296 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5297 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5298 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5299 consolidated from xterm.h, macterm.h, and w32term.h.
5300 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5301 consolidated from xterm.h, macterm.h, and w32term.h.
5302 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5303 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5304 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5305 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5306 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5307 consolidated from x/mac/w32term.h.
5308 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5309 consolidated from x/mac/w32term.h.
5310 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5311 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5312 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5313 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5314
5315 * window.h (struct window): Rename members left to left_col,
5316 top to top_line, height to total_lines, width to total_cols,
5317 left_margin_width to left_margin_cols, right_margin_width to
5318 right_margin_cols, orig_height to orig_total_lines, orig_top to
5319 orig_top_line. All uses changed.
5320 (struct window): New members left_fringe_width, right_fringe_width,
5321 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5322 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5323 New macros primarily used to simplify other macros.
5324 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5325 referred to XINT (w->width).
5326 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5327 referred to XINT (w->height).
5328 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5329 referred to XINT (w->width) * canon_x_unit.
5330 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5331 referred to XINT (w->height) * canon_y_unit.
5332 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5333 referred to XINT (w->left).
5334 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5335 all uses and code that referred to XINT (w->left) + XINT (w->width).
5336 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5337 referred to XINT (w->top).
5338 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5339 referred to XINT (w->top) + XINT (w->height).
5340 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5341 referred to XINT (w->left) * canon_x_unit.
5342 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5343 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5344 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5345 referred to XINT (w->top) * canon_y_unit.
5346 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5347 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5348 (WINDOW_LEFTMOST_P): New macro.
5349 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5350 All uses changed.
5351 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5352 All uses changed.
5353 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5354 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5355 Do not exclude left fringe width.
5356 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5357 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5358 Do not exclude fringe widths.
5359 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5360 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5361 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5362 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5363 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5364 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5365 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5366 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5367 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5368 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5369 New macros. Change code which referenced corresponding
5370 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5371 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5372 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5373 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5374 allow per-window scroll-bar settings.
5375 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5376 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5377 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5378 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5379 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5380 FRAME_SCROLL_BAR_WIDTH.
5381 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
5382 (WINDOW_SCROLL_BAR_AREA_X): New macros.
5383 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5384 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5385 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5386 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5387 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5388 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5389 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5390 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5391 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5392 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5393 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5394 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5395 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5396 (window_from_coordinates): Update prototype.
5397 (Fset_window_buffer): Update EXFUN.
5398 (set_window_buffer): Update prototype.
5399
5400 * dispextern.h (struct glyph_matrix): Rename members window_left_x
5401 to window_left_col, window_top_y to window_top_line. All uses
5402 changed.
5403 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5404 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5405 internal_border_width is now set to 0 for non-window frames.
5406 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5407 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5408 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5409 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5410 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5411 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5412 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5413 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5414 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
5415 Move to window.h and renamed [see window.h changes].
5416 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5417 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
5418 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5419 Use WINDOW_TOTAL_LINES.
5420 (frame_update_line_height): Remove prototype.
5421
5422 * buffer.h (struct buffer): Rename members measured in columns:
5423 left_margin_width to left_margin_cols, right_margin_width to
5424 right_margin_cols. All uses changed.
5425 New members left_fringe_width, right_fringe_width,
5426 fringes_outside_margins for per-buffer fringe settings.
5427 New members scroll_bar_width and vertical_scroll_bar_type for
5428 per-buffer scroll bar settings.
5429
5430 * buffer.c (init_buffer_once): Set buffer_defaults and
5431 buffer_local_flags for new buffer-local variables
5432 left_fringe_width, right_fringe_width, fringes_outside_margins,
5433 scroll_bar_width, and vertical_scroll_bar_type.
5434 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5435 default-* variables for them.
5436
5437 * dispnew.c: Make (many) trivial substitutions for renamed and
5438 new macros in dispextern.h, frame.h and window.h.
5439 (mode_line_string): No need to adjust width for mode lines, as it
5440 is already adjusted by the caller.
5441 (marginal_area_string): Handle fringes inside/outside margins.
5442
5443 * frame.c: Make (many) trivial substitutions for renamed and
5444 new macros in dispextern.h, frame.h and window.h.
5445 (make_frame): Initialize left_fringe_width, right_fringe_width,
5446 fringe_cols, scroll_bar_actual_width, border_width,
5447 internal_border_width, column_width, line_height, x_pixels_diff,
5448 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5449 members with values suitable for a non-window frames.
5450
5451 * gtkutil.c: Make (many) trivial substitutions for renamed and
5452 new macros in dispextern.h, frame.h and window.h.
5453
5454 * indent.c: Make (few) trivial substitutions for renamed and
5455 new macros in dispextern.h, frame.h and window.h.
5456
5457 * keyboard.c: Make (many) trivial substitutions for renamed and
5458 new macros in dispextern.h, frame.h and window.h.
5459 (make_lispy_event): Use window positions returned from
5460 window_from_coordinates when constructing the lisp event for
5461 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5462 (incorrect) values locally.
5463 (make_lispy_movement): Use window positions returned from
5464 window_from_coordinates when constructing the lisp event, rather
5465 than calculating (incorrect) values locally.
5466
5467 * scroll.c: Make (some) trivial substitutions for renamed and
5468 new macros in dispextern.h, frame.h and window.h.
5469
5470 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5471 scroll-bars.
5472
5473 * sysdep.c: Make (few) trivial substitutions for renamed and
5474 new macros in dispextern.h, frame.h and window.h.
5475
5476 * term.c: Make (some) trivial substitutions for renamed and
5477 new macros in dispextern.h, frame.h and window.h.
5478
5479 * widget.c: Make (few) trivial substitutions for renamed and
5480 new macros in dispextern.h, frame.h and window.h.
5481
5482 * window.c: Make (many) trivial substitutions for renamed and
5483 new macros in dispextern.h, frame.h and window.h.
5484 (make_window): Initialize new members
5485 left_margin_cols, right_margin_cols, left_fringe_width,
5486 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5487 and vertical_scroll_bar_type.
5488 (coordinates_in_window): Adapted to new fringe/margin positions
5489 and per-window fringes and scroll-bars.
5490 Fix bug related to incorrectly adjusting coordinates by
5491 frame's internal_border_width (the effect normally negible since
5492 the internal_border_width is typically 0 or 1 pixel, but very
5493 noticeable for an internal_border_width of e.g. 25 pixels).
5494 Upon successful return (other than ON_NOTHING), the coordinates
5495 are now always properly converted to window relative for the
5496 given display element.
5497 (window_from_coordinates): Add new parameters wx and wy to
5498 return the window relative x and y position in the returned
5499 window and part. A null arg means, don't return the position.
5500 All callers changed.
5501 (adjust_window_margins): New function which may reduce the width
5502 of the display margins if a window's text area is too small after
5503 resizing or splitting windows.
5504 (size_window): Fix bug that did not account for display margin
5505 widths when checking the minimum width of a window; use
5506 adjust_window_margins.
5507 (set_window_buffer): Call Fset_window_fringes and
5508 Fset_window_scroll_bars to setup per-window elements.
5509 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5510 existing display margin, fringe widths, and scroll bar settings
5511 (e.g. after splitting a window or resizing the frame).
5512 All callers changed.
5513 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5514 (Fsplit_window): Duplicate original window's display margin,
5515 fringe, and scroll-bar settings; then call Fset_window_buffer with
5516 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5517 window to only preserve the display margins in one of the windows.
5518 When splitting horizontally, call adjust_window_margins on both
5519 windows to ensure that the text area of the new windows is non too
5520 narrow. This fixes a bug which could cause Emacs to trap if the
5521 width of the split window was less than the width of the display
5522 margins.
5523 (window_box_text_cols): Renamed from window_internal_width.
5524 All uses changed. Adapt to per-window fringes and scroll bars.
5525 Fix bug that caused vertical separator to be subtracted also on
5526 window frames. Fix another bug that did not reduce the returned
5527 value by the columns used for display margins.
5528 (window_scroll_line_based): Fix bug related to scrolling too much
5529 when display margins are present (implicitly fixed by the fix to
5530 window_box_text_cols).
5531 (scroll_left, scroll_right): Fix bug related to scrolling too far
5532 by default when display margins are present (implicitly fixed by
5533 the fix to window_box_text_cols).
5534 (struct saved_window): Rename members left to left_col, top to
5535 top_line, width to total_cols, height to total_lines, orig_top to
5536 orig_top_line, orig_height to orig_total_lines. All uses changed.
5537 New members left_margin_cols, right_margin_cols,
5538 left_fringe_width, right_fringe_width, fringes_outside_margins,
5539 scroll_bar_width, and vertical_scroll_bar_type for saving
5540 per-window display elements.
5541 (Fset_window_configuration): Restore display margins, fringes,
5542 and scroll bar settings. This fixes a bug which caused display
5543 margins to be discarded when saving and restoring a window
5544 configuration.
5545 (save_window_save): Save display margins, fringes, and scroll bar
5546 settings. This fixes a bug which caused display margins to be
5547 discarded when saving and restoring a window configuration.
5548 (Fset_window_margins): Do nothing if display margins are not
5549 really changed. Otherwise, call adjust_window_margins to ensure
5550 the text area doesn't get too narrow. This fixes a bug which
5551 could cause Emacs to trap if setting display margins wider than
5552 the width of the window.
5553 (Fset_window_fringes): New defun to allow user to specifically set
5554 this window's fringe widths and position vs. display margins.
5555 (Fwindow_fringes): New defun to return window's actual fringe
5556 settings.
5557 (Fset_window_scroll_bars): New defun to allow user to specifically
5558 set this window's scroll bar width and position.
5559 (Fwindow_scroll_bars): New defun to return window's actual scroll
5560 bar settings.
5561 (compare_window_configurations): Also compare display margins,
5562 fringes, and scroll bar settings.
5563 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5564
5565 * xdisp.c: Make (many) trivial substitutions for renamed and
5566 new macros in dispextern.h, frame.h and window.h.
5567 (window_box_width): Adapt to per-window fringes and scroll bars,
5568 and new fringe vs. display margin position. Note that returned
5569 value is no longer guaranteed to be a whole multiple of the frame
5570 column width, since per-window fringes may now be any width.
5571 (window_box_left_offset): New function like window_box_left, but
5572 value is relative to left border of window (rather than frame).
5573 (window_box_right_offset): New function like window_box_right,
5574 but value is relative to left border of window.
5575 (window_box_left): Adapt to per-window fringes and scroll bars,
5576 and new fringe vs. display margin position. Simplify by using
5577 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5578 (window_box): Allow null args for unnecessary return values;
5579 change/simplify relevant callers.
5580 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
5581 and new fringe vs. display margin position.
5582 Use window_box_left_offset and window_box_right_offset
5583 (get_glyph_string_clip_rect): Adapt to per-window fringes and
5584 scroll bars, and new fringe vs. display margin position.
5585 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
5586 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5587 fringe vs. display margin position.
5588 (hscroll_window_tree): Use window_box_width instead of window_box.
5589 (redisplay_window): Adapt to per-window scroll bars.
5590 (draw_glyphs): Rework to handle per-window fringes and scroll
5591 bars, and new fringe vs. display margin position.
5592 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
5593 (x_clear_end_of_line): Adapt to per-window fringes and scroll
5594 bars, and new fringe vs. display margin position. Fix bug which
5595 increased total width of full_width rows by width of scroll bars
5596 although window's total width already includes that.
5597 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5598 (expose_area): Simplify using window_box_left_offset.
5599 (x_draw_vertical_border): Handle per-window scroll bar settings,
5600 mixing windows with left, right and no scroll bars.
5601
5602 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5603 where it's used in x_list_fonts (for clarity).
5604 (frame_update_line_height): Remove unused function; functionality
5605 is now done directly when setting the default font in x_set_font.
5606
5607 * xfns.c: Make (many) trivial substitutions for renamed and
5608 new macros in dispextern.h, frame.h and window.h.
5609
5610 * xmenu.c: Make (some) trivial substitutions for renamed and
5611 new macros in dispextern.h, frame.h and window.h.
5612
5613 * xterm.h (struct x_output): Move members left_pos, top_pos,
5614 border_width, pixel_height, pixel_width, line_height,
5615 internal_border_width, vertical_scroll_bar_extra,
5616 left_fringe_width, right_fringe_width, fringe_cols,
5617 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5618 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5619 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5620 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5621 (PIXEL_WIDTH, PIXEL_HEIGHT)
5622 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5623 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5624 frame.h and renamed [see frame.h changes].
5625 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5626 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5627 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5628 and renamed [see frame.h changes].
5629
5630 * xterm.c: Make (several) trivial substitutions for renamed and
5631 new macros in dispextern.h, frame.h and window.h.
5632 (x_draw_glyph_string_box): Adapt to per-window fringes and
5633 scroll-bars.
5634 (scroll_run): Adapt to new fringe position.
5635 (glyph_rect): Use window coordinates returned from
5636 window_from_coordinates rather than frame_to_window_pixel_xy.
5637 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5638 scroll-bars.
5639 (handle_one_xevent): Simplify a USE_GTK conditional.
5640 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5641 (fringes are now inside margins, i.e. always in the clipping area).
5642 All callers changed.
5643 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5644 directly, then call compute_fringe_widths. Don't call
5645 frame_update_line_height.
5646
5647 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5648 border_width, pixel_height, pixel_width, line_height,
5649 internal_border_width, vertical_scroll_bar_extra,
5650 left_fringe_width, right_fringe_width, fringe_cols,
5651 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5652 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5653 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5654 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5655 (PIXEL_WIDTH, PIXEL_HEIGHT)
5656 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5657 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5658 frame.h and renamed [see frame.h changes].
5659 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5660 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5661 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5662 and renamed [see frame.h changes].
5663
5664 * w32term.c: Make (several) trivial substitutions for renamed and
5665 new macros in dispextern.h, frame.h and window.h.
5666 (x_draw_glyph_string_box): Adapt to per-window fringes and
5667 scroll-bars.
5668 (glyph_rect): Use window coordinates returned from
5669 window_from_coordinates rather than frame_to_window_pixel_xy.
5670 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5671 scroll-bars.
5672 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5673 (fringes are now inside margins, i.e. always in the clipping area).
5674 All callers changed.
5675 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5676 directly, then call compute_fringe_widths. Don't call
5677 frame_update_line_height.
5678
5679 * w32console.c: Make (few) trivial substitutions for renamed and
5680 new macros in dispextern.h, frame.h and window.h.
5681
5682 * w32fns.c: Make (many) trivial substitutions for renamed and
5683 new macros in dispextern.h, frame.h and window.h.
5684
5685 * w32menu.c: Make (few) trivial substitutions for renamed and
5686 new macros in dispextern.h, frame.h and window.h.
5687
5688 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5689 border_width, pixel_height, pixel_width, line_height,
5690 internal_border_width, vertical_scroll_bar_extra,
5691 left_fringe_width, right_fringe_width, fringe_cols,
5692 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5693 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5694 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5695 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5696 (PIXEL_WIDTH, PIXEL_HEIGHT)
5697 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5698 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5699 frame.h and renamed [see frame.h changes].
5700 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5701 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5702 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5703 and renamed [see frame.h changes].
5704
5705 * macterm.c: Make (several) trivial substitutions for renamed and
5706 new macros in dispextern.h, frame.h and window.h.
5707 (x_draw_glyph_string_box): Adapt to per-window fringes and
5708 scroll-bars.
5709 (glyph_rect): Use window coordinates returned from
5710 window_from_coordinates rather than frame_to_window_pixel_xy.
5711 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5712 scroll-bars.
5713 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5714 (fringes are now inside margins, i.e. always in the clipping area).
5715 All callers changed.
5716 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5717 directly, then call compute_fringe_widths. Don't call
5718 frame_update_line_height.
5719
5720 * macfns.c: Make (several) trivial substitutions for renamed and
5721 new macros in dispextern.h, frame.h and window.h.
5722 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5723
5724 * macmenu.c: Make (few) trivial substitutions for renamed and
5725 new macros in dispextern.h, frame.h and window.h.
5726
5727 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5728 and line_height, and use corresponding new members in struct
5729 frame. All uses changed.
5730 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5731 superseeded by corresponding macros in frame.h.
5732
5733 * msdos.c: Make (several) trivial substitutions for renamed and
5734 new macros in dispextern.h, frame.h and window.h.
5735 (IT_note_mouse_highlight): Use updated window coordinates returned
5736 by window_from_coordinates, rather than adjusting them locally.
5737 (internal_terminal_init): No need to initialize line_height here;
5738 it now defaults to 1.
5739
5740 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5741
5742 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5743 dropping `down' events.
5744
5745 2003-05-24 Andreas Schwab <schwab@suse.de>
5746
5747 * coding.c (find_safe_codings): Fix last change.
5748
5749 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5750
5751 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5752
5753 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5754
5755 * xdisp.c (display_mode_element): Increase max depth.
5756 Simplify the error handling code. Use a different error string
5757 for the case where we hit the depth limit.
5758
5759 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5760
5761 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5762
5763 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5764
5765 * intervals.c (get_local_map): Don't get char-property of previous
5766 point any more: get_pos_property already does it and better.
5767
5768 2003-05-21 Dave Love <fx@gnu.org>
5769
5770 [Merged from unicode branch.]
5771
5772 * xfns.c (x_window, x_window): Use use_xim.
5773
5774 * xterm.c (use_xim): Initialize.
5775 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5776 (x_term_init): Maybe set use_xim.
5777
5778 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5779
5780 2003-05-21 Jason Rumney <jasonr@gnu.org>
5781
5782 * unexw32.c (_start): Remove _fmode initialization.
5783
5784 * emacs.c (main) [WINDOWSNT]: Move it here.
5785
5786 2003-05-20 Dave Love <fx@gnu.org>
5787
5788 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5789
5790 2003-05-19 Richard M. Stallman <rms@gnu.org>
5791
5792 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5793 as value for QCfont attribute.
5794 (realize_default_face): lface should already exist; crash if not.
5795 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5796
5797 * frame.c (Fignore_event): Doc fix.
5798
5799 2003-05-19 Kenichi Handa <handa@m17n.org>
5800
5801 * coding.c (decode_coding_string): Handle post-read-conversion
5802 even if the coding doesn't require decoding.
5803
5804 2003-05-18 Richard M. Stallman <rms@gnu.org>
5805
5806 * callproc.c (Fcall_process_region): Doc fix.
5807
5808 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5809
5810 * lread.c (Fload): Print a message if package is obsolete.
5811
5812 * window.c (Fselect_window): Add optional `norecord' arg.
5813 (select_window_1): Fold into Fselect_window.
5814 (select_window_norecord): New function.
5815 (temp_output_buffer_show): Use it. Preserve current buffer.
5816
5817 * window.h (Fselect_window): Update declaration.
5818
5819 * window.c (delete_window, Fother_window, Fset_window_configuration):
5820 * minibuf.c (read_minibuf):
5821 * macterm.c (x_new_focus_frame):
5822 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5823 * callint.c (Fcall_interactively):
5824 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5825
5826 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5827
5828 2003-05-17 David Kastrup <dak@gnu.org>
5829
5830 * process.c (read_process_output): Back out change from 2003-03-09.
5831
5832 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5833
5834 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5835
5836 * textprop.c (text_property_stickiness): New arg `buffer'.
5837
5838 * intervals.h (text_property_stickiness): New arg `buffer'.
5839 (get_pos_property): Declare.
5840
5841 * intervals.c (get_local_map): Use get_pos_property, to obey
5842 stickiness and empty overlays.
5843 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5844 (merge_properties, intervals_equal, merge_properties_sticky):
5845 Use XCAR, XCDR.
5846 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5847
5848 2003-05-17 Richard M. Stallman <rms@gnu.org>
5849
5850 * minibuf.c (read_minibuf): If buffer is empty, record the default
5851 in the history.
5852 (Fminibuffer_complete_word): When deleting the overlap, take account
5853 of its real position.
5854
5855 * fns.c (map_char_table): Fix previous change.
5856
5857 * syntax.c (find_defun_start):
5858 When open_paren_in_column_0_is_defun_start,
5859 return beginning of buffer.
5860
5861 * lisp.h (map_char_table): Declare added arg.
5862
5863 * fns.c (map_char_table): New arg TABLE gets the master table.
5864 All calls changed.
5865 Process default and inheritance, resorting to Faref if necessary.
5866
5867 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5868 (Faccessible_keymaps): Pass new arg to map_char_table.
5869
5870 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5871
5872 * casetab.c (set_case_table): Pass new arg to map_char_table.
5873
5874 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5875
5876 * lisp.h (specbinding_func): New typedef.
5877 (struct specbinding): Use specbinding_func, to put the `volatile'
5878 in the right place.
5879
5880 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5881 to avoid GCC warning.
5882
5883 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5884
5885 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5886
5887 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5888
5889 * keyboard.c (apply_modifiers): Don't fill the other cache.
5890
5891 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5892
5893 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5894
5895 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5896 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5897 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5898 (Fset_window_configuration, Fcurrent_window_configuration)
5899 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5900 (Fpos_visible_in_window_p, mark_window_cursors_off)
5901 (window_internal_height, window_internal_width, Frecenter)
5902 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5903 (replace_buffer_in_all_windows, init_window_once, init_window)
5904 (syms_of_window, keys_of_window): Move from lisp.h.
5905 * lisp.h: Move window.c declarations to window.h.
5906
5907 * bytecode.c: Include window.h.
5908 * emacs.c: Include window.h.
5909
5910 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5911 (keyremap): Add `parent' field.
5912 (keyremap_step): Use it. Remove `parent' argument.
5913 (read_key_sequence): Setup and use the new `parent' field.
5914
5915 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5916
5917 * keyboard.c (adjust_point_for_property): Ensure termination.
5918
5919 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5920
5921 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5922 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5923 duplicated handling of function-key-map and key-translation-map
5924 in read_key_sequence.
5925 (read_key_sequence): Use them.
5926
5927 * keyboard.c (adjust_point_for_property): Try harder to move point
5928 to the non-sticky end of an invisible property.
5929
5930 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5931 property intangible as well.
5932
5933 2003-05-10 Andreas Schwab <schwab@suse.de>
5934
5935 * xmenu.c (single_menu_item): Change last parameter to void* to
5936 avoid warning.
5937
5938 2003-05-09 Richard M. Stallman <rms@gnu.org>
5939
5940 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5941 Bind Qinhibit_modification_hooks to t so there will be no GC.
5942 Rename local `tem' to `save_deactivate_mark'.
5943
5944 * eval.c (specpdl_ptr): Declare volatile.
5945 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5946 before doing the work of unbinding it.
5947
5948 * lisp.h (struct specbinding): Declare elements volatile.
5949 (specpdl_ptr): Declare volatile.
5950
5951 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5952
5953 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5954 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5955
5956 2003-05-08 Dave Love <fx@gnu.org>
5957
5958 * coding.c (Vlast_coding_system_used): Doc fix.
5959
5960 2003-05-07 Jason Rumney <jasonr@gnu.org>
5961
5962 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5963 when system does not support them.
5964
5965 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5966
5967 * fileio.c (Qwrite_region_annotate_functions): New var.
5968 (build_annotations): Use it to process the global part of the hook.
5969 (syms_of_fileio): Init and staticpro it.
5970
5971 * keyboard.c (safe_run_hooks_error): Display a message instead of
5972 silently ignoring the error.
5973
5974 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5975
5976 * keyboard.c (input_available_signal): Mark static.
5977 (menu_bar_items): Use map_keymap.
5978 (menu_bar_one_keymap): Remove.
5979 (menu_bar_item): Adjust arglist (for use in map_keymap).
5980 Properly hide a second binding when not both are keymaps.
5981
5982 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5983 (single_keymap_panes): Use it and map_keymap.
5984 (single_menu_item): Use skp as well.
5985
5986 * keymap.h (map_keymap_function_t): New type.
5987 (map_keymap): Declare.
5988
5989 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5990 (map_keymap_call, Fmap_keymap): New functions.
5991 (syms_of_keymap): Defsubr map-keymap.
5992
5993 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5994
5995 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5996 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5997 ..._with_mnemonic functions for menu items.
5998
5999 2003-05-01 Kenichi Handa <handa@m17n.org>
6000
6001 * coding.c (coding_system_accept_latin_extra_p): Delete this
6002 function.
6003 (find_safe_codings): Pay attention to
6004 the property tranlsation-table-for-encode of each codings.
6005 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6006
6007 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6008
6009 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6010
6011 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6012
6013 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6014
6015 * lisp.h (CHECK): Wrap args in parenthesis.
6016 (specbind): Fix doc: symbol = Qnil is not supported any more.
6017
6018 * bytecode.c (Fbyte_code) <unwind-protect>:
6019 Use Fprogn rather than 0 and Qnil.
6020
6021 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6022 `double', and `triple' modifiers as well.
6023
6024 2003-04-30 Richard M. Stallman <rms@gnu.org>
6025
6026 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6027
6028 * alloc.c (abort_on_gc): New variable.
6029 (Fgarbage_collect): Abort if abort_on_gc is set.
6030
6031 * lisp.h (abort_on_gc): Add decl.
6032
6033 * eval.c (Fsignal): Clear abort_on_gc.
6034
6035 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
6036 Reinit FORMAT_START and END before second scan.
6037
6038 * xdisp.c (move_it_vertically_backward): Do the final big else
6039 even if nlines is 0.
6040
6041 * xdisp.c (redisplay_internal): Finish the per-frame loop
6042 even if redisplay is suspended by input.
6043
6044 2003-04-24 Andrew Choi <akochoi@shaw.ca>
6045
6046 * macterm.c (x_list_fonts): Return all fonts that match if
6047 maxnames = -1.
6048
6049 2003-04-25 Kenichi Handa <handa@m17n.org>
6050
6051 * syntax.c (skip_chars): Fix previous change.
6052
6053 2003-04-24 Kenichi Handa <handa@m17n.org>
6054
6055 * syntax.c (skip_chars): Make the code faster by using the common
6056 technique of *p, *stop, and *endp.
6057
6058 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6059
6060 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
6061 tool_bar_items so GTK tool bar expose callback does not access items
6062 being updated.
6063
6064 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6065
6066 * eval.c (Fapply): Undo last change and add a comment about why.
6067
6068 2003-04-18 Miles Bader <miles@gnu.org>
6069
6070 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6071 pickier PARSE_MULTIBYTE_SEQ.
6072
6073 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6074
6075 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6076 Use XCDR, XCAR, CONSP.
6077 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6078 (Fapply): Remove unnecessary GCPRO.
6079
6080 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6081
6082 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6083
6084 * buffer.h: Don't hardcode BEG==1.
6085
6086 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6087
6088 2003-04-16 Richard M. Stallman <rms@gnu.org>
6089
6090 * xdisp.c (try_window, try_window_reusing_current_matrix):
6091 When at end of window, set window_end_pos to Z-ZV.
6092
6093 * buffer.c (Foverlay_recenter): Doc fix.
6094
6095 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6096
6097 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6098
6099 2003-04-14 Andrew Choi <akochoi@shaw.ca>
6100
6101 * macterm.c (mac_check_for_quit_char): Don't check more often than
6102 once a second.
6103
6104 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6105
6106 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6107 specially, so that they can't hide an implicit switch-frame event.
6108 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6109 (head_table): Use switch-frame as event_kind for select-window.
6110 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6111
6112 * editfns.c (Fformat): Lisp_Object/int mixup.
6113 (format2): Remove unused var numargs.
6114
6115 2003-04-11 Kenichi Handa <handa@m17n.org>
6116
6117 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
6118 (Qafter_insert_file_set_coding): New variable.
6119 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6120 for after-insert-file-adjust-coding-function.
6121 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6122 instead of Vafter_insert_file_adjust_coding_function.
6123
6124 2003-04-11 Kenichi Handa <handa@m17n.org>
6125
6126 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6127
6128 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6129 string. Callers changed.
6130
6131 2003-04-10 Kenichi Handa <handa@m17n.org>
6132
6133 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
6134 (syms_of_fileio): Declare it as a lisp variable.
6135 (Finsert_file_contents):
6136 Call Vafter_insert_file_adjust_coding_function before calling
6137 decode-format.
6138
6139 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6140
6141 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6142 get GtkAdjustment as widget now is a GtkRange.
6143
6144 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6145 GtkRange to avoid memory leak.
6146
6147 2003-04-09 Kenichi Handa <handa@m17n.org>
6148
6149 * xfaces.c (Vface_font_rescale_alist): New variable.
6150 (struct font_name): New member rescale_ratio.
6151 (font_rescale_ratio): New function.
6152 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
6153 (better_font_p): On comparing point sized, pay attention to
6154 recale_ratio member of fonts.
6155 (build_scalable_font_name): Reflect font->rescale_ratio in the
6156 font name.
6157 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
6158
6159 * lread.c (read1): Before calling index, check if the 2nd
6160 arguemnt is in ASCII range.
6161
6162 2003-04-08 Richard M. Stallman <rms@gnu.org>
6163
6164 * fileio.c (Ffile_symlink_p): Doc fix.
6165
6166 * editfns.c (Fformat): Translate positions of text properties
6167 in the format string to apply them to the result.
6168
6169 * fileio.c (Finsert_file_contents): Doc fix.
6170 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6171
6172 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6173
6174 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6175
6176 2003-04-08 Steven Tamm <steventamm@mac.com>
6177
6178 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6179 that self-contained application finds libexec files.
6180
6181 2003-04-08 Kenichi Handa <handa@m17n.org>
6182
6183 * coding.c (code_convert_region_unwind):
6184 Set Vlast_coding_system_used to the argument.
6185 (code_convert_region): If post-read-conversion function changed
6186 the value of last-coding-sytem, keep the new value in
6187 coding->symbol so that it won't be overridden.
6188 (run_pre_post_conversion_on_str): Likewise.
6189 (coding_system_accept_latin_extra_p): New function.
6190 (find_safe_codings): Pay attention to characters registered in
6191 latin-extra-code-table.
6192
6193 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6194
6195 * Makefile.in (md5.o): Add missing dependency info.
6196
6197 2003-04-06 Richard M. Stallman <rms@gnu.org>
6198
6199 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6200
6201 * marker.c (verify_bytepos): New function.
6202
6203 * intervals.c (set_intervals_multibyte_1): When becoming
6204 multibyte, adjust right and left child sizes to a whole set of
6205 characters. If an interval gets zero total-length, delete it.
6206 If an interval consists of just its children, delete one of them.
6207
6208 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6209 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
6210
6211 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6212 All calls deleted.
6213 (lisp_malloc): Do the work here directly.
6214
6215 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6216
6217 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6218 char tables.
6219
6220 2003-04-04 Kenichi Handa <handa@m17n.org>
6221
6222 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6223 destructively change "%S" to "%s".
6224
6225 2003-04-03 Miles Bader <miles@gnu.org>
6226
6227 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6228 always set.
6229
6230 2003-04-01 Dave Love <fx@gnu.org>
6231
6232 * xfns.c (xpm_lookup_color): Grok "opaque".
6233
6234 2003-03-31 Andrew Choi <akochoi@shaw.ca>
6235
6236 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6237 parent window ID.
6238
6239 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6240
6241 * macterm.h (struct mac_output): Define x_pixels_diff and
6242 y_pixels_diff.
6243
6244 2003-03-31 Juanma Barranquero <lektu@terra.es>
6245
6246 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6247 blockinput.h and files included from it.
6248
6249 2003-03-31 Kim F. Storm <storm@cua.dk>
6250
6251 The following changes consolidates the common code related to
6252 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6253 files into frame.c.
6254
6255 * frame.c: Include blockinput.h.
6256 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6257 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6258 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6259 related vars here.
6260 (struct frame_parm_table, frame_parms): New table for describing
6261 frame parameters and their associated Q-variable.
6262 The order of the parameters corresponds to the sequence of the
6263 frame_parm_handlers table in redisplay_interface.
6264 (x_fullscreen_move, x_set_frame_parameters)
6265 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6266 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6267 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6268 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6269 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6270 Generic functions for processing of frame parameters.
6271 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6272 (display_x_get_resource, x_get_resource_string): Functions for
6273 generic access to X resources.
6274 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6275 (x_default_parameter, Fx_parse_geometry): Functions for generic
6276 access to frame parameters.
6277 (x_figure_window_size): Generic calculation of frame size.
6278 Fixed to add space needed for tool bar. Also setup size_hint_flags.
6279 (syms_of_frame): Intern and staticpro frame parameter variables.
6280 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6281 Defsubr Sx_get_resource and Sx_parse_geometry.
6282
6283 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6284 parameter related vars defined in frame.c.
6285 (EMACS_CLASS): Define here.
6286 (enum FULLSCREEN_*): Define here.
6287 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6288 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6289 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6290 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6291 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6292 (x_set_visibility, x_set_autoraise, x_set_autolower)
6293 (x_set_unsplittable, x_set_vertical_scroll_bars)
6294 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6295 (x_figure_window_size): Add prototypes.
6296
6297 * dispextern.h (frame_parm_handler): New typedef.
6298 (struct redisplay_interface): New member frame_parm_handlers.
6299 (enum resource_types): Move declaration here.
6300 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6301 (x_default_parameter): Add prototypes.
6302
6303 * window.c: Remove extern decl for frame parameter vars.
6304 (change_window_heights): New generic function;
6305 replaces x_change_window_heights. All users changed.
6306
6307 * window.h (change_window_heights): Add prototype.
6308
6309 * xfaces.c: Remove extern decl for frame parameter vars.
6310
6311 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6312 (struct w32_display_info): Fix type of xrdb member.
6313 (enum FULLSCREEN_*): Remove.
6314 Remove prototypes for generic functions (in frame.h).
6315
6316 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6317 parameters now defined in frame.h and frame.c.
6318 (Vx_resource_name): Remove. Use generic var.
6319 (enum x_frame_parms): Remove (bogus, unused enum).
6320 (check_x_display_info): Make non-static (for frame.c).
6321 (struct x_frame_parm_table, x_frame_parms): Remove.
6322 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6323 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6324 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6325 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6326 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6327 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6328 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6329 Remove. Use generic functions instead.
6330 (enum resource_types): Remove.
6331 (x_set_scroll_bar_default_width): New global function (for frame.c).
6332 (Fx_create_frame): Depend on x_figure_window_size to add space for
6333 toolbar and setup size_hint_flags.
6334 (x_frame_parm_handlers): New table for redisplay_interface.
6335 (syms_of_xfns): Don't intern/staticpro removed vars.
6336
6337 * xterm.c: Remove unnecessary extern declarations.
6338 (x_fullscreen_adjust): Remove. Use generic instead.
6339 (x_redisplay_interface): Add x_frame_parm_handlers member.
6340
6341 * w32gui.h (XrmDatabase): New (dummy) typedef.
6342
6343 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6344 (struct w32_display_info): Fix type of xrdb member.
6345 (enum FULLSCREEN_*): Remove.
6346 (x_fullscreen_adjust): Remove prototype.
6347
6348 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6349 parameters now defined in frame.h and frame.c.
6350 (Vx_resource_name): Remove. Use generic var.
6351 (enum x_frame_parms): Remove (bogus, unused enum).
6352 (check_x_display_info): Make non-static (for frame.c).
6353 (struct x_frame_parm_table, x_frame_parms): Remove.
6354 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6355 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6356 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6357 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6358 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6359 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6360 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6361 Remove. Use generic functions instead.
6362 (enum resource_types): Remove.
6363 (x_set_scroll_bar_default_width): New global function (for frame.c).
6364 (Fx_create_frame): Depend on x_figure_window_size to add space for
6365 toolbar and setup size_hint_flags.
6366 (w32_frame_parm_handlers): New table for redisplay_interface.
6367 (syms_of_w32fns): Don't intern/staticpro removed vars.
6368
6369 * w32term.c: Remove unnecessary extern declarations.
6370 (x_fullscreen_adjust): Remove. Use generic instead.
6371 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6372
6373 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6374
6375 * macgui.h (XrmDatabase): New (dummy) typedef.
6376
6377 * macterm.h (EMACS_CLASS): Remove.
6378 (struct mac_display_info): Add xrdb member.
6379 (struct mac_output): Add want_fullscreen member.
6380
6381 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6382 parameters now defined in frame.h and frame.c.
6383 (Vx_resource_name): Remove. Use generic var.
6384 (check_x_display_info): Make non-static (for frame.c).
6385 (struct x_frame_parm_table, x_frame_parms): Remove.
6386 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6387 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6388 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6389 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6390 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6391 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6392 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6393 Remove. Use generic functions instead.
6394 (enum resource_types): Remove.
6395 (x_set_scroll_bar_default_width): New global function (for frame.c).
6396 (mac_frame_parm_handlers): New table for redisplay_interface.
6397 (syms_of_macfns): Don't intern/staticpro removed vars.
6398
6399 * macterm.c: Remove unnecessary extern declarations.
6400 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6401
6402 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6403 included from it (atimer.h and systime.h).
6404
6405 2003-03-30 Andreas Schwab <schwab@suse.de>
6406
6407 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6408 parameters for shift_glyphs_for_insert.
6409
6410 * macterm.c (x_redisplay_interface): Add missing entry for
6411 draw_vertical_window_border.
6412
6413 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6414
6415 * fileio.c (Fexpand_file_name): In the no-handler case, after
6416 expanding, look again for a handler and invoke it. This is needed
6417 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6418 expansion produces "/user@host:/bar/../baz" which needs to be
6419 expanded again for the finame result "/user@host:/baz".
6420
6421 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6422
6423 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6424 of area to be redrawn for better performance.
6425
6426 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6427
6428 * xterm.c (take_vertical_position_into_account): Remove.
6429 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6430 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6431 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6432 (x_set_toolkit_scroll_bar_thumb): Simplify.
6433 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6434 (XTread_socket): Remove unused var.
6435 (x_make_frame_invisible): Replace goto with else.
6436
6437 * xdisp.c (set_vertical_scroll_bar): New fun.
6438 (redisplay_window): Use it.
6439
6440 2003-03-26 Richard M. Stallman <rms@gnu.org>
6441
6442 * xdisp.c (update_tool_bar): Recompute tool bar if
6443 update_mode_lines is set. Set w->update_mode_line
6444 only if the tool bar contents actually change.
6445 (update_menu_bar): Undo previous change.
6446
6447 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6448
6449 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6450 (xg_frame_set_char_size): Calculate scroll bar width before frame
6451 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6452 (xg_separator_p): Check for all documented separator types.
6453 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6454 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6455
6456 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6457 so tool bar gets updated.
6458
6459 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6460
6461 * data.c (store_symval_forwarding): Re-instate part of the code
6462 that was deleted with too much enthusiasm.
6463
6464 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6465
6466 * data.c (store_symval_forwarding): Delete special read-only
6467 hack for type == -1, since we now use ->constant instead.
6468 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6469
6470 * buffer.c (overlays_in): Declare static.
6471 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6472 `constant' field rather than the variable's `type' field.
6473
6474 2003-03-24 Andrew Choi <akochoi@shaw.ca>
6475
6476 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6477
6478 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6479
6480 * fns.c [MAC_OSX]: Do not redefine vector.
6481
6482 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6483
6484 * macgui.h: Remove definition of No_Cursor.
6485
6486 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
6487
6488 * xdisp.c: Define No_Cursor.
6489 (x_write_glyphs, notice_overwritten_cursor)
6490 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6491 (note_mouse_highlight): Remove Mac-specific code.
6492 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
6493
6494 2003-03-24 John Paul Wallington <jpw@gnu.org>
6495
6496 * xdisp.c (redisplay_window): If mini window's buffer is not
6497 empty, then redisplay it like other windows.
6498
6499 2003-03-23 Kim F. Storm <storm@cua.dk>
6500
6501 * w32term.c (w32_draw_window_cursor): Fix last change.
6502
6503 2003-03-23 Kenichi Handa <handa@m17n.org>
6504
6505 * alloc.c (make_string_from_bytes, make_specified_string):
6506 Add `const' for the arg CONTENTS.
6507
6508 * lisp.h (make_string_from_bytes, make_specified_string):
6509 Prototypes adjusted.
6510
6511 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6512
6513 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
6514
6515 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6516 (XG_SB_RANGE): New define.
6517
6518 * gtkutil.c (xg_fixed_handle_expose): New function.
6519 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6520 expose events.
6521 (xg_update_scrollbar_pos): Take two more arguments, left and width
6522 of scroll bar including borders.
6523 Clear left and right part outside scroll bar separately as some
6524 themes have bars that are not an even number of pixels.
6525 Don't set reallocate_redraws, don't call
6526 gdk_window_process_all_updates.
6527 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6528 so no need to change it. Calculate size and value with XG_SB_RANGE.
6529
6530 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6531 Pass left and width of scroll bar including borders to
6532 xg_update_scrollbar_pos.
6533
6534 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6535
6536 * Makefile.in: Make sure space precedes end-of-line backslashes.
6537
6538 2003-03-22 Kim F. Storm <storm@cua.dk>
6539
6540 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6541 Add generic versions here. Remove system specific versions
6542 defined elsewhere.
6543
6544 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6545 Add prototypes.
6546
6547 * xterm.h (STORE_NATIVE_RECT): New macro.
6548
6549 2003-03-21 Kim F. Storm <storm@cua.dk>
6550
6551 * xdisp.c (get_glyph_string_clip_rect):
6552 Use FRAME_INTERNAL_BORDER_WIDTH.
6553
6554 * dispextern.h (struct redisplay_interface): Add active_p
6555 argument to draw_window_cursor member. All uses changed.
6556
6557 2003-03-21 Kim F. Storm <storm@cua.dk>
6558
6559 The following changes consolidate code related to writing and
6560 inserting glyphs, exposing frame, the tool bar, the mouse face,
6561 the output cursor, and help echo from xterm.c, w32term.c and
6562 macterm.c into xdisp.c. It also generalizes the use of the
6563 window_part enum instead of using numeric values throughout.
6564
6565 * xdisp.c: Consolidate gui-independent code here.
6566 Include keymap.h.
6567 (Qhelp_echo): Import.
6568 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6569 (help_echo_string, help_echo_window, help_echo_object)
6570 (previous_help_echo_string, help_echo_pos): Declare here.
6571 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6572 (estimate_mode_line_height): Define here. Handle windowing
6573 systems directly (without using estimate_mode_line_height_hook).
6574 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6575 (update_window_cursor, update_cursor_in_window_tree)
6576 (fast_find_position, fast_find_string_pos)
6577 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6578 (expose_area, expose_line, expose_overlaps, expose_window)
6579 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6580 declared static as they are only used locally in xdisp.c.
6581 (draw_glyphs): Rename from x_draw_glyphs and make static.
6582 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6583 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6584 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
6585 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
6586 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6587 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6588 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6589 (note_mouse_highlight, x_clear_window_mouse_face)
6590 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6591 (x_intersect_rectangles): New generic functions for use by xdisp.c
6592 and GUI front-ends.
6593 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6594 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6595
6596 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6597 (NativeRectangle): Generic typedef for rectangle type.
6598 (enum window_part): Move here from window.c.
6599 (struct redisplay_interface): New members flush_display_optional,
6600 define_frame_cursor, clear_frame_area, draw_window_cursor,
6601 draw_vertical_window_border, shift_glyphs_for_insert.
6602 Rename member clear_mouse_face to clear_window_mouse_face.
6603 (estimate_mode_line_height_hook): Remove hook.
6604 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6605 (tool_bar_item_info): Remove prototype.
6606 (help_echo_string, help_echo_window, help_echo_object)
6607 (previous_help_echo_string, help_echo_pos)
6608 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6609 (x_stretch_cursor_p, output_cursor): Declare extern.
6610 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6611 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6612 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6613 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6614 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6615 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6616 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6617 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6618 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6619 Add prototypes.
6620 (mode_line_string, marginal_area_string): Fix prototypes.
6621
6622 * window.c (enum window_part): Move to dispextern.h.
6623 (coordinates_in_window): Use enum window_part member names
6624 instead of numbers to describe return value.
6625 (struct check_window_data): Change part member to window_part.
6626 (check_window_containing): Return window_part unaltered.
6627 (window_from_coordinates): Change part arg from int to enum
6628 window_part. Allow part arg to be null. All users changed.
6629
6630 * window.h (window_from_coordinates): Fix prototype.
6631
6632 * term.c (estimate_mode_line_height): Move to xdisp.c.
6633
6634 * keyboard.c (make_lispy_event): Use enum window_part.
6635
6636 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6637 window_part instead of int in arg list. Users changed.
6638
6639 * xterm.h (No_Cursor): Declare as None for X.
6640 (struct mac_output): Replace member cross_cursor by hand_cursor.
6641
6642 * xterm.c: Remove consolidated defines and code.
6643 (BETWEEN): Remove unused macro.
6644 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6645 (x_define_frame_cursor, x_clear_frame_area)
6646 (x_draw_window_cursor): New X-specific functions for RIF.
6647 (x_redisplay_interface): Add new members.
6648
6649 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6650
6651 * w32term.h (struct w32_output): Remove cross_cursor member.
6652
6653 * w32term.c: Remove consolidated defines and code.
6654 (BETWEEN): Remove unused macro.
6655 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6656 (w32_define_frame_cursor, w32_clear_frame_area)
6657 (w32_draw_window_cursor): New W32-specific functions for RIF.
6658 (w32_redisplay_interface): Add new members.
6659
6660 * w32gui.h (No_Cursor): Define as 0 for W32.
6661 (XRectangle): Add X compatible rectangle type.
6662 (NativeRectangle): Declare as RECT for W32.
6663 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6664
6665 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6666
6667 * w32console.c: Remove consolidated defines and code.
6668
6669 * msdos.h (Display_Info): Add generic typedef.
6670
6671 * msdos.c: Remove consolidated defines and code.
6672 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6673
6674 * macterm.h (struct mac_output): Replace member cross_cursor by
6675 hand_cursor.
6676 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6677
6678 * macterm.c: Remove consolidated defines and code.
6679 (BETWEEN): Remove unused macro.
6680 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6681 (mac_define_frame_cursor, mac_clear_frame_area)
6682 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6683 (x_redisplay_interface): Add new members.
6684
6685 * macgui.h (No_Cursor): Define as 0 for Mac.
6686 (XRectangle): Add X compatible rectangle type.
6687 (NativeRectangle): Declare as Rect for Mac.
6688 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6689
6690 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6691 (x_set_cursor_color): Use x_display_and_set_cursor.
6692
6693 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6694 included from it. Add dependency on keymap.h.
6695
6696 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6697
6698 2003-03-21 Kenichi Handa <handa@m17n.org>
6699
6700 * fileio.c (Fexpand_file_name): Fix previous change.
6701
6702 2003-03-19 Kenichi Handa <handa@m17n.org>
6703
6704 * fileio.c (Ffile_name_directory): Reconstruct file name by
6705 make_specified_string.
6706 (Ffile_name_nondirectory, Ffile_name_as_directory)
6707 (Fdirectory_file_name, Fexpand_file_name)
6708 (Fsubstitute_in_file_name): Likewise.
6709 (Fread_file_name): Compare decoded homedir with DIR and
6710 DEFAULT_FILENAME.
6711
6712 * alloc.c (make_specified_string): If NCHARS is negative, count
6713 the number of characters.
6714
6715 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6716
6717 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6718 all widgets.
6719
6720 * gtkutil.h: Removed xg_ignore_next_thumb.
6721
6722 2003-03-18 Kenichi Handa <handa@m17n.org>
6723
6724 * coding.c (Vchar_coding_system_table): Remove this variable.
6725 (Vcoding_system_safe_chars): New variable.
6726 (intersection): Remove this function.
6727 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6728 all codings in SAFE_CODINGS.
6729 (Ffind_coding_systems_region_internal): Adjust for the change of
6730 find_safe_codings. Get generic coding systems from
6731 Vcoding_system_safe_chars.
6732 (Fdefine_coding_system_internal): New function.
6733 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6734 Initialize and staticpro Vcoding_system_safe_chars.
6735
6736 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6737
6738 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6739 equal old values before updating.
6740
6741 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6742
6743 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6744
6745 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6746
6747 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6748 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6749 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6750 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6751 (xg_create_scroll_bar): Pass bar to button event callback.
6752 (xg_find_top_left_in_fixed): New function.
6753 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6754 whole scroll bar area. Get old position with
6755 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6756 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6757 dragging is in progress. Calculate whole as for Motif.
6758 Remove code that saved last values. Call gtk_range functions to
6759 set scroll bar sizes.
6760
6761 * gtkutil.h: Removed xg_ignore_next_thumb.
6762
6763 2003-03-17 Juanma Barranquero <lektu@terra.es>
6764
6765 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6766 and files included from it.
6767
6768 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6769
6770 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6771 multiple occurrences of the same keymap under different prefixes.
6772 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6773
6774 2003-03-16 Jason Rumney <jasonr@gnu.org>
6775
6776 * w32gui.h: Use HDC for Display.
6777
6778 * w32term.c (w32_encode_char): Prevent double-byte chars from
6779 crashing Emacs.
6780
6781 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6782 as binary.
6783
6784 2003-03-16 Juanma Barranquero <lektu@terra.es>
6785
6786 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6787
6788 2003-03-16 Kim F. Storm <storm@cua.dk>
6789
6790 The following changes consolidate some of the gui-independent
6791 parts of the processing and drawing of "glyph strings" from
6792 xterm.c, w32term.c, and macterm.c into xdisp.c.
6793
6794 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6795 21 bits (this reduces number of faces from 4M to 2M).
6796 Replace W32 specific w32_font_type member (2 bits) by generic
6797 font_type member (3 bits) for portability.
6798 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6799 (enum draw_glyphs_face): Define here.
6800 (struct glyph_string): Define here. Merge W32 and X versions.
6801 (struct redisplay_interface): New members per_char_metric,
6802 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6803 (VCENTER_BASELINE_OFFSET): Define here.
6804 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6805 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6806
6807 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6808 (dump_glyph_string): Moved here.
6809 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6810 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6811 (fill_composite_glyph_string, fill_glyph_string)
6812 (fill_image_glyph_string, fill_stretch_glyph_string)
6813 (left_overwritten, left_overwriting, right_overwritten)
6814 (right_overwriting, get_char_face_and_encoding)
6815 (set_glyph_string_background_width, compute_overhangs_and_x)
6816 (append_glyph, append_composite_glyph, produce_image_glyph)
6817 (take_vertical_position_into_account, append_stretch_glyph)
6818 (produce_stretch_glyph): New generic functions (based on X version).
6819 Call platform specific functions through rif.
6820 (INIT_GLYPH_STRING): New macro, hides W32 details.
6821 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6822 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6823 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6824 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6825 (notice_overwritten_cursor):
6826 Generic functions exported to platform modules. Users changed.
6827
6828 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6829 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6830 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6831 New macros for consolidated code.
6832
6833 * xterm.c: Remove consolidated defines and code.
6834 (x_per_char_metric, x_encode_char)
6835 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6836 (x_redisplay_interface): Add new members.
6837
6838 * w32gui.h (Display): Add dummy typedef for consolidation.
6839 (XChar2b): Define alias for wchar_t for consolidation.
6840 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6841
6842 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6843 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6844 New macros for consolidation.
6845
6846 * w32term.c: Remove consolidated defines and code.
6847 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6848 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6849 (w32_per_char_metric): Change font_type arg to int for RIF.
6850 (w32_encode_char): Return int according to RIF requirements.
6851 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6852 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6853 x_get_glyph_overhangs.
6854 (w32_redisplay_interface): Add new members.
6855
6856 * macgui.h (XChar2b): Move typedef here for consolidation.
6857 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6858
6859 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6860 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6861 consolidation.
6862
6863 * macterm.c: Remove consolidated defines and code.
6864 (mac_per_char_metric): New function for RIF.
6865 (mac_encode_char): Adapt to new RIF requirements.
6866 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6867 (x_redisplay_interface): Add new members.
6868
6869 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6870
6871 * keymap.c (Vmenu_events): New var.
6872 (syms_of_keymap): Initialize it.
6873 (where_is_internal): Check more carefully what is a menu event.
6874
6875 2003-03-14 Richard M. Stallman <rms@gnu.org>
6876
6877 * lread.c (read1): After #!, exit loop on eof.
6878
6879 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6880
6881 * gtkutil.h: Add declaration for xg_frame_cleared.
6882
6883 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6884
6885 * gtkutil.c (struct xg_last_sb_pos): New structure.
6886 (handle_fixed_child): New function.
6887 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6888 and force a redraw on them.
6889 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6890 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6891 so we can avoid unneeded redraws.
6892 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6893 and force a redraw on the scroll bar.
6894 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6895 if xg_last_sb_pos shows the positions are up to date.
6896 (xg_frame_cleared): New function.
6897
6898 2003-03-13 Kenichi Handa <handa@m17n.org>
6899
6900 * coding.c (Fdetect_coding_region): Fix docstring.
6901 (Fdetect_coding_string): Fix docstring.
6902
6903 2003-03-13 Andreas Schwab <schwab@suse.de>
6904
6905 * gtkutil.c: Add prototype for create_menus.
6906
6907 * data.c (long_to_cons): Fix type of top.
6908
6909 * xselect.c (selection_data_to_lisp_data): Use int instead of
6910 long for an integer of size 4.
6911
6912 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6913 (xg_tool_bar_help_callback): Likewise.
6914
6915 2003-03-12 Andreas Schwab <schwab@suse.de>
6916
6917 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6918
6919 2003-03-12 Kim F. Storm <storm@cua.dk>
6920
6921 The following changes consolidate the fringe handling from
6922 xterm.c, w32term.c, and macterm.c into xdisp.c.
6923
6924 * xdisp.c: Consolidate fringe handling code here.
6925 (left_bits, right_bits, continued_bits, continuation_bits)
6926 (ov_bits, zv_bits): Define fringe bitmaps.
6927 (fringe_bitmaps): New array holding fringe bitmaps.
6928 (draw_fringe_bitmap): Draw a specific bitmap; call display
6929 specific drawing routine via rif->draw_fringe_bitmap.
6930 (draw_row_fringe_bitmaps): Generic replacement for
6931 x_draw_row_fringe_bitmaps; all callers changed.
6932 (compute_fringe_widths): Generic replacement for
6933 x_compute_fringe_widths; all callers changed.
6934
6935 * dispextern.h (enum fringe_bitmap_type): Define here.
6936 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6937 (fringe_bitmaps): Declare extern.
6938 (struct redisplay_interface): New member draw_fringe_bitmap.
6939 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6940
6941 * xterm.c: Remove generic fringe code.
6942 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6943 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6944
6945 * w32term.c: Remove generic fringe code.
6946 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6947 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6948
6949 * macterm.c: Remove generic fringe code.
6950 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6951 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6952
6953 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6954
6955 * print.c (Fprin1_to_string): Return unibyte string if possible.
6956
6957 2003-03-09 David Kastrup <dak@gnu.org>
6958
6959 * process.c (read_process_output): We have allocated enough space
6960 for readmax and carryover, so actually use the alloted space.
6961
6962 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6963
6964 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6965 toolkit scrollbar click.
6966
6967 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6968 for USE_GTK.
6969 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6970 also.
6971 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6972 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6973
6974 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6975
6976 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6977 (xg_tool_bar_item_expose_callback): New function.
6978 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6979 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6980 on the tool bar widget.
6981 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6982 to expose on the tool bar item widgets.
6983
6984 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6985
6986 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6987 struct image* when deciding to update (struct image* may have been
6988 deleted from the image cache).
6989
6990 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6991 the event isn't for a frame (i.e. for dialogs).
6992
6993 2003-03-07 Kenichi Handa <handa@m17n.org>
6994
6995 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6996 composition components reaches the limit, terminate composing.
6997 (COMPOSITION_OK): New macro.
6998 (detect_coding_iso2022): Use it if an escape sequence for
6999 composition is found.
7000 (coding_restore_composition): Adjust the number of composition
7001 components if it is not sane.
7002
7003 2003-03-06 Juanma Barranquero <lektu@terra.es>
7004
7005 * w32term.h (struct w32_display_info): Add xrdb member to support
7006 passing resources via -xrm on Windows.
7007
7008 * w32term.c (w32_make_rdb): New function.
7009 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7010 struct. Delete leftover code.
7011
7012 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7013 for resources passed on the command line.
7014
7015 * w32reg.c (w32_get_rdb_resource): New function.
7016 (x_get_string_resource): Use it, so resources passed with -xrm
7017 supercede the ones in the registry.
7018
7019 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7020
7021 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7022 instead of x_top_window_to_frame.
7023
7024 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7025
7026 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7027 when restarting Emacs.
7028
7029 2003-03-03 Richard M. Stallman <rms@gnu.org>
7030
7031 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7032 to run kill-buffer-query-functions.
7033 (Qkill_buffer_query_functions): New var.
7034 (syms_of_buffer): Init and staticpro it.
7035
7036 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7037
7038 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7039
7040 2003-02-25 Kim F. Storm <storm@cua.dk>
7041
7042 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7043 If centering point failed to make whole line visible and vscroll
7044 is non-zero, disable vscroll and try centering point again.
7045
7046 * lread.c (read1): Accept `single space' syntax like (? x).
7047
7048 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7049
7050 * keyboard.c (cancel_hourglass_unwind): Surround with
7051 #ifdef HAVE_X_WINDOWS
7052
7053 2003-02-25 Kenichi Handa <handa@m17n.org>
7054
7055 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7056 process only when "subprocesses" is defined.
7057
7058 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7059
7060 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7061
7062 2003-02-24 Juanma Barranquero <lektu@terra.es>
7063
7064 * callint.c (fix_command): Declare as static void and move before
7065 Fcall_interactively.
7066
7067 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7068 (syms_of_xdisp): Don't initialize Qwhen.
7069
7070 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7071
7072 * keyboard.c (cancel_hourglass_unwind): New function.
7073 (command_loop_1): Cancel hourglass with unwind-protect.
7074
7075 2003-02-23 Richard M. Stallman <rms@gnu.org>
7076
7077 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7078 Detect (when ... (region-beginning)) etc.
7079 (Fcall_interactively): Call fix_command.
7080 (Qif, Qwhen): New variables.
7081 (syms_of_callint): Init and staticpro them.
7082
7083 * regex.c (print_partial_compiled_pattern): Output to stderr.
7084
7085 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7086
7087 * dired.c (directory_files_internal): Don't expand directory.
7088 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7089 instead. From Lars Hansen <larsh@math.ku.dk>.
7090
7091 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7092
7093 * fns.c (string_to_multibyte): Remove unused var i.
7094 (Flanginfo): Fix int/Lisp_Object mixup.
7095 (void_call2): New fun.
7096 (Fmap_char_table): Use it in place of call2.
7097
7098 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7099
7100 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7101
7102 * keymap.c (copy_keymap_1): Make it static.
7103
7104 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7105
7106 2003-02-22 David Ponce <david@dponce.com>
7107
7108 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7109
7110 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7111
7112 * process.h: Removed subtty field from struct Lisp_Process.
7113
7114 * process.c (create_process): Remove setting of subtty.
7115 (emacs_get_tty_pgrp): New function.
7116 (Fprocess_running_child_p, process_send_signal):
7117 Call emacs_get_tty_pgrp instead of ioctl.
7118 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7119
7120 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7121
7122 * keymap.c (Fdefine_key): Doc fix.
7123
7124 2003-02-21 Juanma Barranquero <lektu@terra.es>
7125
7126 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7127
7128 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7129 POLLING_PROBLEM_IN_SELECT.
7130
7131 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7132 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7133
7134 * s/hpux10-20.h: New file.
7135
7136 * process.c (wait_reading_process_input):
7137 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
7138
7139 2003-02-20 Kenichi Handa <handa@m17n.org>
7140
7141 * fontset.c (check_fontset_name): If NAME is nil, return the
7142 default fontset.
7143 (override_font_info): New function.
7144 (Fset_fontset_font): Document that NAME nil means the default fontset.
7145 (Ffontset_info): If FONTSET is not the default fontset, merge
7146 FONTSET onto the copy of the default fontset, and work on that
7147 copy. Document that NAME nil means the default fontset.
7148 (Ffontset_font): Document that NAME nil means the default fontset.
7149
7150 * process.c (setup_process_coding_systems): If the process's
7151 in/out descriptor is -1, do nothing.
7152
7153 2003-02-19 Andreas Schwab <schwab@suse.de>
7154
7155 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7156 Add prototypes.
7157
7158 2003-02-19 Kenichi Handa <handa@m17n.org>
7159
7160 * xfaces.c (try_alternative_families): Try all scalable fonts if
7161 Vscalable_fonts_allowed is not Qt.
7162
7163 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7164
7165 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7166
7167 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7168
7169 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7170 names.
7171
7172 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
7173 (sorted_font_list): Move allocation of struct font_name to
7174 x_face_list_fonts.
7175 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7176 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7177
7178 2003-02-18 Kim F. Storm <storm@cua.dk>
7179
7180 * lread.c (read1): Fix last change.
7181 "`" is not always special. Allow "?" after a character constant.
7182
7183 2003-02-18 Andrew Choi <akochoi@shaw.ca>
7184
7185 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7186
7187 2003-02-18 Andreas Schwab <schwab@suse.de>
7188
7189 * window.c (window_scroll_pixel_based): Move outside a
7190 multi-glyph character before setting new window start.
7191
7192 * xdisp.c (in_display_vector_p): New function.
7193 * dispextern.h (in_display_vector_p): Declare.
7194
7195 2003-02-18 Kim F. Storm <storm@cua.dk>
7196
7197 * lread.c (read1): Fix and relax read syntax.
7198 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7199 Only recognize "," after dotted-pair dot if inside backquote.
7200 Never include "`" or "," (inside backquote) in a symbol.
7201 Allow dotted-pair dot after a character constant.
7202 Allow "`" and "," (inside backquote) after a character constant.
7203
7204 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7205
7206 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7207 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7208 icons. Set name of tool bar to emacs-toolbar.
7209 (update_frame_tool_bar): Connect expose event to
7210 xg_tool_bar_expose_callback.
7211
7212 2003-02-17 Richard M. Stallman <rms@gnu.org>
7213
7214 * keyboard.c (this_command_key_count_reset): New variable.
7215 Initiatize to 0 where this_command_key_count is set.
7216 (read_char): Save and restore this_command_key_count_reset
7217 around input method code.
7218 (read_char): If this_command_key_count_reset, echo reread commands.
7219 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7220
7221 2003-02-17 Kenichi Handa <handa@m17n.org>
7222
7223 * fns.c (string_to_multibyte): Always return a multibyte string.
7224
7225 2003-02-16 Jason Rumney <jasonr@gnu.org>
7226
7227 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7228 Negative max_fonts parameter means list all.
7229
7230 2003-02-14 Dave Love <fx@gnu.org>
7231
7232 * fns.c (Flanginfo): Doc fix.
7233
7234 2003-02-13 Kim F. Storm <storm@cua.dk>
7235
7236 * lread.c (read_escape): Interpret \s as a SPACE character, except
7237 for \s-X in a character constant which still is the super modifier.
7238 (read1): Signal an `invalid read syntax' error if a character
7239 constant is immediately followed by a digit or symbol character.
7240
7241 * search.c (Fmatch_data): Doc fix. Explicitly state that
7242 match-data is undefined if last search failed.
7243
7244 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7245 All uses changed.
7246
7247 2003-02-12 Juanma Barranquero <lektu@terra.es>
7248
7249 * eval.c (Fdefmacro): Fix typo.
7250
7251 2003-02-12 Kim F. Storm <storm@cua.dk>
7252
7253 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7254 macro is a string, convert meta modifiers in string when copying
7255 the string into a vector.
7256
7257 2003-02-11 Kim F. Storm <storm@cua.dk>
7258
7259 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7260
7261 2003-02-11 Kenichi Handa <handa@m17n.org>
7262
7263 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7264
7265 2003-02-10 Kim F. Storm <storm@cua.dk>
7266
7267 * process.c: Doc fixes.
7268 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7269
7270 2003-02-10 Kenichi Handa <handa@m17n.org>
7271
7272 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7273
7274 * process.c (QCfilter_multibyte): New variable.
7275 (setup_process_coding_systems): New function.
7276 (Fset_process_buffer, Fset_process_filter):
7277 Call setup_process_coding_systems.
7278 (Fstart_process): Initialize the member `filter_multibyte' of
7279 struct Lisp_Process.
7280 (create_process): Call setup_process_coding_systems.
7281 (Fmake_network_process): New keyward `:filter-multibyte'.
7282 Initialize the member `filter_multibyte' of struct Lisp_Process.
7283 Call setup_process_coding_systems.
7284 (server_accept_connection): Call setup_process_coding_systems.
7285 (read_process_output): If the process has a filter, decide the
7286 multibyteness of a string to given to the filter by
7287 `filter_multibyte' member of the process. If the process doesn't
7288 have a filter and the result of conversion is unibyte, use
7289 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7290 multibyte form.
7291 (Fset_process_coding_system): Call setup_process_coding_systems.
7292 (Fset_process_filter_multibyte): New function.
7293 (Fprocess_filter_multibyte_p): New function.
7294 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7295 Defsubr Sset_process_filter_multibyte and
7296 Sprocess_filter_multibyte_p.
7297
7298 * process.h (struct Lisp_Process): New member filter_multibyte.
7299
7300 * lisp.h (setup_process_coding_systems): Add prototype.
7301
7302 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7303 process, update coding systems for the process.
7304
7305 2003-02-09 Kenichi Handa <handa@m17n.org>
7306
7307 * fns.c (string_to_multibyte): New function.
7308 (Fstring_to_multibyte): New function.
7309 (syms_of_fns): Defsubr it.
7310
7311 2003-02-08 Andreas Schwab <schwab@suse.de>
7312
7313 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7314 instead of the substitution.
7315
7316 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7317
7318 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7319
7320 * xmenu.c (menu_position_func): Adjust menu popup position so that
7321 the menu is fully visible.
7322
7323 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7324
7325 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
7326 (x_make_frame_invisible, x_wm_set_icon_position):
7327 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
7328
7329 * xfns.c (x_set_name, x_set_title): Ditto.
7330
7331 2003-02-04 Richard M. Stallman <rms@gnu.org>
7332
7333 * keyboard.c (echo_now): Update before_command_echo_length.
7334 (Freset_this_command_lengths): Reset this_command_key_count etc.
7335 immediately rather than arranging to do it later.
7336 (before_command_key_count_1, before_command_echo_length_1)
7337 (before_command_restore_flag): Vars deleted.
7338 (add_command_key): Don't handle before_command_restore_flag.
7339 (read_char, record_menu_key): Don't update before_command_key_count or
7340 before_command_echo_length.
7341 (read_char): Don't handle before_command_restore_flag.
7342
7343 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7344 in direct-output clauses if it wouldn't be called in the ordinary case.
7345
7346 2003-02-04 Kim F. Storm <storm@cua.dk>
7347
7348 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7349
7350 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7351
7352 * gtkutil.c (remove_from_container): Copying list is not needed.
7353 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7354 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7355 on list returned from gtk_container_get_children to avoid memory leak.
7356
7357 2003-02-01 Jason Rumney <jasonr@gnu.org>
7358
7359 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7360 local malloc.
7361 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7362 definitions in xpm.h.
7363 (init_xpm_functions): New function.
7364 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
7365 (init_external_image_libraries): Try to load libXpm.dll.
7366
7367 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7368 timestamp.
7369
7370 2003-01-31 Dave Love <fx@gnu.org>
7371
7372 * syntax.c (Fskip_chars_forward)
7373 (open-paren-in-column-0-is-defun-start): Doc fix.
7374
7375 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7376
7377 * fileio.c: Support // at start of name for Cygwin (just added proper
7378 preprocessor tests).
7379
7380 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7381
7382 * Makefile.in: Use @EXEEXT@ for Cygwin.
7383
7384 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7385
7386 * s/cygwin.h: Added for Cygwin port.
7387
7388 2003-01-31 Juanma Barranquero <lektu@terra.es>
7389
7390 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7391 when including gif_lib.h.
7392 (init_gif_functions, init_tiff_functions): New functions.
7393 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7394 Windows. Disable color table lookups. Call library functions
7395 through pointers determined at runtime.
7396 (init_external_image_libraries): Try to load libungif.dll and
7397 libtiff.dll.
7398
7399 2003-01-31 Kenichi Handa <handa@m17n.org>
7400
7401 * xdisp.c (SKIP_GLYPHS): New macro.
7402 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
7403
7404 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7405
7406 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
7407
7408 2003-01-30 Dave Love <fx@gnu.org>
7409
7410 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7411 (Fgarbage_collect): Use them.
7412 (init_alloc, syms_of_alloc): Set them up.
7413
7414 2003-01-30 Juanma Barranquero <lektu@terra.es>
7415
7416 * w32fns.c (init_external_image_libraries): Add missing operator.
7417
7418 2003-01-29 Jason Rumney <jasonr@gnu.org>
7419
7420 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7421 an alternative name for jpeg.dll.
7422
7423 2003-01-29 Kenichi Handa <handa@m17n.org>
7424
7425 * xdisp.c (set_cursor_from_row): Pay attention to string display
7426 properties.
7427
7428 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7429
7430 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7431 <escape>.
7432 (keycode_to_xkeysym_table): Reformat and add more comments.
7433 (XTread_socket): Drop special case for backspace.
7434
7435 2003-01-28 Andrew Choi <akochoi@shaw.ca>
7436
7437 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7438 values in old-style RGB specs.
7439
7440 2003-01-27 Juanma Barranquero <lektu@terra.es>
7441
7442 * w32fns.c (init_external_image_libraries): Try alternate names for the
7443 jpeg dll.
7444
7445 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7446
7447 * gtkutil.c (create_dialog, xg_separator_p)
7448 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7449 before calling strcmp or strlen.
7450
7451 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7452
7453 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7454 and handle image load failure.
7455
7456 2003-01-26 Jason Rumney <jasonr@gnu.org>
7457
7458 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7459 New functions.
7460 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7461 Disable color table lookups. Call jpeg library functions
7462 through pointers determined at runtime.
7463 (init_external_image_libraries): Try to load jpeg.dll.
7464
7465 2003-01-25 Richard M. Stallman <rms@gnu.org>
7466
7467 * lisp.h: Declare format2 instead of format1.
7468
7469 * fileio.c (barf_or_query_if_file_exists):
7470 Call format2 instead of format1.
7471
7472 * editfns.c (format2): New function, replaces format1
7473 but takes exactly two Lisp Objects as format args.
7474
7475 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7476
7477 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7478
7479 * xterm.h: Change to return value of x_dispatch_event to int.
7480
7481 * xterm.c (x_filter_event): New function.
7482 (event_handler_gdk, XTread_socket): Call x_filter_event.
7483 (x_dispatch_event): Change to return value of finish.
7484 (event_handler_gdk): Use return value from x_dispatch_event.
7485
7486 * xfns.c (x_window): Call create_frame_xic for GTK version to
7487 initialize input methods.
7488
7489 * gtkutil.h: Add (void) prototypes.
7490
7491 * gtkutil.c (create_menus): Remove code that puts the help menu to
7492 the right.
7493
7494 2003-01-25 Jason Rumney <jasonr@gnu.org>
7495
7496 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7497 [HAVE_PNG]: Sync with xfns.c version.
7498 (png_load): Adjust colors for Windows. Use Windows
7499 bitmaps. Disable color table lookups.
7500 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7501 (init_png_functions): New function.
7502 (png_read_from_memory, png_load): Call png library functions
7503 through pointers determined at runtime.
7504 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7505 (init_external_image_libraries): New function.
7506 (init_xfns): Call it.
7507
7508 2003-01-24 Andreas Schwab <schwab@suse.de>
7509
7510 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7511
7512 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7513
7514 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7515 of static initializer.
7516
7517 2003-01-24 Dave Love <fx@gnu.org>
7518
7519 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7520 architectures.
7521
7522 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7523 Use __alignof__.
7524
7525 2003-01-24 Kenichi Handa <handa@m17n.org>
7526
7527 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
7528 It it is nonzero, don't pretend that an invisible area doesn't exist.
7529 (command_loop_1): Call adjust_point_for_property with proper
7530 second arg.
7531
7532 2003-01-22 Jason Rumney <jasonr@gnu.org>
7533
7534 Sync changes with xterm.c and xfns.c.
7535
7536 * w32term.c (x_draw_glyph_string_foreground)
7537 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7538
7539 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7540 phys_cursor's hpos is overwritten. This is still not completely
7541 correct, as it doesn't really make sense to use hpos at all to
7542 get the cursor glyph (as that is relative to the width of the
7543 characters on the line, which may have changed during the update).
7544
7545 * w32term.c (notice_overwritten_cursor): Handle the special case
7546 of the cursor being in the first blank non-text line at the
7547 end of a window.
7548
7549 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7550 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7551 Compute from the x position returned by x_draw_glyphs.
7552
7553 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7554 except for NO_CURSOR and system caret, to make phys_cursor_width
7555 contain what its name suggests.
7556 (notice_overwritten_cursor): Consider the cursor image erased if
7557 the output area intersects the cursor image in y-direction.
7558
7559 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7560 note_mode_line_highlight and extend.
7561
7562 * w32term.c (last_window): New variable.
7563 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7564 (note_mouse_movement): Remove reimplemented code in #if 0.
7565
7566 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7567 not update_mode_lines, and always set it to 1.
7568
7569 2003-01-21 Jason Rumney <jasonr@gnu.org>
7570
7571 * w32fns.c (IDC_HAND): Define it if system headers don't.
7572
7573 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7574
7575 * w32term.h (struct w32_output): New member hand_cursor.
7576 (WM_EMACS_SETCURSOR): New message definition.
7577
7578 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7579 function w32_define_cursor.
7580 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7581 position, change member name output_data.x to output_data.w32 and
7582 add function w32_define_cursor.
7583 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7584 and change member name output_data.x to output_data.w32.
7585 (w32_initialize_display_info):
7586 Setup dpyinfo->vertical_scroll_bar_cursor.
7587
7588 * w32fns.c (Vx_hand_shape): New variable.
7589 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7590 WM_EMACS_SETCURSOR.
7591 (x-create-frame): Setup Cursor types.
7592
7593 2003-01-21 David Ponce <david@dponce.com>
7594
7595 * w32term.c (w32_encode_char): For DIM=1 charset, set
7596 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
7597 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7598 2002-09-30.)
7599 (w32_draw_relief_rect): Declare all args.
7600 (w32_define_cursor): New.
7601
7602 * w32fns.c (w32_load_cursor): New function.
7603 (w32_init_class): Use it.
7604 (x_put_x_image): Declare all args.
7605
7606 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7607
7608 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7609
7610 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7611
7612 * gtkutil.c: Must include stdio.h before termhooks.h
7613
7614 2003-01-21 Dave Love <fx@gnu.org>
7615
7616 * alloc.c (Fgc_status): Print zombie list.
7617 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7618 Fix assignment of zombies.
7619 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7620 Don't take car of non-cons.
7621
7622 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7623
7624 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7625
7626 2003-01-20 David Ponce <david@dponce.com>
7627
7628 * w32menu.c (digest_single_submenu): Declare all args.
7629
7630 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7631 changes in xmenu.c:
7632
7633 (parse_single_submenu): Use individual keymap's prompt
7634 string as pane name, if there is one.
7635 (set_frame_menubar): Save menu_items_n_panes from each call to
7636 parse_single_submenu and use it when calling digest_single_submenu.
7637
7638 2003-01-20 Steven Tamm <steventamm@mac.com>
7639
7640 * macterm.c (XTread_socket): Checks for valid, visible window
7641 before sending a scroll-wheel event.
7642
7643 2003-01-20 Richard M. Stallman <rms@gnu.org>
7644
7645 * xdisp.c (redisplay_window): If mini window's buffer is not
7646 a minibuffer, then redisplay it like other windows.
7647
7648 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7649
7650 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7651 external tool bar before setting tool bar height.
7652
7653 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7654
7655 * xterm.c (handle_one_xevent): Surround popup_activated
7656 with #ifdef:s for non-toolkit version.
7657
7658 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7659 (gtkutil.o): New file.
7660 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7661 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7662
7663 * gtkutil.c: New file for GTK version.
7664
7665 * gtkutil.h: New file for GTK version.
7666
7667 * xterm.h: Add xt_or_gtk_widget.
7668 Include gtk files for USE_GTK.
7669 (struct x_output): Add toolbar_height.
7670 (struct x_output): Add GTK widgets and Gdk size_hints.
7671 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7672 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7673 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7674
7675 * xterm.c: Include gtkutil.h for USE_GTK.
7676 Declare extern void free_frame_menubar for USE_GTK.
7677 (note_mouse_highlight): Check popup_activated for USE_GTK.
7678 (xt_action_hook): Don't compile if USE_GTK.
7679 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7680 (xg_scroll_callback): New function.
7681 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7682 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7683 for USE_GTK.
7684 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7685 xg_show_scroll_bar for USE_GTK.
7686 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7687 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7688 (event_handler_gdk): New function for USE_GTK.
7689 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7690 (handle_one_xevent): Make sure widget is mapped before
7691 calling x_real_positions for USE_GTK.
7692 (XTread_socket): Add GTK event loop for USE_GTK.
7693 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7694 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7695 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7696 (x_iconify_frame): Add code for USE_GTK.
7697 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7698 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7699 is in gtkutil.c.
7700 (x_term_init): Add initialization for GTK.
7701 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7702
7703 * xmenu.c: Include gtkutil.h for USE_GTK.
7704 (Fx_popup_menu): Use current position if x and y is NIL.
7705 (single_menu_item, single_menu_item, Fx_popup_dialog):
7706 Check for USE_GTK.
7707 (popup_widget_loop): New function for USE_GTK.
7708 (x_activate_menubar): Add code for USE_GTK.
7709 (popup_activate_callback, popup_deactivate_callback)
7710 (menu_highlight_callback, menubar_selection_callback):
7711 Add USE_GTK versions.
7712 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7713 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7714 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7715 is in gtkutil.c.
7716 (popup_selection_callback): New version for USE_GTK.
7717 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7718 one USE_X_TOOLKIT version.
7719 (xmenu_show): Call create_and_show_popup_menu.
7720 (dialog_selection_callback): New version for USE_GTK.
7721 (create_and_show_dialog): New fuction, one USE_GTK version and
7722 one USE_X_TOOLKIT version.
7723 (xdialog_show): Call create_and_show_dialog.
7724
7725 * xfns.c: Include gtkutil for USE_GTK.
7726 (x_window_to_frame, x_any_window_to_frame)
7727 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7728 (x_top_window_to_frame): Add code for USE_GTK.
7729 (x_set_background_color): Call xg_set_background_color for GTK.
7730 (x_set_menu_bar_lines): Check for USE_GTK.
7731 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7732 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7733 (x_window): Call xg_create_frame_widgets for USE_GTK.
7734 (Fx_create_frame): Check for USE_GTK
7735 (Fx_file_dialog): New implementation for USE_GTK.
7736
7737 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7738 (update_menu_bar): Add check for USE_GTK.
7739 (update_tool_bar): Add check for USE_GTK and external tool bar.
7740 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7741 (redisplay_internal): Add check for USE_GTK and popup_activated.
7742 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7743 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7744 (display_menu_bar): Add check for USE_GTK
7745
7746 * lisp.h: Declare Vx_resource_name extern.
7747
7748 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7749 for USE_GTK.
7750 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7751
7752 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7753 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7754 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7755
7756 * fileio.c (Fread_file_name): Add check for USE_GTK.
7757
7758 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7759 Add check for USE_GTK.
7760
7761 * config.in: Added HAVE_GTK
7762
7763 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7764
7765 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7766
7767 * charset.h (Funibyte_char_to_multibyte): Export.
7768
7769 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7770
7771 * xmenu.c (mouse_position_for_popup): New function.
7772 (Fx_popup_menu): Call mouse_position_for_popup for X and
7773 mouse_position_hook for others.
7774
7775 2003-01-17 Kim F. Storm <storm@cua.dk>
7776
7777 * editfns.c (Finsert): Mention `string-make-multibyte' and
7778 `string-as-multibyte' in doc string.
7779
7780 2003-01-17 Kenichi Handa <handa@m17n.org>
7781
7782 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7783
7784 * editfns.c (Fformat): Convert an unibyte char argument that is
7785 formatted by "%c" to multibyte if the total result must be a
7786 multibyte string.
7787
7788 2003-01-16 Kim F. Storm <storm@cua.dk>
7789
7790 * process.c (set-process-filter): Document unibyte/multibyte-ness
7791 of string argument.
7792
7793 2003-01-16 Kenichi Handa <handa@m17n.org>
7794
7795 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7796
7797 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7798 (re_search_2): Likewise.
7799
7800 2003-01-15 Kenichi Handa <handa@m17n.org>
7801
7802 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7803 buffer is unibyte.
7804
7805 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7806
7807 * fns.c (Fsubstring): Clarify doc string.
7808
7809 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7810 (Fprevious_char_property_change)
7811 (Fnext_single_char_property_change)
7812 (Fprevious_single_char_property_change, Fnext_property_change)
7813 (Fnext_single_property_change, Fprevious_property_change)
7814 (Fprevious_single_property_change, Fadd_text_properties)
7815 (Fput_text_property, Fset_text_properties)
7816 (Fremove_text_properties, Fremove_list_of_text_properties)
7817 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7818
7819 2003-01-14 Kim F. Storm <storm@cua.dk>
7820
7821 * process.h (struct Lisp_Process): New member plist replaces old
7822 member private_vars. All uses changed.
7823
7824 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7825 (QCplist): Rename from QCvars. Change all uses.
7826 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7827 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7828 (syms_of_process): Intern, staticpro, defsubr these.
7829 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7830
7831 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7832
7833 * m/delta.h: Remove (obsolete).
7834
7835 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7836
7837 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7838 behaviour in front of symlinks.
7839 (Fdelete_file): Raise an error on directories.
7840
7841 2003-01-13 Dave Love <fx@gnu.org>
7842
7843 * fns.c (Freverse): Use QUIT.
7844
7845 2003-01-13 Richard M. Stallman <rms@gnu.org>
7846
7847 * minibuf.c (minibuffer_completion_contents):
7848 Error if point is inside prompt.
7849
7850 * keyboard.c (command_loop_1): Don't redisplay directly
7851 if there's a post-command-hook.
7852
7853 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7854 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7855
7856 2003-01-12 Kim F. Storm <storm@cua.dk>
7857
7858 * process.h (struct Lisp_Process): New member private_vars.
7859
7860 * process.c (QCvars): New variable.
7861 (syms_of_process): Intern and staticpro it.
7862 (Fset_process_contact): Removed function.
7863 (Fprocess_variable, Fset_process_variable): New functions.
7864 (syms_of_process): Defsubr them.
7865 (Fstart_process): Initialize private_vars plist to nil.
7866 (Fmake_network_process): New arg :vars to setup the private
7867 variables for new network process.
7868 (server_accept_connection): Copy server's private variables to
7869 client process.
7870
7871 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7872 crashes). Code rewritten and simplified. Now directly aligns the
7873 pointer and recalculates pure_bytes_used, rather than aligning the
7874 size and adjusting the pointer.
7875
7876 2003-01-11 Kim F. Storm <storm@cua.dk>
7877
7878 * process.c (Fset_process_contact): New function.
7879 (syms_of_process): defsubr it.
7880 (make-network-process): Update doc.
7881
7882 2003-01-10 Andreas Schwab <schwab@suse.de>
7883
7884 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7885 Reported by Berthold Gunreben <b.gunreben@web.de>.
7886
7887 2003-01-10 Dave Love <fx@gnu.org>
7888
7889 * composite.c (syms_of_composite): Make composition_hash_table weak.
7890
7891 2003-01-09 Kim F. Storm <storm@cua.dk>
7892
7893 * process.c (Fmake_network_process): Convert new port number
7894 to host byte order for `:service t' case. From Mario Lang.
7895
7896 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7897
7898 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7899 instead of XtAppProcessEvent.
7900
7901 * xterm.c (handle_one_xevent): New function.
7902 (x_dispatch_event): New function.
7903 (XTread_socket): Call handle_one_xevent.
7904
7905 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7906
7907 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7908 call XQueryPointer to get coordinates.
7909 (popup_get_selection): Do not set popup_activated_flag to zero,
7910 let popup_deactivate_callback do that. Needed for Motif.
7911 Call x_dispatch_event instead of XtDispatchEvent.
7912 (xmenu_show): Calculate root coordinate from frame top/left position.
7913
7914 2003-01-08 Kim F. Storm <storm@cua.dk>
7915
7916 * process.c (server_accept_connection): Fix recording of new
7917 connection's local address in :local property of contact info.
7918 (Fmake_network_process): Record local network address for new
7919 client processes in :local property of contact info.
7920 (format-network-address): Add arg OMIT-PORT. Change callers.
7921
7922 2003-01-07 Dave Love <fx@gnu.org>
7923
7924 * Makefile.in (fns.o): Depend on coding.h.
7925
7926 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
7927
7928 * minibuf.c (Fread_variable): Doc fix.
7929
7930 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7931 use the same test as for custom-variable-p.
7932
7933 2003-01-05 Richard M. Stallman <rms@gnu.org>
7934
7935 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7936 Count LAST_LINE_MISFIT in scroll margin for end of window.
7937 Move label too_near_end before setting SCROLL_MARGIN_POS.
7938 Set LAST_LINE_MISFIT before jumping there.
7939
7940 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7941 scroll_conservatively case. If scrolling that much doesn't change
7942 STARTP, move it down one line.
7943
7944 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7945 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7946
7947 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7948 selected frame.
7949
7950 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7951 (syms_of_keymap): staticpro them.
7952 (Fapropos_internal): Initialize them and clear them out.
7953 Don't GCPRO them.
7954
7955 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7956 Doc fixes.
7957
7958 * lisp.h: New misc type Lisp_Save_Value.
7959 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7960 (XSAVE_VALUE): New macro.
7961 (struct Lisp_Save_Value): New data type.
7962 (union Lisp_Misc): Add u_save_value alternative.
7963 (make_save_value): Declared.
7964
7965 * alloc.c (make_save_value): New function.
7966
7967 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7968 (x_catch_errors_unwind): Call XSync.
7969
7970 2003-01-01 Richard M. Stallman <rms@gnu.org>
7971
7972 * window.c (window_scroll_pixel_based): Partially undo last change.
7973
7974 * keyboard.c (command_loop_1): Call adjust_point_for_property
7975 in direct action cases for Qforward_char and Qbackward_char.
7976 Set already_adjusted so it won't be done twice.
7977
7978 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7979
7980 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7981 type definition of size_t.
7982
7983 2003-01-02 Steven Tamm <steventamm@mac.com>
7984
7985 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7986 distinguish Carbon GUI builds from X11 builds on darwin.
7987
7988 2002-12-30 Steven Tamm <steventamm@mac.com>
7989
7990 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7991 to default to t.
7992
7993 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7994
7995 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7996
7997 2002-12-28 Steven Tamm <steventamm@mac.com>
7998
7999 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8000 allow building in a different directory than source. Uses some
8001 GNU Make extensions, but there is no other make on Mac OS X.
8002
8003 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
8004
8005 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8006 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8007 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8008 (Fstring_to_number): Mention the returned value in the doc strings.
8009
8010 2002-12-23 Richard M. Stallman <rms@gnu.org>
8011
8012 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8013 <scroll-down-aggressively>: Doc fix.
8014
8015 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8016 string as pane name, if there is one.
8017 (set_frame_menubar): Save menu_items_n_panes from each call to
8018 parse_single_submenu and use it when calling digest_single_submenu.
8019
8020 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8021 Don't try to make last line fully visible if it is past end of window.
8022
8023 2002-12-22 Steven Tamm <steventamm@mac.com>
8024
8025 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8026 (mac_menu_show): Add support for hierarchical popup menus.
8027 (add_menu_item): Remove indentation support.
8028 (fill_submenu, fill_menu): Create hierarchical menus
8029 instead of using indentation.
8030
8031 2002-12-22 Richard M. Stallman <rms@gnu.org>
8032
8033 * xdisp.c (try_cursor_movement): Don't call try_window here.
8034 (redisplay_window): Never redisplay minibuffer when inactive.
8035
8036 * window.c (select_window_1): Undo 9/21 change.
8037
8038 2002-12-22 Steven Tamm <steventamm@mac.com>
8039
8040 * macterm.c (XTread_socket): Call KeyTranslate for control and
8041 meta to deal correctly shifted non-alpha characters, like C-S-5
8042 being treated like C-%. Does not look for shift key to deal
8043 with masking off control-key with mac-reverse-ctrl-meta.
8044
8045 2002-12-21 Richard M. Stallman <rms@gnu.org>
8046
8047 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8048 If it is non-nil, run timers. Use an unwind-protect to requeue
8049 the events that were read ahead.
8050 (popup_get_selection_unwind): New subroutine.
8051 (popup_get_selection_queue): File-scope variable now holds that queue.
8052 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8053 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8054 Use an unwind-protect to pop down the dialog box.
8055 (xdialog_show_unwind): New subroutine implements that.
8056
8057 * xdisp.c (row_containing_pos): Change exit test using last_y.
8058 (try_window_id): Abort if row_containing_pos returns null.
8059
8060 * lread.c (load_error_handler): New function.
8061 (Fload): Handle errors in Fsubstitute_in_file_name.
8062 Don't expect Fsignal to return.
8063
8064 * eval.c: Errors and throws work right with interrupt blocking.
8065 (struct catchtag): New elt interrupt_input_blocked.
8066 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8067 (internal_catch, Fcondition_case, internal_condition_case)
8068 (internal_condition_case_1, internal_condition_case_2): Save it.
8069 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
8070
8071 * editfns.c (Fformat): Add parens.
8072
8073 * dired.c (file_name_completion): Fix that change.
8074 Delete special quit-handling code; just use QUIT.
8075
8076 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
8077
8078 * dired.c (file_name_completion): Close directory on error
8079 just as in directory_files_internal.
8080
8081 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
8082
8083 * window.c (Fset_window_configuration): Set old_point to correct
8084 value when new_current_buffer == current_buffer.
8085
8086 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
8087
8088 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8089 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8090 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8091
8092 These changes were in part based upon suggestions made by Peter
8093 'Luna' Runestig [peter@runestig.com].
8094
8095 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8096 g_b_init_get_token_information, g_b_init_lookup_account_sid,
8097 g_b_init_get_sid_identifier_authority ): Add several static
8098 global variables.
8099
8100 * w32.c (globals_of_w32): New function. Used to initialize those
8101 global variables that must always be initialized on startup even
8102 when the global variable initialized is non zero. Its primary
8103 purpose at this time is to set the global variables
8104 g_b_init_is_windows_9x, g_b_init_open_process_token,
8105 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8106 g_b_init_get_sid_identifier_authority to 0 on startup.
8107 Called from main.
8108
8109 * w32.c (is_windows_9x): Perform initialization only if
8110 g_b_init_is_windows_9x is equal to 0. On initialization set
8111 g_b_init_is_windows_9x equal to 1.
8112
8113 * w32.c (open_process_token): Perform initialization only if
8114 g_b_init_open_process_token is equal to 0. On initialization set
8115 g_b_init_open_process_token equal to 1.
8116
8117 * w32.c (get_token_information): Perform initialization only if
8118 g_b_init_get_token_information is equal to 0. On initialization
8119 set g_b_init_get_token_information equal to 1.
8120
8121 * w32.c (lookup_account_sid): Perform initialization only if
8122 g_b_init_lookup_account_sid is equal to 0. On initialization
8123 set g_b_init_lookup_account_sid equal to 1.
8124
8125 * w32.c (get_sid_identifier_authority): Perform initialization
8126 only if g_b_init_get_sid_identifier_authority is equal to 0.
8127 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
8128
8129 * w32fns.c (globals_of_w32fns): New function. Used to initialize
8130 those global variables that must always be initialized on startup
8131 even when the global variable initialized is non zero.
8132 Its primary purpose at this time is to initialize the global variable
8133 track_mouse_event_fn.
8134
8135 * w32fns.c (w32_wnd_proc): Remove initialization of
8136 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
8137
8138 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
8139
8140 * w32menu.c (globals_of_w32menu): New function. Used to
8141 initialize those global variables that must always be initialized
8142 on startup even when the global variable initialized is non zero.
8143 Its primary purpose at this time is to initialize the global
8144 variables get_menu_item_info and set_menu_item_info.
8145
8146 * w32menu.c (initialize_frame_menubar): Remove initialization of
8147 get_menu_item_info and set_menu_item_info.
8148
8149 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
8150
8151 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8152 Declare them.
8153
8154 * emacs.c (main): Call globals_of_w32 prior to calling
8155 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8156 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8157 is defined.
8158
8159 * w32term.c (x_update_window_begin): Fix Windows API error
8160 detected by BoundsChecker. Test to determine if
8161 w32_system_caret_hwnd is NULL prior to attempting to use
8162 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
8163
8164 * w32term.c (x_update_window_end): Fix Windows API error
8165 detected by BoundsChecker. Test to determine if
8166 w32_system_caret_hwnd is NULL prior to attempting to use
8167 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
8168
8169 2002-12-17 Kenichi Handa <handa@m17n.org>
8170
8171 * coding.c (coding_system_require_warning): New variable.
8172 (syms_of_coding): DEFVAR it.
8173
8174 * coding.h (coding_system_require_warning): Extern it.
8175
8176 * fileio.c (choose_write_coding_system): Even if
8177 Vcoding_system_for_write is non-nil, if
8178 coding_system_require_warning is nonzero, call
8179 Vselect_safe_coding_system_function.
8180
8181 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
8182
8183 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8184 (lisp): Add font-core.
8185
8186 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
8187
8188 * textprop.c (text_read_only): New arg `propval'.
8189 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8190 (verify_interval_modification): Use text_read_only's new arg.
8191
8192 2002-12-13 Kenichi Handa <handa@m17n.org>
8193
8194 * coding.c (Funencodable_char_position): Set pend correctly.
8195
8196 2002-12-12 Jason Rumney <jasonr@gnu.org>
8197
8198 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8199 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8200 Be more careful about when help_events are generated.
8201
8202 2002-12-12 Steven Tamm <steventamm@mac.com>
8203
8204 * macterm.c (mac_check_for_quit_char): Correctly set the
8205 modifiers of the event to 0.
8206 * mac.c (sys_select): Duplicate rfds before calling select to
8207 ensure that rfds survive the while loop.
8208
8209 2002-12-11 Kim F. Storm <storm@cua.dk>
8210
8211 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8212 row_containing_pos returned NULL.
8213
8214 2002-12-10 Steven Tamm <steventamm@mac.com>
8215
8216 * mac.c (sys_read): Fix sys_read to not call select if IO is
8217 non-blocking.
8218 (sys_select): Fix sys_select to not use a timeout larger than
8219 the one given.
8220
8221 2002-12-10 Juanma Barranquero <lektu@terra.es>
8222
8223 * editfns.c (Fformat): Use alloca, not _alloca.
8224
8225 2002-12-09 Richard M. Stallman <rms@gnu.org>
8226
8227 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8228 as the last thing.
8229
8230 2002-12-09 Dave Love <fx@gnu.org>
8231
8232 * s/sol2-8.h: Removed. (Not necessary.)
8233
8234 2002-12-09 Matthew Swift <swift@alum.mit.edu>
8235
8236 * editfns.c (Fformat): Handle precision in string conversion
8237 specifiers like libc functions do (ie, print at most that many
8238 characters).
8239
8240 2002-12-08 Richard M. Stallman <rms@gnu.org>
8241
8242 * xdisp.c (row_containing_pos): Check more carefully
8243 whether charpos is really in the row before returning it.
8244
8245 2002-12-07 Steven Tamm <steventamm@mac.com>
8246
8247 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
8248
8249 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8250 each stack frame. This may change as it could be time consuming.
8251
8252 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8253 (init_quit_char_handler, mac_determine_quit_char_modifiers)
8254 (mac_initialize): Add code to check for pressing of quit_char
8255 in the OS event queue.
8256
8257 * mac.c (sys_select): Call mac_check_for_quit_char every second
8258 while blocking on select.
8259
8260 * mac.c (sys_read): Use sys_select to test for input first
8261 before calling read, to allow C-g to break.
8262
8263 2002-12-07 Richard M. Stallman <rms@gnu.org>
8264
8265 * minibuf.c (Fcompleting_read): Doc fix.
8266
8267 * lread.c (syms_of_lread) <load-history>: Doc fix.
8268
8269 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
8270
8271 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8272 autoload.
8273
8274 * data.c (Fdefalias): Record in load-history redefining an autoload.
8275
8276 * alloca.c: Undo ifdef change accidentally made on 12-04.
8277
8278 2002-12-06 Francesco Potorti` <pot@gnu.org>
8279
8280 * xfns.c (png_load): Avoid double gamma correction for PNG images.
8281
8282 2002-12-04 Richard M. Stallman <rms@gnu.org>
8283
8284 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
8285
8286 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
8287
8288 * alloca.c: Don't use #error.
8289
8290 2002-12-03 Dave Love <fx@gnu.org>
8291
8292 * buffer.c (Qucs_set_table_for_input): New.
8293 (Fget_buffer_create): Use it.
8294 (Qset_buffer_major_mode_hook): Deleted.
8295 (Fset_buffer_major_mode): Revert previous change.
8296 (init_buffer_once): Intern ucs-set-table-for-input.
8297 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8298 Add &Qucs_set_table_for_input.
8299
8300 2002-12-03 Andreas Schwab <schwab@suse.de>
8301
8302 * callint.c (Fcall_interactively): Use next_event only if less
8303 than key_count.
8304
8305 2002-12-02 Andrew Choi <akochoi@shaw.ca>
8306
8307 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8308 names to 255 characters.
8309
8310 * macterm.c (XTread_socket): If all frames have been collapsed,
8311 expand the first one before handling drag-and-drop events.
8312
8313 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8314 which is detected by autoconf.
8315
8316 2002-12-01 Steven Tamm <steventamm@mac.com>
8317
8318 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8319 offset in two hints table to allow prebinding to be redone and
8320 allow the executable to be stripped.
8321
8322 2002-11-29 Dave Love <fx@gnu.org>
8323
8324 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8325 already provided.
8326
8327 2002-11-29 Richard M. Stallman <rms@gnu.org>
8328
8329 * xdisp.c (start_display): Check more intelligently for
8330 whether the line is continued.
8331 (move_it_vertically_backward): Clear it->continuation_lines_width.
8332
8333 2002-11-28 Dave Love <fx@gnu.org>
8334
8335 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8336 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
8337
8338 2002-11-27 Steven Tamm <steventamm@mac.com>
8339
8340 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8341 more descriptive error output from lread.c:Fload upon most require
8342 cycles during boostrapping.
8343
8344 2002-11-27 Jason Rumney <jasonr@gnu.org>
8345
8346 * fileio.c (Finsert_file_contents): Give a more appropriate error
8347 for files bigger than 2Gb when off_t is 32 bit.
8348
8349 * dired.c (Ffile_attributes): Don't return negative file sizes for
8350 files bigger than 2Gb when off_t is 32 bit.
8351
8352 2002-11-27 Dave Love <fx@gnu.org>
8353
8354 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8355
8356 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8357 Test GETPGRP_VOID instead.
8358 [BSD_TERMIOS]: Remove definitions (never used).
8359
8360 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8361 Don't define.
8362 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8363
8364 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8365
8366 2002-11-25 Jason Rumney <jasonr@gnu.org>
8367
8368 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8369 supported.
8370
8371 2002-11-25 Dave Love <fx@gnu.org>
8372
8373 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
8374
8375 * Makefile.in (TEMACS_LDFLAGS): Update last change.
8376
8377 2002-11-25 Andreas Schwab <schwab@suse.de>
8378
8379 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
8380
8381 2002-11-24 Steven Tamm <steventamm@mac.com>
8382
8383 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8384 determine the size of pointers alloced in unexed space instead
8385 of using possibly invalid emacs_zone pointers. This fixes the
8386 binary incompatibility problems caused by updates to libSystem.B.
8387
8388 2002-11-24 Richard M. Stallman <rms@gnu.org>
8389
8390 * search.c (Fstring_match): Doc fix.
8391
8392 * callint.c (Fcall_interactively): If a command fails because
8393 `*' detects a read-only buffer, but RECORD_FLAG is set,
8394 record it anyway if the args don't actually do tty input.
8395
8396 2002-11-22 Dave Love <fx@gnu.org>
8397
8398 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
8399
8400 * keyboard.c (interrupt_signal): Provide forward declaration.
8401 (kbd_buffer_store_event): Don't declare interrupt_signal.
8402
8403 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
8404
8405 2002-11-21 Richard M. Stallman <rms@gnu.org>
8406
8407 * eval.c (interactive_p): Skip any number of bytecode
8408 and special form frames, in any order.
8409
8410 2002-11-20 Jason Rumney <jasonr@gnu.org>
8411
8412 * w32fns.c (convert_mono_to_color_image): New function.
8413 (xbm_load, xbm_load_image): Use it when foreground or background
8414 is explicitly set.
8415
8416 2002-11-19 Dave Love <fx@gnu.org>
8417
8418 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
8419
8420 2002-11-18 Jason Rumney <jasonr@gnu.org>
8421
8422 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8423 (XPutPixel): Swap blue and red.
8424 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8425 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8426 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8427 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
8428
8429 2002-11-18 Dave Love <fx@gnu.org>
8430
8431 * m/orion105.h (HAVE_ALLOCA): Don't define.
8432
8433 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
8434
8435 * m/intel386.h: Don't include alloca.h or define alloca.
8436
8437 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8438 malloc, realloc, calloc.
8439
8440 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8441 (bcmp): Don't define.
8442
8443 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
8444
8445 * m/amdahl.h: Don't define LIB_STANDARD.
8446
8447 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
8448
8449 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
8450
8451 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8452 Don't include alloca.h.
8453
8454 * s/aix3-2.h (HAVE_FSYNC): Don't define.
8455
8456 * regex.c (_GNU_SOURCE): Don't define.
8457
8458 * process.c (_GNU_SOURCE): Don't define.
8459
8460 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8461
8462 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
8463
8464 * s/sol2-8.h: Include sol2-6.h.
8465
8466 2002-11-18 Miles Bader <miles@gnu.org>
8467
8468 * dispextern.h (struct face): Add `overstrike' field.
8469 * xterm.c (x_draw_glyph_string_foreground)
8470 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8471 * xfaces.c (load_face_font): Set `face->overstrike' based on
8472 result from choose_face_font.
8473 (best_matching_font, choose_face_font): Add `needs_overstrike'
8474 argument, and use it to return whether overstriking is desirable
8475 for this face/font combo.
8476 (set_font_frame_param: Pass new argument to choose_face_font.
8477
8478 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8479
8480 This change is my fix for the following entry in etc/PROBLEMS:
8481 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8482 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8483
8484 * w32.c: Added wrapper functions around the win32 API functions
8485 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8486 GetSidIdentifierAuthority. These wrapper functions serve two
8487 purposes:
8488 1. They ensure that the wrapped function can never be called
8489 when Emacs is running on an operating system on which they are
8490 not supported (Microsoft Windows 95 / 98 / ME).
8491 2. They call the wrapped functions via function pointers rather
8492 than calling them directly. This avoids taking advantage of the
8493 undocumented fact that although these functions are not supported
8494 in the 9x branch of Microsoft Windows, the functions do exist in
8495 the version of advapi32.dll that is found in the 9x branch of
8496 Microsoft Windows.
8497
8498 * w32.c (init_user_info): Replace the calls to the win32 API
8499 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8500 and GetSidIdentifierAuthority with calls to the newly added
8501 wrapper functions.
8502
8503 * w32.h: Added extern declarations for the following functions:
8504 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8505 syms_of_w32menu, and void syms_of_fontset.
8506
8507 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
8508 function pointer track_mouse_event_fn in the handler for the
8509 WM_SETFOCUS message.
8510
8511 * w32menu.c (initialize_frame_menubar): Add code to
8512 reinitialize the function pointers set_menu_item_info and
8513 get_menu_item_info.
8514
8515 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8516
8517 * sound.c: Added a partial implementation of play-sound-internal
8518 for Microsoft Windows. Added various #ifdef / #else / #endif
8519 code blocks to separate the code that will compile under
8520 Microsoft Windows from the code that is specific to Gnu/Linux.
8521 Moved several blocks of code around to make this separation of code
8522 into Windows compatible and Gnu/Linux compatible code blocks easier.
8523
8524 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8525
8526 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8527 added support for play-sound-internal under Windows would be
8528 included in the build of Emacs.
8529
8530 2002-11-16 Jason Rumney <jasonr@gnu.org>
8531
8532 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
8533
8534 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
8535
8536 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
8537
8538 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8539 (adjust_point_for_property): Move out of display and invisible even if
8540 we were already inside before (in case a property was added while
8541 we weren't looking). Be more careful when handling invisible props.
8542 Skip invisible text as if it really wasn't there at all.
8543
8544 2002-11-15 Jason Rumney <jasonr@gnu.org>
8545
8546 * w32term.c (x_draw_image_foreground)
8547 (w32_draw_image_foreground_1): Use standard copy and invert
8548 operations to draw images.
8549
8550 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8551 depth of 1.
8552 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8553 (XPutPixel): Don't invert bits here.
8554
8555 2002-11-15 Jason Rumney <jasonr@gnu.org>
8556
8557 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8558 (w32_draw_image_foreground_1): Handle image masks.
8559 (x_draw_image_glyph_string): Don't BitBlt transparently.
8560
8561 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8562 (x_from_xcolors): Adjust RGB values for W32.
8563 (image_background, image_background_transparent)
8564 (postprocess_image, x_to_xcolors, x_disable_image)
8565 (x_build_heuristic_mask): Adapt for W32 and enable.
8566 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8567 (xbm_load): Remove unused variable.
8568
8569 2002-11-14 Richard M. Stallman <rms@gnu.org>
8570
8571 * buffer.c (syms_of_buffer): Doc fix.
8572
8573 2002-11-14 Dave Love <fx@gnu.org>
8574
8575 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
8576
8577 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8578 * xmenu.c (unuse_menu_items, digest_single_submenu):
8579 * xfns.c (x_put_x_image):
8580 * xdisp.c (message2_nolog, set_message):
8581 * undo.c (record_point):
8582 * terminfo.c (tparam):
8583 * syntax.c (scan_sexps_forward):
8584 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8585 * composite.c (update_compositions):
8586 * cm.c (calccost, cmgoto):
8587 * charset.c (c_string_width): Declare all args (per C99).
8588
8589 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
8590
8591 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8592 Don't declare.
8593
8594 * emacs.c (main) [!VMS]: Avoid third arg.
8595
8596 * fns.c (Fcopy_sequence): Doc fix.
8597 (Fmap_char_table): Cast `call2'.
8598
8599 2002-11-14 Francesco Potorti` <pot@gnu.org>
8600
8601 * s/sol2-8.h: New file.
8602
8603 2002-11-14 Kim F. Storm <storm@cua.dk>
8604
8605 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8606 dependency on `risky-local-variable' and the :propertize form.
8607
8608 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8609
8610 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8611
8612 * syntax.c (scan_sexps_forward): Undo last patch.
8613 Use a more obvious fix: check eob before updating the syntax table.
8614
8615 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8616
8617 * syntax.c (scan_sexps_forward): Update syntax table before reading
8618 a char rather than after so we don't update the table past eob.
8619
8620 2002-11-09 Dave Love <fx@gnu.org>
8621
8622 * buffer.c (Fset_buffer_major_mode): Fix last change.
8623
8624 * regex.c (regexec): Fix pmatch declaration.
8625
8626 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8627
8628 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8629 to self-inserting characters.
8630 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8631
8632 * coding.c (Vtranslation_table_for_input): New.
8633 (syms_of_coding): DEFVAR it.
8634
8635 2002-11-08 Juanma Barranquero <lektu@terra.es>
8636
8637 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8638 window.
8639
8640 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8641
8642 * process.c (Fformat_network_address): Remove unused locals p,
8643 cp, and i.
8644
8645 2002-11-06 Dave Love <fx@gnu.org>
8646
8647 * buffer.c (Qset_buffer_major_mode_hook): New.
8648 (Fset_buffer_major_mode): Use it.
8649
8650 2002-11-06 Richard M. Stallman <rms@gnu.org>
8651
8652 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8653 and stop_polling.
8654
8655 * process.c (wait_reading_process_input):
8656 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8657 Avoid initialization for auto Lisp_Object var.
8658
8659 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8660
8661 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8662
8663 2002-11-05 Richard M. Stallman <rms@gnu.org>
8664
8665 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8666
8667 * callint.c (Fcall_interactively): New local filter_specs.
8668 (Fcall_interactively): Check for progn as well as let.
8669 Add a gcpro.
8670 (Qprogn): New variable.
8671 (syms_of_callint): Staticpro and init Qprogn.
8672
8673 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8674
8675 * lread.c (Feval_buffer): Doc fix.
8676
8677 2002-11-04 Dave Love <fx@gnu.org>
8678
8679 * keyboard.c (read_char): Always translate iff
8680 Vkeyboard_translate_table is a char table and c is valid.
8681
8682 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8683 and fix C types.
8684
8685 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8686
8687 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8688
8689 * editfns.c (get_pos_property): Don't hardcode Qfield.
8690
8691 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8692 overlays. Also handle `invisible' prop.
8693
8694 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8695
8696 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8697 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8698
8699 2002-11-01 Andreas Schwab <schwab@suse.de>
8700
8701 * editfns.c (Fmessage): Revert last change to properly handle %%.
8702
8703 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8704
8705 * xmenu.c (unuse_menu_items): New fun.
8706 (menu_items_inuse): New var.
8707 (syms_of_xmenu): Initialize it.
8708 (init_menu_items): Use it to detect re-entrance.
8709 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8710 (Fx_popup_menu): Remove spurious XSETFRAME.
8711
8712 * editfns.c (find_field): Make an exception for nil fields.
8713
8714 2002-11-01 Dave Love <fx@gnu.org>
8715
8716 * m/gec63.h: Deleted.
8717
8718 2002-10-31 Dave Love <fx@gnu.org>
8719
8720 * xterm.c (XTread_socket): Fix last change.
8721 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8722
8723 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8724
8725 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8726
8727 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8728
8729 * editfns.c (overlays_around, get_pos_property): New funs.
8730 (find_field): Use them.
8731 Also be careful not to modify POS before its last use.
8732 (Fmessage): Don't Fformat if there's nothing to format.
8733
8734 2002-10-30 Dave Love <fx@gnu.org>
8735
8736 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8737 [HAVE_PTY_H]; Include pty.h.
8738
8739 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8740
8741 * xterm.c (Qeql): Declare.
8742 (Vx_keysym_table): New.
8743 (syms_of_xterm): Initialize it.
8744 (XTread_socket): Use it. Deal with ASCII keysyms.
8745 (XSetIMValues) [HAVE_X11R6]: Prototype.
8746
8747 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8748 (lispy_kana_keys): Comment out.
8749 (make_lispy_event) [XK_kana_A]: Comment out.
8750 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8751 Fix sprintf call.
8752
8753 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8754 regexp.h change).
8755 (TERMINFO, LIBS_TERMCAP): Define.
8756
8757 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8758 (bcmp): Define conditional on HAVE_BCMP.
8759 (NO_SIOCTL_H): Don't define.
8760 (TIOCSIGSEND): Don't make conditional on IRIX6.
8761
8762 * s/sol2-5.h: Don't include strings.h.
8763 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8764
8765 * s/irix6-0.h (IRIX6): Don't define.
8766 (bcopy, bcmp, bzero): Don't undef.
8767
8768 * s/irix6-5.h: Don't include strings.h.
8769 (IRIX6): Don't define.
8770 (bcopy, bcmp, bzero): Don't undef.
8771
8772 * syntax.c (Fforward_comment): Doc fix.
8773
8774 2002-10-29 Kim F. Storm <storm@cua.dk>
8775
8776 * process.c (Fsignal_process): Allow PROCESS to be specified by
8777 name in addition to pid (as integer or string).
8778
8779 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8780
8781 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8782 environments.
8783
8784 2002-10-27 Kim F. Storm <storm@cua.dk>
8785
8786 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8787
8788 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8789
8790 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8791
8792 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8793
8794 2002-10-26 Richard M. Stallman <rms@gnu.org>
8795
8796 * editfns.c (Fformat): Detect invalid format letters for floats.
8797
8798 2002-10-25 Kenichi Handa <handa@m17n.org>
8799
8800 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8801 (x_set_title): Likewise.
8802
8803 2002-10-25 Juanma Barranquero <lektu@terra.es>
8804
8805 * macgui.h:
8806 * w32gui.h: Remove definition of XColor.
8807
8808 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8809
8810 2002-10-24 Kim F. Storm <storm@cua.dk>
8811
8812 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8813 Callers changed (supply dummy arg).
8814
8815 * lisp.h (get_window_cursor_type): Update prototype.
8816
8817 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8818 get_window_cursor_type to track system caret.
8819
8820 2002-10-24 Kim F. Storm <storm@cua.dk>
8821
8822 * process.c (Fformat_network_address): New function.
8823 (syms_of_process): Defsubr it.
8824 (list_processes_1): Use it to format :local/:remote address if
8825 service/host is not set; before Emacs would crash in that case.
8826 (Fmake_network_process): Don't use Ffind_operation_coding_system
8827 to setup coding system if host or service is not set.
8828
8829 2002-10-23 Juanma Barranquero <lektu@terra.es>
8830
8831 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8832
8833 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8834 COLORREF.
8835
8836 * macgui.h:
8837 * w32gui.h: Add definition of XColor.
8838
8839 * macfns.c:
8840 * w32fns.c:
8841 * xfaces.c: Remove definition of XColor.
8842
8843 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8844
8845 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8846
8847 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8848 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8849 window if it is dedicated.
8850 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8851 (Vspecial_display_function): Update docstring.
8852
8853 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8854 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8855 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8856
8857 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8858
8859 * casefiddle.c (casify_region): Don't treat a prefix char as part
8860 of a word when at the beginning.
8861
8862 2002-10-17 Juanma Barranquero <lektu@terra.es>
8863
8864 * lread.c (syms_of_lread): Fix typos.
8865
8866 2002-10-17 Dave Love <fx@gnu.org>
8867
8868 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8869
8870 2002-10-16 Richard M. Stallman <rms@gnu.org>
8871
8872 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8873
8874 2002-10-14 Juanma Barranquero <lektu@terra.es>
8875
8876 * w16select.c (syms_of_win16select): Fix docstring for
8877 `selection-coding-system'.
8878
8879 * w32select.c (syms_of_w32select): Likewise.
8880
8881 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8882
8883 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8884 a backslash-quoted char.
8885 (scan_lists, scan_sexps_forward): Pacify the compiler.
8886
8887 2002-10-13 Richard M. Stallman <rms@gnu.org>
8888
8889 * window.c (window_scroll): Set immediate_quit.
8890
8891 * print.c (print): When backquote form is the car of a list,
8892 output in old style. Use old_backquote_output to output all
8893 comma forms inside it in old style too.
8894
8895 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8896
8897 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
8898
8899 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8900 batch mode).
8901
8902 * lread.c (Fload): Doc fix (load-suffixes).
8903
8904 2002-10-10 Steven Tamm <steventamm@mac.com>
8905
8906 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8907 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8908 Also switch the default to Qnil from Qt.
8909
8910 2002-10-08 Kenichi Handa <handa@m17n.org>
8911
8912 * coding.c (code_convert_region): When we need more GAP for
8913 conversion, pay attention to the case that coding->produced is not
8914 greater than coding->consumed.
8915
8916 2002-10-07 Richard M. Stallman <rms@gnu.org>
8917
8918 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8919
8920 2002-10-06 Andrew Choi <akochoi@shaw.ca>
8921
8922 * macmenu.c (mac_menu_show): Add j to count menu items; match
8923 menu_item_selection to it to find selected item.
8924
8925 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8926
8927 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8928 cases. The correct fix is to pass ReparentNotify to Xt.
8929 The shell widget interprets ConfigureNotify differently depending
8930 on if it has been reparented or not.
8931
8932 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
8933
8934 * editfns.c (Fformat_time_string): Doc fix.
8935
8936 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8937
8938 * fns.c (Flength): Doc fix.
8939
8940 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8941
8942 * keyboard.c (keyremap): New struct.
8943 (read_key_sequence): Use it: globally replace keytran_foo with
8944 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8945 keytran_next and fkey_next to just `next'.
8946
8947 2002-10-04 Steven Tamm <steventamm@mac.com>
8948
8949 * macterm.c (keycode_to_xkeysym_table): Change return to be
8950 treated like an X keysym.
8951
8952 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8953
8954 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8955 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8956 This is to also handle x/y changes that occur because of a resize.
8957
8958 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8959
8960 * frame.c (Vdelete_frame_functions): New variable.
8961 (syms_of_frame): Initialize and defvar it.
8962 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8963 it when frame's `tooltip' parameter is non-nil.
8964
8965 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8966
8967 * w32fns.c (x_create_tip_frame): Likewise.
8968
8969 * macfns.c (x_create_tip_frame): Likewise.
8970
8971 2002-09-30 Kenichi Handa <handa@m17n.org>
8972
8973 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8974 -1 before calling ccl_driver.
8975
8976 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8977 Only when it is non-nil, handle composition sequence.
8978 (setup_coding_system) <0>: Don't force composition handling.
8979
8980 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8981
8982 2002-09-29 Richard M. Stallman <rms@gnu.org>
8983
8984 * search.c (Freplace_match): Adjust match data for the substitution
8985 just made in the buffer.
8986
8987 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8988 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8989
8990 2002-09-27 Richard M. Stallman <rms@gnu.org>
8991
8992 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8993 (read_char): Use them. Do all exits thru the end of the function.
8994
8995 2002-09-27 Kenichi Handa <handa@etl.go.jp>
8996
8997 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8998 is nil.
8999
9000 2002-09-26 Richard M. Stallman <rms@gnu.org>
9001
9002 * regex.h (__restrict_arr): Don't define if already defined.
9003
9004 * coding.c (run_pre_post_conversion_on_str):
9005 Save and restore Vdeactivate_mark.
9006
9007 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9008
9009 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9010
9011 2002-09-26 Kenichi Handa <handa@etl.go.jp>
9012
9013 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9014 nonzero, try face's family at first. Otherwise try FAMILY at first.
9015 (choose_face_font): If C is a single byte char or latin-1, call
9016 try_font_list with PREFER_FACE_FAMILY 1.
9017
9018 2002-09-21 Richard M. Stallman <rms@gnu.org>
9019
9020 * window.c (select_window_1): Don't select frame.
9021 Set frame's selected window only when frame itself is selected.
9022 (Fselect_window): Doc fix.
9023
9024 2002-09-18 Kim F. Storm <storm@cua.dk>
9025
9026 * process.c (make-network-process): Doc fix (there is no
9027 network-server-log-function hook).
9028
9029 2002-09-18 Richard M. Stallman <rms@gnu.org>
9030
9031 * print.c (print): Clear out the unused parts of Vprint_number_table.
9032 (syms_of_print): Doc fix for `print-number-table'.
9033
9034 * unexelf.c (unexec): Undo previous change.
9035
9036 2002-09-17 Andreas Schwab <schwab@suse.de>
9037
9038 * m/alpha.h [LINUX]: Don't define DATA_START.
9039
9040 2002-09-16 Dave Love <fx@gnu.org>
9041
9042 * unexelf.c (unexec): Deal with .got, reinstating change from
9043 25-08-1999.
9044
9045 2002-09-13 Richard M. Stallman <rms@gnu.org>
9046
9047 * s/sol2-6.h (UNEXEC): Comment out definition.
9048
9049 * unexsol.c (unexec): Don't downcase first letter of error msg.
9050
9051 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9052
9053 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
9054
9055 * unexsol.c: Include buffer.h, charset.h, coding.h.
9056
9057 2002-09-11 Richard M. Stallman <rms@gnu.org>
9058
9059 * unexsol.c: Don't use report_file_error; do it by hand
9060 using dlerror.
9061
9062 * process.c (wait_reading_process_input, both versions):
9063 Before calling turn_on_atimers, call stop_polling.
9064
9065 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9066
9067 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9068 we go to too_near_end, call clear_glyph_matrix.
9069 (redisplay_window): After make_cursor_line_fully_visible,
9070 call clear_glyph_matrix and bypass `goto done'.
9071
9072 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9073 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9074
9075 2002-09-10 Richard M. Stallman <rms@gnu.org>
9076
9077 * fileio.c (Fdo_auto_save): Catch error making directory.
9078 Only call push_message if we need to.
9079 At the same time, make an unwind-protect to pop it.
9080 Rename local message_p to old_message_p.
9081 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9082 (do_auto_save_unwind): Don't call pop_message.
9083
9084 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9085
9086 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9087
9088 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9089
9090 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9091
9092 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9093
9094 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9095 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9096 (re_match_2_internal): Be more careful with infinite loops.
9097
9098 2002-09-10 Kim F. Storm <storm@cua.dk>
9099
9100 * macros.c (end_kbd_macro): New function.
9101 (Fend_kbd_macro): Use it.
9102
9103 * macros.h (end_kbd_macro): Declare extern.
9104
9105 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9106 end and save it instead of discarding it.
9107
9108 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
9109
9110 * s/sol2-6.h: Fix typo. Add comment.
9111
9112 2002-09-09 Richard M. Stallman <rms@gnu.org>
9113
9114 * regex.c (regnum_t): Use signed int, not unsigned int.
9115
9116 * s/sol2-6.h: New file.
9117
9118 * s/sol2-5.h (UNEXEC): Definition deleted.
9119
9120 2002-09-08 Kim F. Storm <storm@cua.dk>
9121
9122 * macros.c (executing_macro_index): Change type to EMACS_INT.
9123 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9124
9125 * macros.h (executing_macro_index): Change type to EMACS_INT.
9126
9127 2002-09-06 Richard M. Stallman <rms@gnu.org>
9128
9129 * casetab.c (set_case_table): Make canon table point to eqv table.
9130
9131 2002-09-06 Juanma Barranquero <lektu@terra.es>
9132
9133 * coding.c (syms_of_coding): Fix spacing.
9134
9135 * composite.c (Fcompose_region_internal)
9136 (Fcompose_string_internal): Likewise.
9137
9138 * data.c (Flsh): Likewise.
9139
9140 * fontset.c (Fset_fontset_font): Likewise.
9141
9142 * macfns.c (Fx_server_max_request_size): Likewise.
9143
9144 * w16select.c (syms_of_win16select): Likewise.
9145
9146 * w32select.c (syms_of_w32select): Likewise.
9147
9148 * xselect.c (syms_of_xselect): Likewise.
9149
9150 2002-09-05 Richard M. Stallman <rms@gnu.org>
9151
9152 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9153 call EXTEND_RANGE_TABLE and return a proper value.
9154 (set_image_of_range): Don't call set_image_of_range_1
9155 if no TRANSLATE or if range includes all of Latin-1.
9156 Only call it for the Latin-1 part of the range.
9157 For other cases, make two separate ranges,
9158 one for the original specified characters and one for
9159 their case-conversions.
9160
9161 2002-09-04 Richard M. Stallman <rms@gnu.org>
9162
9163 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9164
9165 * window.c (displayed_window_lines): Correct for one-off bug
9166 in HEIGHT on non-window displays.
9167
9168 * regex.c (set_image_of_range_1): New function.
9169 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9170 Return a value to indicate running out of memory.
9171 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9172 (extend_range_table_work_area): New subroutine.
9173 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9174 Different calling conventions, and used from set_image_of_range{,_1}.
9175 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9176
9177 2002-09-04 Juanma Barranquero <lektu@terra.es>
9178
9179 * makefile.w32-in: All dependencies updated.
9180
9181 2002-09-01 Richard M. Stallman <rms@gnu.org>
9182
9183 * unexsol.c: New file.
9184
9185 * xfns.c (Qbox): Declare external, don't define.
9186
9187 * xdisp.c (redisplay_window) <force-start case>:
9188 If point is on semi-visible last line, reposition
9189 it at previous line.
9190
9191 * alloc.c (display_malloc_warning): Use display-warning.
9192 (malloc_warning_1): Function deleted.
9193
9194 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9195
9196 * lread.c (read1): Handle #! by skipping the line.
9197
9198 2002-08-31 Richard M. Stallman <rms@gnu.org>
9199
9200 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9201 Don't include LDFLAGS.
9202 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9203
9204 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9205
9206 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9207 member of x_display_info unless we compile for some window system.
9208
9209 2002-08-31 Kim F. Storm <storm@cua.dk>
9210
9211 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9212 (get_window_cursor_type): Don't use them.
9213 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9214
9215 2002-08-30 Kenichi Handa <handa@etl.go.jp>
9216
9217 * xdisp.c (get_next_display_element): Fix previous change.
9218
9219 2002-08-30 Andrew Choi <akochoi@shaw.ca>
9220
9221 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9222 (expose_window): Use it to fix the display of overlapping
9223 rows (merge code from xterm.c).
9224
9225 * macfns.c (Qbox): Add extern declaration.
9226
9227 2002-08-30 Juanma Barranquero <lektu@terra.es>
9228
9229 * w32fns.c (Qbox): Make extern.
9230 (syms_of_w32fns): Remove initialization of Qbox.
9231
9232 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9233
9234 * xfns.c (Fx_open_connection): Fix error message.
9235
9236 2002-08-30 Kim F. Storm <storm@cua.dk>
9237
9238 The following changes consolidates the handling of the cursor
9239 type in xdisp.c, moving duplicate code and functionality from
9240 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9241
9242 * frame.h (enum text_cursor_kinds): Consolidated here.
9243 Added DEFAULT_CURSOR value.
9244 (struct frame) <desired_cursor, cursor_width>
9245 <blink_off_cursor, blink_off_cursor_width>: New fields.
9246 Consolidated from output_x, output_w32 and output_mac structs.
9247 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9248 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9249
9250 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9251 Variables consolidated here.
9252 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9253 (Vcursor_in_non_selected_windows): Renamed from
9254 cursor_in_non_selected_windows and changed to Lisp_Object.
9255 (syms_of_xdisp): Define and staticpro new and moved variables.
9256 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9257 consolidated here. Recognize Qhollow setting.
9258 (set_frame_cursor_types): New function to set frame cursor types
9259 based on the frame parameters.
9260 (get_window_cursor_type): New function to calculate new cursor
9261 type and width for the specified window. Based on duplicated
9262 code consolidated here.
9263 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9264 check buffer-local alternate-cursor-type and blink-cursor-alist
9265 before using built-in blink off methods.
9266
9267 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9268
9269 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9270 (get_specified_cursor_type, get_window_cursor_type)
9271 (set_frame_cursor_types): Added prototypes.
9272
9273 * macfns.c (x_specified_cursor_type): Removed.
9274 (x_set_cursor_type): Use set_frame_cursor_types.
9275 (Qbar, Qbox): Removed.
9276 (syms_of_macfns): Don't intern or staticpro them.
9277
9278 * macterm.c (x_specified_cursor_type): Remove prototype.
9279 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9280 (x_display_and_set_cursor): Use get_window_cursor_type.
9281 Remove unused local variables cursor_non_selected, active_cursor.
9282 Redraw cursor if hbar cursor width changes.
9283 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9284
9285 * macterm.h (enum text_cursor_kinds): Removed.
9286 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9287 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9288 (FRAME_DESIRED_CURSOR): Macro removed.
9289
9290 * w32fns.c (Vblink_cursor_alist): Removed.
9291 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9292 (syms_of_w32fns): Don't intern, staticpro, or define them.
9293 (x_specified_cursor_type): Removed.
9294 (x_set_cursor_type): Use set_frame_cursor_types.
9295
9296 * w32term.c (x_specified_cursor_type): Remove prototype.
9297 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9298 (x_display_and_set_cursor): Use get_window_cursor_type.
9299 Remove unused local variables cursor_off_state.
9300 Redraw cursor if hbar cursor width changes.
9301 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9302
9303 * w32term.h (enum text_cursor_kinds): Removed.
9304 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9305 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9306 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9307 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9308 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9309 w32_highlight_frame.
9310
9311 * xfns.c (Vblink_cursor_alist): Removed.
9312 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9313 (syms_of_xfns): Don't intern, staticpro, or define them.
9314 (x_specified_cursor_type): Removed.
9315 (x_set_cursor_type): Use set_frame_cursor_types.
9316
9317 * xterm.c (x_specified_cursor_type): Remove prototype.
9318 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9319 (x_display_and_set_cursor): Use get_window_cursor_type.
9320 Remove unused local variables cursor_off_state.
9321 Redraw cursor if hbar cursor width changes.
9322
9323 * xterm.h (enum text_cursor_kinds): Removed.
9324 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9325 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9326 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9327 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9328 (x_specified_cursor_type): Remove prototype.
9329
9330 2002-08-28 Richard M. Stallman <rms@gnu.org>
9331
9332 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9333 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9334 (Vblink_cursor_alist): New variable.
9335 (syms_of_w32fns): Initialize and defvar it.
9336 (x_specified_cursor_type): Recognize Qbox for filled box.
9337 Exceptions are hollow boxes.
9338 (Qbox, Qhollow): New variables.
9339 (syms_of_w32fns): Initialize and staticpro them.
9340
9341 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9342 New macros.
9343 (struct w32_output): New fields blink_off_cursor,
9344 blink_off_cursor_width.
9345 (FRAME_CURSOR_WIDTH): New macro.
9346
9347 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9348 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9349
9350 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9351 for bar cursor.
9352
9353 * w32term.c (expose_overlaps): New function.
9354 (expose_window): Use it to fix the display of overlapping rows.
9355
9356 2002-08-28 Simon Josefsson <jas@extundo.com>
9357
9358 * xfns.c (Fx_open_connection): Improve help when X connection
9359 fails, xhost is insecure and xauth is better.
9360
9361 2002-08-28 Juanma Barranquero <lektu@terra.es>
9362
9363 * makefile.w32-in: Add missing dependencies on w32term.h and
9364 composite.h.
9365
9366 * emacs.c (USAGE1): Add missing newline.
9367
9368 2002-08-27 Andrew Choi <akochoi@shaw.ca>
9369
9370 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9371
9372 2002-08-27 Richard M. Stallman <rms@gnu.org>
9373
9374 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9375 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9376 (Vblink_cursor_alist): New variable.
9377 (syms_of_xfns): Initialize and defvar it.
9378 (x_specified_cursor_type): Recognize Qbox for filled box.
9379 Exceptions are hollow boxes.
9380 (Qbox, Qhollow): New variables.
9381 (syms_of_xfns): Initialize and staticpro them.
9382
9383 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9384 New macros.
9385 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9386
9387 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9388 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9389
9390 * emacs.c (main): Handle --script.
9391 (USAGE1): Mention --script.
9392 (standard_args): Define sort order for --script.
9393
9394 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9395
9396 * xdisp.c (redisplay_updating_p): Variable removed.
9397 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9398 New variables.
9399 (init_iterator): Don't free realized faces if
9400 inhibit_free_realized_faces is set.
9401 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9402 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9403 initialize Qinhibit_free_realized_faces.
9404
9405 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9406 when iterator is adding glyphs to a glyph matrix.
9407
9408 2002-08-27 Kenichi Handa <handa@etl.go.jp>
9409
9410 * xdisp.c (get_next_display_element): In unibyte case, don't use
9411 octal form for such eight-bit characters that can be converted to
9412 multibyte char.
9413
9414 2002-08-26 Kim F. Storm <storm@cua.dk>
9415
9416 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9417 and background colors. From Joe Buehler (tiny change).
9418
9419 2002-08-26 Miles Bader <miles@gnu.org>
9420
9421 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9422
9423 2002-08-25 Andrew Choi <akochoi@shaw.ca>
9424
9425 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9426 defined instead of MAC_OSX.
9427
9428 * s/darwin.h (select): Define select to sys_select only if
9429 HAVE_CARBON is defined.
9430 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9431 (DONT_REOPEN_PTY): #def it.
9432
9433 * macterm.c (XTread_socket): Remove code to call
9434 SendEventToEventTarget for keys with command modifiers when
9435 mac_command_key_is_meta is nil.
9436
9437 2002-08-24 Andreas Schwab <schwab@suse.de>
9438
9439 * eval.c (Fdefvar): Fix last change.
9440
9441 2002-08-23 Richard M. Stallman <rms@gnu.org>
9442
9443 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9444 Record variables in load history as (defvar . VAR).
9445 (Fdefvar): Don't record in load history if no initial value.
9446 (Qdefvar): New variable.
9447 (syms_of_eval): Init and staticpro it.
9448
9449 * lread.c (syms_of_lread): Doc fix.
9450 (build_load_history): Use Fmember to see if a definition
9451 is already in the Vload_history element.
9452
9453 * process.c (Fstart_process): Remove /: from program name.
9454
9455 * emacs.c (decode_env_path): Don't add /: if file name handler
9456 has a `safe-magic' property.
9457
9458 * callproc.c (Fcall_process): Remove /: from program name.
9459
9460 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9461
9462 * regex.c (PATFETCH): Remove the translating fetch.
9463 (PATFETCH_RAW): Rename to PATFETCH.
9464 (set_image_of_range): New fun.
9465 (SET_RANGE_TABLE_WORK_AREA): Use it.
9466 (regex_compile): Don't translate the pattern chars so eagerly.
9467 Only do it when inserting an `exactn' bytecode or when handling
9468 a char-range.
9469 (mutually_exclusive_p): Avoid empty statement.
9470
9471 2002-08-22 Kim F. Storm <storm@cua.dk>
9472
9473 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9474 end up on a partially visible line; this reverts a specific part
9475 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9476 display error which has been reported several times now.
9477 However it introduces the problem that changes was supposed to fix.
9478 See my comments in the source if you want to debug this further.
9479
9480 2002-08-20 Kenichi Handa <handa@etl.go.jp>
9481
9482 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9483
9484 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9485
9486 * msdos.c (croak): Add `void' to definition.
9487
9488 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
9489 Don't define them, they are defined in msdos.c.
9490
9491 * mem-limits.h [MSDOS]: Declare etext.
9492
9493 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9494 `const' since CORRECT_DIR_SEPS modifies its target.
9495
9496 2002-08-19 Kim F. Storm <storm@cua.dk>
9497
9498 * keyboard.c (Fclear_this_command_keys): Add optional arg
9499 KEEP-RECORD to avoid clearing lossage when we just want to clear
9500 the current key sequence (kmacro needs this).
9501
9502 2002-08-19 Kenichi Handa <handa@localhost>
9503
9504 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9505
9506 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9507 cons, return Qnil.
9508
9509 2002-08-17 Richard M. Stallman <rms@gnu.org>
9510
9511 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9512
9513 * sysdep.c [!VMS]: Include sys/files.h.
9514
9515 * editfns.c (save_restriction_restore): Defend from unchained marker.
9516
9517 * buffer.c (overlays_at): Handle extending vec uniformly.
9518 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9519
9520 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9521
9522 * mac.c (init_mac_osx_environment): New function.
9523
9524 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9525
9526 2002-08-14 Kim F. Storm <storm@cua.dk>
9527
9528 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9529 executing macro before appending to it (when used from Lisp).
9530 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9531 which is called prior to each iteration of macro (for kmacro.el).
9532 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9533
9534 * lisp.h (Fexecute_kbd_macro): Update prototype.
9535
9536 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9537
9538 2002-08-14 Kenichi Handa <handa@etl.go.jp>
9539
9540 * xselect.c (QUTF8_STRING): New variable.
9541 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9542 (x_atom_to_symbol): Likewise.
9543 (x_get_local_selection): New argument local_request. If it is
9544 nonzero, call handler_fn with the second arg nil.
9545 (x_handle_selection_request): Call x_get_local_selection with
9546 local_request 0.
9547 (lisp_data_to_selection_data): Don't encode the string here.
9548 (Fx_get_selection_internal): Call x_get_local_selection with
9549 local_request 1.
9550 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9551
9552 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9553
9554 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9555
9556 2002-08-13 Richard M. Stallman <rms@gnu.org>
9557
9558 * minibuf.c (Fminibufferp): New function.
9559 (syms_of_minibuf): Defsubr it.
9560 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9561
9562 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9563
9564 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9565
9566 2002-08-12 Richard M. Stallman <rms@gnu.org>
9567
9568 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9569 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9570 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9571 already.
9572
9573 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9574
9575 2002-08-11 Andrew Choi <akochoi@shaw.ca>
9576
9577 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9578 (Vmac_pass_command_to_system): New variable.
9579 (Vmac_pass_control_to_system): New variable.
9580 (do_mouse_moved): Check wp with is_emacs_window.
9581 (XTread_socket): Check window_ptr with is_emacs_window.
9582 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9583 events back to Mac Toolbox for processing, depending on values of
9584 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9585 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9586 Vmac_pass_control_to_system.
9587
9588 2002-08-10 Kenichi Handa <handa@etl.go.jp>
9589
9590 * coding.c (unencodable_char_position): New function.
9591 (Funencodable_char_position): New function.
9592 (syms_of_coding): Defsubr Funencodable_char_position.
9593
9594 2002-08-10 Andrew Choi <akochoi@shaw.ca>
9595
9596 * mac.c (sys_select) [MAC_OSX]: New function.
9597
9598 * macterm.c (MakeMeTheFrontProcess): New function.
9599 (mac_initialize): Call MakeMeTheFrontProcess.
9600
9601 * s/darwin.h: Define select to sys_select.
9602
9603 2002-08-09 Richard M. Stallman <rms@gnu.org>
9604
9605 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9606
9607 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9608
9609 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9610 end of the buffer.
9611
9612 2002-08-08 Ken Raeburn <raeburn@mit.edu>
9613
9614 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9615
9616 * puresize.h (BASE_PURESIZE): Increase to 910000.
9617
9618 2002-08-08 Kenichi Handa <handa@etl.go.jp>
9619
9620 * coding.c (Ffind_operation_coding_system): For write-region, if
9621 VISIT is a filename, make it the target.
9622
9623 2002-08-07 Richard M. Stallman <rms@gnu.org>
9624
9625 * alloc.c (mark_object): Detect long lists for debugging.
9626 (mark_object_loop_halt): New variable.
9627
9628 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9629
9630 * data.c (Fmake_variable_frame_local): Doc fix.
9631
9632 2002-08-01 David Ponce <david@dponce.com>
9633
9634 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9635 (malloc_widget_value, free_widget_value)
9636 (w32_free_submenu_strings): Use them.
9637
9638 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9639 (push_menu_pane, push_menu_item, single_keymap_panes)
9640 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9641 (single_submenu, set_frame_menubar)
9642 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9643
9644 (Fx_popup_menu): Don't show pop up menu until preceding one is
9645 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9646
9647 * w32menu.c: Changes adapted from xmenu.c
9648 (set_frame_menubar): First parse all submenus,
9649 then make widget_value trees from them.
9650 Don't allocate any widget_value objects
9651 until we are done with the parsing.
9652 (parse_single_submenu): New function.
9653 (digest_single_submenu): New function.
9654 (single_submenu): Function deleted, replaced by those two.
9655
9656 2002-08-04 Andrew Choi <akochoi@shaw.ca>
9657
9658 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9659 returns a valid window pointer before proceeding for keyDown and
9660 autoKey events.
9661
9662 2002-08-03 Andrew Choi <akochoi@shaw.ca>
9663
9664 * macterm.c (USE_CARBON_EVENTS): New macro.
9665 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9666 (x_iconify_frame): Call CollapseWindow.
9667 (Vmac_reverse_ctrl_meta): New variable.
9668 (Vmac_wheel_button_is_mouse_2): New variable.
9669 (init_mac_drag_n_drop): New function.
9670 (mac_do_receive_drag): New function.
9671 (mac_handle_service_event): New function.
9672 (init_service_handler): New function.
9673 (mac_to_emacs_modifiers): New function.
9674 (mac_event_to_emacs_modifiers): New function.
9675 (mac_get_mouse_btn): New function.
9676 (mac_convert_event_ref): New function.
9677 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9678 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9679 mac_get_mouse_btn.
9680 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9681
9682 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9683 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9684 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9685 TOOL_BAR_EVENT for MAC_OS as well.
9686 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9687 as for WINDOWS_NT.
9688 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9689
9690 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9691
9692 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9693
9694 * xdisp.c (forward_to_next_line_start): Fix a condition that
9695 lead to a newline being skipped.
9696
9697 2002-08-02 Andrew Choi <akochoi@shaw.ca>
9698
9699 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9700
9701 2002-08-01 Richard M. Stallman <rms@gnu.org>
9702
9703 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9704
9705 2002-07-31 Andrew Choi <akochoi@shaw.ca>
9706
9707 * macfns.c: #undef init_process before #define-ing it.
9708
9709 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9710 HAVE_CARBON is defined.
9711
9712 2002-07-31 Richard M. Stallman <rms@gnu.org>
9713
9714 * xmenu.c (set_frame_menubar): First parse all submenus,
9715 then make widget_value trees from them.
9716 Don't allocate any widget_value objects
9717 until we are done with the parsing.
9718 (parse_single_submenu): New function.
9719 (digest_single_submenu): New function.
9720 (single_submenu): Function deleted, replaced by those two.
9721
9722 2002-07-30 Juanma Barranquero <lektu@terra.es>
9723
9724 * w32proc.c (syms_of_ntproc): Fix docstring of
9725 `w32-get-true-file-attributes'.
9726
9727 2002-07-28 Richard M. Stallman <rms@gnu.org>
9728
9729 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9730 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9731
9732 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9733
9734 * keyboard.c (make_lispy_event):
9735 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9736 Explicitly clear up_modifier in event->modifiers.
9737
9738 2002-07-27 Richard M. Stallman <rms@gnu.org>
9739
9740 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9741
9742 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9743 for bar cursor.
9744
9745 2002-07-26 Kenichi Handa <handa@etl.go.jp>
9746
9747 * coding.c (detect_coding_iso2022): While checking a byte sequence
9748 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9749 it in the normal loop.
9750
9751 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9752
9753 * xterm.c (expose_overlaps): New function.
9754 (expose_window): Use it to fix the display of overlapping rows.
9755
9756 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9757
9758 2002-07-23 Ken Raeburn <raeburn@gnu.org>
9759
9760 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9761 since it only depends on XUINT.
9762
9763 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9764 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9765 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9766 Macros deleted.
9767
9768 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9769 its value over other approaches.
9770 * sysdep.c (start_of_data): Don't define the function if a macro
9771 form has been defined.
9772
9773 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9774
9775 * xdisp.c (redisplay_updating_p): New variable.
9776 (init_iterator): Don't free realized faces when
9777 redisplay_updating_p is set.
9778 (redisplay_internal): Set redisplay_updating_p while updating
9779 the display.
9780
9781 2002-07-23 Richard M. Stallman <rms@gnu.org>
9782
9783 * editfns.c (Fmessage): Treat "" like nil.
9784
9785 2002-07-23 Kenichi Handa <handa@etl.go.jp>
9786
9787 * xdisp.c (face_before_or_after_it_pos):
9788 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9789
9790 2002-07-22 Juanma Barranquero <lektu@terra.es>
9791
9792 * callproc.c (init_callproc) [DOS_NT]:
9793 Initialize Vshared_game_score_directory to nil.
9794 (syms_of_callproc) [DOS_NT]: Likewise.
9795
9796 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9797
9798 * xdisp.c (display_line): Replace an abort with xassert.
9799
9800 2002-07-21 Richard M. Stallman <rms@gnu.org>
9801
9802 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9803 and END_UNCHANGED when setting buffer_unchanged_p.
9804 Use current_matrix_up_to_date_p to decide whether to use
9805 try_cursor_movement.
9806
9807 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9808
9809 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9810
9811 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9812 Set to nil if dir does not exist.
9813 (syms_of_callproc): Init unconditionally and simply.
9814
9815 * buffer.c (Fbuffer_list): Doc fix.
9816
9817 2002-07-21 Ken Raeburn <raeburn@gnu.org>
9818
9819 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9820
9821 * buffer.c (mmap_realloc): When shrinking, make sure number of
9822 pages to unmap is rounded towards zero.
9823
9824 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9825 (XSETINT): Deleted.
9826
9827 * m/att3b.h (XINT): Don't define.
9828 (VALBITS, VALMASK, XTYPE): Deleted.
9829 (DATA_SEG_BITS): Define.
9830 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9831 ARRAY_MARK_FLAG): Deleted.
9832 (DATA_SEG_BITS): Define.
9833 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9834 (DATA_SEG_BITS): Define.
9835
9836 2002-07-20 Richard M. Stallman <rms@gnu.org>
9837
9838 * print.c (print_error_message): New args CONTEXT and CALLER.
9839 Calls changed.
9840
9841 * lisp.h (print_error_message): Declare new args.
9842
9843 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9844 and CONTEXT to print_error_message, don't print them here.
9845 For a Quit, don't use Vsignaling_function.
9846 Call message_log_maybe_newline.
9847
9848 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9849
9850 2002-07-20 Kim F. Storm <storm@cua.dk>
9851
9852 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9853
9854 2002-07-19 Ken Raeburn <raeburn@gnu.org>
9855
9856 * bytecode.c (struct byte_stack): Pointers into byte string now
9857 point to const.
9858 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9859 const.
9860 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9861 * coding.c (encode_eol, detect_coding, detect_eol):
9862 (decode_coding, encode_coding, detect_coding_system):
9863 Source strings now treated as const.
9864 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9865 modify Lisp string contents.
9866 * coding.h (decode_coding, encode_coding, detect_coding,
9867 detect_eol): Declarations updated.
9868 * composite.c (compose_chars_in_text): Treat Lisp string contents
9869 as const.
9870 * dispnew.c (safe_bcopy): Source pointer now points to const.
9871 * lisp.h (STRING_COPYIN): New macro.
9872 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9873 (internal_with_output_to_temp_buffer): Declarations updated.
9874 * print.c (temp_output_buffer_setup):
9875 (internal_with_output_to_temp_buffer): Buffer name argument is now
9876 pointer to const.
9877 * sound.c (struct sound_device): Function pointer field "write"
9878 buffer argument now points to const.
9879 (vox_write): Buffer argument points to const.
9880 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9881 contents as const.
9882 * sysdep.c (emacs_write): Buffer pointer now const.
9883 * term.c (encode_terminal_code): Buffer pointer now const.
9884 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9885 (x_face_list_fonts, x_update_menu_appearance):
9886 (hash_string_case_insensitive): Treat Lisp string contents as const.
9887
9888 2002-07-19 Juanma Barranquero <lektu@terra.es>
9889
9890 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9891
9892 * fileio.c (syms_of_fileio): Likewise.
9893 (Ffile_name_as_directory): Fix argument name in docstring.
9894 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9895
9896 2002-07-18 Richard M. Stallman <rms@gnu.org>
9897
9898 * data.c (Fdefalias): Doc fix.
9899
9900 2002-07-17 Dave Love <fx@gnu.org>
9901
9902 * intervals.h (text_property_stickiness): Use P_.
9903
9904 * ccl.c: Remove `emacs' conditionals.
9905 (ccl_backtrace_table): Fix size spec.
9906 (ccl_driver): Fix type errors.
9907
9908 2002-07-16 Ken Raeburn <raeburn@gnu.org>
9909
9910 * alloc.c (xstrdup, make_string, make_unibyte_string)
9911 (make_multibyte_string, build_string): String pointer args now
9912 point to const.
9913 * charset.c (find_charset_in_text, c_string_width):
9914 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9915 * fileio.c (report_file_error):
9916 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9917 (count_combining_before, count_combining_after, insert_1_both):
9918 (insert, insert_and_inherit, insert_string):
9919 (insert_before_markers, insert_before_markers_and_inherit):
9920 * lread.c (intern, oblookup, hash_string):
9921 * minibuf.c (temp_echo_area_glyphs):
9922 * search.c (fast_c_string_match_ignore_case):
9923 * sysdep.c (emacs_open, set_file_times):
9924 * xfaces.c (xstricmp):
9925 * xdisp.c (store_frame_title, string_char_and_length):
9926 (message_dolog, message2, message2_nolog, set_message): Likewise.
9927 (set_message_1): Cast message string argument to const pointer.
9928 * editfns.c (general_insert_function): Insertion function now
9929 takes pointer to const for input data.
9930 * charset.h (find_charset_in_text, c_string_width):
9931 (parse_str_as_multibyte): Declarations updated.
9932 * dispextern.h (xstricmp): Declaration updated.
9933 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9934 (count_size_as_multibyte, count_combining_before):
9935 (count_combining_after, insert_1, insert_1_both, message_dolog):
9936 (insert, insert_and_inherit, insert_before_markers)
9937 (insert_before_markers_and_inherit, set_message, message2):
9938 (message2_dolog, build_string, make_string, make_unibyte_string):
9939 (make_multibyte_string, intern, oblookup, report_file_error):
9940 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9941 (emacs_open, xstrdup): Declarations updated.
9942 * systime.h (set_file_times): Declaration updated.
9943
9944 * charset.c (find_charset_in_text, lisp_string_width): Use const
9945 for pointer to lisp string data.
9946 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9947 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9948 * coding.c (Ffind_coding_systems_region_interval):
9949 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9950 (Fmake_directory_internal, Fdelete_directory):
9951 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9952 * fontset.c (font_family_registry, fs_query_fontset):
9953 (list_fontsets):
9954 * frame.c (Fframe_parameter):
9955 * keyboard.c (cmd_error_internal):
9956 * keymap.c (Fdescribe_buffer_bindings):
9957 * lread.c (complete_filename_p, openp):
9958 * minibuf.c (Fminibuffer_complete_word):
9959 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9960 (face_before_or_after_it_pos, next_element_from_string):
9961 (get_overlay_arrow_glyph_row, display_mode_element):
9962 (decode_mode_spec_coding):
9963 * xterm.c (same_x_server): Likewise.
9964
9965 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9966 settings of non-existent fields.
9967
9968 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9969 copy a lisp value.
9970
9971 * lread.c (Fintern_soft): Use string macros instead of
9972 Lisp_String fields.
9973 * keyboard.c (echo_char, parse_modifiers_uncached):
9974 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9975 * textprop.c (validate_interval_range, interval_of): Likewise.
9976
9977 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9978
9979 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9980 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9981 XSTRING()->size_byte.
9982
9983 * lisp.h (SDATA, SREF): Produce rvalue.
9984 (SSET): New macro.
9985 * alloc.c (make_event_array): Use SSET for storing into a string.
9986 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9987 a string.
9988 * casefiddle.c (casify_object): Use SSET.
9989 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9990 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9991 address of string contents.
9992 * data.c (Faref): Use SDATA.
9993 (Faset): Use SDATA, SSET.
9994 * dired.c (directory_files_internal): Use SSET.
9995 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9996 (Fread_file_name): Use SREF, SSET.
9997 * fns.c (concat): Use SSET.
9998 (concat, Fdelete): Use SDATA.
9999 * insdel.c (insert_from_string_1): Use SDATA.
10000 * keyboard.c (Fevent_convert_list): Use SREF.
10001 * lread.c (Fload): Use SDATA, SSET.
10002 * macfns.c (validate_x_resource_name): Use SSET.
10003 * process.c (status_message): Use SSET.
10004 * search.c (wordify): Use SDATA.
10005 (Freplace_match): Use SREF.
10006 * w32fns.c (validate_x_resource_name): Use SSET.
10007 * xfns.c (validate_x_resource_name): Use SSET.
10008 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10009
10010 2002-07-16 Richard M. Stallman <rms@gnu.org>
10011
10012 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10013
10014 * xdisp.c (reconsider_clip_changes):
10015 Don't test prevent_redisplay_optimizations_p.
10016 (redisplay_internal): Test prevent_redisplay_optimizations_p
10017 along with clip_changed in some cases.
10018 (try_window_id): Likewise.
10019 (redisplay_window): New local var buffer_unchanged_p.
10020
10021 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10022
10023 * process.c (create_process): Test USG_SUBTTY_WORKS.
10024 (process_send_signal): Clean up handling of GID.
10025 Detect errors in ioctls meant to set GID.
10026
10027 * window.c (temp_output_buffer_show):
10028 Don't set prevent_redisplay_optimizations_p.
10029
10030 2002-07-15 Juanma Barranquero <lektu@terra.es>
10031
10032 * eval.c (Fdefvaralias): Add docstring argument.
10033
10034 2002-07-15 Ken Raeburn <raeburn@gnu.org>
10035
10036 * lisp.h (STRING_INTERVALS): Produce rvalue.
10037 (STRING_SET_INTERVALS): New macro.
10038 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10039 * fns.c (Fstring_as_multibyte): Likewise.
10040 * intervals.c (balance_possible_root_interval, delete_interval)
10041 (create_root_interval, copy_intervals_to_string): Likewise.
10042 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10043 instead of 0.
10044
10045 2002-07-14 Ken Raeburn <raeburn@gnu.org>
10046
10047 * lisp.h (STRING_SET_CHARS): New macro.
10048 (SCHARS, SBYTES): Produce rvalues.
10049 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10050 * fns.c (concat): Likewise.
10051 * lread.c (read_vector): Likewise.
10052
10053 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10054 (STRING_SET_UNIBYTE): New macro.
10055 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10056 length of -1) changed to use STRING_SET_UNIBYTE.
10057 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10058 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10059 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10060 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10061 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10062 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10063 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10064 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10065 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10066 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10067 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10068 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10069 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10070 unchanged for now.
10071
10072 2002-07-13 Kim F. Storm <storm@cua.dk>
10073
10074 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10075
10076 2002-07-12 Richard M. Stallman <rms@gnu.org>
10077
10078 * fileio.c (Fwrite_region): Doc fix.
10079
10080 * print.c (print_error_message): Don't handle Vsignaling_function here.
10081
10082 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10083 (command_loop_1): Avoid certain actions after memory-full error.
10084
10085 * eval.c (Fsignal): Don't call cancel_hourglass.
10086 For a memory-full error, don't call Vsignal_hook_function
10087 and don't set Vsignaling_function.
10088
10089 * process.c (process_send_signal): Add abort call.
10090
10091 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
10092
10093 * keymap.c (Fkey_binding): Fix typo.
10094
10095 2002-07-11 Richard M. Stallman <rms@gnu.org>
10096
10097 * alloc.c (Vmemory_full): New variable.
10098 (Vmemory_signal_data): Renamed from memory_signal_data.
10099 Uses changed.
10100 (syms_of_alloc): Defvar them.
10101 (memory_full, buffer_memory_full): Set Vmemory_full.
10102
10103 * lisp.h (Vmemory_full): Add declaration.
10104 (current_column, indented_beyond_p): Change declaration.
10105
10106 * indent.c (last_known_column): Declare as double, not float.
10107 (current_column, current_column_1, string_display_width)
10108 (position_indentation): Return `double'.
10109 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10110
10111 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10112 (back_to_previous_visible_line_start)
10113 (reseat_at_next_visible_line_start, next_element_from_buffer):
10114 Use `double', not `float', when calling indented_beyond_p.
10115
10116 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10117
10118 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10119
10120 2002-07-11 Juanma Barranquero <lektu@terra.es>
10121
10122 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
10123 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10124 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10125 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10126 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10127 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
10128
10129 2002-07-10 Juanma Barranquero <lektu@terra.es>
10130
10131 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10132 All callers changed.
10133
10134 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10135
10136 * data.c (Fdefalias): Add an optional `docstring' argument.
10137 (set_internal, Fsetq_default): Use XCAR/XCDR.
10138
10139 * composite.c (HASH_VALUE, HASH_KEY):
10140 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10141
10142 2002-07-09 Kenichi Handa <handa@etl.go.jp>
10143
10144 * callproc.c (Fcall_process): Fix previous change.
10145
10146 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10147
10148 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10149 Add support for hash-tables.
10150 (Ftry_completion): Return t even if the string appears multiple times.
10151
10152 * fns.c (Fnconc): Use XCDR.
10153 (Fprovide): Use CONSP and XCDR.
10154 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10155 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10156 (Fmake_hash_table): Accept `:size nil'.
10157 (Fmakehash): Delete: moved to subr.el.
10158 (syms_of_fns): Don't defsubr makehash.
10159
10160 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10161 (HASH_TABLE_SIZE): Move from fns.c.
10162
10163 2002-07-07 Richard M. Stallman <rms@gnu.org>
10164
10165 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10166 Instead just return 0 when there is something to be done.
10167 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10168 retry scrolling as if cursor were off the bottom.
10169 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10170 return CURSOR_MOVEMENT_MUST_SCROLL.
10171 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10172 go to try_to_scroll.
10173
10174 * buffer.c (Fbuffer_local_value): Store current value into its binding
10175 so we get the up-to-date value for the binding that is loaded.
10176
10177 * eval.c (Fdefmacro): Doc fix.
10178
10179 2002-07-05 Dave Love <fx@gnu.org>
10180
10181 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10182 correctly.
10183
10184 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10185 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10186 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10187 CCL_LookupCharConstTbl.
10188 (syms_of_ccl): Defvar translation-hash-table-vector.
10189
10190 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10191
10192 * xdisp.c: Remove unused variable `face'.
10193
10194 2002-07-04 Juanma Barranquero <lektu@terra.es>
10195
10196 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10197 obsolescence information.
10198
10199 2002-07-03 Andrew Choi <akochoi@shaw.ca>
10200
10201 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10202 pattern. Search cache first.
10203 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10204 for Japanese font.
10205 (XLoadQueryFont): Use it.
10206
10207 2002-07-02 Richard M. Stallman <rms@gnu.org>
10208
10209 * keymap.c (Fdefine_key): Doc fix.
10210
10211 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10212
10213 2002-07-02 Juanma Barranquero <lektu@terra.es>
10214
10215 * keymap.c (syms_of_keymap): Fix typo.
10216
10217 2002-07-01 Andrew Choi <akochoi@shaw.ca>
10218
10219 * s/darwin.h: Define POSIX_SIGNALS.
10220
10221 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10222 and FSRefMakePath to convert FSSpec returned with Apple Event to
10223 Posix pathname.
10224 (mac_initialize) [TARGET_API_MAC_CARBON]:
10225 Call init_required_apple_events and disable the `Quit' menu item
10226 provided automatically by the Carbon Toolbox.
10227
10228 2002-07-01 Dave Love <fx@gnu.org>
10229
10230 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10231 for K&R.
10232
10233 * xterm.c: Fix prototype for K&R.
10234
10235 * term.c (costs_set): Declare static, non-initialized for pcc.
10236
10237 2002-07-01 Richard M. Stallman <rms@gnu.org>
10238
10239 * keyboard.c (timer_last_idleness_start_time): New variable.
10240 (timer_start_idle): Set that.
10241 (read_key_sequence): Use that to reset timer_idleness_start_time
10242 to previous value.
10243
10244 * window.c (Frecenter): With arg, set optional_new_start.
10245
10246 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10247
10248 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10249 buffer for completion.
10250
10251 2002-06-29 Ken Raeburn <raeburn@gnu.org>
10252
10253 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10254
10255 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10256
10257 * keyboard.c (readable_filtered_events): New function that filters
10258 FOCUS_IN_EVENT depending on parameter.
10259 (readable_events): Calls readable_filtered_events, not filtering
10260 FOCUS_IN_EVENT.
10261 (get_filtered_input_pending): New function, filtering parameter passed
10262 to readable_filtered_events.
10263 (get_input_pending): Calls get_filtered_input_pending, not filtering
10264 FOCUS_IN_EVENT.
10265 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10266 FOCUS_IN_EVENT.
10267
10268 * xterm.h (struct x_output): Add focus_state.
10269
10270 * xterm.c (x_focus_changed): New function.
10271 (x_detect_focus_change): New function.
10272 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10273 EnterNotify and LeaveNotify to track X focus changes.
10274
10275 2002-06-28 Andreas Schwab <schwab@suse.de>
10276
10277 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10278
10279 2002-06-27 Kim F. Storm <storm@cua.dk>
10280
10281 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10282 (mode_line_string_face_prop): New variables.
10283 (store_mode_line_string): New function.
10284 (display_mode_element): Use store_mode_line_string to
10285 add mode-line string elements to mode_line_string_list
10286 when mode_line_string_list is non-nil.
10287 (Fformat_mode_line): Now returns propertized string by
10288 default. New arg NO-PROPS to ignore properties.
10289 (decode_mode_spec): Only add two dashes for %- in propertized
10290 mode-line string.
10291 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10292
10293 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10294
10295 * minibuf.c (minibuffer_completion_contents): Add return type.
10296
10297 2002-06-27 Juanma Barranquero <lektu@terra.es>
10298
10299 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10300
10301 2002-06-26 Juanma Barranquero <lektu@terra.es>
10302
10303 * fileio.c (read_file_name_cleanup): Add missing return.
10304
10305 2002-06-26 Richard M. Stallman <rms@gnu.org>
10306
10307 * window.c (Frecenter): Don't set force_start flag.
10308
10309 * minibuf.c (do_completion, Fminibuffer_complete_word)
10310 (Fminibuffer_completion_help): Complete just the text before point.
10311 (minibuffer_completion_contents): New function.
10312
10313 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10314
10315 * frame.c (frames_bury_buffer): Function deleted.
10316
10317 2002-06-25 Miles Bader <miles@gnu.org>
10318
10319 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10320 the end of callint_message, allow for a terminating '\0'.
10321
10322 2002-06-24 Juanma Barranquero <lektu@terra.es>
10323
10324 * w32select.c: Include composite.h
10325
10326 * w16select.c: Likewise.
10327
10328 2002-06-24 Kenichi Handa <handa@etl.go.jp>
10329
10330 * callproc.c (Fcall_process): If code detection is necessary,
10331 call detect_coding directly here.
10332
10333 * coding.c (detect_eol): Preserve coding->cmp_data.
10334
10335 * w16select.c (Fw16_get_clipboard_data):
10336 * w32fns.c (w32_to_x_font):
10337 * w32select.c (Fw32_get_clipboard_data):
10338 * xselect.c (selection_data_to_lisp_data):
10339 * xterm.c (XTread_socket): Disable composition handling.
10340
10341 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10342
10343 * print.c (temp_output_buffer_setup): Kill all local variables.
10344
10345 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10346
10347 * lread.c (Fread): Remove redundant and imprecise declaration.
10348
10349 * xfns.c (check_x_display_info): Use check_x_frame.
10350
10351 * .gdbinit (xprintsym): Use the new `xname' field.
10352 (xsymbol): Use it.
10353
10354 2002-06-22 Jason Rumney <jasonr@gnu.org>
10355
10356 * w32fns.c (file_dialog_callback): New function.
10357 (Fx_file_dialog): Allow selecting directories as well as files.
10358
10359 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10360
10361 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
10362 OpenBSD. Add support for mipseb-*-netbsd* machines.
10363
10364 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10365
10366 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10367 black and white before scrolling. Restore frame background and
10368 foreground color after scrolling.
10369 (do_window_update): Call XClearWindow before calling expose_frame.
10370 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10371 FRAME_FOREGROUND_PIXEL of frame.
10372
10373 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10374 test Mac command key as <ALT> key.
10375
10376 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10377
10378 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10379
10380 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10381 Lookup keys in function-key-map immediately so that key-translation-map
10382 can be applied earlier.
10383 Remove function_key_possible and key_translation_possible, replaced
10384 by checking `keytran_start < t'.
10385
10386 * .gdbinit (xsymbol): Use the new `xname' field.
10387
10388 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10389
10390 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10391 test Mac command key as <ALT> key.
10392
10393 * mac.c (do_applescript): Call initialize_applescript if necessary
10394 when first called. Dispose of result_desc only when there is no error.
10395 (Fdo_applescript): Use %d format specifier instead of %ld.
10396
10397 2002-06-16 Andrew Choi <akochoi@shaw.ca>
10398
10399 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10400 of FrontWindow for cases keyDown and autoKey.
10401
10402 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10403 Vdefault_fontset to Monaco with mac-roman coding.
10404
10405 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10406 init_process before and after inclusion of Carbon/Carbon.h, resp.
10407
10408 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10409 cursor_gc.
10410 (add_font_name_table_entry): New function.
10411 (init_font_name_table): Use add_font_name_table_entry; add italic,
10412 bold, and bold-italic entries for truetype fonts.
10413
10414 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10415 for Mac too.
10416 (try_font_list) [MAC_OS]: If no font matches given registry, try
10417 fonts with any registry matching face_family.
10418 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10419
10420 * s/darwin.h: If autoconf detects the Ncurses library, define
10421 LIBS_TERMCAP to -lncurses to use it.
10422
10423 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10424
10425 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10426
10427 2002-06-15 Richard M. Stallman <rms@gnu.org>
10428
10429 * window.c (Fset_window_configuration): Explicitly preserve
10430 the point value that new_current_buffer had at the start.
10431
10432 2002-06-14 Juanma Barranquero <lektu@terra.es>
10433
10434 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10435 Fix typos.
10436
10437 2002-06-14 Kim F. Storm <storm@cua.dk>
10438
10439 * insdel.c (insert_1_both, insert_from_string_1)
10440 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10441 insert happened in the end_unchanged region. Otherwise, the
10442 redisplay may be confused and duplicate the last line in the
10443 buffer [seen after save-buffer when require-final-newline==t].
10444
10445 2002-06-13 Jason Rumney <jasonr@gnu.org>
10446
10447 * w32.c (init_environment): Remove EMACSLOCKDIR.
10448 (stat): Swap _S_IFDIR and _S_IFREG.
10449
10450 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10451
10452 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10453 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10454 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10455 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10456 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10457 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10458 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10459 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10460 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10461 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10462 SELECTION_REQUEST_EVENT, selection_clear_event to
10463 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10464 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10465 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10466 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10467 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10468 no_event to NO_EVENT.
10469
10470 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10471
10472 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10473
10474 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10475
10476 * intervals.c (textget): Don't forget to `return'.
10477 (lookup_char_property): Use XCAR/XCDR.
10478
10479 2002-06-12 Juanma Barranquero <lektu@terra.es>
10480
10481 * xdisp.c (Fformat_mode_line): Fix typo.
10482
10483 2002-06-12 Kim F. Storm <storm@cua.dk>
10484
10485 * xdisp.c (Fformat_mode_line): New function.
10486 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10487 (store_frame_title_char, store_frame_title): Use unconditionally.
10488 (init_xdisp): Defsubr Fformat_mode_line.
10489 Initialize frame_title_buf etc. unconditionally.
10490
10491 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10492
10493 * keyboard.c (read_key_sequence):
10494 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10495 things through those maps after downcasing events.
10496 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10497 applies after function-key-map.
10498 Make sure that keytran can be done in the middle in the sequence.
10499 Be careful not to throw away events past the one we downcase.
10500
10501 * lread.c (read_integer): Remove unused var `tem'.
10502 (read1): Fix int/Lisp_Object mixup.
10503
10504 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10505
10506 2002-06-11 Richard M. Stallman <rms@gnu.org>
10507
10508 * keyboard.c (readable_events): Ignore any number of
10509 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10510
10511 2002-06-09 Miles Bader <miles@gnu.org>
10512
10513 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10514 (parse_rgb_list, tty_lookup_color): New functions.
10515 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10516 (color_distance, Fcolor_distance): New functions.
10517 (TTY_SAME_COLOR_THRESHOLD): New macro.
10518 (Qtty_color_standard_values): New variable.
10519 (syms_of_xfaces): Initialize new vars & functions.
10520
10521 2002-06-08 Colin Walters <walters@verbum.org>
10522
10523 * textprop.c (Vchar_property_alias_alist): New variable.
10524 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10525
10526 * intervals.c (lookup_char_property): New function for looking up
10527 overlay and text properties, created from textget.
10528 (textget): Use it.
10529
10530 * intervals.h (lookup_char_property): Declare.
10531 (Vchar_property_alias_alist): Declare.
10532
10533 * buffer.c (Foverlay_get): Use lookup_char_property.
10534
10535 2002-06-07 Sam Steingold <sds@gnu.org>
10536
10537 * xselect.c (lisp_data_to_selection_data): Fix last change:
10538 *data_ret is not a Lisp string, while unibyte_string is.
10539
10540 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10541
10542 * xselect.c (lisp_data_to_selection_data): Fix last change:
10543 set size_ret.
10544
10545 2002-06-07 Andreas Schwab <schwab@suse.de>
10546
10547 * m/amdx86-64.h: New file.
10548
10549 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10550
10551 * fns.c (Fstring_make_unibyte): Doc fix.
10552
10553 * xselect.c (lisp_data_to_selection_data): If the requested type
10554 is STRING, call string_make_unibyte to encode the selected text
10555 as a string.
10556
10557 * window.c (Fset_window_hscroll): Doc fix.
10558
10559 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10560
10561 * fileio.c (choose_write_coding_system):
10562 Call select-safe-coding-system properly.
10563
10564 2002-06-03 Richard M. Stallman <rms@gnu.org>
10565
10566 * xdisp.c (message_with_string): Error if STRING is not a string.
10567
10568 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10569
10570 * fileio.c (choose_write_coding_system): Pass FILE arg to
10571 Vselect_safe_coding_system_function.
10572
10573 2002-06-03 Ken Raeburn <raeburn@gnu.org>
10574
10575 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10576
10577 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10578
10579 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10580 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10581 * keymap.c (describe_command): Likewise.
10582 * minibuf.c (read_minibuf): Likewise.
10583
10584 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10585 Cast `current_column' return value to int.
10586 (back_to_previous_visible_line_start)
10587 (reseat_at_next_visible_line_start, next_element_from_buffer):
10588 Cast `indented_beyond_p' 3rd arg to float.
10589
10590 * indent.c (last_known_column): Now a float.
10591 (current_column_1, position_indentation, current_column)
10592 (string_display_width): Return float.
10593 (Fcurrent_column): Cast `current_column' return value to int.
10594 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10595 (indented_beyond_p): Third arg now a float.
10596 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10597
10598 * lisp.h (current_column): Now returns float.
10599 (indented_beyond_p): 3rd arg now a float.
10600
10601 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10602
10603 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10604 is Qcompound_text_with_extensions.
10605
10606 * xselect.c (lisp_data_to_selection_data): Always set selection
10607 type as string if x_encode_text returns streingp non-NULL.
10608
10609 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10610
10611 2002-05-30 Richard M. Stallman <rms@gnu.org>
10612
10613 * window.c (Fset_window_configuration): Correct the handling
10614 of point in current buffer, to work with multiple windows.
10615
10616 2002-05-29 Colin Walters <walters@verbum.org>
10617
10618 * lread.c (Fread_from_string): Don't depend on order of evaluation
10619 for C function parameters.
10620
10621 2002-05-28 Richard M. Stallman <rms@gnu.org>
10622
10623 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10624 way for blinked-off state and for a nonselected window.
10625
10626 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10627 instead, see if the new start pos is at beginning of line.
10628
10629 * fileio.c (Fwrite_region): If START is a string, don't
10630 make any annotations.
10631
10632 * eval.c (syms_of_eval): Doc fix.
10633
10634 2002-05-28 Colin Walters <walters@debian.org>
10635
10636 * emacs.c (USAGE1): Add --no-splash.
10637 (standard_args): Ditto.
10638
10639 2002-05-28 Colin Walters <walters@gnu.org>
10640
10641 * lread.c (readchar_count): New variable.
10642 (readchar): Increment it.
10643 (unreadchar): Decrement it.
10644 (read_multibyte): Decrement it.
10645 (Vread_with_symbol_positions): New variable.
10646 (Vread_symbol_positions_list): New variable.
10647 (read_internal_start): New function, created from Fread and
10648 Fread_from_string. Handle Vread_symbol_positions_list and
10649 Vread_with_symbol_positions.
10650 (readevalloop, Fread, Fread_from_string): Use it.
10651 (read1): Use readchar_count to add symbol positions to
10652 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10653 (syms_of_lread): DEFVAR_LISP and initialize them.
10654
10655 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10656 (substitute_object_recurse, substitute_object_in_subtree)
10657 (substitute_in_interval): Prototype.
10658 (read_multibyte): Return c if it's less than zero.
10659
10660 2002-05-28 Kim F. Storm <storm@cua.dk>
10661
10662 * fileio.c (Fread_file_name_internal): Added brute-force
10663 speed up for using predicate file-directory-p.
10664
10665 2002-05-28 Kim F. Storm <storm@cua.dk>
10666
10667 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10668 New variables.
10669 (syms_of_fileio): DEFVAR_LISP them.
10670 (read_file_name_cleanup): New unwind function.
10671 (Fread_file_name_internal): Only return completions satifying
10672 Vread_file_name_predicate. Temporarily unwind protect and rebind
10673 default-directory while checking completions against the predicate.
10674 (Fread_file_name): Added PREDICATE argument. Specbind it to
10675 Vread_file_name_predicate during completion.
10676 Call Vread_file_name_function to read the file name if non-nil.
10677
10678 * lisp.h (Fread_file_name): Now has 6 args.
10679
10680 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10681 predicate for Fread_file_name when reading directory name.
10682 Supply Qnil for predicate in other calls to Fread_file_name.
10683
10684 2002-05-26 Miles Bader <miles@gnu.org>
10685
10686 * term.c (tty_capable_p): New function.
10687 * dispextern.h (tty_capable_p): New function declaration.
10688 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10689 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10690
10691 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10692
10693 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10694 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10695 (Vwrite_region_annotate_functions): Docstring fix.
10696
10697 2002-05-23 Kim F. Storm <storm@cua.dk>
10698
10699 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10700 phys_cursor's hpos is overwritten. This is still not completely
10701 correct, as it doesn't really make sense to use hpos at all to
10702 get the cursor glyph (as that is relative to the width of the
10703 characters on the line, which may have changed during the update).
10704
10705 2002-05-22 Jason Rumney <jasonr@gnu.org>
10706
10707 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10708 Lisp_Object.
10709 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10710 Use modified enumfont_t struct.
10711
10712 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10713
10714 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10715 Handle the `hbar' cursor type.
10716 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10717
10718 * w32fns.c (Qhbar): New variable.
10719 (x_specified_cursor_type): Use it.
10720
10721 2002-05-21 Ken Raeburn <raeburn@gnu.org>
10722
10723 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10724 now, when the address is needed.
10725
10726 2002-05-21 Colin Walters <walters@gnu.org>
10727
10728 * Makefile.in (shortlisp): Add font-core.el.
10729
10730 2002-05-20 Richard M. Stallman <rms@gnu.org>
10731
10732 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10733
10734 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10735 equivalent key bindings here.
10736
10737 2002-05-20 Ken Raeburn <raeburn@gnu.org>
10738
10739 Change symbol structure to contain a lisp object for the symbol
10740 name:
10741 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10742 object field named "xname".
10743 (SYMBOL_NAME): New macro.
10744 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10745 name field.
10746 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10747 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10748 instead of name field.
10749 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10750 SYMBOL_NAME instead of XSYMBOL and name field.
10751 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10752 instead of XSYMBOL and name field.
10753 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10754 and SYMBOL_NAME instead of XSYMBOL and name field.
10755 * coding.c (Fread_coding_system, code_convert_region1)
10756 (code_convert_string1, code_convert_string_norecord)
10757 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10758 XSYMBOL and name field.
10759 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10760 (Fmake_variable_buffer_local, Fmake_local_variable)
10761 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10762 of XSYMBOL and name field.
10763 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10764 XSYMBOL and name field.
10765 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10766 instead of XSYMBOL and name field.
10767 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10768 XSYMBOL and name field.
10769 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10770 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10771 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10772 instead of XSYMBOL and name field.
10773 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10774 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10775 (parse_solitary_modifier, Fexecute_extended_command):
10776 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10777 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10778 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10779 of XSYMBOL and name field.
10780 (describe_command, describe_translation): Use SYMBOL_NAME and
10781 assignment instead of XSYMBOL and name field and XSETSTRING.
10782 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10783 instead of XSYMBOL and name field.
10784 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10785 name field and XSETSTRING.
10786 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10787 of XSYMBOL and name field.
10788 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10789 assignment instead of XSYMBOL and name field and XSETSTRING.
10790 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10791 XSTRING instead of XSYMBOL and name field.
10792 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10793 and XSTRING instead of XSYMBOL and name field.
10794 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10795 and XSTRING instead of XSYMBOL and name field.
10796 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10797 XSTRING instead of XSYMBOL and name field.
10798 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10799 of XSYMBOL and name field.
10800 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10801 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10802
10803 2002-05-19 Ken Raeburn <raeburn@gnu.org>
10804
10805 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10806 and XCDR real rvalues in most configurations.
10807
10808 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10809 Don't take the address of the cdr part of a cons cell; instead, track
10810 the parent cell and call XSETCDR, or set the variable for the head
10811 of the list if we haven't started down the list yet.
10812
10813 2002-05-19 Richard M. Stallman <rms@gnu.org>
10814
10815 * doc.c (reread_doc_file): Don't ask for confirmation.
10816
10817 2002-05-18 Jason Rumney <jasonr@gnu.org>
10818
10819 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10820 (xbm_load_image): Use it.
10821 (xbm_load): Ditto.
10822 (xbm_read_bitmap_data): Reverted to xfns.c version.
10823 From David Ponce <david@dponce.com>.
10824
10825 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10826
10827 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10828 2.02 and later.
10829
10830 2002-05-16 Juanma Barranquero <lektu@terra.es>
10831
10832 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10833
10834 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10835
10836 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10837 meaningful test.
10838 (read_char_minibuf_menu_prompt): Fix typo.
10839
10840 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10841
10842 * eval.c (Fcommandp): Doc fix.
10843
10844 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10845
10846 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10847 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10848 (Fset_keymap_parent): Gcpro a bit more.
10849 (access_keymap): Gcpro around meta_map call and around the main loop.
10850 (get_keyelt): Gcpro when following indirect references.
10851 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10852 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10853 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10854 Remove useless ad-hoc remap code.
10855
10856 2002-05-13 Richard M. Stallman <rms@gnu.org>
10857
10858 * search.c (search_buffer): Give up boyer moore search if inverse
10859 translation change charset_base.
10860
10861 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10862
10863 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10864 characters is carried over from the previous block of text, adjust
10865 coding->produced to account for the extra character.
10866
10867 2002-05-11 Andreas Schwab <schwab@suse.de>
10868
10869 * coding.c (intersection): Keep the elements of the returned list
10870 in the same order as in the first list.
10871
10872 2002-05-11 Kim F. Storm <storm@cua.dk>
10873
10874 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10875 only update cmm_size if realloc actually succeeds.
10876 Testing with initial size of 2 elements revealed that using
10877 realloc on GNU/Linux would cause a random trap in xmalloc
10878 later on, so I rewrote the code to use malloc/bcopy/free instead
10879 of realloc.
10880
10881 2002-05-10 Jason Rumney <jasonr@gnu.org>
10882
10883 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10884
10885 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10886
10887 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10888 parens, to ensure correct evaluation order.
10889
10890 2002-05-10 Kim F. Storm <storm@cua.dk>
10891
10892 * keymap.c (Vemulation_mode_map_alists): New variable.
10893 (syms_of_keymap): DEFVAR_LISP it.
10894 (current_minor_maps): Process keymap alists in that list before
10895 minor-mode-overriding-map-alist and minor-mode-map-alist.
10896
10897 2002-05-09 Richard M. Stallman <rms@gnu.org>
10898
10899 * search.c (Freplace_match): Doc fix.
10900
10901 2002-05-09 Kim F. Storm <storm@cua.dk>
10902
10903 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10904 Enlarge cursor rectangle drawn around image with non-zero relief.
10905
10906 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10907 Enlarge cursor rectangle drawn around image with non-zero relief.
10908
10909 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10910 Enlarge cursor rectangle drawn around image with non-zero relief.
10911
10912 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10913
10914 * xselect.c (lisp_data_to_selection_data): Don't set selection
10915 type if comes from the Lisp object's car. If the selection
10916 contains a pure ASCII text, always return QSTRING as its type.
10917
10918 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10919
10920 * mac.c (mac-cut-function): Doc fix.
10921
10922 2002-05-05 Richard M. Stallman <rms@gnu.org>
10923
10924 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10925
10926 2002-05-04 Jason Rumney <jasonr@gnu.org>
10927
10928 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10929 for event-click-count.
10930
10931 * process.c (init_process): Only add server subfeature if we can
10932 use non-blocking I/O.
10933
10934 2002-05-04 Andrew Choi <akochoi@shaw.ca>
10935
10936 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10937 repeatedly.
10938
10939 2002-05-03 Jason Rumney <jasonr@gnu.org>
10940
10941 * process.c (Fmake_network_process): Only support server sockets
10942 when we can make them non-blocking.
10943
10944 * s/ms-w32.h (HAVE_SELECT): Define.
10945
10946 * w32.h (FILE_NDELAY): New flag.
10947
10948 * w32.c (sys_getpeername, fcntl): New functions.
10949 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10950
10951 * w32proc.c: include sys/file.h.
10952
10953 2002-05-03 Colin Walters <walters@verbum.org>
10954
10955 * callproc.c (Vgame_score_directory): Renamed to
10956 Vshared_game_score_directory.
10957
10958 2002-04-30 Richard M. Stallman <rms@gnu.org>
10959
10960 * s/gnu.h [emacs]: Include stdio.h.
10961 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10962
10963 * eval.c (do_autoload): Error if called while preparing to dump.
10964
10965 * fns.c (Frequire): Error if need to load while preparing to dump.
10966
10967 2002-04-28 Colin Walters <walters@verbum.org>
10968
10969 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10970 Default to "~/.emacs.d/games".
10971
10972 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10973
10974 * lread.c (openp): Change arg exec_only to predicate.
10975 (build_load_history): Use XCAR/XCDR.
10976 (Flocate_file_internal): New fun.
10977 (syms_of_lread): Defsubr it.
10978 (Fload): Update call to openp.
10979
10980 * lisp.h (openp): Update prototype.
10981
10982 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10983 * w32proc.c (sys_spawnve):
10984 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10985 * w32.c (check_windows_init_file):
10986 * sound.c (Fplay_sound_internal):
10987 * process.c (Fstart_process):
10988 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10989 * mac.c (run_mac_command):
10990 * emacs.c (init_cmdargs):
10991 * callproc.c (Fcall_process): Update call to openp.
10992
10993 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10994
10995 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10996
10997 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10998
10999 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11000 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11001
11002 2002-04-28 Richard M. Stallman <rms@gnu.org>
11003
11004 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11005
11006 * eval.c (Fcommandp): New arg for_call_interactively.
11007 * lisp.h (Fcommandp): Declare new arg.
11008
11009 2002-04-28 Jason Rumney <jasonr@gnu.org>
11010
11011 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11012
11013 * w32.c (stat, fstat): Use file index information to generate
11014 inodes for directories where available.
11015
11016 2002-04-26 Andrew Choi <akochoi@shaw.ca>
11017
11018 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11019 [HAVE_CARBON]: Include Mac object files.
11020
11021 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11022 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11023 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11024 MAC_OSX, and MAC_OS instead of macintosh.
11025
11026 * editfns.c [MAC_OS8]: Include stdio.h.
11027
11028 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11029
11030 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11031 Apple Monaco.
11032
11033 * process.c: Declare QCfamily and QCfilter as extern.
11034 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11035 calling select.
11036
11037 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11038
11039 * tparam.c [MAC_OSX]: Don't define BC and UP.
11040
11041 * config.in [HAVE_CARBON]: Add.
11042
11043 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11044 Move here from mac/src and mac/inc.
11045
11046 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11047
11048 2002-04-26 Gerd Moellmann <gerd@gnu.org>
11049
11050 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11051 Compute phys_cursor_width from the x position returned
11052 by x_draw_glyhs, which is cheaper.
11053 (x_display_and_set_cursor): Compute the buffer-local value
11054 of `cursor-in-non-selected-windows' only when needed.
11055
11056 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11057
11058 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11059 cursor on a stretch glyph has a width that depends on
11060 x_stretch_cursor_p.
11061
11062 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11063
11064 * abbrev.c (abbrev-start-location): Doc fix.
11065
11066 * indent.c (Fvertical_motion): Fix last change.
11067
11068 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11069
11070 * indent.c (Fvertical_motion): Move to the start of the line
11071 containing PT before moving up or down.
11072
11073 2002-04-24 Gerd Moellmann <gerd@gnu.org>
11074
11075 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11076 case of writing a whole row, more or less analogous to the case of
11077 writing only parts of a row.
11078
11079 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11080 0 for NO_CURSOR.
11081
11082 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11083
11084 2002-04-23 Colin Walters <walters@verbum.org>
11085
11086 * buffer.c (syms_of_buffer): Doc fix.
11087
11088 2002-04-23 Gerd Moellmann <gerd@gnu.org>
11089
11090 * xterm.c (notice_overwritten_cursor): Handle the special case
11091 of the cursor being in the first blank non-text line at the
11092 end of a window.
11093
11094 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11095 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11096 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11097 bar cursors only, to make phys_cursor_width contain what its name
11098 suggests.
11099 (notice_overwritten_cursor): Consider the cursor image erased if
11100 the output area intersects the cursor image in y-direction.
11101
11102 2002-04-23 Simon Marshall <simon@gnu.org>
11103
11104 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11105 to XC_hand2.
11106
11107 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11108
11109 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11110
11111 2002-04-22 Kim F. Storm <storm@cua.dk>
11112
11113 * textprop.c (remove_properties): Fixed trap for malformed plist.
11114
11115 2002-04-22 Richard M. Stallman <rms@gnu.org>
11116
11117 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11118
11119 * window.c (make_window): Initialize height_fixed_p,
11120 last_cursor_off_p, and p->cursor_off_p slots.
11121
11122 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11123
11124 * fns.c (use-dialog-box): Doc fix.
11125
11126 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11127
11128 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11129 variables `row', `i' and `area'.
11130 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11131 toolkit library.
11132
11133 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11134
11135 * xfaces.c (clear_font_table): Don't free the default font of
11136 a frame even if it's on another display.
11137 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11138 that could be Qt.
11139
11140 2002-04-19 Juanma Barranquero <lektu@terra.es>
11141
11142 * indent.c (Fmove_to_column): Remove unused local variable
11143 `next_boundary_byte'.
11144 (current_column_1): Likewise.
11145
11146 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11147
11148 * msdos.c (Qhbar): New variable.
11149 (syms_of_msdos): Intern and staticpro it.
11150 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11151 cursor type.
11152
11153 2002-04-19 Dave Lambert <dlambert@acm.org>
11154
11155 Theses change implement an underscore-like (`hbar') cursor.
11156
11157 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11158
11159 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11160 Handle the `hbar' cursor type.
11161 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11162
11163 * xfns.c (Qhbar): New variable.
11164 (syms_of_xfns): Intern and staticpro it.
11165 (x_specified_cursor_type): Handle `hbar' cursor.
11166
11167 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11168 not defined.
11169
11170 2002-04-18 Richard M. Stallman <rms@gnu.org>
11171
11172 * textprop.c (remove_properties): New arg LIST allows scanning
11173 either a list or a plist.
11174 (interval_has_some_properties_list): New function, like
11175 interval_has_some_properties using list instead of plist.
11176 All callers changed.
11177 (Fremove_list_of_text_properties): New function.
11178 (syms_of_textprop): Defsubr it.
11179
11180 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11181
11182 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11183
11184 2002-04-17 Juanma Barranquero <lektu@terra.es>
11185
11186 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11187
11188 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11189
11190 * window.c (coordinates_in_window): Don't report on margin area
11191 if its width is zero.
11192
11193 2002-04-16 Jason Rumney <jasonr@gnu.org>
11194
11195 * w32fns.c (Fx_file_dialog): Decode file name before using.
11196
11197 * w32term.c (construct_drag_n_drop): Likewise.
11198
11199 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11200
11201 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11202 store load-history in pure space.
11203
11204 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11205
11206 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11207
11208 * xterm.c (Qlatin_1, Qutf_8): New vars.
11209 (syms_of_xterm): Initialize them.
11210 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11211 decoding the output of X*LookupString.
11212 Always use latin-1 to decode the output of XLookupString.
11213 Try Xutf8LookupString if XmbLookupString failed.
11214
11215 * region-cache.c (new_region_cache): Use BEG.
11216
11217 2002-04-16 Gerd Moellmann <gerd@gnu.org>
11218
11219 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11220 configuration files.
11221 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11222 returns 0.
11223
11224 2002-04-15 Andreas Schwab <schwab@suse.de>
11225
11226 * config.in: Regenerated using autoheader.
11227
11228 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11229 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11230 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11231 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11232 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11233 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11234 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11235 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11236 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11237 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11238 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11239 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11240 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11241 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11242 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11243 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11244 STACK_DIRECTION, now set by autoconf.
11245
11246 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11247
11248 * dispnew.c (marginal_area_string): Sort arguments.
11249
11250 * dispextern.h (marginal_area_string): Add prototype.
11251
11252 2002-04-13 Richard M. Stallman <rms@gnu.org>
11253
11254 * fileio.c (Finsert_file_contents):
11255 Don't call temp_output_buffer_setup--do just part, by hand.
11256
11257 * coding.c (run_pre_post_conversion_on_str):
11258 Don't call temp_output_buffer_setup--do just part, by hand.
11259
11260 * keyboard.c (command_loop_1): Don't call start_hourglass
11261 or cancel_hourglass when executing a macro.
11262
11263 * marker.c (count_markers): New function.
11264
11265 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11266 grow without limit. Move recently used elements to the front.
11267
11268 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11269
11270 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11271
11272 2002-04-12 Gerd Moellmann <gerd@gnu.org>
11273
11274 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11275 rows marginal areas.
11276 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11277 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11278
11279 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11280
11281 2002-04-12 Dave Love <fx@gnu.org>
11282
11283 * dispnew.c (marginal_area_string): New.
11284
11285 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11286 (Qleft_margin, Qright_margin): Declare.
11287 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11288
11289 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11290 note_mode_line_highlight and extended.
11291
11292 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11293 (make_lispy_event): Deal with mouse events in margins.
11294
11295 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11296
11297 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11298
11299 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11300 than deactivating the mark if tmm is set to `lambda'.
11301 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11302 Use a single event for HELP_EVENT.
11303 (Fexecute_extended_command): Save last_point_position.
11304
11305 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11306
11307 * lisp.h (Fpropertize): Add prototype.
11308
11309 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11310
11311 2002-04-10 Colin Walters <walters@verbum.org>
11312
11313 * config.in: Add HAVE_SHARED_GAME_DIR.
11314
11315 * callproc.c: (Vgame_score_directory): New variable.
11316 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11317
11318 2002-04-10 Richard M. Stallman <rms@gnu.org>
11319
11320 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11321
11322 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11323
11324 * minibuf.c (read_minibuf): Use empty_string.
11325 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11326 Short-circuit the search as soon as it "failed".
11327 (Fall_completions): Allow lambda forms and lists of strings for alist.
11328 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11329 when require_match is nil.
11330 (Ftest_completion): Rename from `test_completion' and export to elisp.
11331 Call the predicate also when alist is a list.
11332 Obey Vcompletion_regexp_list.
11333 (do_completion, Fminibuffer_complete_and_exit): Use it.
11334 (Fassoc_string): Rename from `assoc_for_completion'.
11335 Allow list of strings as well and export to elisp.
11336
11337 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11338
11339 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11340
11341 2002-04-08 Juanma Barranquero <lektu@terra.es>
11342
11343 * w32.c (sys_accept): Don't hide variable `s'.
11344
11345 2002-04-05 Gerd Moellmann <gerd@gnu.org>
11346
11347 * callint.c (Fcall_interactively): Use INTEGERP instead of
11348 NUMBERP for checking Vhistory_length.
11349
11350 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11351
11352 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11353 Doc fix to reflect it.
11354
11355 2002-04-04 Richard M. Stallman <rms@gnu.org>
11356
11357 * xdisp.c (display_mode_element): New arg RISKY.
11358 Disregard text props found or specified within a variable
11359 that isn't marked risky-local-variable.
11360 (Qrisky_local_variable): New variable.
11361 (syms_of_xdisp): Init and staticpro it.
11362
11363 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11364
11365 * undo.c (record_point): New fun.
11366 (record_delete, record_insert): Use it.
11367
11368 2002-04-03 Juanma Barranquero <lektu@terra.es>
11369
11370 * doc.c (Fdocumentation): Add missing parentheses.
11371 (Fdocumentation_property): Likewise.
11372
11373 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11374
11375 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11376 data is 0, just return nil.
11377
11378 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11379
11380 * msdos.c (syms_of_msdos): Fix last change with
11381 mouse_autoselect_window.
11382
11383 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11384
11385 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11386 mouse_autoselect_window.
11387
11388 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11389
11390 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11391 with system-specific keysyms. Use it also for unknown function keys.
11392
11393 * doc.c (reread_doc_file): Return whether reload was attempted.
11394 (Fdocumentation, Fdocumentation_property): Don't try to reload
11395 if the doc is 0 and only ask once.
11396
11397 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11398
11399 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11400
11401 * keyboard.c (read_char): If the event was Qselect_window,
11402 restore timer_idleness_start_time to its previous value.
11403
11404 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11405
11406 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11407
11408 * region-cache.c (new_region_cache): Use BEG.
11409
11410 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11411 Use BEG and BEG_BYTE.
11412
11413 * doc.c (get_doc_string): Return nil if the location is wrong.
11414 (reread_doc_file): New fun.
11415 (Fdocumentation, Fdocumentation_property):
11416 Call it if get_doc_string fails.
11417 (Fsnarf_documentation): Make it work for a dumped Emacs.
11418
11419 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11420 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11421
11422 * charset.c (Fstring): Allow 0 arguments.
11423
11424 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11425
11426 * process.c (DATAGRAM_CONN_P, list_processes_1)
11427 (Fprocess_datagram_address, Fset_process_datagram_address)
11428 (Fset_network_process_options, server_accept_connection):
11429 Fix some int/Lisp_Object confusions (thank you union types).
11430
11431 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11432
11433 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11434
11435 * w32term.c: Likewise.
11436 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11437
11438 * keyboard.c (Qselect_window): New symbol.
11439 (head_table): Use it.
11440 (keys_of_keyboard): Bound select-window event to handle-select-window.
11441 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11442
11443 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11444 (last_window): New variable.
11445 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11446 (note_mouse_movement): Remove reimplemented code in #if 0.
11447 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11448 Emacs windows.
11449
11450 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11451
11452 2002-03-31 Gerd Moellmann <gerd@gnu.org>
11453
11454 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11455 Callers changed.
11456
11457 2002-03-30 Richard M. Stallman <rms@gnu.org>
11458
11459 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11460 loop whenever it stops making progress.
11461
11462 * widget.c (set_frame_size): Don't call change_frame_size.
11463
11464 2002-03-30 Gerd Moellmann <gerd@gnu.org>
11465
11466 * dispnew.c (direct_output_for_insert):
11467 Call mark_window_display_accurate.
11468
11469 2002-03-29 Jason Rumney <jasonr@gnu.org>
11470
11471 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11472
11473 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11474
11475 * Makefile.in (lread.o): Depend on coding.h.
11476
11477 * lread.c (openp, Fload): Encode the file name before passing it
11478 to `stat', `access', and `emacs_open'.
11479 (openp): GCPRO the encoded file name. Don't recompute Lisp
11480 strings unnecessarily.
11481
11482 2002-03-29 Kim F. Storm <storm@cua.dk>
11483
11484 * fns.c (Flax_plist_put): Doc fix.
11485
11486 2002-03-28 Miles Bader <miles@gnu.org>
11487
11488 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11489
11490 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11491
11492 * process.c (set-network-process-options): Add usage.
11493 (make-network-process): Doc fix.
11494
11495 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11496
11497 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11498
11499 2002-03-26 Richard M. Stallman <rms@gnu.org>
11500
11501 * fns.c (Fsubstring_no_properties): New function.
11502 (Flax_plist_get, Flax_plist_put): New functions.
11503 (syms_of_fns): defsubr them.
11504
11505 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11506 don't test or alter w->update_mode_line.
11507
11508 * window.c (Fdisplay_buffer): Doc fix.
11509
11510 2002-03-24 Richard M. Stallman <rms@gnu.org>
11511
11512 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11513
11514 2002-03-24 Gerd Moellmann <gerd@gnu.org>
11515
11516 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11517 (Fdefmacro): Handle `(declare ...)'.
11518 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11519 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11520
11521 2002-03-24 Jason Rumney <jasonr@gnu.org>
11522
11523 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11524 (xbm_file_p): Add prototypes.
11525 (xbm_format, xbm_image_p): Sync with xfns.c.
11526 (reflect_byte): New function.
11527 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11528 (xbm_load_image): Create bitmaps with a depth of 1.
11529 (init_xfns): Enable XBM images.
11530
11531 2002-03-23 Jason Rumney <jasonr@gnu.org>
11532
11533 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11534 correctly. Do not pass up_modifier to keyboard buffer.
11535
11536 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11537
11538 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11539
11540 * Makefile.in (bootstrapclean): New target.
11541 (bootstrap-temacs, bootstrap-doc): Remove.
11542 (bootstrap-emacs): Use a bog-standard `temacs'.
11543 Don't bother to build a DOC file.
11544
11545 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11546
11547 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11548 in temacs even if !CANNOT_DUMP.
11549 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11550
11551 * alloc.c (check_pure_size): Only output a warning.
11552
11553 2002-03-22 Jason Rumney <jasonr@gnu.org>
11554
11555 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11556 supported.
11557
11558 * w32term.c (zv_bits): Declare as short, for word alignment.
11559 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11560 (syms_of_w32term): Define x-use-underline-position-properties.
11561
11562 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11563 (clear_image_cache): Block input, fix logic, clear matrices in
11564 all frames that share this cache.
11565
11566 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11567
11568 * emacs.c (main): Update the Copyright year in the blurb printed
11569 by "emacs --version".
11570
11571 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11572
11573 * xterm.c (XTread_socket): If XK_ISO_Lock and
11574 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11575 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11576
11577 2002-03-21 Kim F. Storm <storm@cua.dk>
11578
11579 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11580 menu-bar bindings in keymap and local-map properties _are_ used.
11581 But try keymap property first in accordance with 2002-01-03 patch.
11582 Added comment describing why this is not always reliable.
11583 (tool_bar_items): Ditto for tool-bar.
11584
11585 2002-03-21 Jason Rumney <jasonr@gnu.org>
11586
11587 * w32fns.c (x_clear_image_1): Disable color table code.
11588
11589 2002-03-21 Kim F. Storm <storm@cua.dk>
11590
11591 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11592 removed the wrong version of the DEFUN macro; fixed it.
11593
11594 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11595 Fmember rather than Fmemq).
11596 (Fprovide): Check that subfeatures is a list.
11597
11598 * process.c (QCfeature, QCdatagram): Removed variables.
11599 (QCtype, Qdatagram): New variables.
11600 (network_process_featurep): Removed function.
11601 (Fmake_network_process): Removed :feature check.
11602 Use :type 'datagram instead of :datagram t to create a datagram
11603 socket. This allows us to add other connection types (e.g. raw
11604 sockets) later in a consistent manner.
11605 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11606 supported subfeatures for feature make-network-process.
11607 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11608 Intern and staticpro QCtype and Qdatagram.
11609 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11610
11611 * xfns.c: (QCtype): Remove duplicate declaration and
11612 initialization (is now declared in process.c).
11613
11614 * w32fns.c: (QCtype): Remove duplicate declaration and
11615 initialization (is now declared in process.c).
11616
11617 2002-03-21 Richard M. Stallman <rms@gnu.org>
11618
11619 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11620 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11621 when jumping to `fail' to avoid undoing reg changes in the
11622 last iteration of the loop.
11623 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11624
11625 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11626 Depend on process.h.
11627
11628 2002-03-20 Jason Rumney <jasonr@gnu.org>
11629
11630 Most of the following changes are still conditional on HAVE_IMAGES
11631 which is not set by default on Windows.
11632
11633 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11634
11635 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11636 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11637 (four_corners_best, x_clear_image_1, x_clear_image)
11638 (x_alloc_image_color, postprocess_image)
11639 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11640 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11641 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11642
11643 * w32gui.h (struct XImage): Define.
11644
11645 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11646 extract mouse co-ordinates.
11647
11648 2002-03-20 Jason Rumney <jasonr@gnu.org>
11649
11650 * w32.c (init_winsock): Dynamically load new server and UDP
11651 socket functions.
11652 (socket_to_fd): New function.
11653 (sys_socket): Use it.
11654 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11655 (sys_recvfrom, sys_sendto): New wrapper functions.
11656
11657 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11658 and initialization.
11659
11660 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11661
11662 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11663
11664 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11665 Don't use "sun" as a variable, it's a predefined constant on Sun
11666 machines.
11667
11668 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11669
11670 * bytecode.c (Fbyte_code): Revert last change.
11671
11672 2002-03-19 Kim F. Storm <storm@cua.dk>
11673
11674 * makefile.w32-in (LIBS): Add $(WSOCK32).
11675 From David Ponce <dponce@voila.fr>.
11676
11677 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11678
11679 * process.c (wait_reading_process_input): Move variables `pname'
11680 and `pnamelen' down where they are used.
11681
11682 * bytecode.c (Fbyte_code): Discard unused computed value to
11683 prevent gcc warning.
11684
11685 * lisp.h (Fplist_member): Add prototype.
11686
11687 2002-03-18 Kim F. Storm <storm@cua.dk>
11688
11689 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11690 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11691
11692 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11693 Remove explicit GNU_LINUX settings for datagram support.
11694
11695 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11696
11697 * process.c (Fmake_network_process): Remove unused variable `sa'.
11698 Doc fix. Add usage:.
11699 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11700
11701 2002-03-17 Richard M. Stallman <rms@gnu.org>
11702
11703 * xdisp.c (cursor_type_changed): New variable.
11704 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11705 Clear it when clearing windows_or_buffers_changed.
11706 (try_cursor_movement, redisplay_window, try_window_id)
11707 (try_window_reusing_current_matrix): Test cursor_type_changed
11708 along with windows_or_buffers_changed.
11709
11710 * window.h (cursor_type_changed): New variable.
11711
11712 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11713 not update_mode_lines, and always set it to 1.
11714
11715 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11716 if no frames needed redrawing.
11717
11718 2002-03-17 Kim F. Storm <storm@cua.dk>
11719
11720 The following changes add support for network server processes,
11721 datagram connections, and local (unix) sockets.
11722
11723 * process.h (struct Lisp_Process): New member log.
11724 Doc fix: Member command used to indicate stopped network process.
11725 Doc fix: Member childp contains plist for network process.
11726 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11727
11728 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11729 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11730 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11731 New variables.
11732 (NETCONN1_P): New macro.
11733 (DATAGRAM_SOCKETS): New conditional symbol.
11734 (datagram_address): New array.
11735 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11736 (status_message): Use concat3.
11737 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11738 for a stopped network process.
11739 (Fset_process_buffer): Update contact plist for network process.
11740 (Fset_process_filter): Ditto. Don't enable input for stopped
11741 network processes. Server must listen, even if filter is t.
11742 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11743 New functions.
11744 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11745 (Fprocess_contact): Added KEY argument. Handle datagrams.
11746 (list_processes_1): Optionally show only processes with the query
11747 on exit flag set. Dynamically adjust column widths. Omit tty
11748 column if not needed. Report stopped network processes.
11749 Identify server and datagram network processes.
11750 (Flist_processes): New optional arg `query-only'.
11751 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11752 (conv_lisp_to_sockaddr, set_socket_options)
11753 (network_process_featurep, unwind_request_sigio): New helper functions.
11754 (Fprocess_datagram_address, Fset_process_datagram_address):
11755 (Fset_network_process_options): New lisp functions.
11756 (Fopen_network_stream): Removed. Now defined in simple.el.
11757 (Fmake_network_process): New lisp function. Code is based on previous
11758 Fopen_network_stream, but heavily reworked with new property list based
11759 argument list, support for datagrams, server processes, and local
11760 sockets in addition to old client-only functionality.
11761 (server_accept_connection): New function.
11762 (wait_reading_process_input): Use it to handle incoming connects.
11763 Do not enable input on a new connection if process is stopped.
11764 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11765 (send_process): Handle datagram sockets.
11766 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11767 network process is indicated by setting command field to t .
11768 (Fprocess_send_eof): No-op if datagram connection.
11769 (Fstatus_notify): Don't read input for a stream server socket or a
11770 stopped network process.
11771 (init_process): Initialize datagram_address array.
11772 (syms_of_process): Intern and staticpro new variables, defsubr new
11773 functions.
11774
11775 2002-03-16 Jason Rumney <jasonr@gnu.org>
11776
11777 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11778 startup case.
11779
11780 2002-03-16 Richard M. Stallman <rms@gnu.org>
11781
11782 * xdisp.c (redisplay_internal, redisplay_windows):
11783 Use list_of_error to call internal_condition_case_1.
11784 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11785 so as to catch all errors with no possibility of debugger redisplay.
11786 (list_of_error): New variable.
11787 (syms_of_xdisp): Init and staticpro it.
11788
11789 * print.c (print_object): Delete `\ ' from printed rep of frame.
11790
11791 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11792
11793 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11794 until its implementation is fixed.
11795
11796 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11797
11798 * xfns.c (png_load): Remove unused variable `gamma_str'.
11799
11800 2002-03-14 Richard M. Stallman <rms@gnu.org>
11801
11802 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11803
11804 2002-03-14 Miles Bader <miles@gnu.org>
11805
11806 * intervals.c (adjust_for_invis_intang): New function.
11807 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11808 work for dealing with invisible+intangible regions. Do so before
11809 and after both forward and backward movements, to handle both
11810 front-sticky and rear-sticky cases.
11811 * textprop.c (text_property_stickiness): Function moved here from
11812 `editfns.c'.
11813 * intervals.h (text_property_stickiness): New declaration.
11814 * editfns.c (char_property_eq): Function removed.
11815 (text_property_stickiness): Function moved to `textprop.c'.
11816
11817 2002-03-13 Jason Rumney <jasonr@gnu.org>
11818
11819 * config.in: Add STRFTIME_NO_POSIX2.
11820
11821 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11822 and %OX when underlying strftime does not.
11823
11824 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11825
11826 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11827 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11828 line) to avoid annoying flicker.
11829 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11830 (XTread_socket): Mark it static.
11831
11832 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11833
11834 2002-03-13 Kim F. Storm <storm@cua.dk>
11835
11836 * puresize.h (BASE_PURESIZE): Increase to 775000.
11837
11838 2002-03-12 Juanma Barranquero <lektu@terra.es>
11839
11840 * editfns.c (syms_of_editfns): Fix typo.
11841
11842 2002-03-12 Gerd Moellmann <gerd@gnu.org>
11843
11844 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11845 Include termopt.h for interrupt_input.
11846
11847 2002-03-11 Andreas Schwab <schwab@suse.de>
11848
11849 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11850
11851 2002-03-11 Gerd Moellmann <gerd@gnu.org>
11852
11853 * xterm.c (note_mouse_movement): Put code for
11854 x_autoselect_window_p in #if 0.
11855
11856 * lread.c (Fload): Don't assume that message_with_string uses the
11857 string it is given like a C string.
11858
11859 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11860
11861 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11862
11863 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11864 x_session_have_connection.
11865 (x_initialize): Add call to x_session_initialize.
11866
11867 * termhooks.h (enum event_kind): Add save_session_event.
11868
11869 * keyboard.c: Add Emacs event save_session_event.
11870
11871 * emacs.c (main): Add call to syms_of_xsmfns.
11872
11873 * lisp.h: Declare syms_of_xsmfns as extern.
11874
11875 * config.in: Add HAVE_X_SM.
11876
11877 * Makefile.in (LIBXT): Add -lSM -lICE
11878 if HAVE_X_SM and not USE_X_TOOLKIT.
11879 (XOBJ): New file xsmfns.c added.
11880
11881 * xsmfns.c: New file for X session management.
11882
11883 2002-03-09 Jason Rumney <jasonr@gnu.org>
11884
11885 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11886 read-only when setting modified time.
11887
11888 2002-03-08 Gerd Moellmann <gerd@gnu.org>
11889
11890 * xdisp.c (move_it_vertically_backward): At the end of the function,
11891 when moving forward by lines, treat terminal frames specially.
11892
11893 * keyboard.c (echo_char): Make sure to add a separator between
11894 keys even if echo_dash hasn't been called.
11895
11896 * xdisp.c: Use new string macros.
11897 (update_echo_area): Pass number of bytes to message3 instead of
11898 number of chars.
11899 (set_message_1): Don't access a string's size_byte directly.
11900 (decode_mode_spec_coding): Use number of bytes of eoltype string
11901 instead number of chars.
11902
11903 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11904
11905 2002-03-08 Juanma Barranquero <lektu@terra.es>
11906
11907 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11908 24-bit.
11909
11910 2002-03-06 Jason Rumney <jasonr@gnu.org>
11911
11912 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11913
11914 2002-03-06 Gerd Moellmann <gerd@gnu.org>
11915
11916 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11917 (cancel_echoing, echo_length, echo_truncate): Changed to
11918 work with new kboard definition.
11919 (echo_now): Use message3_nolog instead of message2_nolog.
11920
11921 * alloc.c (mark_kboards): Mark echo_string.
11922
11923 * keyboard.h (ECHOBUFSIZE): Removed.
11924 (struct kboard): Member echoptr removed, member echobuf renamed
11925 to echo_string.
11926
11927 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11928 message3 instead of message2 to display the message using STRING's
11929 text properties.
11930
11931 2002-03-05 Andreas Schwab <schwab@suse.de>
11932
11933 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11934
11935 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11936
11937 * frame.c (default-frame-alist): Explain that setting it doesn't
11938 affect existing frames.
11939
11940 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11941
11942 * indent.c (skip_invisible): Fix my brain fart.
11943
11944 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11945
11946 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11947
11948 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11949 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11950 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11951 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11952 and variables to use EMACS_INT instead of just int.
11953
11954 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11955
11956 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11957
11958 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11959 environment, pass it down with corrected value.
11960
11961 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11962
11963 * lread.c (read_filtered_event): Do not call start_hourglass
11964 before returning.
11965
11966 2002-03-04 Juanma Barranquero <lektu@terra.es>
11967
11968 * w32term.c (x_display_and_set_cursor): Fix typo.
11969
11970 2002-03-03 Richard M. Stallman <rms@gnu.org>
11971
11972 * fileio.c (Fmake_temp_name): Doc fix.
11973
11974 2002-03-03 Gary Wong <gtw@gnu.org>
11975
11976 * termcap.c [!emacs]: Replace ospeed for building standalone
11977 libtermcap, for binary compatibility.
11978
11979 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11980
11981 2002-03-03 Richard M. Stallman <rms@gnu.org>
11982
11983 * xrdb.c (file_p): Rename arg `path' to `filename'.
11984
11985 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11986 only if it is an integer.
11987
11988 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11989 If png_get_sRGB gives an answer, call png_set_gamma
11990 using the default image gamma value.
11991
11992 * lread.c (read1): When reading from a file, default string to
11993 multibyte only if it has some multibyte characters.
11994
11995 * print.c (print_object): Output multibyte chars 128...255
11996 using \x even if ! print_escape_multibyte.
11997
11998 * xdisp.c (display_mode_element): Move the places where
11999 bytepos, charpos, this, and lisp_string are set.
12000 Use lisp_string to set bytepos.
12001
12002 * xdisp.c (redisplay_internal):
12003 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12004
12005 * xdisp.c (display_mode_element): Merge properties specified with
12006 :propertize onto those that come with the string.
12007
12008 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12009
12010 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12011 automatic-hscrolling. Users changed.
12012 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12013 Users changed.
12014 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12015
12016 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12017
12018 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12019
12020 2002-03-02 Kim F. Storm <storm@cua.dk>
12021
12022 * window.c (Fminibuffer_selected_window): New function.
12023 (syms_of_window): Defsubr it.
12024
12025 2002-03-01 Kim F. Storm <storm@cua.dk>
12026
12027 * window.h (struct window): New member phys_cursor_width.
12028
12029 * window.c (make_window, replace_window): Init phys_cursor_width.
12030
12031 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12032 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12033
12034 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12035 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12036
12037 * lisp.h (GCPRO6): New macro.
12038
12039 * process.c (Fopen_network_stream): Use GCPRO6.
12040
12041 2002-03-01 Kim F. Storm <storm@cua.dk>
12042
12043 * process.c (Qconnect, Qfailed): New variables.
12044 (syms_of_process): Intern and staticpro them.
12045 (Fprocess_status): Document connect and failed return values.
12046 [NON_BLOCKING_CONNECT]: New conditional.
12047 (connect_wait_mask, num_pending_connects): New variables.
12048 (status_message): Convert Qfailed status.
12049 (Fopen_network_stream): Added support for non-blocking connect.
12050 New optional args: filter, sentinel, non_blocking. Doc updated.
12051 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12052 (deactivate_process): Handle pending non-blocking connect.
12053 (wait_reading_process_input): Poll for status of non-blocking
12054 connects. Exec sentinel directly when connect succeeds.
12055 (status_notify): Don't read process output if not yet connected.
12056
12057 2002-02-28 Kim F. Storm <storm@cua.dk>
12058
12059 * window.c: (minibuf_selected_window): Renamed from
12060 Vminibuf_selected_window. Users changed.
12061 (syms_of_window): Staticpro it.
12062
12063 2002-02-26 Kim F. Storm <storm@cua.dk>
12064
12065 The following changes add a new Vminibuf_selected_window variable
12066 which is similar to Vminibuf_scroll_window, but which is only set
12067 on entry to the minibuffer (from a non-minibuffer window):
12068
12069 * window.c: (Vminibuf_selected_window): New variable.
12070 (struct save_window_data): New member minibuf_selected_window.
12071 (Fset_window_configuration): Restore Vminibuf_selected_window.
12072 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12073 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12074 (compare_window_configurations): Compare minibuf_selected_window.
12075
12076 * window.h: (Vminibuf_selected_window): Declare extern.
12077
12078 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12079 entry to minibuffer or on entry from a non-minibuffer window.
12080
12081 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12082 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12083
12084 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12085 instead of Vminibuf_scroll_window when deciding in which window
12086 the region should be highlighted. Consequently, the region remains
12087 highlighteded even when a completion buffer is also displayed.
12088
12089 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12090
12091 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12092
12093 * xselect.c (Qcompound_text_with_extensions): Renamed from
12094 Qcompound_text_no_extensions.
12095 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12096
12097 2002-02-26 Juanma Barranquero <lektu@terra.es>
12098
12099 * w32proc.c (syms_of_ntproc): Doc fix.
12100
12101 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12102
12103 * intervals.h: Include "dispextern.h" unconditionally.
12104
12105 2002-02-24 Jason Rumney <jasonr@gnu.org>
12106
12107 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12108 and disp-table.elc.
12109 (lisp): Add emacs-lisp/backquote.elc.
12110
12111 2002-02-24 Kim F. Storm <storm@cua.dk>
12112
12113 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12114 The validation of the event type was too strict as it didn't
12115 allow string events; buffer names are used in bindings for
12116 menu-bar-select-buffer (see `menu-bar-update-buffers').
12117
12118 2002-02-23 Kim F. Storm <storm@cua.dk>
12119
12120 The following changes rework my patch of 2002-02-06 which
12121 added command remapping by entering the commands directly into
12122 the keymaps. Now, command remapping uses an explicit `remap'
12123 prefix in the keymaps, i.e. [remap COMMAND].
12124
12125 * keymap.c (Qremap, remap_command_vector): New variables.
12126 (is_command_symbol): Removed function.
12127 (Fdefine_key): No longer accept a symbol for KEY.
12128 Added validation of [remap COMMAND] argument for KEY.
12129 The DEF is no longer required to be a symbol when remapping a command.
12130 (Fremap_command): New function to remap command through keymaps.
12131 (Flookup_key): Perform command remapping initiated by
12132 Fremap_command directly for speed.
12133 (Fkey_binding): Use Fremap_command for command remapping.
12134 (where_is_internal): Handle new command remapping representation.
12135 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12136 staticpro them. Defsubr Fremap_command.
12137
12138 * keymap.h (Fremap_command): Declare extern.
12139 (is_command_symbol): Remove extern.
12140
12141 * keyboard.c (command_loop_1): Use Fremap_command for command
12142 remapping; now try command remapping for all symbols.
12143
12144 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12145
12146 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12147
12148 2002-02-23 Jason Rumney <jasonr@gnu.org>
12149
12150 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12151 on the string before encoding it.
12152 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12153 after decoding it.
12154
12155 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12156
12157 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12158
12159 * w32term.c (enter_timestamp): Remove unused static variable to
12160 prevent warning.
12161
12162 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12163
12164 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12165
12166 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12167
12168 * xselect.c (selection_data_to_lisp_data): Fix last change.
12169
12170 2002-02-22 Jason Rumney <jasonr@gnu.org>
12171
12172 * w32term.h (struct w32_output): New member menu_command_in_progress.
12173
12174 * w32menu.c (menubar_selection_callback): Free the menu and
12175 clear the menu_command_in_progress flag.
12176
12177 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12178 (menu_free_timer): New variable.
12179 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12180 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12181 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12182 menu command is in progress.
12183 <WM_COMMAND>: Set the menu_command_in_progress flag.
12184 Kill any menu_free_timer that is running.
12185
12186 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12187 Call ExtTextOutA rather than ExtTextOut.
12188
12189 2002-02-22 Eli Zaretskii <eliz@gnu.org>
12190
12191 * puresize.h (BASE_PURESIZE): Increase to 755000.
12192
12193 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12194
12195 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12196 on the string before encoding it.
12197 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12198 after decoding it.
12199
12200 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12201
12202 Support for ICCCM Extended Segments in X selections:
12203
12204 * xselect.c <Qcompound_text_no_extensions>: New variable.
12205 (syms_of_xselect): Intern and staticpro it.
12206 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12207 selection text.
12208 (lisp_data_to_selection_data): If next-selection-coding-system is
12209 compound-text-no-extensions, set the type of selection to be
12210 compound-text.
12211
12212 * xterm.h (x_encode_text): Update prototype.
12213
12214 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12215 callers changed. If SELECTIONP is non-zero, run the
12216 pre-write-conversion function before encoding the selection text.
12217
12218 2002-02-21 Kim F. Storm <storm@cua.dk>
12219
12220 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12221
12222 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12223 Correct composing of language-change event.
12224
12225 2002-02-20 Kim F. Storm <storm@cua.dk>
12226
12227 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12228 bindings at PT when building menu (the menu is not updated often
12229 enough for this to work reliable).
12230 (tool_bar_items): Likewise.
12231 (current_active_maps): Removed unused (and buggy) function.
12232
12233 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12234
12235 * xfns.c (gif_load): Use correct width and height for GIF images.
12236
12237 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12238
12239 * floatfns.c (Fatan): Accept an optional second arg and call
12240 atan2 if passed 2 args.
12241
12242 2002-02-18 Jason Rumney <jasonr@gnu.org>
12243
12244 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12245
12246 2002-02-17 Jason Rumney <jasonr@gnu.org>
12247
12248 * w32term.c (x_autoselect_window_p): New variable.
12249 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12250 (note_mouse_movement): Use it.
12251
12252 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12253
12254 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12255
12256 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12257 New variables.
12258 (syms_of_w32fns): Intern and staticpro them.
12259 (x_frame_parms) <"fullscreen">: New parameter.
12260 (x_fullscreen_move, x_set_fullscreen): New functions.
12261 (x_set_frame_parameters): Support Qfullscreen.
12262 (x_real_positions): Save x/y_pixels_diff frame params.
12263 (x_figure_window_size): Support full-screen frames.
12264 (Fx_create_frame): Default the fullscreen parameter.
12265
12266 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12267 (x_fullscreen_adjust): New functions.
12268 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12269 fullscreen. Call x_check_fullscreen_move, and set the
12270 want_fullscreen member of output_data.w32
12271 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12272
12273 * w32term.h: New enum for FULLSCREEN_* constants.
12274 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12275 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12276 (x-fullscreen-adjust): New prototype.
12277
12278 2002-02-17 Kim F. Storm <storm@cua.dk>
12279
12280 * frame.c: (Vmouse_highlight): New variable.
12281 (syms_of_frame): DEFVAR_LISP it.
12282
12283 * frame.h: (Vmouse_highlight): Declare extern.
12284
12285 * xterm.h (struct x_display_info): Add mouse_face_hidden.
12286
12287 * xterm.c (disable_mouse_highlight): Removed variable.
12288 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12289 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12290 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12291 and on after keyboard input.
12292 (x_term_init): Initialize mouse_face_hidden.
12293
12294 * msdos.h (struct display_info): Add mouse_face_hidden.
12295
12296 * msdos.c (disable_mouse_highlight): Removed variable.
12297 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12298 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12299 (internal_terminal_init): Initialize mouse_face_hidden.
12300 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12301 and on after keyboard input.
12302
12303 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
12304
12305 * w32term.c (disable_mouse_highlight): Removed variable.
12306 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12307 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12308 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12309 and on after keyboard input.
12310 (w32_initialize_display_info): Initialize mouse_face_hidden.
12311
12312 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
12313
12314 * msdos.c (last_mouse_window): New variable.
12315 (dos_rawgetc): Fix last change--if the mouse is in the same window
12316 as recorded in last_mouse_window, don't select this window.
12317
12318 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
12319
12320 * msdos.c (x_autoselect_window_p): New variable.
12321 (syms_of_msdos): Defvar it.
12322 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12323 which the last mouse movement occured, unless it is already selected.
12324
12325 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12326 New variables.
12327 (syms_of_xdisp): DEVFAR them.
12328 (hscroll_window_tree): Use automatic_hscroll_margin and
12329 Vautomatic_hscroll_step to compute the amount of window scrolling.
12330
12331 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12332
12333 * xterm.c (x-autoselect-window): New variable.
12334 (note_mouse_movement): Use it.
12335
12336 * keyboard.c: Do not include "systime.h" twice.
12337
12338 2002-02-15 Andreas Schwab <schwab@suse.de>
12339
12340 * puresize.h (BASE_PURESIZE): Increase to 9/5.
12341
12342 * alloc.c (NSTATICS): Increase to 1280.
12343
12344 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
12345
12346 * alloc.c (NSTATICS): Bump to 1026.
12347
12348 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12349 (Vx_super_keysym): New variables.
12350 (syms_of_xterm): DEFVAR_LISP them.
12351 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12352 variables to determine which keys to use for the various modifiers.
12353
12354 2002-02-13 Kim F. Storm <storm@cua.dk>
12355
12356 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12357 (mode_line_in_non_selected_windows): New variable.
12358 (syms_of_window): DEFVAR_BOOL it.
12359
12360 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12361 Use mode_line_in_non_selected_windows.
12362 (mode_line_in_non_selected_windows): Declare extern.
12363 (Vmode_line_in_non_selected_windows): Removed extern.
12364
12365 2002-02-13 Richard M. Stallman <rms@gnu.org>
12366
12367 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12368 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12369 (Fclear_this_command_keys): Doc fixes.
12370
12371 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12372 (update_face_from_frame_parameter): Increment face_change_count
12373 and windows_or_buffers_changed to force redisplay using changed faces.
12374
12375 * xdisp.c (QCpropertize): New variable.
12376 (mode_line_proptrans_alist): New variable.
12377 (display_mode_element): New arg PROPS; all calls changed.
12378 Implement this, for strings.
12379 Handle literal output of strings by sharing the
12380 main-line code for strings, using local var `literal'.
12381 Handle :propertize feature.
12382 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12383 mode_line_proptrans_alist.
12384
12385 2002-02-11 Kim F. Storm <storm@cua.dk>
12386
12387 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12388 (syms_of_window): DEFVAR_LISP it.
12389
12390 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12391 (CURRENT_MODE_LINE_FACE_ID): Use it.
12392 (Vmode_line_in_non_selected_windows): Declare extern.
12393
12394 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12395 to get mode line face.
12396
12397 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
12398
12399 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12400 variables; cus-start.el doesn't need them anymore.
12401
12402 2002-02-09 Kim F. Storm <storm@cua.dk>
12403
12404 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12405 reduction. This fixes a display problem where stray newlines were
12406 inserted in the window (corrected by C-l). Clarified code (IMHO).
12407
12408 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
12409
12410 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
12411
12412 * xdisp.c (display_mode_lines): Fix last change.
12413
12414 2002-02-09 Jason Rumney <jasonr@gnu.org>
12415
12416 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12417 match each other.
12418 (w32_load_system_font): Prevent Cleartype fonts from loading.
12419 (Fx_show_tip): Ensure tip frames are above other topmost windows.
12420
12421 2002-02-09 Kim F. Storm <storm@cua.dk>
12422
12423 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12424 (CURRENT_MODE_LINE_HEIGHT): Use it.
12425 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
12426
12427 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12428 (pos_visible_p, handle_face_prop): Likewise.
12429 (display_mode_lines): Likewise, but for the real selected window.
12430 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
12431
12432 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12433 in non-selected windows.
12434 (realize_basic_faces): Realize it.
12435 (syms_of_term): Intern and staticpro it.
12436
12437 2002-02-08 Kim F. Storm <storm@cua.dk>
12438
12439 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12440 Changed mail addresses to emacs-devel@gnu.org.
12441
12442 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
12443
12444 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12445 ~user, and there's no such user, don't discard everything before ~user.
12446
12447 * floatfns.c (Fround): Doc fix.
12448
12449 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12450
12451 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
12452
12453 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
12454
12455 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
12456
12457 2002-02-07 Kim F. Storm <storm@cua.dk>
12458
12459 * keymap.c (where_is_internal): Only check whether definition is
12460 remapped if it fulfills is_command_symbol.
12461
12462 2002-02-07 Andreas Schwab <schwab@suse.de>
12463
12464 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
12465
12466 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
12467
12468 2002-02-06 Kim F. Storm <storm@cua.dk>
12469
12470 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12471 defining command remapping. Doc updated.
12472 (Flookup_key): Remap command through keymap if KEY is a symbol.
12473 (is_command_symbol): New function.
12474 (Fkey_binding): Use it. New optional argument NO-REMAP.
12475 Doc updated. Callers changed. Perform command remapping via
12476 recursive call unless that arg is non-nil.
12477 (where_is_internal): New argument no_remap. Callers changed.
12478 Call recursively to find original key bindings for a remapped
12479 comand unless that arg is non-nil.
12480 (Fwhere_is_internal): New optional argument NO-REMAP.
12481 Doc updated. Callers changed. Pass arg to where_is_internal.
12482
12483 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12484 (is_command_symbol): Added prototype.
12485
12486 * keyboard.c (Vthis_original_command): New variable.
12487 (syms_of_keyboard): DEFVAR_LISP it.
12488 (command_loop_1): Set it, and perform command remapping.
12489
12490 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12491
12492 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
12493
12494 2002-02-06 Jason Rumney <jasonr@gnu.org>
12495
12496 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
12497
12498 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
12499
12500 * charset.c (get_charset_id): Use if-else instead of ?:.
12501
12502 2002-02-06 Richard M. Stallman <rms@gnu.org>
12503
12504 * filelock.c (S_ISLNK): Define if not defined.
12505
12506 2002-02-03 Richard M. Stallman <rms@gnu.org>
12507
12508 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
12509
12510 * lread.c (read1): Redesign strategy for force_multibyte and
12511 force_singlebyte. Now is_multibyte records whether read_buffer
12512 is multibyte. Encountering any multibyte character makes it so.
12513
12514 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
12515
12516 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12517 with the same sequence, map that sequence to f10 rather than f0.
12518
12519 2002-02-03 Andreas Schwab <schwab@suse.de>
12520
12521 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12522 latter never being defined on GNU/Linux.
12523
12524 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12525
12526 * xfaces.c (realize_default_face): Don't set the weight and slant of
12527 the default face to Qnormal, unless these attributes are unspecified.
12528
12529 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12530
12531 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12532 Call cancel_hourglass unconditionally.
12533
12534 * eval.c (Fsignal): Remove duplicated declaration of
12535 the variable `display_hourglass_p'.
12536
12537 2002-01-31 Richard M. Stallman <rms@gnu.org>
12538
12539 * editfns.c (region_limit): Nicer error message.
12540
12541 * coding.c (decode_composition_emacs_mule):
12542 Give up if NCOMPONENT gets too large to index `component'.
12543
12544 * callint.c (check_mark): New arg to specify clearer error message.
12545 Callers changed.
12546
12547 2002-01-27 Richard M. Stallman <rms@gnu.org>
12548
12549 * minibuf.c (Fcompleting_read): Doc fix.
12550
12551 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12552
12553 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12554 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12555 Fix doc-strings.
12556
12557 2002-01-26 Richard M. Stallman <rms@gnu.org>
12558
12559 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
12560
12561 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12562 and scroll_up_aggressively.
12563
12564 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12565
12566 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
12567
12568 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
12569
12570 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12571 (Fprevious_property_change, Fprevious_single_property_change):
12572 Stay within the narrowed-buffer boundaries.
12573
12574 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
12575
12576 * term.c (Ftty_display_color_cells): New function.
12577 (syms_of_term): Defsubr it.
12578 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12579 argument name to DISPLAY. Doc fix.
12580
12581 * dispextern.h: Add prototype for set_tty_color_mode and
12582 tty_setup_colors.
12583
12584 2002-01-24 Jason Rumney <jasonr@gnu.org>
12585
12586 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12587 If region left to draw is not what was expected, mark the frame as
12588 garbaged.
12589
12590 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12591 Combine the regions returned by BeginPaint and GetUpdateRect.
12592
12593 2002-01-23 Jason Rumney <jasonr@gnu.org>
12594
12595 * w32term.c (x_update_window_begin): Only hide caret if
12596 w32_use_visible_system_caret is set.
12597 (x_update_window_end): Only show caret if
12598 w32_use_visible_system_caret is set.
12599 (syms_of_w32term): Handle SystemParametersInfo call failing.
12600
12601 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12602
12603 2002-01-22 Richard M. Stallman <rms@gnu.org>
12604
12605 * unexelf.c (unexec): Define n so as to cause compilation error
12606 for the code where people have often written n instead of nn.
12607
12608 * .gdbinit (hookpost-run): Defined.
12609
12610 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12611
12612 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12613
12614 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12615
12616 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12617 if fullscreen is being set.
12618
12619 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12620
12621 * minibuf.c (Fminibuffer_contents)
12622 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12623 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12624
12625 2002-01-21 Richard M. Stallman <rms@gnu.org>
12626
12627 * window.c (check_frame_size): Fix minimum height calculation.
12628
12629 2002-01-20 Ken Raeburn <raeburn@gnu.org>
12630
12631 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12632 height before comparison.
12633 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12634
12635 2002-01-20 Jason Rumney <jasonr@gnu.org>
12636
12637 * w32term.c (w32_system_caret_width): Remove.
12638 (w32_use_visible_system_caret): New user flag.
12639 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12640 Windows reports a screen reader running.
12641 (x_update_window_begin): Hide the system caret.
12642 (x_update_window_end): Show the system caret.
12643 (x_display_and_set_cursor): Don't draw a cursor when
12644 w32_use_visible_system_caret is set. Do not adjust width.
12645
12646 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12647 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12648 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12649 the user requests it. Use system default width when creating.
12650 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12651
12652 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12653 New window messages.
12654
12655 2002-01-20 Richard M. Stallman <rms@gnu.org>
12656
12657 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12658
12659 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12660
12661 * doprnt.c (doprnt1): Fix typos in error call.
12662
12663 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12664
12665 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12666
12667 2002-01-20 Jason Rumney <jasonr@gnu.org>
12668
12669 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12670 that Windows returns. If a double check fails, try to guess how
12671 ExtTextOut is going to act.
12672
12673 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12674 in place of stricmp.
12675 (w32_list_synthesized_fonts): Removed.
12676 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12677 (struct enumfont_t): New element; list.
12678 (enum_font_cb2): List all style and charset variations of a font.
12679 (Fw32_select_font): New optional argument; include_proportional.
12680 Exclude vertical fonts. Exclude proportional fonts unless
12681 include_proportional is non-nil.
12682 (w32_enable_synthesized_fonts): Change to a boolean.
12683 (Fw32_send_sys_command): Doc fix.
12684
12685 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12686
12687 * dispnew.c (update_frame): Move the variable `tem' to the block
12688 where it is used.
12689
12690 2002-01-19 Jason Rumney <jasonr@gnu.org>
12691
12692 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12693 call to face-set-after-frame-default.
12694
12695 2002-01-18 Richard M. Stallman <rms@gnu.org>
12696
12697 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12698 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12699
12700 2002-01-17 Richard M. Stallman <rms@gnu.org>
12701
12702 * window.c (enlarge_window): When exceeding size of parent,
12703 directly delete all the siblings instead of trying to resize it.
12704
12705 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12706
12707 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12708
12709 2002-01-16 Henrik Enberg <henrik@enberg.org>
12710
12711 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12712
12713 2002-01-16 Kim F. Storm <storm@cua.dk>
12714
12715 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12716 is invisible. This can happen if cursor is on top line of a
12717 window, and we switch to a buffer with a header line.
12718
12719 * w32term.c (x_erase_phys_cursor): Ditto.
12720
12721 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12722
12723 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12724 `dont_resize' only when used.
12725
12726 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12727
12728 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12729
12730 * xdisp.c (display_mode_element): When computing charpos, depend
12731 on multibyteness of elt, not the text in field.
12732
12733 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12734
12735 * buffer.c (Fkill_all_local_variables):
12736 Increment `update_mode_lines' only once.
12737
12738 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12739
12740 * lisp.h (adjust_after_replace_noundo)
12741 (Fupdate_coding_systems_internal): Add prototypes.
12742
12743 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12744
12745 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12746
12747 Support for the --color command-line argument and tty-color-mode
12748 frame parameter:
12749
12750 * term.c (tty_default_color_capabilities, tty_setup_colors)
12751 (set_tty_color_mode): New functions.
12752 (term_init): Call tty_default_color_capabilities.
12753 (Qtty_color_mode_alist): New variable.
12754 (syms_of_term): Intern and staticpro it.
12755
12756 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12757 frames.
12758 (do_switch_frame): For termcap frames, switch the tty
12759 color mode as specified by the frame's parameters.
12760 (Qtty_color_mode): New variable.
12761 (syms_of_frame): Intern and staticpro it.
12762
12763 * emacs.c (USAGE2): Add the --color option.
12764 (standard_args): Ditto.
12765
12766 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12767
12768 * xterm.h (struct x_output): New members want_fullscreen,
12769 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12770 y_pixels_outer_diff.
12771 New enum for FULLSCREEN_* constants.
12772 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12773 is NULL.
12774 (x_fullscreen_adjust): Add prototype.
12775
12776 * emacs.c (USAGE2): Add the new full-screen arguments.
12777 (standard_args): Ditto.
12778
12779 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12780 New variables.
12781 (syms_of_xfns): Intern and staticpro them.
12782 (x_frame_parms) <"fullscreen">: New parameter.
12783 (x_fullscreen_move, x_set_fullscreen): New functions.
12784 (x_set_frame_parameters): Support for Qfullscreen.
12785 (x_real_positions): More accurate computation of the frame position.
12786 (x_figure_window_size): Support full-screen frames.
12787 (Fx_create_frame): Default the fullscreen parameter.
12788
12789 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12790 (XTread_socket) <Expose>: Call x_check_fullscreen.
12791 <ConfigureNotify>: Don't resize to fullscreen.
12792 Call x_check_fullscreen_move, and set the want_fullscreen member of
12793 output_data.x.
12794
12795 2002-01-13 Jason Rumney <jasonr@gnu.org>
12796
12797 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12798 for mice with more than 3 buttons.
12799
12800 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12801 (w32_read_socket): Handle new "XBUTTON" messages.
12802
12803 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12804 (syms_of_w32fns): DEFVAR_BOOL it.
12805 (w32_wnd_proc): Handle new "XBUTTON" messages.
12806
12807 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12808
12809 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12810
12811 2002-01-13 Andreas Schwab <schwab@suse.de>
12812
12813 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12814
12815 2002-01-12 Andreas Schwab <schwab@suse.de>
12816
12817 * .gdbinit (xbuffer): Remove address operator since data is now a
12818 pointer.
12819
12820 2002-01-11 Richard M. Stallman <rms@gnu.org>
12821
12822 * insdel.c (adjust_after_replace_noundo): New function.
12823
12824 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12825
12826 2002-01-09 Jason Rumney <jasonr@gnu.org>
12827
12828 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12829 when checking for multiple frames.
12830
12831 2002-01-08 Richard M. Stallman <rms@gnu.org>
12832
12833 * window.c (delete_window): Rewrite the code for changing the
12834 selected window to handle the case where WINDOW is not a leaf.
12835
12836 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12837
12838 * process.c (send_process): Set src_multibyte to 1 after the call
12839 top setup_coding_system, not before the call.
12840
12841 2002-01-07 Jason Rumney <jasonr@gnu.org>
12842
12843 * xmenu.c (set_frame_menubar, xmenu_show):
12844 (xdialog_show): Initialize wv->help to Qnil.
12845
12846 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12847 (w32_dialog_show): Initialize wv->help to Qnil.
12848
12849 2002-01-06 Jason Rumney <jasonr@gnu.org>
12850
12851 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12852
12853 * w32menu.c (w32_menu_display_help): Revert last change.
12854
12855 * xmenu.c (menu_highlight_callback): Revert last change.
12856
12857 2002-01-06 Andreas Schwab <schwab@suse.de>
12858
12859 * insdel.c (make_gap_larger): Make sure buffer size does not
12860 overflow range of int.
12861
12862 2002-01-05 Jason Rumney <jasonr@gnu.org>
12863
12864 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12865 OVERLAPS_P.
12866
12867 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12868
12869 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12870 to the left or to the right of the pointer, put it against
12871 the left screen edge.
12872 (x_frame_parms): Add missing braces around initializer.
12873
12874 * w32term.c (x_setup_relief_colors): Don't compute an image's
12875 background color if it doesn't have a Pixmap.
12876 (notice_overwritten_cursor): Don't depend on
12877 output_cursor and updated_area. Compare pixel coordinates with
12878 window's cursor pixel coordinates.
12879 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12880 Call notice_overwritten_cursor with new arg list.
12881 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12882 unconditionally.
12883 (x_draw_image_relief): Use predefined macro instead of
12884 constant when the value of `tool_bar_button_relief' is negative.
12885
12886 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12887
12888 2002-01-04 Richard M. Stallman <rms@gnu.org>
12889
12890 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12891
12892 2002-01-03 Richard M. Stallman <rms@gnu.org>
12893
12894 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12895 (Fkey_binding): Try the `keymap' property map first.
12896 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12897 minor mode bindings.
12898
12899 2002-01-03 Kim F. Storm <storm@cua.dk>
12900
12901 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12902
12903 2002-01-02 Richard M. Stallman <rms@gnu.org>
12904
12905 * keyboard.c (read_key_sequence): Handle the keymap property
12906 before minor mode maps.
12907
12908 * editfns.c (Fformat): Update thissize from field_width
12909 based on the actual width, in the string case.
12910
12911 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12912
12913 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12914 when used as truth value to prevent gcc warnings.
12915
12916 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12917 * w32proc.c: Include <config.h>.
12918
12919 2002-01-01 Andreas Schwab <schwab@suse.de>
12920
12921 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12922 not EMACS_INT, to make them compatible with DEFVAR_INT.
12923 * lisp.h (max_specpdl_size): Adjust declaration.
12924
12925 2002-01-01 Richard M. Stallman <rms@gnu.org>
12926
12927 * print.c (print_object): Test print_escape_nonascii only for
12928 unibyte strings.
12929 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12930 when outputting to a multibyte buffer.
12931
12932 2001-12-29 Richard M. Stallman <rms@gnu.org>
12933
12934 * print.c (print_object): In multibyte string, use hex escapes.
12935 Use octal only for unibyte strings.
12936 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12937
12938 * lread.c (read_escape): New arg BYTEREP for reporting whether
12939 escape forces unibyte or multibyte.
12940 (read1): When reading a string, take note of that info.
12941
12942 2001-12-29 Ken Raeburn <raeburn@gnu.org>
12943
12944 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12945 comparison to test lisp value returned by Fget.
12946
12947 2001-12-29 Richard M. Stallman <rms@gnu.org>
12948
12949 * lisp.h (max_specpdl_size): Add declaration.
12950
12951 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12952
12953 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12954 Handle modifier bits. Correct typo in error message.
12955
12956 2001-12-28 Richard M. Stallman <rms@gnu.org>
12957
12958 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12959 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12960 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12961 Update calls to Fdefine_abbrev.
12962 (write_abbrev): Update for changed data format.
12963 Don't list "system" abbrevs.
12964 (Fexpand_abbrev): Update use count with new data format.
12965 (describe_abbrev): Update for changed data format.
12966 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12967
12968 * config.in (HAVE_MBSINIT): Add #undef.
12969
12970 * strftime.c (mbsinit): Define as no-op if not available.
12971
12972 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12973 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12974
12975 * keymap.c (Flookup_key): Error message if key has wrong data type.
12976 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12977 (exclude_key): New variable.
12978
12979 2001-12-28 Gerd Moellmann <gerd@gnu.org>
12980
12981 * xterm.c (x_setup_relief_colors): Don't compute an image's
12982 background color if it doesn't have a Pixmap.
12983
12984 * xterm.c (notice_overwritten_cursor): Don't depend on
12985 output_cursor and updated_area. Compare pixel coordinates with
12986 window's cursor pixel coordinates.
12987 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12988 Call notice_overwritten_cursor with new arg list.
12989 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12990 unconditionally.
12991
12992 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12993 height of the cursor line to the amount to scroll.
12994
12995 2001-12-27 Richard M. Stallman <rms@gnu.org>
12996
12997 * intervals.c (set_point_both): The position after an invisible,
12998 intangible character is not an acceptable stopping point.
12999
13000 2001-12-27 Ken Raeburn <raeburn@gnu.org>
13001
13002 * window.c (enlarge_window): In new preserve_before code, convert
13003 CURBEG from lisp object to integer before doing arithmetic.
13004
13005 2001-12-27 Richard M. Stallman <rms@gnu.org>
13006
13007 * bytecode.c (Fbyte_code): Undo previous change.
13008
13009 2001-12-26 Kim F. Storm <storm@cua.dk>
13010
13011 * keyboard.c (record_char): Ignore duplicate help-echo events only
13012 separated by mouse-movement. When tracking mouse, only record
13013 first and last mouse-movement event in same window.
13014 Don't record mouse-movement events in keyboard macros.
13015
13016 2001-12-25 Richard M. Stallman <rms@gnu.org>
13017
13018 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13019 (Fenlarge_window): New arg PRESERVE_BEFORE.
13020
13021 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13022 instead of Fstring_as_unibyte.
13023
13024 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13025
13026 The following changes remove mocklisp support:
13027
13028 * mocklisp.h, mocklisp.c: Files removed.
13029
13030 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13031 `Qmocklisp' and `Qmocklisp_arguments'.
13032 Remove prototype of syms_of_mocklisp.
13033
13034 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
13035
13036 * callint.c: Do not include mocklisp.h.
13037 (Fcall_interactively): Do not test for mocklisp case.
13038
13039 * eval.c: Remove variables `Qmocklisp_arguments',
13040 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13041 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13042 Do not test for mocklisp case.
13043 (Fwhile): Remove unused variable `tem'.
13044 (syms_of_eval): Remove variable `moclisp-arguments'.
13045
13046 * data.c (wrong_type_argument): Remove mocklisp case.
13047
13048 * doc.c (Fdocumentation): Remove mocklisp case.
13049
13050 * emacs.c (main): Do not call syms_of_mocklisp.
13051
13052 2001-12-21 Richard M. Stallman <rms@gnu.org>
13053
13054 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13055 to the left or to the right of the pointer, put it against
13056 the left screen edge.
13057
13058 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
13059
13060 * Makefile.in (distclean): Remove .gdbinit if we are building
13061 outside the source tree.
13062
13063 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
13064
13065 * w32.c (emacs_root_dir): New function.
13066
13067 * msdos.c (emacs_root_dir): New function.
13068
13069 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13070 of the current drive as the fallback for default_directory.
13071
13072 * dired.c (file_name_completion): Run the elements of
13073 completion-ignored-extensions through ENCODE_FILE.
13074
13075 * lisp.h (scmp): Remove prototype, since it's now a static
13076 function private to dired.c.
13077
13078 2001-12-18 Richard M. Stallman <rms@gnu.org>
13079
13080 * dired.c (scmp): Function moved from minibuf.c.
13081 Delete multibyte handling--used only on encoded strings.
13082
13083 * minibuf.c (scmp): Function moved to dired.c.
13084
13085 * fns.c (merge): Add QUIT call.
13086
13087 2001-12-18 Dave Love <fx@gnu.org>
13088
13089 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13090 language/georgian.el.
13091
13092 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
13093
13094 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13095 lisp/Makefile.in:DONTCOMPILE.
13096
13097 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13098
13099 * xdisp.c (window_box_height): Do not return negative values.
13100 From Gerd Moellmann <gerd@gnu.org>.
13101
13102 * keyboard.c (head_table): Add missing braces around initializer.
13103
13104 * term.c (keys): Likewise.
13105
13106 * xfns.c (x_frame_parms, visual_classes): Likewise.
13107
13108 2001-12-17 Sam Steingold <sds@gnu.org>
13109
13110 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13111 patch (COMPOSING_P, not COMPOSING).
13112
13113 2001-12-17 Richard M. Stallman <rms@gnu.org>
13114
13115 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
13116
13117 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13118 before calling decode_coding.
13119
13120 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
13121
13122 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13123 instead of only for COMPOSITION_DISABLED.
13124
13125 2001-12-16 Richard M. Stallman <rms@gnu.org>
13126
13127 * alloc.c (pure_alloc): After overflow, allocate just a small block.
13128
13129 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
13130
13131 * buffer.h (struct buffer): New field `display_error_modiff'.
13132 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
13133
13134 * window.c (Frecenter): Clear display_error_modiff field.
13135
13136 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13137 Call redisplay_window, but not if display_error_modiff field says no.
13138 (redisplay_window_error): New function.
13139 (displayed_buffer): New variable.
13140 (redisplay_internal, redisplay_windows): Call the new functions
13141 instead of redisplay_window directly.
13142
13143 2001-12-15 Richard M. Stallman <rms@gnu.org>
13144
13145 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
13146
13147 2001-12-14 Andrew Innes <andrewi@gnu.org>
13148
13149 * makefile.w32-in (EMACSLOADPATH): Define.
13150 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
13151 (bootstrap-temacs): Remove dependency on bootstrap-clean.
13152
13153 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
13154
13155 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13156 parameter have a numeric value all the time.
13157
13158 * w32fns.c (x_report_frame_params): Likewise.
13159
13160 2001-12-12 Richard M. Stallman <rms@gnu.org>
13161
13162 * fileio.c (Fwrite_region): Doc fix.
13163
13164 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13165 (redisplay_internal): Call clear_image_cache only for window terminals.
13166
13167 2001-12-12 Gerd Moellmann <gerd@gnu.org>
13168
13169 * xdisp.c (move_it_vertically_backward): Change heuristic
13170 for the case that we didn't move far enough initially.
13171
13172 * window.c (Frecenter): Simplify computation in the case of window
13173 system frames and ARG < 0; use window_box_height.
13174
13175 2001-12-11 Richard M. Stallman <rms@gnu.org>
13176
13177 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13178 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
13179
13180 2001-12-11 Andrew Innes <andrewi@gnu.org>
13181
13182 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13183 arg is negative.
13184
13185 2001-12-11 Richard M. Stallman <rms@gnu.org>
13186
13187 * m/hp800.h: Split the __hpux conditional into the parts
13188 that are right for GNU/Linux too and the parts that are not.
13189 Use the former if GNU_LINUX.
13190 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
13191
13192 * s/gnu-linux.h (GNU_LINUX): Defined.
13193
13194 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13195
13196 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13197 `new style' [w/`doc:' keyword].
13198
13199 2001-12-10 Jason Rumney <jasonr@gnu.org>
13200
13201 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13202 before using.
13203
13204 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13205
13206 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13207 keyword].
13208
13209 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
13210
13211 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
13212
13213 * s/hpux10.h (srand48): Don't undefine.
13214
13215 2001-12-09 Jason Rumney <jasonr@gnu.org>
13216
13217 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13218 Add comment to explain where the struct came from.
13219 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13220 (add_menu_item): Process pop-up menus first to avoid memory leak.
13221 (add_menu_item, w32_menu_display_help): Use `help' field as
13222 Lisp_Object.
13223 (w32_free_submenu_strings): Only free owner-drawn strings.
13224
13225 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13226
13227 * COPYING: Moved back.
13228
13229 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13230 Add parentheses around && within ||.
13231
13232 * indent.c (compute_motion): Likewise.
13233
13234 * intervals.c (merge_properties_sticky): Likewise.
13235
13236 * coding.c (setup_coding_system, shrink_encoding_region)
13237 (Fdecode_sjis_char): Likewise.
13238
13239 2001-12-07 Andreas Schwab <schwab@suse.de>
13240
13241 * xdisp.c (display_mode_element): Don't read past end of string if
13242 it ends with '%'.
13243
13244 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13245 can hold.
13246
13247 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13248 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13249 type changed to Lisp_Object.
13250 (syms_of_data): DEFVAR_LISP them.
13251
13252 2001-12-07 Richard M. Stallman <rms@gnu.org>
13253
13254 * callproc.c (init_callproc): Set Vdata_directory based on the source
13255 location whenever Emacs was run uninstalled.
13256
13257 2001-12-06 Paul Eggert <eggert@twinsun.com>
13258
13259 * config.in (HAVE_WORKING_VFORK): New #undefs.
13260 * process.c (create_process):
13261 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13262 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13263 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13264 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13265 * m/intel386.h (HAVE_VFORK): Likewise.
13266 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13267 * m/mips.h (HAVE_VFORK): Likewise.
13268 * s/freebsd.h (vfork): Remove #define.
13269 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13270 * s/usg5-4-2.h: Fix comment about vfork.
13271
13272 2001-12-06 Richard M. Stallman <rms@gnu.org>
13273
13274 * s/hpux10.h (random): Add undef.
13275 (HAVE_RANDOM): Define it just once.
13276
13277 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
13278
13279 * eval.c: Undo last change: the standard syntax is not wanted.
13280
13281 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
13282
13283 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13284 scroll bars of the frame before deleting the frame itself. If the
13285 frame has a widget, delete the frame with XtDestroyWidget, and do
13286 not call XDestroyWindow before that.
13287
13288 2001-12-06 Kim F. Storm <storm@cua.dk>
13289
13290 * xfns.c (x_report_frame_params): Return actual fringe widths.
13291
13292 * w32fns.c (x_report_frame_params): Return actual fringe widths.
13293
13294 2001-12-05 Andrew Innes <andrewi@gnu.org>
13295
13296 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13297 excessively large.
13298
13299 * insdel.c (make_gap_larger): New function.
13300 (make_gap_smaller): New function.
13301 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13302 Call make_gap_smaller if arg is negative.
13303
13304 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
13305
13306 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13307 Pass a dummy argument when calling interrupt_signal.
13308 (parse_menu_item): Mark disabled items before checking for empty def.
13309 (read_char_minibuf_menu_prompt): Make safety more visible.
13310 (read_key_sequence): Add a `first_unbound' variable.
13311 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13312 unbound prefix as soon as we can detect it.
13313
13314 * doc.c (Fsnarf_documentation): Add prototype.
13315 (get_doc_string): Handle negative arguments.
13316 (Fdocumentation): Use AREF and ASIZE.
13317 Move the calls to get_doc_string to a single place.
13318 Don't confuse an interactive-spec for a docstring reference.
13319 (Fdocumentation_property): Take advantage of the fact that
13320 get_doc_string now ignores the sign of the docstring position.
13321
13322 * eval.c: Use standard syntax for usage in docstrings.
13323
13324 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13325
13326 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
13327
13328 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13329
13330 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13331 constant when the value of `tool_bar_button_relief' is negative.
13332
13333 2001-12-02 Richard M. Stallman <rms@gnu.org>
13334
13335 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13336 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
13337
13338 * fileio.c (read_non_regular): Delete Fsignal call.
13339
13340 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
13341
13342 * lisp.h (run_hook_list_with_args): Undo last change.
13343
13344 2001-12-01 Gerd Moellmann <gerd@gnu.org>
13345
13346 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
13347
13348 2001-12-01 Jason Rumney <jasonr@gnu.org>
13349
13350 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
13351
13352 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13353 [!WM_MOUSELEAVE]: Define.
13354
13355 * w32menu.c (current_popup_menu, get_menu_item_info):
13356 (set_menu_item_info): New vars.
13357 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13358 (w32_menu_show): Set current_popup_menu.
13359 (add_menu_item): Allocate new strings for owner-drawn menu items
13360 and help strings.
13361 Use owner-draw for disabled menu items again.
13362 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13363 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
13364
13365 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13366 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13367 <WM_EXITMENULOOP>: Free menu strings.
13368 <WM_MOUSELEAVE>: Stop tracking mouse.
13369 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
13370
13371 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13372 and mouse face.
13373
13374 2001-12-01 Kim F. Storm <storm@cua.dk>
13375
13376 The following changes add left-fringe and right-fringe
13377 frame parameters to adjust fringe widths, or remove one or
13378 both fringes.
13379
13380 * frame.h (struct frame): Remove trunc_area_pixel_width and
13381 trunc_area_cols fields.
13382 (Qleft_fringe, Qright_fringe): Declare.
13383 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
13384
13385 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13386 (syms_of_frame): Initialize them.
13387
13388 * window.c (coordinates_in_window): Handle separate left and right
13389 fringe widths.
13390
13391 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13392 and fringe_cols fields.
13393 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13394 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13395 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13396 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13397 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13398 (x_compute_fringe_widths): Add prototype.
13399
13400 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13401 fill fringe evenly with small dashes.
13402 (x_draw_fringe_bitmap): Clear background if necessary. Align and
13403 clip the new ZV bitmap to avoid jitter between rows.
13404 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13405 background. Don't draw fringe bitmaps if fringe width is zero.
13406 (x_compute_fringe_widths): New function.
13407 (x_new_font, x_set_window_size_1): Use it.
13408
13409 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13410 (x_set_frame_parameters): Process `font' parameter before other
13411 parameters as fringe widths depend on it.
13412 (x_set_fringe_width): New function.
13413 (x_figure_window_size): Use x_compute_fringe_widths.
13414 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13415 parameters.
13416
13417 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13418 (EmacsFrameSetCharSize): Ditto.
13419
13420 * w32term.h: Merged changes from xterm.h.
13421 * w32term.c: Merged changes from xterm.c.
13422 * w32fns.c: Merged changes from xfns.c.
13423
13424 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13425
13426 * COPYING: Removed.
13427
13428 2001-11-29 Dave Love <fx@gnu.org>
13429
13430 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13431 extra extra slot.
13432 (detect_coding_mask): Fix call of detect_coding_iso2022.
13433
13434 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13435
13436 * fileio.c (file-name-coding-system)
13437 (default-file-name-coding-system): Doc fix (links to referenced
13438 variables added).
13439
13440 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13441
13442 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13443 Add dummy uses of gcproN variables.
13444
13445 * category.c (describe_category, describe_category_1)
13446 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13447 (syms_of_category): Don't defsubr Sdescribe_categories.
13448
13449 2001-11-28 Richard M. Stallman <rms@gnu.org>
13450
13451 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
13452
13453 * Makefile.in (lispdir): New variable, referring to build dir.
13454 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
13455
13456 2001-11-28 Andrew Innes <andrewi@gnu.org>
13457
13458 * w32menu.c (w32_menu_display_help): Actually add the new argument
13459 OWNER.
13460
13461 2001-11-28 Jason Rumney <jasonr@gnu.org>
13462
13463 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13464 menu items. From David Ponce <dponce@wanadoo.fr>.
13465 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13466 conditionally.
13467 (w32_menu_display_help): New argument OWNER. Rewritten to store a
13468 help event in the owner frame's keyboard buffer.
13469
13470 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13471 (Fx_show_tip): Don't subtract last width from row width.
13472
13473 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13474 (w32_read_socket): Use EQ to compare frames.
13475
13476 2001-11-28 Gerd Moellmann <gerd@gnu.org>
13477
13478 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13479 OVERLAPS_P.
13480
13481 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13482
13483 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13484 `gcpro3' and `gcpro4'.
13485
13486 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
13487
13488 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13489
13490 * ccl.c: Use AREF and ASIZE.
13491
13492 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
13493
13494 * lisp.h (run_hook_list_with_args): Remove.
13495 (LIST_END_P): Fix call to wrong_type_argument.
13496 (make_fixnum_or_float): Use EMACS_INT rather than int.
13497
13498 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
13499
13500 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13501 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
13502
13503 * eval.c: Use AREF and ASIZE.
13504 (Ffetch_bytecode): Add the file name to the error message.
13505
13506 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13507 which match the end of the file-name.
13508 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13509 is not a valid env var, but leave it as is instead.
13510
13511 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13512 Make nil bindings in char-tables transparent.
13513 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
13514
13515 2001-11-26 Richard M. Stallman <rms@gnu.org>
13516
13517 * textprop.c (set_text_properties_1): Allow START, END in either order.
13518 Do nothing if range is empty.
13519
13520 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13521
13522 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13523 (clean): Not here.
13524
13525 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13526
13527 * textprop.c (set_text_properties_1): Clearly mark that the
13528 interval should not be empty.
13529
13530 * intervals.c (graft_intervals_into_buffer):
13531 Don't call set_text_properties_1 on an empty interval.
13532
13533 2001-11-25 Richard M. Stallman <rms@gnu.org>
13534
13535 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
13536
13537 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13538 don't lose the data in it.
13539
13540 2001-11-25 Juanma Barranquero <lektu@terra.es>
13541
13542 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
13543
13544 * buffer.c (Fkill_buffer): Likewise.
13545
13546 * print.c (temp_output_buffer_setup): Likewise.
13547
13548 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13549
13550 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
13551
13552 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
13553
13554 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13555 Niemitalo <kon@iki.fi>.
13556
13557 2001-11-25 Jason Rumney <jasonr@gnu.org>
13558
13559 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
13560
13561 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13562 (Fx_show_tip): Block input during frame creation.
13563 (Fx_show_tip, Fx_hide_tip): Enable.
13564
13565 2001-11-24 Richard M. Stallman <rms@gnu.org>
13566
13567 * lread.c (Fload): Detect recursive load error for more than 3
13568 nestings of the same file.
13569 (Vrecursive_load_depth_limit): Variable deleted.
13570 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
13571
13572 2001-11-24 Jason Rumney <jasonr@gnu.org>
13573
13574 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13575 mouse position if either left or top is not specified.
13576
13577 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13578 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13579 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13580 (my_create_tip_window): Assign tip_window.
13581 (x_create_tip_frame): Use same defaults as X.
13582 (compute_tip_xy): Remove unused variable. Use full screen width.
13583 (Fx_show_tip): Do not double height. Call ShowWindow directly.
13584
13585 * w32term.c (x_after_update_window_line): Doc fix.
13586 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13587 frames.
13588 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
13589
13590 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13591 for all Windowed systems.
13592
13593 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
13594
13595 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13596 realized, use the initial screen colors to clear the screen.
13597
13598 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13599
13600 * textprop.c (Fset_text_properties): Remove unused variables
13601 `unchanged', `prev_changed', `s' and `len'.
13602
13603 * search.c (Freplace_match): Remove unused variable `inslen'.
13604
13605 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13606
13607 2001-11-22 Jason Rumney <jasonr@gnu.org>
13608
13609 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13610 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13611 (my_create_tip_window): New function.
13612 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13613 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13614
13615 2001-11-20 Jason Rumney <jasonr@gnu.org>
13616
13617 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13618 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13619
13620 * w32fns.c (Vw32_system_coding_system): Remove.
13621 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13622
13623 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13624
13625 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13626 after build_annotations.
13627
13628 * syntax.c (describe_syntax): Add dummy arg.
13629 (describe_syntax_1): Update call to describe_vector.
13630
13631 * category.c (describe_category): Add dummy arg.
13632 (describe_category_1): Update call to describe_vector.
13633
13634 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13635 (describe_command, describe_translation): Add dummy second param.
13636 (describe_map): Call elt_describer with two arguments.
13637 (describe_vector_princ): Add `fun' parameter.
13638 Call it instead of the hardcoded `princ'.
13639 (describe_vector): Add arg `args'.
13640 Pass it as a new second argument to elt_describer.
13641
13642 * keymap.h (describe_vector): Update prototype.
13643
13644 * frame.c: Don't include keymap.h any more.
13645 (keys_of_frame): Remove.
13646
13647 * lisp.h (keys_of_frame): Remove declaration.
13648
13649 * emacs.c (main): Don't call `keys_of_frame' any more.
13650
13651 2001-11-14 Andreas Schwab <schwab@suse.de>
13652
13653 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13654 if defined, 0 otherwise.
13655 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13656 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13657
13658 2001-11-19 Richard M. Stallman <rms@gnu.org>
13659
13660 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13661
13662 2001-11-18 Jason Rumney <jasonr@gnu.org>
13663
13664 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13665 (x_draw_bar_cursor): If the background color of the glyph under
13666 the cursor equals the frame's cursor color, use the glyph's
13667 foreground color for drawing the bar cursor.
13668 (x_after_update_window_line): Clear internal border in different
13669 circumstances.
13670 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13671 (w32_draw_relief_rect): Correct relief by 1 pixel.
13672 (x_set_glyph_string_background_width):
13673 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13674 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13675 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13676 if cursor_in_non_selected_windows is false.
13677 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13678 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13679 Notice if cursor gets overwritten.
13680 (notice_overwritten_cursor): Renamed from
13681 note_overwritten_text_cursor. Rewritten to take glyph widths
13682 into account, and to take X positions as parameters.
13683 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13684 around call to x_draw_glyphs.
13685 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13686 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13687 color to use for image glyph reliefs.
13688 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13689 (glyph_rect): Remove unused variable `area'.
13690
13691 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13692 some items.
13693 (x_set_internal_border_width): Set frame garbaged when window
13694 doesn't exist yet.
13695 (Fx_create_frame): Accept zero tool_bar_button_relief.
13696 (x_clear_image_1, four_corners_best, image_background)
13697 (image_background_transparent): New functions.
13698 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13699 (gs_format): Add `:background' entry.
13700 (lookup_image): Set IMG's background color if specified.
13701 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13702 when appropriate.
13703 (x_clear_image_1): Reset `background_valid' and
13704 `background_transparent_valid' fields.
13705 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13706 calculating it here. Set IMG's background_transparent field.
13707 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13708 (enum png_keyword_index): Add PNG_BACKGROUND.
13709 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13710 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13711 (enum gif_keyword_index): Add GIF_BACKGROUND.
13712 (enum gs_keyword_index): Add GS_BACKGROUND.
13713 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13714 Pre-calculate image background color where necessary.
13715 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13716 Use display info's n_cbits entry for screen depth.
13717 (Fx_show_tip): Remove unused variables `buffer', `top',
13718 `left', `max_width' and `max_height'.
13719
13720 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13721
13722 2001-11-18 Gerd Moellmann <gerd@gnu.org>
13723
13724 * puresize.h (BASE_PURESIZE): Increase to 750000.
13725
13726 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13727
13728 * frame.c (Fframe_live_p): Doc fix.
13729
13730 2001-11-18 Richard M. Stallman <rms@gnu.org>
13731
13732 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13733 (message_dolog_marker3): New static variables hold three markers.
13734 (syms_of_xdisp): Initialize and staticpro them.
13735 (message_dolog): Use message_dolog_marker1..3 instead of
13736 allocating markers each time. Unchain them when done.
13737
13738 2001-11-17 Richard M. Stallman <rms@gnu.org>
13739
13740 * doc.c (Fsnarf_documentation): Doc fix.
13741
13742 2001-11-17 Andreas Schwab <schwab@suse.de>
13743
13744 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13745
13746 2001-11-17 Richard M. Stallman <rms@gnu.org>
13747
13748 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13749
13750 2001-11-17 Jason Rumney <jasonr@gnu.org>
13751
13752 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13753
13754 2001-11-17 Gerd Moellmann <gerd@gnu.org>
13755
13756 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13757 with invalid position.
13758
13759 2001-11-16 Richard M. Stallman <rms@gnu.org>
13760
13761 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13762
13763 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13764 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13765 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13766
13767 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13768
13769 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13770
13771 * fileio.c (build_annotations): Split off the tail.
13772 (build_annotations_2): New fun. Extracted from build_annotations.
13773 (Fwrite_region): Split the call to build_annotations into two
13774 calls to build_annotations and build_annotations_2.
13775
13776 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13777
13778 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13779 clear_waiting_for_input with argument.
13780
13781 * xterm.h (x_update_cursor): Remove duplicated prototype.
13782
13783 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13784
13785 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13786
13787 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13788
13789 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13790
13791 * fileio.c (choose_write_coding_system): New fun, extracted
13792 from Fwrite_region.
13793 (Fwrite_region): Use it.
13794
13795 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13796 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13797 (ml_apply, find_handler_clause): Add prototype.
13798
13799 2001-11-16 Eli Zaretskii <eliz@gnu.org>
13800
13801 * config.in: Add #undef HAVE_COFF_H.
13802
13803 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13804 Required for ISC 4.1.
13805
13806 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13807
13808 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13809 Andrew Wiseman <a.wiseman@btclick.com>.
13810
13811 2001-11-16 Kim F. Storm <storm@cua.dk>
13812
13813 The following changes are made to clean up the various internal
13814 references to the fringes to actually use the term `fringe' for
13815 them. Previously, they were called `flags areas', `bitmap areas',
13816 `left/right side of windows', or implicitly as `flags' or
13817 `bitmaps':
13818
13819 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13820 Comments fixed. Use renamed symbols.
13821
13822 * dispnew.c: Comment fix. Use renamed symbols.
13823
13824 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13825 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13826 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13827
13828 * msdos.c: Comment fix.
13829
13830 * w32fns.c: Use renamed symbols.
13831
13832 * w32term.c: Comment fixes. Use renamed symbols.
13833 (fringe_bitmap_type): Renamed from bitmap_type.
13834 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13835 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13836 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13837
13838 * w32term.h: Comment fixes. Use renamed symbols.
13839 (fringes_extra): Renamed from flags_areas_extra.
13840 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13841 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13842 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13843 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13844 (FRAME_X_LEFT_FRINGE_WIDTH):
13845 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13846 (FRAME_X_RIGHT_FRINGE_WIDTH):
13847 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13848
13849 * widget.c: Use renamed symbols.
13850
13851 * window.c: Comment fixes. Use renamed symbols.
13852 (coordinates-in-window-p): Doc fix.
13853
13854 * xdisp.c: Comment fixes. Use renamed symbols.
13855
13856 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13857
13858 * xfns.c: Use renamed symbols.
13859
13860 * xterm.c: Comment fixes. Use renamed symbols.
13861 (fringe_bitmap_type): Renamed from bitmap_type.
13862 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13863 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13864 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13865
13866 * xterm.h: Comment fixes. Use renamed symbols.
13867 (fringes_extra): Renamed from flags_areas_extra.
13868 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13869 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13870 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13871 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13872 (FRAME_X_LEFT_FRINGE_WIDTH):
13873 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13874 (FRAME_X_RIGHT_FRINGE_WIDTH):
13875 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13876
13877 2001-11-15 Jason Rumney <jasonr@gnu.org>
13878
13879 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13880 work for most menu items. From David Ponce
13881 <david.ponce@wanadoo.fr>.
13882
13883 2001-11-15 Gerd Moellmann <gerd@gnu.org>
13884
13885 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13886 Some x_set_* function expect to be called even if old and new
13887 value are equal.
13888
13889 * xdisp.c (build_desired_tool_bar_string): Accept zero
13890 tool_bar_button_relief.
13891
13892 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13893
13894 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13895
13896 * xterm.c (x_draw_bar_cursor): If the background color of the
13897 glyph under the cursor equals the frame's cursor color, use
13898 the glyph's foreground color for drawing the bar cursor.
13899
13900 * dispnew.c (direct_output_forward_char): Fix character/byte
13901 position comparison.
13902
13903 2001-11-15 Miles Bader <miles@gnu.org>
13904
13905 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13906 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13907 Update arguments to find_field.
13908 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13909 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13910 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13911 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13912
13913 2001-11-14 Richard M. Stallman <rms@gnu.org>
13914
13915 * editfns.c (Fpropertize): Allow call with 1 arg.
13916
13917 * dispextern.h (image_background, image_background_transparent):
13918 Conditionalize on HAVE_X_WINDOWS.
13919
13920 2001-11-13 Richard M. Stallman <rms@gnu.org>
13921
13922 * print.c (Fprin1_to_string): Doc fix.
13923
13924 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13925
13926 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13927
13928 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13929
13930 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13931
13932 * eval.c (syms_of_eval): Doc fix.
13933
13934 * coding.c (syms_of_coding): Doc fix.
13935
13936 * doc.c (Fsnarf_documentation): Doc fix.
13937
13938 * dispnew.c (syms_of_display): Doc fix.
13939
13940 * category.c (Fget_unused_category): Doc fix.
13941
13942 * buffer.c (syms_of_buffer): Doc fixes.
13943
13944 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13945
13946 * print.c (prin1, print): Doc fix.
13947
13948 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13949
13950 * fontset.h: Remove declarations of variables
13951 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13952
13953 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13954 `Vclip_large_size_font'.
13955
13956 2001-11-13 Jason Rumney <jasonr@gnu.org>
13957
13958 * w32fns.c: Doc fix.
13959
13960 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13961
13962 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13963
13964 * fns.c: Doc fix.
13965
13966 * emacs.c: Doc fix.
13967
13968 * coding.c: Doc fix.
13969
13970 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13971 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13972 `new style' [w/`doc:' keyword].
13973
13974 2001-11-12 Richard M. Stallman <rms@gnu.org>
13975
13976 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13977 LeaveNotify events. Only FocusIn and FocusOut do that now.
13978 (x_display_and_set_cursor): Do display hollow cursors in active
13979 minibuffer windows when they are not selected.
13980
13981 2001-11-12 Jason Rumney <jasonr@gnu.org>
13982
13983 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13984 * w32term.c: Change doc-string comments to `new style'
13985 [w/`doc:' keyword]. Doc fixes.
13986
13987 * w32fns.c: Don't define max.
13988 (Fx_open_connection): Only execute once.
13989
13990 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13991
13992 * ccl.c: Change macros to use do-while block instead of if-else.
13993 Use braces to follow GNU Coding Standards.
13994
13995 2001-11-11 Richard M. Stallman <rms@gnu.org>
13996
13997 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13998
13999 * lread.c (read_escape): Use end_of_file_error for reporting eof.
14000
14001 * insdel.c (replace_range): Use adjust_markers_for_replace
14002 instead of adjust_markers_for_delete and adjust_markers_for_insert.
14003
14004 * intervals.h: Declare set_text_properties and set_text_properties_1.
14005
14006 * textprop.c (set_text_properties_1): New subroutine
14007 broken out of set_text_properties.
14008 (set_text_properties): Use set_text_properties_1.
14009
14010 * intervals.c (graft_intervals_into_buffer):
14011 Use set_text_properties_1 to clear out properties.
14012
14013 * search.c (Freplace_match): Use replace_range to insert
14014 and delete. Don't request property inheritance from
14015 surrounding text.
14016
14017 2001-11-10 Jason Rumney <jasonr@gnu.org>
14018
14019 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
14020 vertical fonts. Allow them if face name is explicitly specified.
14021 Do not give up if we find a font that cannot be converted to an xlfd.
14022
14023 2001-11-10 Gerd Moellmann <gerd@gnu.org>
14024
14025 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14026 instead of malloc/free.
14027
14028 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14029
14030 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14031 Coding Standards.
14032 (Finternal_set_lisp_face_attribute): Likewise.
14033
14034 * buffer.c (Fbury_buffer): Likewise.
14035
14036 * indent.c (current_column_1): Remove unused variable `prev_col'.
14037
14038 * coding.c (encode_coding): Use precomputed value of `src'.
14039 (encode_coding): Remove unused variable `src_end'.
14040 (code_convert_region): Remove unused variables `count'.
14041
14042 2001-11-07 Jason Rumney <jasonr@gnu.org>
14043
14044 * w32term.c (x_display_and_set_cursor): Do not move system caret
14045 if cursor_glyph is NULL.
14046
14047 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14048
14049 * keymap.c (access_keymap): Fix compilation error.
14050
14051 2001-11-07 Miles Bader <miles@gnu.org>
14052
14053 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
14054
14055 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14056
14057 * intervals.c (graft_intervals_into_buffer):
14058 Remove #ifdef'd-out code.
14059 (graft_intervals_into_buffer): Remove unused variable `middle'.
14060
14061 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14062 code (eval-current-buffer).
14063 Change doc-string comments to `new style' [w/`doc:' keyword].
14064
14065 2001-11-06 Richard M. Stallman <rms@gnu.org>
14066
14067 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
14068
14069 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
14070
14071 * lread.c (read1): Fix behavior with nested backquoting.
14072
14073 * keyboard.c (make_lispy_event): Check integerness and fix
14074 Lisp_Object/int mixup.
14075
14076 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14077
14078 * fns.c (copy_hash_table): Remove unused variable `v'.
14079
14080 * fontset.c (fontset_font_pattern): Remove unused variable
14081 `family_registry'.
14082
14083 * indent.c (current_column_1): Remove unused variable `prev_col'.
14084
14085 2001-11-05 Richard M. Stallman <rms@gnu.org>
14086
14087 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
14088
14089 * buffer.c (Fkill_buffer): Don't delete auto save file
14090 if buffer is modified.
14091
14092 2001-11-05 Andrew Innes <andrewi@gnu.org>
14093
14094 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14095 CHECK_NUMBER_CDR.
14096
14097 2001-11-05 Richard M. Stallman <rms@gnu.org>
14098
14099 * unexelf.c (unexec): Minor changes; clean up comments.
14100
14101 2001-11-05 Sam Steingold <sds@gnu.org>
14102
14103 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
14104
14105 2001-11-05 Andreas Schwab <schwab@suse.de>
14106
14107 * sound.c (sound_perror): Save errno from being clobbered.
14108
14109 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
14110
14111 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14112 the program image directly.
14113
14114 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14115
14116 * buffer.h (Fbuffer_local_value): Add prototype.
14117
14118 2001-11-04 Richard M. Stallman <rms@gnu.org>
14119
14120 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14121 and CHECK_BUFFER.
14122
14123 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14124 (record_char): Likewise.
14125
14126 * keyboard.c (make_lispy_event): Don't insist a drag event must
14127 move to a different buffer position. Instead, check for moving at
14128 least double_click_fuzz.
14129
14130 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
14131
14132 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
14133
14134 * indent.c (current_column_1, Fmove_to_column): Separate the code
14135 for display-table glyphs from the code for buffer text, to fix
14136 bugs in the former.
14137
14138 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
14139
14140 * buffer.c (Fbuffer_local_value): New function.
14141 (syms_of_buffer): Defsubr it.
14142
14143 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14144 value of `cursor-in-non-selected-windows'.
14145
14146 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14147 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14148 (syms_of_xdisp): Initialize it.
14149
14150 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14151
14152 * xfns.c (Fx_create_frame): Doc fix.
14153
14154 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14155 keyword].
14156
14157 * eval.c (top_level_value, top_level_set): Remove commented and
14158 #ifdef'd-out code.
14159 (Fdefvar): Fix usage in doc-string.
14160
14161 2001-11-03 Richard M. Stallman <rms@gnu.org>
14162
14163 * xfns.c: Include unistd.h, if it exists.
14164
14165 * editfns.c: Move the include of ctype.h after unistd.h.
14166
14167 * gmalloc.c: Test BROKEN_PROTOTYPES.
14168
14169 2001-11-03 Ken Raeburn <raeburn@gnu.org>
14170
14171 * lisp.h (CHECK_STRING_CAR): New macro.
14172 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14173 treating XCAR and XCDR as lvalues.
14174 (openp): Use CHECK_STRING_CAR.
14175 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
14176
14177 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
14178
14179 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14180 (SIGMASKTYPE): Define.
14181
14182 * syssignal.h (sigunblock): Don't define if already defined.
14183
14184 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14185
14186 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14187 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14188 Fix typos in comments.
14189
14190 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14191 and #ifdef'd-out code.
14192 Fix and reindent comments.
14193
14194 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
14195
14196 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14197 argument `i' in macros.
14198
14199 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14200 `i' in macros.
14201
14202 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14203 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14204 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14205 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14206 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14207 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14208 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14209 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14210 in macros.
14211
14212 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14213 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14214 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14215 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14216 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14217 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14218 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14219 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14220 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14221 (remove unused second argument).
14222
14223 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
14224
14225 * syntax.c (describe_syntax): New wrapper.
14226 (Finternal_describe_syntax_value): Rename from describe_syntax.
14227 Don't insert space at front and \n at the end.
14228 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
14229
14230 * regex.c (re_wctype): Try to fix some warnings.
14231 (regcomp, regexec): Don't forget the __restrict.
14232
14233 2001-11-02 Richard M. Stallman <rms@gnu.org>
14234
14235 * textprop.c (Fget_char_property): Doc fix.
14236
14237 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14238
14239 * process.c (Fstart_process): Add usage to doc-string.
14240
14241 * data.c (Fsetq_default): Ditto.
14242
14243 * callint.c (Finteractive): Ditto.
14244
14245 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
14246
14247 * macros.c: Don't include keymap.h any more.
14248
14249 2001-11-01 Richard M. Stallman <rms@gnu.org>
14250
14251 * data.c (Fmake_local_variable): Doc fix.
14252
14253 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14254 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
14255
14256 * keymap.c (Fdescribe_buffer_bindings): Print character property
14257 bindings along with or instead of the buffer local map.
14258 Make the overriding maps override what they should.
14259
14260 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14261
14262 * window.c (grow_mini_window): Fix typo in comment.
14263
14264 2001-11-01 Gerd Moellmann <gerd@gnu.org>
14265
14266 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14267 (XTset_vertical_scroll_bar): Likewise.
14268
14269 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14270 instead of IMAGE_BACKGROUND.
14271
14272 * xfns.c (four_corners_best): Reindent.
14273
14274 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
14275 Handle :box so that it is possible to specify sexprs.
14276
14277 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14278
14279 * s/hpux11.h: New file.
14280
14281 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14282
14283 * emacs.c (USAGE1): Show command line option --no-window-system
14284 instead of --no-windows in usage.
14285 (standard_args): Rename --no-windows to --no-window-system.
14286 (bug_reporting_address): Follow Emacs coding conventions.
14287
14288 * eval.c (Fcommandp): Doc fix.
14289 Change doc-string comments to `new style' [w/`doc:' keyword].
14290
14291 * frame.c (Fframe_live_p): Doc fix.
14292
14293 * buffer.c (selective-display-ellipses): Doc fix.
14294
14295 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14296
14297 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14298
14299 * xfaces.c (realize_x_face): If C is not a single-byte character,
14300 set the face's colors_copied_bitwise_p instead of the defaulted_p
14301 members which have a different meaning.
14302 (free_face_colors): Do nothing for a face whose colors have been
14303 copied bitwise.
14304
14305 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
14306
14307 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14308
14309 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14310 [w/`doc:' keyword].
14311
14312 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14313
14314 * fns.c (require_unwind): Return Lisp_Object.
14315
14316 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14317
14318 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14319 (last-input-char): Revert doc-string to be the same as the
14320 doc-string of `last-input-event'.
14321
14322 * xdisp.c: Fix typos in comments.
14323
14324 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14325
14326 * window.c (grow_mini_window): Handle case that the root
14327 window is already smaller than the nominal mininum height.
14328
14329 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14330
14331 * emacs.c (main): Don't call keys_of_macros any more.
14332
14333 * lisp.h (keys_of_macros): Remove.
14334
14335 * macros.c (keys_of_macros): Remove.
14336
14337 * xfaces.c (Fface_attribute_relative_p): Declare args.
14338
14339 2001-10-30 Jason Rumney <jasonr@gnu.org>
14340
14341 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14342 (enum_font_cb2): Ignore fonts with vertical orientation.
14343
14344 2001-10-30 Richard M. Stallman <rms@gnu.org>
14345
14346 * keyboard.c (Finput_pending_p): Doc fix.
14347
14348 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14349
14350 * xterm.c (x_after_update_window_line): Don't run the code
14351 clearing in borders for rows whose visible height is 0.
14352
14353 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14354 resized_p flag is set. If not set, use the much less flickering
14355 method previously used.
14356
14357 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14358
14359 * frame.h (struct frame) <resized_p>: New member.
14360
14361 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14362 as large as the number of bytes to convert.
14363
14364 * lread.c (to_multibyte): New function.
14365 (read1): Use it.
14366
14367 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14368
14369 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14370
14371 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14372
14373 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
14374 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14375 if the row's fill_line_p is set and drawing the last glyph with
14376 DRAW_IMAGE_{RAISED,SUNKEN}.
14377
14378 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14379
14380 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14381
14382 * xmenu.c: Include coding.h and charset.h.
14383 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14384 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14385 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14386 Explicitly set wv->help. Use `TRUE' rather than `True'.
14387 (menu_help_callback): Use empty_string.
14388
14389 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14390 (Fx_popup_dialog): Explicitly init f.
14391 (w32_menu_display_help): Use empty_string.
14392
14393 2001-10-29 Richard M. Stallman <rms@gnu.org>
14394
14395 * fns.c (Frequire): Detect recursive try to require the same
14396 feature 3 or more levels deep, and get error.
14397 (require_unwind): New subroutine.
14398 (require_nesting_list): New variable.
14399 (syms_of_fns): Init and staticpro it.
14400
14401 * print.c (print_object): Clarify indication of insertion type.
14402
14403 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14404
14405 * coding.c (syms_of_coding): Document that locale-coding-system is
14406 used for decoding input on X.
14407
14408 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14409
14410 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14411
14412 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14413 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14414
14415 2001-10-29 Gerd Moellmann <gerd@gnu.org>
14416
14417 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14418 use NO_CURSOR if cursor_in_non_selected_windows is false.
14419
14420 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14421 the slant attribute if FRAME is t.
14422
14423 * xfns.c (x_set_internal_border_width): Set frame garbaged
14424 when X window doesn't exist yet.
14425
14426 * xterm.c (x_after_update_window_line): Clear internal border
14427 in different circumstances.
14428
14429 * xterm.c (XTread_socket) <KeyPress>: Don't use
14430 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14431 <handa@etl.go.jp>.
14432
14433 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14434
14435 * m/ibms390.h: New file. From Adam Thornton
14436 <athornton@sinenomine.net>.
14437
14438 2001-10-28 Gerd Moellmann <gerd@gnu.org>
14439
14440 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
14441
14442 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14443 a loop counter.
14444
14445 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14446
14447 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
14448
14449 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14450 keyword].
14451 Fix typos in comments.
14452
14453 * emacs.c (bug_reporting_address): New function.
14454 Use it when displaying usage message.
14455
14456 * minibuf.c (read_minibuf): Remove unused external declaration of
14457 variable `Qread_only'.
14458
14459 * keymap.c (access_keymap): Remove unused variable `charset'.
14460
14461 2001-10-28 Miles Bader <miles@gnu.org>
14462
14463 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14464 Remove #ifdef'd-out code.
14465 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14466 (syms_of_xfaces): Initialize them.
14467
14468 2001-10-27 Jason Rumney <jasonr@gnu.org>
14469
14470 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14471 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14472 position using the system caret.
14473
14474 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14475 (w32_system_caret_height, w32_system_caret_x)
14476 (w32_system_caret_y): New variables for tracking system caret.
14477 (w32_initialize): Initialize them.
14478 (x_display_and_set_cursor): Make system caret follow the active cursor.
14479
14480 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14481 New messages types.
14482
14483 * w32term.c (note_mouse_highlight): Clear old help_echo.
14484
14485 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14486
14487 * xterm.c: Fix typo in a comment.
14488
14489 * emacs.c: Fix typos in comments.
14490 Remove unnecessary spaces.
14491 Change doc-string comments to `new style' [w/`doc:' keyword].
14492 (USAGE2): Fix typos in usage string.
14493
14494 * xterm.c: Fix typo in a comment.
14495
14496 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14497 emacs.c.
14498
14499 2001-10-27 Gerd Moellmann <gerd@gnu.org>
14500
14501 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
14502 instead of 1/2 line_height in the heuristic for skipping
14503 farther backward when target_y was not reached.
14504
14505 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14506 Display errno only if non-zero.
14507 (sound_warning): New function.
14508 (vox_configure): Don't treat failing to set sample rate as error.
14509 (various places): Improve error messages.
14510
14511 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14512
14513 * fileio.c (Faccess_file): Run the argument filename through
14514 Fexpand_file_name, before using it.
14515
14516 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14517 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14518
14519 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14520
14521 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14522
14523 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14524 Fix clearing in the case of scroll bars on the right.
14525
14526 2001-10-26 Juanma Barranquero <lektu@terra.es>
14527
14528 * w32gui.h (XImage): Add a dummy typedef.
14529
14530 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14531
14532 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
14533
14534 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14535
14536 * frame.c (Fframe_parameter): Fix last change.
14537
14538 * fileio.c: Revert last change (which removed old commented-out
14539 version of expand-file-name). Add a comment that explains why
14540 this old version should not be removed.
14541
14542 2001-10-25 Gerd Moellmann <gerd@gnu.org>
14543
14544 * frame.c (Fframe_parameter): Fix a bug whereby some
14545 ``artificial'' frame parameters, like `minibuffer' were not
14546 obtained by calling Fframe_parameters.
14547
14548 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14549 cursor differently.
14550
14551 * xdisp.c (move_it_vertically_backward): Compute line height
14552 differently. Add heuristic to try to be more compatible to 20.x.
14553
14554 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14555
14556 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14557
14558 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14559 boolean.
14560
14561 2001-10-25 Miles Bader <miles@gnu.org>
14562
14563 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14564 BG is a pointer to a structure, not a structure.
14565 (gif_format, png_format): Add missing commas.
14566
14567 2001-10-24 Richard M. Stallman <rms@gnu.org>
14568
14569 * xfaces.c (Fface_attributes_as_vector): New function.
14570 (syms_of_xfaces): Defsubr it.
14571
14572 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14573
14574 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14575 variable `area'.
14576
14577 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14578
14579 * search.c (scan_newline): Remove unused variable `selective_display'.
14580
14581 2001-10-25 Miles Bader <miles@gnu.org>
14582
14583 * dispextern.h (struct image): Add `background',
14584 `background_valid', and `background_transparent' fields.
14585 (image_background, image_background_transparent): New declarations.
14586 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14587 * xfns.c (image_background, image_background_transparent)
14588 (four_corners_best): New functions.
14589 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14590 (gs_format): Add `:background' entry.
14591 (lookup_image): Set IMG's background color if specified.
14592 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14593 when appropriate.
14594 (x_clear_image_1): Reset `background_valid' and
14595 `background_transparent_valid' fields.
14596 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14597 calculating it here. Set IMG's background_transparent field.
14598 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14599 (enum png_keyword_index): Add PNG_BACKGROUND.
14600 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14601 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14602 (enum gif_keyword_index): Add GIF_BACKGROUND.
14603 (enum gs_keyword_index): Add GS_BACKGROUND.
14604 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14605 Pre-calculate image background color where necessary.
14606 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14607 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14608 color to use for image glyph reliefs.
14609
14610 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14611
14612 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14613 in full-width rows.
14614
14615 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14616 Fix clearing of area not covered by scroll bar.
14617
14618 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14619
14620 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14621 and `real_start'.
14622 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14623 (glyph_rect): Remove unused variable `area'.
14624
14625 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14626
14627 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14628
14629 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14630 (row_containing_pos): Take additional argument DY.
14631 Treat rows ending in middle of char differently.
14632 (display_line): Handle tabs on window systems differently.
14633
14634 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14635 with additional argument.
14636
14637 * dispextern.h (row_containing_pos): Adjust prototype.
14638
14639 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14640 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14641 (try_window_id, try_window_reusing_current_matrix)
14642 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14643 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14644
14645 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14646
14647 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14648 gnuemacs).
14649 (HAVE_BOXES): Fix typo in comment.
14650 (push_menu_pane): Fix typo in comment.
14651
14652 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14653 of `Qwhen'.
14654 (single_display_prop_string_p): Remove unused local declarations
14655 of `Qwhen' and `Qmargin'.
14656 (string_buffer_position): Remove unused variable `around'.
14657 (store_frame_title): Remove unused variable `width'.
14658
14659 * window.c: Don't define max.
14660 (coordinates_in_window): Remove unused variable `uy'.
14661
14662 * widget.c: Don't define max.
14663
14664 * process.c: Don't define max.
14665 (create_process): Remove unused variable `buffer'.
14666
14667 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14668
14669 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14670
14671 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14672
14673 * xfaces.c (Finternal_set_lisp_face_attribute)
14674 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14675 frame is on a windowed display.
14676
14677 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14678
14679 * dispnew.c (sync_window_with_frame_matrix_rows):
14680 Fix handling of windows which aren't full-width, fix handling
14681 of marginal areas.
14682
14683 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14684
14685 2001-10-23 Andreas Schwab <schwab@suse.de>
14686
14687 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14688 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14689
14690 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14691
14692 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14693 REAL_END. Notice if cursor gets overwritten.
14694 (notice_overwritten_cursor): Take X positions as parameters.
14695 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14696 around call to x_draw_glyphs.
14697
14698 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14699
14700 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14701 instead of C) and usage.
14702
14703 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14704 of C) and usage.
14705
14706 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14707 `left', `max_width' and `max_height'.
14708
14709 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14710
14711 * xdisp.c (display_line): For a tab continued to the next line,
14712 set row's ends_in_middle_of_char_p.
14713
14714 2001-10-22 Gerd Moellmann <gerd@gnu.org>
14715
14716 * xdisp.c (display_line): Fix computation of continuation lines
14717 width for TABs.
14718
14719 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14720
14721 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14722 `Qlaplace'.
14723
14724 * fileio.c: Remove unused code.
14725
14726 2001-10-22 Miles Bader <miles@gnu.org>
14727
14728 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14729 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14730 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14731
14732 2001-10-21 Jason Rumney <jasonr@gnu.org>
14733
14734 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14735
14736 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14737
14738 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14739 (Finsert_string): Avoid the multi-line string literals warning.
14740
14741 2001-10-22 Miles Bader <miles@gnu.org>
14742
14743 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14744 (Fdocumentation): Don't use it.
14745 (syms_of_doc): Don't initialize it.
14746
14747 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14748 * print.c (Fwith_output_to_temp_buffer): Likewise.
14749 * window.c (Fsave_window_excursion): Likewise.
14750 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14751 (Fsave_restriction): Likewise.
14752 * eval.c (Frun_hooks, Frun_hook_with_args)
14753 (Frun_hook_with_args_until_failure)
14754 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14755 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14756 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14757 (Funwind_protect, Fcondition_case): Likewise.
14758 * coding.c (Ffind_operation_coding_system): Likewise.
14759 * keyboard.c (Ftrack_mouse): Likewise.
14760
14761 2001-10-21 Miles Bader <miles@gnu.org>
14762
14763 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14764 (Fmake_hash_table): Add usage: string to doc string.
14765 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14766 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14767 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14768 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14769 (Fml_prefix_argument_loop): Likewise.
14770
14771 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14772
14773 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14774
14775 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14776 style' [w/`doc:' keyword].
14777
14778 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14779 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14780 comments to `new style' [w/`doc:' keyword].
14781
14782 2001-10-21 Jason Rumney <jasonr@gnu.org>
14783
14784 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14785
14786 * w32term.c (remember_mouse_glyph): New function.
14787 (w32_mouse_position): Use it.
14788 (note_mouse_movement): If the mouse moved off the glyph, remember
14789 its new position.
14790
14791 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14792 (w32_display_info): Add mouse_face_overlay.
14793
14794 * w32term.c (notice_overwritten_cursor): Renamed from
14795 note_overwritten_text_cursor. Rewritten to take glyph widths into
14796 account.
14797 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14798 (fast_find_string_pos): New function.
14799 (fast_find_position): Return the correct vpos. Add parameter
14800 STOP. In the final row, stop before glyphs having STOP as object.
14801 Don't consider glyphs that are not from a buffer.
14802 (fast_find_position) [0]: Add a presumably more correct version
14803 for after 21.1.
14804 (expose_window_tree, expose_frame): Don't compute intersections here.
14805 (expose_window): Do it here instead.
14806 (expose_window_tree, expose_window, expose_line): Return 1 when
14807 overwriting mouse-face.
14808 (expose_window): If W is the window currently being updated, mark
14809 the frame garbaged.
14810 (expose_frame): If mouse-face was overwritten, redo it.
14811 (x_use_underline_position_properties): New variable.
14812 (syms_of_xterm): DEFVAR_BOOL it.
14813 (x_draw_glyph_string): Add comment to use it in future.
14814 (x_draw_glyph_string): Restore clipping after drawing box.
14815 Fix a computation of the underline position.
14816 (w32_get_glyph_string_clip_rect): Minor cleanup.
14817 (x_fill_stretch_glyph_string): Remove an assertion.
14818 (x_produce_glyphs): Don't convert multibyte characters
14819 to unibyte characters in unibyte buffers.
14820 (cursor_in_mouse_face_p): New function.
14821 (x_draw_stretch_glyph_string): Use it to choose a different GC
14822 when drawing a cursor within highlighted text. Don't draw
14823 background again if it has already been drawn.
14824 (x_draw_glyph_string_box): Don't draw a full-width
14825 box just because the glyph row's full_width_p flag is set.
14826 (x_draw_glyphs): Fix computation of rightmost x for
14827 full-width rows.
14828 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14829 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14830 change bottom shadow accordingly. Some cleanup.
14831 (x_update_window_end): Handle overwritten mouse face
14832 also for tool bar windows.
14833 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14834 DRAW is DRAW_IMAGE_RAISED.
14835 (clear_mouse_face): Return 1 if text with mouse face was
14836 actually redrawn. Make the function static.
14837 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14838 optimize away highlighting if we pass over that same overlay again.
14839 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14840 to detect a case where we have to highlight a different region
14841 despite not having left the currently highlighted region.
14842 Set mouse_face_overlay in the x_display_info. Avoid changing the
14843 mouse pointer shape when show_mouse_face has already done it, or
14844 there is no need. Handle mouse-face and help-echo in strings.
14845 (glyph_rect): New function.
14846 (w32_mouse_position): Use it to raise the threshold for mouse
14847 movement event generation.
14848 (w32_initialize_display_info): Initialize the x_display_info's
14849 mouse_face_overlay.
14850 (w32_set_vertical_scroll_bar): Don't clear a zero height
14851 or width area.
14852 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14853 a widget to zero height.
14854
14855 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14856 Protect unibyte strings created by replacing their multibyte
14857 equivalents in menu_items.
14858 (w32_menu_show): Don't overwrite an item's name with its key
14859 description in case the description is a multibyte string.
14860 (single_submenu): Some cleanup.
14861
14862 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14863 (postprocess_image): New function.
14864 (lookup_image): Call it for all image types except PostScript.
14865 (x_kill_gs_process): Call postprocess_image.
14866 (tiff_error_handler, tiff_warning_handler): New functions.
14867 (tiff_load): Install them as handlers.
14868 (x_kill_gs_process): Recognize if someone has cleared the image
14869 cache under us.
14870 (valid_image_p): Protect better against invalid image
14871 specifications. Previous code could signal an error.
14872 (Fx_hide_tip, Fshow_tip): Doc fix.
14873 (Fv_max_tooltip_size): New variable.
14874 (syns_of_xfns): DEFVAR_LISP it.
14875 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14876 window buffer to *tip* right after creating the frame. Set frame's
14877 window_width. Use a maximum tooltip size specified by
14878 Vx_max_tooltip_size, if that has valid contents.
14879 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14880 Make sure the tooltip is completely visible.
14881 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14882 (Fx_create_frame): Adjust the frame's height for presence
14883 of the tool bar before calling x_figure_window_size.
14884 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14885 when the window gets smaller.
14886 (x_set_foreground_color): Set frame's cursor_pixel.
14887 (x_set_foreground_color, x_set_background_color): Cleaned up.
14888 (x_set_font): Handle case of x_new_fontset returning the same name
14889 as before, although there was a change in fontsets.
14890
14891 2001-10-21 Miles Bader <miles@gnu.org>
14892
14893 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14894 (Flogxor): Add usage: string to doc string.
14895 * charset.c (Fstring): Likewise.
14896 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14897 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14898
14899 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14900
14901 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14902
14903 * alloc.c: Reindent DEFUNs with doc: keywords.
14904
14905 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14906
14907 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14908 keyword].
14909
14910 See ChangeLog.9 for earlier changes.
14911
14912 ;; Local Variables:
14913 ;; coding: iso-2022-7bit
14914 ;; End:
14915
14916 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14917 Copying and distribution of this file, with or without modification,
14918 are permitted provided the copyright notice and this notice are preserved.
14919
14920 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4