*** empty log message ***
[bpt/emacs.git] / src / ChangeLog
1 2004-08-03 Kenichi Handa <handa@m17n.org>
2
3 * coding.c (decode_coding_string): Adjust coding->consumed, and
4 etc. with shrinked_bytes.
5
6 2004-08-03 Kim F. Storm <storm@cua.dk>
7
8 * indent.c (compute_motion): Fix check for full width window
9 in non-window case. Do not count left truncation glyph on
10 window systems.
11
12 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
13
14 * data.c (Finteractive_form): Doc fix.
15
16 2004-08-02 Kim F. Storm <storm@cua.dk>
17
18 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
19 properly accounting for continuation glyph on non-window systems.
20 (Fcompute_motion): Use actual window width if WIDTH is nil, and
21 actual window width/height if TOPOS is nil, properly accounting for
22 continuation glyphs on non-window systems, and optional header lines.
23 (vmotion): Let compute_motion calculate actual window width.
24
25 * window.c (window_scroll_line_based): Let compute_motion
26 calculate actual window width.
27
28 2004-08-02 Kim F. Storm <storm@cua.dk>
29
30 * process.c (read_process_output): Use whole read buffer.
31 Don't trigger adaptive read buffering on errors.
32
33 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
34
35 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
36
37 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
38
39 * callint.c (Fcall_interactively): Doc fix.
40
41 2004-07-30 Kim F. Storm <storm@cua.dk>
42
43 * editfns.c (Fformat): Allocate extra (dummy) element in info.
44
45 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
46
47 * eval.c (Fdefvar, Fdefconst): Doc fixes.
48
49 2004-07-27 Kim F. Storm <storm@cua.dk>
50
51 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
52 we have ensured that the glyph fits on the current line (or returned
53 MOVE_LINE_CONTINUED otherwise).
54
55 2004-07-26 Kim F. Storm <storm@cua.dk>
56
57 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
58 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
59 if target position is at end of display line but char is not a newline.
60
61 2004-07-25 Richard M. Stallman <rms@gnu.org>
62
63 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
64 instead of ON_VERTICAL_BORDER, when on scroll bar.
65 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
66
67 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
68
69 * window.c (Fcoordinates_in_window_p):
70 Take account of FRAME_INTERNAL_BORDER_WIDTH.
71
72 * alloc.c (check_cons_list): New function (contents commented out).
73
74 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
75
76 * xfaces.c (Fcolor_supported_p): Doc fix.
77
78 * frame.c (Fselect_frame, Fset_frame_selected_window)
79 (Fframe_visible_p, Fraise_frame): Doc fixes.
80
81 2004-07-24 Richard M. Stallman <rms@gnu.org>
82
83 * keyboard.h (not_single_kboard_state): Declared.
84
85 * fileio.c (Fwrite_region): Doc fix.
86
87 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
88
89 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
90 only when a real abbrev is present.
91
92 * xfns.c (x_icon_verify): New function.
93 (Fx_create_frame): Use it.
94
95 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
96
97 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
98
99 2004-07-21 Kim F. Storm <storm@cua.dk>
100
101 * window.h (struct glyph_matrix): New members nrows_scale_factor
102 and ncols_scale_factor.
103
104 * window.c (make_window): Initialize nrows_scale_factor and
105 ncols_scale_factor members.
106
107 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
108 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
109 (required_matrix_height): Apply nrows_scale_factor.
110 (required_matrix_width): Apply ncols_scale_factor.
111
112 * xdisp.c (display_line): Increment nrows_scale_factor and set
113 fonts_changed_p if past last allocated row.
114 (append_glyph, append_composite_glyph, produce_image_glyph)
115 (append_stretch_glyph): Increment ncols_scale_factor and set
116 fonts_changed_p if current area is full.
117
118 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
119
120 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
121
122 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
123
124 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
125 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
126 (Fset_window_start, Fscroll_up, Fscroll_down)
127 (Fother_window_for_scrolling, Fscroll_other_window)
128 (Fsave_window_excursion, Fset_window_vscroll)
129 (syms_of_window) <window-size-fixed>: Doc fixes.
130
131 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
132
133 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
134 ENCODE_SYSTEM for filenames.
135
136 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
137
138 * mac.c (sys_select): Block input around call to
139 ReceiveNextEvent to prevent breakage. Correctly handle
140 blocking on event queue only by calling ReceiveNextEvent
141 instead of select (since GUI events aren't on an fd).
142 (sys_read): Remove function
143 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
144
145 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
146
147 * mac.c (sys_select): Redo sys_select to use alarm-based
148 polling instead of 1 sec timeouts (like solaris).
149
150 * macterm.c (x_make_frame_visible): Comment in polling on
151 frame creation.
152
153 * keyboard.c: Undef SIGIO on Carbon
154
155 * atimer.c (alarm_signal_handler): Call alarm handlers after
156 scheduling.
157
158 * eval.c (Feval): Remove quit_char test
159
160 * process.c (wait_reading_process_input): Remove clearing
161 stdin for select call on process input.
162
163 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
164
165 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
166 capitalization error in docstring.
167
168 2004-07-17 Juanma Barranquero <lektu@terra.es>
169
170 * keyboard.c (not_single_kboard_state): Do nothing unless
171 MULTI_KBOARD is defined.
172
173 2004-07-17 Richard M. Stallman <rms@gnu.org>
174
175 * window.c (coordinates_in_window): Inside the window but outside
176 its box to the L or R, return ON_VERTICAL_BORDER.
177 (window_list_1): Rotate the list to start with WINDOW.
178
179 * print.c (print_preprocess): Test for print_depth at limit
180 before entering in being_printed.
181
182 * keyboard.c (not_single_kboard_state): New function.
183 (stuff_buffered_input): Now no-op only if no SIGTSTP.
184
185 * frame.c (Fdelete_frame): If we're in single_bboard_state on
186 this kboard, and we delete its last frame, go to any_kboard_state.
187
188 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
189
190 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
191
192 * w32fns.c (Fx_file_dialog): Encode strings in system coding
193 system before passing them to OS functions for display.
194
195 2004-07-15 David Kastrup <dak@gnu.org>
196
197 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
198 Apparently fixes an abort condition.
199
200 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
201
202 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
203 instead of a cons.
204
205 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
206
207 * keyboard.c (echo_dash): Do nothing if there already is a dash
208 at the end of the echo string.
209
210 2004-07-12 Kim F. Storm <storm@cua.dk>
211
212 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
213 if GC_MARK_STACK.
214
215 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
216
217 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
218
219 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
220 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
221 (Freplace_buffer_in_windows, Fset_window_buffer)
222 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
223 (syms_of_window): Expand docstring of `display-buffer-function'.
224
225 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
226
227 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
228 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
229 that time values of the type (HIGH . LOW) are considered obsolete.
230
231 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
232
233 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
234 docstring.
235
236 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
237
238 2004-07-06 John Paul Wallington <jpw@gnu.org>
239
240 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
241
242 * fns.c (Fclear_string): Signal an error if STRING is not a string.
243
244 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
245
246 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
247 instead of CGMainDisplayID (only in OSX 10.2 and later).
248
249 2004-07-04 John Paul Wallington <jpw@gnu.org>
250
251 * fileio.c (read_file_name_completion_ignore_case): New variable.
252 (syms_of_fileio): Declare and initialise it.
253 (Fread_file_name): Bind `completion-ignore-case' to respect it.
254
255 2004-07-03 Eli Zaretskii <eliz@gnu.org>
256
257 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
258 for event.x and event.y.
259
260 2004-07-01 Kenichi Handa <handa@m17n.org>
261
262 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
263 after getting a new string by pre-write-conversion.
264
265 2004-06-30 Stefan <monnier@iro.umontreal.ca>
266
267 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
268 (x_calc_absolute_position): Remove unused var `child'.
269
270 * xfaces.c (x_supports_face_attributes_p)
271 (Fdisplay_supports_face_attributes_p): YAILOM.
272 (tty_supports_face_attributes_p): Remove unused var `i'.
273
274 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
275 back_unibyte_ok.
276
277 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
278
279 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
280
281 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
282
283 2004-06-30 Andreas Schwab <schwab@suse.de>
284
285 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
286 (Finit_image_library): Pass LIBRARIES through to
287 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
288 (lookup_image_type): Pass Qnil as second argument to
289 Finit_image_library.
290
291 * lisp.h: Declare Finit_image_library.
292
293 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
294
295 * macterm.c (do_window_activate, do_window_deactivate): Remove.
296 (XTread_socket): Send mouse button events to the toolbox
297 dispatcher even when the mouse is grabbed. Don't process window
298 activate events for non-Emacs windows. Replace function calls to
299 do_window_activate and do_window_deactivate with their contents.
300 Reset mouse grabbing status when a window is deactivated.
301
302 2004-06-29 Steven Tamm <steventamm@mac.com>
303
304 * macterm.c (mac_get_emulated_btn)
305 (mac_event_to_emacs_modifiers): Fix emulated mouse button
306 support to correctly mask out modifiers.
307
308 2004-06-29 David Kastrup <dak@gnu.org>
309
310 * search.c (Fset_match_data): Allow buffer before end of list
311 which can happen if set-match-data is using a pre-consed list.
312
313 2004-06-28 Steven Tamm <steventamm@mac.com>
314
315 * macterm.c (XTread_socket): Correctly set the frame position
316 after the window is moved.
317
318 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
319
320 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
321 gpix and gmask just before return to avoid memory leak.
322 (xg_get_image_for_pixmap): Add workaround for monochrome displays
323 so insensitive and activated icons look ok.
324
325 2004-06-27 Jason Rumney <jasonr@gnu.org>
326
327 * w32fns.c (file_dialog_callback): Disable edit control if set
328 to directories only on CDN_INITDONE message.
329 (Fx_file_dialog): Default to directories only when prompt starts
330 with "Dired".
331
332 2004-06-25 Kim F. Storm <storm@cua.dk>
333
334 * alloc.c (allocate_misc): Update total_free_markers.
335 (free_misc): New function.
336 (safe_alloca_unwind, free_marker): Use it.
337
338 * lisp.h (free_misc): Add prototype.
339
340 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
341
342 2004-06-24 Richard M. Stallman <rms@gnu.org>
343
344 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
345 (syms_of_emacs): Lisp variables deleted.
346
347 2004-06-23 David Kastrup <dak@gnu.org>
348
349 * search.c (Freplace_match): Adjust the match-data more thoroughly
350 when replacing strings in the buffer.
351 (Fmatch_data): When INTEGERS is non-nil and the last match was in
352 a buffer, add the buffer as last element to the match data.
353 (Fset_match_data): If an additional element of the match-data is a
354 buffer, restore it to last_thing_searched.
355 (save_search_regs): Save last_thing_searched as part of the match data.
356 (restore_match_data): Restore it again.
357
358 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
359
360 * keymap.c (Ftext_char_description): Doc fix.
361 * doc.c (Fsnarf_documentation): Doc fix.
362
363 2004-06-22 Kim F. Storm <storm@cua.dk>
364
365 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
366
367 * lisp.h (struct Lisp_Save_Value): New member dogc.
368 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
369 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
370 (SAFE_FREE_LISP): New macro.
371
372 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
373 (make_save_value): Init new dogc member.
374 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
375
376 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
377 SAFE_FREE_LISP macros.
378
379 2004-06-22 Kim F. Storm <storm@cua.dk>
380
381 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
382 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
383 in that memory area are unknown to GC. Add comments.
384
385 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
386
387 2004-06-21 Kim F. Storm <storm@cua.dk>
388
389 * lisp.h (MAX_ALLOCA): Define here.
390 (safe_alloca_unwind): Add prototype.
391 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
392
393 * alloc.c (safe_alloca_unwind): New function.
394
395 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
396
397 * charset.c (Fstring): Use SAFE_ALLOCA.
398
399 * coding.c (MAX_ALLOCA): Remove define.
400
401 * data.c (MAX_ALLOCA): Remove define.
402 (Faset): Use SAFE_ALLOCA.
403
404 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
405
406 * fns.c (string_make_multibyte, string_to_multibyte)
407 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
408 (MAX_ALLOCA): Remove define.
409 (Fbase64_encode_region, Fbase64_encode_string)
410 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
411 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
412 memory leak if encoding fails.
413
414 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
415
416 2004-06-21 Eli Zaretskii <eliz@gnu.org>
417
418 * print.c (Fwith_output_to_temp_buffer): Doc fix.
419
420 2004-06-20 Richard M. Stallman <rms@gnu.org>
421
422 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
423
424 * search.c (match_limit): Cleaner err msg when no match data available.
425
426 * window.c (syms_of_window): Doc fix.
427
428 * keyboard.c (command_loop_1): Handle values `only' and `identity'
429 for Vtransient_mark_mode.
430
431 * buffer.c (syms_of_buffer): Doc fix.
432
433 2004-06-21 David Kastrup <dak@gnu.org>
434
435 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
436 and unbinding of `case-fold-search' according to
437 `completion-ignore-case' around calls of string-match and
438 predicates, respectively. Should give satisfactory performance
439 in all relevant cases.
440
441 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
442
443 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
444 clip_x/y_origin.
445
446 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
447
448 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
449
450 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
451 on Mac OSX.
452
453 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
454
455 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
456
457 2004-06-16 Kim F. Storm <storm@cua.dk>
458
459 * dispextern.h (Vimage_types): Remove extern.
460
461 2004-06-16 Miles Bader <miles@gnu.org>
462
463 * image.c (lookup_image_type): Initialize image type if necessary.
464
465 2004-06-15 Kim F. Storm <storm@cua.dk>
466
467 * xdisp.c (try_cursor_movement): Exclude header line from scroll
468 margin at top of window.
469 (try_window_reusing_current_matrix): Calculate proper cursor position
470 after scrolling up with non-zero scroll margin, as the old cursor
471 position corresponds to value of PT before executing this command.
472 (try_window_id): Consider scroll margin at bottom of window too;
473 otherwise we fail to scroll when hl-line-mode is enabled.
474
475 * syntax.c (skip_chars): Only recognize [:class:] when it has the
476 proper format and class is a lower-case word.
477
478 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
479
480 * gtkutil.c (xg_get_image_for_pixmap): New function.
481 (xg_get_gdk_pixmap_and_mask): Remove.
482 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
483 xg_get_gdk_pixmap_and_mask.
484
485 * xterm.h (struct x_display_info): Typo in comment fixed.
486
487 2004-06-14 Juanma Barranquero <lektu@terra.es>
488
489 * dispextern.h (Vimage_types): Make it conditional on
490 HAVE_WINDOW_SYSTEM.
491
492 * image.c (Vimage_types): Move from xdisp.c.
493 (Vimage_type_cache): New variable.
494 (define_image_type): New argument indicating whether an image
495 library was loaded; cache loaded status and return t on success,
496 nil otherwise.
497 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
498 (w32_delayed_load): New function to load an image library from a
499 list of possible filenames.
500 (init_xpm_functions, init_png_functions, init_jpeg_functions)
501 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
502 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
503 (Finit_image_library): New function, extracted from `init_image'.
504 Try to initialize an image library on demand and cache whether we
505 were successful or not.
506 (syms_of_image): Initialize `Vimage_types' and
507 `Vimage_type_cache'. Add recognized image types to Vimage_types.
508 Export `init-image-library'.
509 (init_image): Remove initialization of all image types, except xbm
510 and pbm.
511
512 * xdisp.c (Vimage_types): Delete (moved to image.c).
513
514 2004-06-14 Andreas Schwab <schwab@suse.de>
515
516 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
517 Avoid calling specbind when completion-regexp-list is empty.
518
519 2004-06-13 Richard M. Stallman <rms@gnu.org>
520
521 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
522 (re_wctype, re_iswctype, re_wctype_to_bit):
523 Non-function definitions moved here from regex.c.
524
525 * regex.c (re_wctype, re_iswctype): Function defs longer static.
526 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
527 (re_wctype, re_iswctype, re_wctype_to_bit):
528 Non-function definitions moved to regex.h.
529
530 * window.c (Fselect_window): Doc fix.
531
532 * syntax.c: Include regex.h.
533 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
534 If requested, make a list of classes, then check the scanned
535 chars for membership in them.
536 (in_classes): New function.
537 Doc fix.
538
539 * keyboard.c (cmd_error): Don't call any_kboard_state
540 if inside a recursive edit level.
541
542 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
543
544 * keyboard.c (command_loop): Call any_kboard_state before
545 command_loop_2 when at top level.
546
547 2004-06-13 Andreas Schwab <schwab@suse.de>
548
549 * print.c (print_object): Always use %ld for printing EMACS_INT.
550
551 * keyboard.c (cancel_hourglass_unwind): Return a value.
552 (modify_event_symbol): Always use %ld for printing EMACS_INT.
553 (Fexecute_extended_command): Likewise.
554
555 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
556 avoid clashes.
557 (SYNTAX): Likewise.
558 (SYNTAX_WITH_FLAGS): Likewise.
559 (SYNTAX_MATCH): Likewise.
560
561 * syntax.c (char_quoted): Avoid warning about undefined operation.
562 (find_defun_start): Likewise.
563 (scan_lists): Likewise.
564 (INC_FROM): Likewise.
565 (scan_sexps_forward): Likewise.
566
567 * image.c: Include <ctype.h>.
568
569 * xfaces.c (face_attr_equal_p): Declare parameters.
570
571 2004-06-13 Kenichi Handa <handa@m17n.org>
572
573 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
574
575 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
576
577 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
578
579 2004-06-12 Kenichi Handa <handa@m17n.org>
580
581 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
582 ccl_prog_stack_struct and update it.
583 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
584 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
585 ccl->eof_ic on EOF.
586 (ccl_debug_hook): New function.
587 (struct ccl_prog_stack): New member eof_ic.
588 (ccl_driver): Handle EOF in subrountine call correctly.
589
590 2004-06-11 Kenichi Handa <handa@m17n.org>
591
592 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
593
594 2004-06-11 Kim F. Storm <storm@cua.dk>
595
596 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
597
598 2004-06-11 Juanma Barranquero <lektu@terra.es>
599
600 * keyboard.c (Fposn_at_point): Doc fix.
601
602 2004-06-11 David Kastrup <dak@gnu.org>
603
604 * search.c (match_limit): Don't flag an error if match-data
605 exceeding the allocated search_regs.num_regs gets requested, just
606 return Qnil.
607
608 2004-06-08 Miles Bader <miles@gnu.org>
609
610 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
611
612 2004-06-07 Juanma Barranquero <lektu@terra.es>
613
614 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
615 (Fcurrent_time_string, Fcurrent_time_zone)
616 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
617
618 2004-06-07 Miles Bader <miles@gnu.org>
619
620 * xfaces.c (struct named_merge_point): New type.
621 (push_named_merge_point): New function.
622 (merge_named_face): New function.
623 (merge_face_ref, face_at_buffer_position, face_at_string_position):
624 Use `merge_named_face'.
625 (merge_face_inheritance): Function removed.
626 (merge_face_ref): Rename from `merge_face_vector_with_property'.
627 Add new `err_msgs' and `named_merge_points' args. Return error
628 status. Only print error messages if ERR_MSGS is true. Don't try to
629 do :inherit attribute validation.
630 (merge_face_heights): Handle `unspecified' in both directions.
631 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
632 Call `merge_face_ref' instead of `merge_face_inheritance'.
633 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
634 (compute_char_face, face_at_buffer_position)
635 (face_at_string_position): Call `merge_face_ref' instead of
636 `merge_face_vector_with_property'.
637
638 2004-06-07 Kenichi Handa <handa@m17n.org>
639
640 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
641 the necessary places.
642
643 2004-06-07 Kim F. Storm <storm@cua.dk>
644
645 * process.c (Fdelete_process): Undo 2004-05-28 change.
646 Instead, call status_notify also for network process.
647 (status_message): Use process instead of status as arg.
648 Give messages "deleted" or "connection broken by remote peer" for
649 an exited network process.
650 (status_notify): Change call to status_message.
651 (read_process_output): Increase readmax to 4096. Do not increase
652 buffer size for datagram channels (default is now large enough).
653
654 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
655
656 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
657 problem due to newly defined variable.
658
659 2004-06-06 Miles Bader <miles@gnu.org>
660
661 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
662 immediately if non-interactive or not initialized.
663
664 2004-06-05 Richard M. Stallman <rms@gnu.org>
665
666 * minibuf.c (Fcompleting_read): Doc fix.
667
668 2004-06-05 Andreas Schwab <schwab@suse.de>
669
670 * macfns.c (x_create_tip_frame): Fix declaration after statement.
671
672 2004-06-05 Juanma Barranquero <lektu@terra.es>
673
674 * keymap.c (Fdescribe_vector): Fix docstring.
675 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
676
677 2004-06-05 Miles Bader <miles@gnu.org>
678
679 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
680 attributes have different values than the default face.
681
682 2004-06-04 Eli Zaretskii <eliz@gnu.org>
683
684 * xfaces.c (x_supports_face_attributes_p): Make this function
685 conditional on HAVE_WINDOW_SYSTEM.
686 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
687 Don't call x_supports_face_attributes_p if it was not compiled in.
688
689 2004-06-04 Miles Bader <miles@gnu.org>
690
691 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
692 from Ftty_supports_face_attributes_p.
693 (x_supports_face_attributes_p): New function.
694 (Ftty_supports_face_attributes_p): Function deleted.
695 (Fdisplay_supports_face_attributes_p): New function.
696 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
697 (face_attr_equal_p): New function.
698 (lface_equal_p): Use it.
699
700 2004-06-03 Juanma Barranquero <lektu@terra.es>
701
702 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
703 (Vw32_color_map): Fix typo in docstring.
704 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
705 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
706 Make argument names match their use in docstring.
707
708 2004-06-02 Juanma Barranquero <lektu@terra.es>
709
710 Work around bugs/problems with MinGW builds of graphics libraries
711 called from MSVC builds of Emacs.
712
713 * image.c (lookup_image): Make pointer to img static.
714 (png_read_from_memory): Disable "global" optimization.
715
716 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
717
718 * eval.c (Fcondition_case): Fix usage. Simplify.
719
720 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
721
722 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
723
724 * macfns.c: Don't include ccl.h.
725 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
726 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
727 TextUtils.h.
728 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
729 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
730 display height/width.
731 (compute_tip_xy, Vx_max_tooltip_size): Declare.
732 (unwind_create_tip_frame, compute_tip_xy): New functions.
733 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
734 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
735 and last_show_tip_args.
736
737 * macgui.h [!MAC_OSX]: Include Gestalt.h.
738 (Cursor, No_Cursor): New defines.
739 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
740 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
741
742 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
743
744 * macterm.c: Don't include Gestalt.h.
745 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
746 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
747 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
748 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
749 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
750 (construct_mouse_click, XTmouse_position)
751 (x_scroll_bar_report_motion, x_calc_absolute_position)
752 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
753 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
754 (note_mouse_movement): Clear the mouse face and reset the pointer
755 shape when the pointer goes outside the frame without grabbing.
756 (mac_front_window): New function.
757 (mac_window_to_frame): New macro.
758 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
759 (do_window_activate, do_window_deactivate, do_app_resume)
760 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
761 (do_zoom_window, mac_do_receive_drag, XTread_socket)
762 (mac_check_for_quit_char): Use mac_front_window and/or
763 mac_window_to_frame.
764 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
765 scroll-bar click event.
766 (mac_define_frame_cursor): Change the pointer shape.
767 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
768 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
769 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
770 (do_window_update): Don't do anything if the updated window is the
771 tooltip window.
772 (do_mouse_moved): Handle mouse movement events here (previously in
773 XTread_socket). Clear the mouse face if
774 dpyinfo->mouse_face_hidden is set.
775 (do_os_event, do_events): Remove (now in XTread_socket).
776 (XTread_socket): Immediately return if interrupt_input_blocked.
777 Loop until all the events in the queue are processed.
778 Rearrange codes for mouse grabbing. Add tooltip support. Include the
779 contents of do_os_event and do_events. Remove mouse movement
780 handling (now in do_mouse_moved). Add the case where
781 Vmouse_highlight has an integer value.
782 (NewMacWindow): Remove.
783 (make_mac_frame): Do what NewMacWindow previously did. Don't do
784 excess initializations.
785 (make_mac_terminal_frame): Previous initializations in
786 make_mac_frame are moved here.
787 (mac_initialize_display_info):
788 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
789
790 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
791 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
792
793 2004-05-29 Richard M. Stallman <rms@gnu.org>
794
795 * lisp.h (truncate_undo_list): Update decl.
796
797 * alloc.c (undo_outer_limit): New variable.
798 (syms_of_alloc): Defvar it.
799 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
800
801 * undo.c (truncate_undo_list): New arg LIMITSIZE.
802
803 * alloc.c (lisp_align_malloc): Check for base == 0
804 regardless of HAVE_POSIX_MEMALIGN.
805 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
806
807 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
808
809 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
810 (marker_blocks_pending_free): Remove.
811 (Fgarbage_collect): Sweep after cleaning up undo-lists.
812 Mark the undo lists after claning them up.
813 Don't free block in marker_blocks_pending_free.
814 (mark_buffer): Don't mark undo_list.
815 (gc_sweep): Sweep hash-tables and strings first.
816 Do free marker blocks that are empty.
817
818 2004-05-28 Jim Blandy <jimb@redhat.com>
819
820 * regex.c (print_partial_compiled_pattern): Add missing 'break'
821 after 'case wordend'. For symbeg and symend, print to stderr,
822 like the other cases.
823
824 2004-05-28 Noah Friedman <friedman@splode.com>
825
826 * process.c (Fdelete_process): Do not call remove_process.
827
828 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
829
830 * alloc.c (struct backtrace): Remove.
831 (Fgarbage_collect): Use the new mark_backtrace.
832
833 * eval.c (mark_backtrace): New function.
834
835 * minibuf.c (run_exit_minibuf_hook): New function.
836 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
837 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
838
839 2004-05-27 Kim F. Storm <storm@cua.dk>
840
841 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
842 over display properties, e.g. images, that replace buffer text.
843
844 2004-05-25 Kim F. Storm <storm@cua.dk>
845
846 * alloc.c (marker_blocks_pending_free): New var.
847 (gc_sweep): Store free marker blocks on that list.
848 (Fgarbage_collect): Free them after undo-list cleanup.
849
850 * process.c (wait_reading_process_input): Check connect_wait_mask
851 before actually accepting connection in case it has already been
852 accepted due to recursion.
853
854 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
855
856 * coding.c (Fset_safe_terminal_coding_system_internal):
857 Set suppress_error in safe_terminal_coding, not terminal_coding.
858
859 2004-05-22 Richard M. Stallman <rms@gnu.org>
860
861 * alloc.c (Fmake_string): Doc fix.
862
863 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
864 and the alist pairs too.
865
866 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
867
868 * emacs.c (main): Update copyright year.
869
870 * fileio.c (Fread_file_name): Expand DIR if not absolute.
871
872 * insdel.c (del_range_2, replace_range): Don't write an anchor
873 if the gap is empty.
874
875 * xdisp.c (try_scrolling): If scroll-up-aggressively or
876 scroll-down-aggressively is small but positive, put point
877 near the screen edge.
878
879 2004-05-22 Juanma Barranquero <lektu@terra.es>
880
881 * keymap.c (Fdefine_key): Doc fix.
882
883 2004-05-22 Kim F. Storm <storm@cua.dk>
884
885 * alloc.c (struct backtrace): Add debug_on_exit member.
886 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
887 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
888 the removed cons cells.
889 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
890 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
891 any cons cells pointing to unallocated stings.
892 Do not lisp_free any marker blocks, as there may still be pointers
893 to them from buffer undo lists at this stage of GC.
894
895 * keyboard.c (struct backtrace): Add debug_on_exit member.
896 (Fcommand_execute): Clear it.
897
898 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
899
900 * intervals.c (lookup_char_property): Do not prematurely return nil.
901
902 2004-05-19 Jim Blandy <jimb@redhat.com>
903
904 Add support for new '\_<' and '\_>' regexp operators, matching the
905 beginning and end of symbols.
906
907 * regex.c (enum syntaxcode): Add Ssymbol.
908 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
909 (re_opcode_t): New opcodes `symbeg' and `symend'.
910 (print_partial_compiled_pattern): Print the new opcodes properly.
911 (regex_compile): Parse the new operators.
912 (analyse_first): Skip sym(beg|end) (they match only the empty string).
913 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
914 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
915 (re_match_2_internal): Match symbeg and symend.
916
917 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
918
919 2004-05-19 Kim F. Storm <storm@cua.dk>
920
921 * .gdbinit (xsymbol): Fix last change.
922
923 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
924
925 * .gdbinit (xprintstr): New fun.
926 (xstring, xprintsym): Use it.
927
928 * w32proc.c (create_child): Use INTMASK.
929
930 * alloc.c (Fgarbage_collect): Do all the marking before flushing
931 unmarked elements of the undo list.
932
933 2004-05-18 David Ponce <david@dponce.com>
934
935 * print.c (print): Reset print_depth before to call print_object.
936
937 2004-05-18 Jason Rumney <jasonr@gnu.org>
938
939 * w32console.c: Prefix RIF functions with w32con_ to avoid
940 namespace clash with functions in term.c and w32term.c.
941
942 * w32menu.c (add_menu_item, w32_menu_display_help)
943 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
944
945 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
946
947 2004-05-18 Eli Zaretskii <eliz@gnu.org>
948
949 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
950
951 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
952 with make_number.
953 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
954 with XINT.
955
956 2004-05-18 Kim F. Storm <storm@cua.dk>
957
958 * blockinput.h (INPUT_BLOCKED_P): New macros.
959
960 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
961 (Ftop_level): Unblock input if blocked.
962
963 * buffer.h (GET_OVERLAYS_AT): New macro.
964 * msdos.c (IT_note_mouse_highlight): Use it.
965 * textprop.c (get_char_property_and_overlay): Use it.
966 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
967 * xfaces.c (face_at_buffer_position): Use it.
968
969 * print.c (print_object): Increase buf size.
970
971 2004-05-17 Jason Rumney <jasonr@gnu.org>
972
973 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
974 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
975 Lisp_Object using i member.
976 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
977 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
978 consistently.
979
980 * w32proc.c (create_child): Use make_number instead of masking pid.
981
982 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
983 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
984 Use EQ to compare Lisp_Objects.
985 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
986
987 * w32term.c (w32_num_mouse_buttons): Rename from
988 Vw32_num_mouse_buttons and make it an int.
989
990 * w32.c (init_environment): Use it.
991
992 * w32fns.c (w32_wnd_proc): Likewise.
993
994 * w32proc.c (w32_pipe_read_delay): Rename from
995 Vw32_pipe_read_delay and make it an int.
996
997 * w32.c (_sys_read_ahead): Use it.
998
999 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1000
1001 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1002
1003 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1004 (key_event): Don't mix Lisp_Object and int.
1005
1006 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1007
1008 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1009 modifiers in language change event.
1010
1011 2004-05-17 Kim F. Storm <storm@cua.dk>
1012
1013 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1014 Such objects may be freed markers which still exist on an undo list.
1015
1016 2004-05-16 Juanma Barranquero <lektu@terra.es>
1017
1018 * data.c (Fset_default): Make argument names match their use in
1019 docstring.
1020
1021 2004-05-15 Andreas Schwab <schwab@suse.de>
1022
1023 * emacs.c (gdb_array_mark_flag): Define.
1024 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1025
1026 2004-05-15 Eli Zaretskii <eliz@gnu.org>
1027
1028 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1029 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1030 defined for the MS-DOS build.
1031
1032 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1033
1034 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1035
1036 2004-05-14 Kenichi Handa <handa@m17n.org>
1037
1038 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1039
1040 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1041
1042 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1043 section to frame.c section.
1044 (Fxw_display_color_p, Fx_file_dialog): Declare if
1045 HAVE_WINDOW_SYSTEM defined.
1046
1047 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
1048
1049 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
1050
1051 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1052 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1053 (XTread_socket): Fix int/Lisp_Object mixup.
1054 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
1055
1056 * macterm.h (struct frame, struct face, struct image)
1057 (display_x_get_resource, Fx_display_color_p)
1058 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1059 Add prototypes.
1060
1061 2004-05-14 Kim F. Storm <storm@cua.dk>
1062
1063 * process.c (wait_reading_process_input): Make reentrant.
1064 Make Available and Connecting non-static. Save and restore value
1065 of waiting_for_user_input_p.
1066
1067 2004-05-13 Kim F. Storm <storm@cua.dk>
1068
1069 * keyboard.c (mark_kboards): Don't mark x and y members
1070 that are overloaded in selection request events.
1071
1072 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1073
1074 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1075
1076 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1077
1078 * window.c (Fdisplay_buffer, Fsplit_window)
1079 (split-height-threshold): Doc fix.
1080
1081 2004-05-13 Juanma Barranquero <lektu@terra.es>
1082
1083 * xfaces.c (Ftty_supports_face_attributes_p)
1084 (Finternal_copy_lisp_face): Fix typo in docstring.
1085 (Finternal_get_lisp_face_attribute): Fix docstring.
1086
1087 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1088
1089 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1090
1091 2004-05-11 Steven Tamm <steventamm@mac.com>
1092
1093 * macfns.c (Fx_create_frame): Default to using tool-bar by
1094 setting tool-bar-lines to 1 in default-frame-alist.
1095
1096 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1097
1098 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1099 (xpm_get_color_table_v, xpm_make_color_table_h)
1100 (xpm_put_color_table_h, xpm_get_color_table_h)
1101 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1102 (syms_of_image): Support XPM on Carbon Emacs. Does not
1103 depend on libXpm, but only supports XPM version 3 without extensions.
1104
1105 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1106
1107 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
1108 instead of FRAME_X_P
1109
1110 2004-05-11 Kim F. Storm <storm@cua.dk>
1111
1112 * process.c (read_process_output): Grow decoding_buf when needed;
1113 this could cause a crash in allocate_string and compact_small_strings.
1114
1115 2004-04-29 Jim Blandy <jimb@redhat.com>
1116
1117 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1118 against proper opcode.
1119
1120 2004-05-10 Juanma Barranquero <lektu@terra.es>
1121
1122 * process.c (Fstart_process): Fix docstring.
1123
1124 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1125 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1126 (Fsplit_char, Fchar_charset): Make argument names match their use
1127 in docstring.
1128
1129 2004-05-10 Richard M. Stallman <rms@gnu.org>
1130
1131 * print.c (print_preprocess): Use being_printed, loop_count and
1132 halftail to detect overdeep nesting and cyclic cdr chains.
1133
1134 2004-05-10 Andreas Schwab <schwab@suse.de>
1135
1136 * lisp.h: Declare Fmake_symbolic_link.
1137
1138 * fileio.c (Frename_file): Remove extra argument in call to
1139 Fmake_symbolic_link.
1140
1141 2004-05-10 Kim F. Storm <storm@cua.dk>
1142
1143 * xdisp.c (calc_line_height_property): Use string position when
1144 object is a string.
1145
1146 2004-05-10 Kenichi Handa <handa@m17n.org>
1147
1148 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1149 inhibit-modification-hooks to t temporarily before calling
1150 Ferase_buffer.
1151
1152 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1153 inhibit-modification-hooks to t temporarily before calling
1154 Ferase_buffer.
1155
1156 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1157 inhibit-modification-hooks to t temporarily before calling
1158 Ferase_buffer.
1159
1160 * fns.c (count_combining): Delete it.
1161 (concat): Don't check combining bytes.
1162
1163 2004-05-09 Jason Rumney <jasonr@gnu.org>
1164
1165 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1166 (globals_of_w32fns): Set it.
1167
1168 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1169
1170 * data.c (Fquo): Simplify.
1171
1172 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1173
1174 * data.c (Fquo): If any argument is float, do the computation in
1175 floating point.
1176
1177 2004-05-08 Juanma Barranquero <lektu@terra.es>
1178
1179 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1180 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1181 Fix spelling of Emacs on docstring.
1182 (Fset_process_coding_system, Fprocess_coding_system)
1183 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1184 Make argument names match their use in docstring.
1185 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1186 Fix docstring.
1187
1188 * editfns.c (Finsert_buffer_substring): Make argument names match their
1189 use in docstring.
1190
1191 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1192
1193 2004-05-07 Steven Tamm <steventamm@mac.com>
1194
1195 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1196 around call to ReceiveEvent to avoid certain crashes.
1197
1198 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1199
1200 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1201 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1202 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1203 Save/restore the current graphics port and device handle when
1204 drawing into an offscreen graphics world.
1205
1206 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1207 (gif_load): Likewise.
1208
1209 2004-05-07 Juanma Barranquero <lektu@terra.es>
1210
1211 * window.c (Fset_window_buffer): Fix docstring.
1212
1213 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1214
1215 * emacs.c (main) [VMS]: Fix var ref.
1216
1217 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1218
1219 * data.c (Fsetq_default): Fix docstring.
1220
1221 2004-05-06 Jason Rumney <jasonr@gnu.org>
1222
1223 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1224 to avoid name clash.
1225
1226 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1227
1228 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1229 (Frename_file): Handle renaming of symlinks across file systems.
1230 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
1231
1232 2004-05-04 Kim F. Storm <storm@cua.dk>
1233
1234 * xdisp.c (Qtotal): New var.
1235 (syms_of_xdisp): Intern and staticpro it.
1236 (calc_line_height_property): New arg total. Set it if
1237 line-spacing property has format (total . VALUE).
1238 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1239 Handle total line-spacing property.
1240
1241 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1242
1243 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1244 "under" scroll bar when size/position changes.
1245
1246 2004-05-03 Jason Rumney <jasonr@gnu.org>
1247
1248 * makefile.nt: Remove.
1249
1250 2004-05-02 Eli Zaretskii <eliz@gnu.org>
1251
1252 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
1253 Avoid compiler warnings.
1254
1255 * Makefile.in (region-cache.o): Depend on config.h.
1256
1257 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
1258
1259 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
1260 with continuation lines, too.
1261
1262 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
1263
1264 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
1265
1266 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
1267
1268 * xdisp.c (calc_line_height_property): YAILOM (yet another
1269 int/Lisp_Object mixup).
1270
1271 2004-05-01 Eli Zaretskii <eliz@gnu.org>
1272
1273 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
1274 undo bad effect of pack(4) in some versions of system headers.
1275
1276 2004-05-01 Jason Rumney <jasonr@gnu.org>
1277
1278 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
1279
1280 2004-04-30 Kim F. Storm <storm@cua.dk>
1281
1282 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
1283 (syms_of_buffer) <cursor-type>: Doc fix.
1284
1285 * dispextern.h (struct it): Remove member use_default_face.
1286 Add members override_ascent, override_descent, override_boff.
1287
1288 * xdisp.c (init_iterator): Handle line-spacing float value.
1289 Initialize override_ascent member.
1290 (append_space_for_newline): Reset override_ascent.
1291 Remove use_default_face.
1292 (calc_line_height_property): New function to calculate value of
1293 line-height and line-spacing properties. Look at overlays, too.
1294 Set override_ascent, override_descent, override_boff members when
1295 using another face than the current face. Float values are now
1296 relative to the frame default font, by default; accept a cons
1297 of ratio and face name to specify value relative to a specific face.
1298 (x_produce_glyphs): Use calc_line_height_property.
1299 Use override_ascent etc. when set to handle different face heights.
1300 A negative line-spacing property value is interpreted as a total
1301 line height, rather than inter-line spacing.
1302 (note_mouse_highlight): Allocate room for 40 overlays initially.
1303
1304 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
1305
1306 * data.c (Fsubr_name): New fun.
1307 (syms_of_data): Defsubr it.
1308
1309 2004-04-29 Kim F. Storm <storm@cua.dk>
1310
1311 * xdisp.c (null_glyph_slice): New var.
1312 (append_glyph, append_composite_glyph, append_stretch_glyph):
1313 Use it to initialize glyph slice.
1314
1315 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
1316
1317 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
1318 (on_hot_spot_p): Make sure we always return a value.
1319 (Flookup_image_map): Remove unused var ix and iy.
1320 (note_mode_line_or_margin_highlight): Remove unused var `image'.
1321
1322 2004-04-27 Eli Zaretskii <eliz@gnu.org>
1323
1324 * msdos.c (init_environment): If one of the TMP... environment
1325 variables is set to a drive letter without a trailing slash,
1326 append a slash.
1327
1328 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
1329
1330 * editfns.c (lisp_time_argument): Provide externally.
1331
1332 * fileio.c (Fset_file_times): New function.
1333 (syms_of_fileio): Intern and staticpro it.
1334
1335 2004-04-27 Kim F. Storm <storm@cua.dk>
1336
1337 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
1338 header line strings.
1339
1340 * dispextern.h (struct it): New member use_default_face.
1341
1342 * xdisp.c (Qline_height): New variable.
1343 (syms_of_xdisp): Intern and staticpro it.
1344 (append_space_for_newline): Partially undo 2004-04-25 change;
1345 add default_face_p arg, and restore callers.
1346 Clear it->use_default_face after use.
1347 (x_produce_glyphs): Set default font for ascii char if
1348 it->use_default_font is set. Change line-spacing property to set
1349 just extra line spacing. Handle new line-height property.
1350
1351 2004-04-26 Andreas Schwab <schwab@suse.de>
1352
1353 * print.c (print_object): Print non-ascii characters in bool
1354 vector representation as octal escapes.
1355
1356 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
1357 * print.c (print_object): Use it instead of BITS_PER_CHAR for
1358 bool vectors.
1359 * lread.c (read1): Likewise.
1360 * alloc.c (Fmake_bool_vector): Likewise.
1361 * data.c (Faref, Faset): Likewise.
1362 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
1363 (mapcar1): Likewise.
1364
1365 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1366
1367 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
1368
1369 2004-04-26 Miles Bader <miles@gnu.org>
1370
1371 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
1372
1373 2004-04-26 Juanma Barranquero <lektu@terra.es>
1374
1375 * buffer.c (Fpop_to_buffer): Fix docstring.
1376
1377 2004-04-26 Steven Tamm <steventamm@mac.com>
1378
1379 * lread.c (init_lread): Don't display missing lisp directory
1380 warnings with Carbon Emacs because self-contained bundled Emacs
1381 may be built without correct installation path.
1382
1383 2004-04-25 Kim F. Storm <storm@cua.dk>
1384
1385 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1386
1387 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
1388
1389 * xdisp.c (append_space_for_newline): Rename from append_space.
1390 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
1391 (x_produce_glyphs): Handle line-spacing property on newline char.
1392 If value is t, adjust ascent and descent to fit current row height.
1393 If value is an integer or float, set extra_line_spacing to integer
1394 value, or to float value x current line height.
1395
1396 2004-04-23 Kenichi Handa <handa@m17n.org>
1397
1398 * fontset.c (Finternal_char_font): If POSITION is nil, return
1399 font for displaying CH with the default face.
1400
1401 2004-04-23 Juanma Barranquero <lektu@terra.es>
1402
1403 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
1404
1405 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
1406
1407 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
1408 Don't make assumptions about the relative place of i and val.
1409 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
1410
1411 2004-04-21 Kim F. Storm <storm@cua.dk>
1412
1413 * dispextern.h (struct glyph_slice): New struct.
1414 (struct glyph): New member slice.
1415 (GLYPH_SLICE_EQUAL_P): New macro.
1416 (GLYPH_EQUAL_P): Use it.
1417 (struct glyph_string): New member slice.
1418 (struct it_slice): New struct.
1419 (struct it): New member slice, add member to stack too.
1420 New member constrain_row_ascent_descent_p.
1421 (image_ascent): Add prototype.
1422
1423 * dispnew.c (buffer_posn_from_coords): Return full image width
1424 and height even for image slices (posn is relative to full image).
1425 (marginal_area_string): Adjust x0,y0 for image slice.
1426
1427 * image.c (image_ascent): Add slice arg; calculate ascent for
1428 image slice (or full image).
1429
1430 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
1431 (syms_of_keyboard): Defsubr them.
1432
1433 * lisp.h (pos_visible_p): Fix prototype.
1434
1435 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1436 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1437 (x_draw_image_foreground, x_draw_image_relief)
1438 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1439 Draw sliced images.
1440
1441 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
1442 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1443 (x_draw_image_foreground, x_draw_image_relief)
1444 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
1445 Draw sliced images.
1446
1447 * w32term.h (image_ascent): Remove prototype.
1448
1449 * window.c (Fpos_visible_in_window_p): Return pixel position if
1450 PARTIALLY arg is non-nil. Simplify. Doc fix.
1451 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
1452 to return/set vscroll in pixels.
1453
1454 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
1455
1456 * xdisp.c (Qslice): New variable.
1457 (syms_of_xdisp): Intern and staticpro it.
1458 (pos_visible_p): Return pixel position in new x and y args.
1459 (init_iterator): Reset it->slice info.
1460 (handle_display_prop): Parse (slice ...) property.
1461 (push_it, pop_it): Save/restore slice info.
1462 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
1463 force repositioning of tall row if window is vscrolled, as that
1464 would reset vscroll.
1465 (append_space): Set it->constrain_row_ascent_descent_p to avoid
1466 increasing row height if row is non-empty.
1467 (fill_image_glyph_string): Copy slice info.
1468 (take_vertical_position_into_account): Simplify.
1469 (produce_image_glyph): Handle iterator slice info, setup glyph
1470 slice info. Do not force minimum line height.
1471 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
1472 do not increase height (ascent/descent) of non-empty row when
1473 adding normal character glyph; instead reduce glyph ascent/descent
1474 appropriately; if row is higher than current glyph, adjust glyph
1475 descent/ascent to reposition glyph within the existing row.
1476 Likewise, when char is newline, only set ascent/descent if row is
1477 currently empty.
1478 (note_mouse_highlight): Handle hotspots with sliced image.
1479
1480 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
1481 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
1482 (x_draw_image_foreground, x_draw_image_relief)
1483 (x_draw_image_foreground_1, x_draw_image_glyph_string):
1484 Draw sliced images.
1485
1486 * xterm.h (image_ascent): Remove prototype.
1487
1488 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
1489
1490 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
1491
1492 2004-04-20 John Paul Wallington <jpw@gnu.org>
1493
1494 * fns.c (Fassoc, Feql): Fix indentation.
1495
1496 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
1497
1498 2004-04-19 John Paul Wallington <jpw@gnu.org>
1499
1500 * fns.c (Feql): New function.
1501 (syms_of_fns): Defsubr it.
1502
1503 2004-04-18 Jason Rumney <jasonr@gnu.org>
1504
1505 * w32select.c (Fw32_set_clipboard_data): Get sequence number
1506 after closing the clipboard.
1507
1508 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
1509
1510 * buffer.c (Fbuffer_base_buffer): Doc fix.
1511
1512 2004-04-17 Kim F. Storm <storm@cua.dk>
1513
1514 * keymap.c (Fkey_description): Add optional PREFIX arg.
1515 Combine prefix with KEYS to make up the full key sequence to describe.
1516 Correlate meta_prefix_char and following (simple) key to describe
1517 as meta modifier. All callers changed.
1518 (describe_map): Rename arg `keys' to `prefix'. Remove local
1519 `elt_prefix' var. Use Fkey_description with prefix instead of
1520 elt_prefix combined with Fsingle_key_description.
1521 (describe_vector): Declare static. Replace arg `elt_prefix' with
1522 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
1523 if !KEYMAP_P. Use Fkey_description with prefix instead of
1524 Fsingle_key_description.
1525
1526 * keymap.h (Fkey_description): Fix prototype.
1527 (describe_vector): Remove prototype.
1528
1529 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
1530
1531 * image.c (PNG_BG_COLOR_SHIFT): Remove.
1532 (png_load): Fix calculation of transparent background color on X
1533 and W32 platforms.
1534
1535 2004-04-16 Juanma Barranquero <lektu@terra.es>
1536
1537 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
1538 not too large before computing how much to scroll.
1539
1540 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
1541
1542 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
1543
1544 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
1545
1546 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
1547 Add hyperlink to Elisp manual to the docstring.
1548
1549 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
1550
1551 * callint.c (fix_command): Use XDCR.
1552
1553 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
1554
1555 * window.c (Fget_lru_window): Doc fix.
1556
1557 2004-04-14 Kim F. Storm <storm@cua.dk>
1558
1559 * editfns.c (Fformat): Fix allocation size of precision array.
1560
1561 * dispnew.c (update_window): Only set changed_p if
1562 scrolling_window actually did scroll.
1563 (scrolling_window): Only return 1 if we actually did scroll.
1564
1565 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
1566 height to glyph height when cursor row is not fully visible.
1567 (make_cursor_line_fully_visible): Add FORCE_P arg to return
1568 failure in case row is higher than window. Callers changed.
1569 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
1570 Try to scroll partially visible, higher-than-window cursor row.
1571 (redisplay_window): Always try to scroll partially visible,
1572 higher-than-window cursor row - both initially and again with
1573 centering_position = 0.
1574 Clear desired matrix before retrying with centering_position = 0.
1575
1576 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
1577
1578 * syntax.c (scan_lists): Simplify backward string scan.
1579 Fix off-by-one boundary check for string and comment fences.
1580
1581 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
1582
1583 * sheap.c, unexcw.c: New files.
1584
1585 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
1586
1587 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
1588 base buffer has been killed. Correct the error message if the
1589 base buffer does not exist.
1590
1591 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
1592
1593 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
1594 Cygwin itself. Add support for Xaw3d scrollbars.
1595
1596 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
1597
1598 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
1599
1600 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
1601 before Cygwin unexec.
1602
1603 * Makefile.in: Link changes for Cygwin unexec() support.
1604
1605 2004-04-12 Andreas Schwab <schwab@suse.de>
1606
1607 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
1608
1609 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
1610
1611 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
1612 IGNORE argument equals NAME. Doc fix.
1613
1614 2004-04-11 Masatake YAMATO <jet@gyve.org>
1615
1616 * buffer.c (fix_start_end_in_overlays): Make overlays
1617 empty if they are backwards.
1618
1619 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
1620
1621 * xfaces.c (face_color_supported_p): Fix compilation without X11.
1622
1623 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
1624
1625 * doc.c (Fsnarf_documentation): Ignore new file name entries.
1626
1627 2004-04-06 Kim F. Storm <storm@cua.dk>
1628
1629 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1630 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
1631
1632 * w32term.c (w32_read_socket): Set mouse_face_hidden after
1633 clearing highlight.
1634
1635 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
1636
1637 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
1638 clearing highlight.
1639
1640 * indent.c (vmotion): Do not reserve one column for continuation
1641 marks on window frames.
1642
1643 2004-04-04 Eli Zaretskii <eliz@gnu.org>
1644
1645 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
1646 from GCC.
1647
1648 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
1649
1650 * .gdbinit-union: Remove.
1651
1652 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
1653 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
1654 ($nonvalbits): Remove.
1655 ($valmask): Set it by calling xreload to avoid redundancy.
1656
1657 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
1658 (gdb_emacs_intbits): Remove.
1659
1660 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1661
1662 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
1663
1664 2004-03-30 Kenichi Handa <handa@m17n.org>
1665
1666 * editfns.c (Fformat): Fix initialization of the array info.
1667
1668 2004-03-30 Kim F. Storm <storm@cua.dk>
1669
1670 * xterm.c (x_mouse_click_focus_ignore_position): New var.
1671 (syms_of_xterm): DEFVAR_BOOL it.
1672 (ignore_next_mouse_click_timeout): New var.
1673 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
1674 Use it to filter mouse clicks following focus event.
1675
1676 2004-03-29 David Ponce <david@dponce.com>
1677
1678 * callint.c (Fcall_interactively): Fix last change.
1679
1680 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
1681
1682 * eval.c (Fcommandp): Simplify.
1683
1684 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
1685 Extend to handle all kinds of functions.
1686
1687 * lisp.h (Finteractive_form): Declare.
1688
1689 * callint.c (Fcall_interactively): Use it.
1690
1691 2004-03-26 Kim F. Storm <storm@cua.dk>
1692
1693 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
1694 to catch errors in calc_pixel_width_or_height during redisplay.
1695
1696 2004-03-26 Masatake YAMATO <jet@gyve.org>
1697
1698 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
1699
1700 * lisp.h (fix_start_end_in_overlays): Likewise.
1701
1702 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
1703
1704 * editfns.c (Ftranspose_regions): Likewise.
1705
1706 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1707
1708 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
1709
1710 2004-03-19 Richard M. Stallman <rms@gnu.org>
1711
1712 * s/sol2-6.h: Delete previous change.
1713
1714 2004-03-19 Kim F. Storm <storm@cua.dk>
1715
1716 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
1717 to_charpos corresponds to newline in right fringe. Use local
1718 BUFFER_POS_REACHED_P macro.
1719
1720 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1721
1722 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
1723 to compile on non-window system.
1724
1725 2004-03-19 Kim F. Storm <storm@cua.dk>
1726
1727 * dispextern.h (calc_pixel_width_or_height): Add prototype.
1728
1729 * image.c (Qcenter): Move to xdisp.c.
1730
1731 * xdisp.c (Qcenter): Declare here.
1732 (syms_of_xdisp): Intern and staticpro it.
1733 (handle_single_display_prop): Allow space display property on all
1734 platforms.
1735 (display_mode_line): Set mode_line_p before displaying line.
1736 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
1737 handling. Remove complex cases for fringes and scroll-bars.
1738 Add left, right, and center alignment positions. Add text (area)
1739 width/height. Return width or height for image specs.
1740 (produce_stretch_glyph): Improve handling of :align-to. Is now
1741 relative to left of text area by default, but other base offsets
1742 can be specified -- also for text lines.
1743
1744 * term.c (produce_glyphs): Handle IT_STRETCH.
1745 (produce_stretch_glyph): New function to handle space width and
1746 align-to display properties on non-window systems.
1747
1748 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
1749
1750 * fileio.c (Fread_file_name): Set completion-ignore-case for
1751 case-insensitive systems.
1752
1753 2004-03-14 Masatake YAMATO <jet@gyve.org>
1754
1755 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
1756 when keymap and cursor are setup.
1757
1758 2004-03-14 Steven Tamm <steventamm@mac.com>
1759
1760 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
1761
1762 2004-03-14 Kim F. Storm <storm@cua.dk>
1763
1764 * dispextern.h (x_find_image_file): Add prototype.
1765
1766 * image.c (x_find_image_file): Make extern.
1767
1768 * xfns.c (x_find_image_file): Remove prototype.
1769
1770 2004-03-13 Eli Zaretskii <eliz@gnu.org>
1771
1772 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
1773
1774 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
1775
1776 2004-03-12 Richard M. Stallman <rms@gnu.org>
1777
1778 * fns.c (internal_equal): New arg PROPS controls comparing
1779 text properties. All callers changed.
1780 (Fequal_including_properties): New function.
1781 (syms_of_fns): defsubr it.
1782
1783 2004-03-12 Kim F. Storm <storm@cua.dk>
1784
1785 Fix image support on MAC. From YAMAMOTO Mitsuharu.
1786
1787 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
1788 (image_background, image_background_transparent): Fix prototypes.
1789
1790 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
1791
1792 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
1793 (x_query_font, x_find_ccl_program, x_set_window_size)
1794 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1795 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1796 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
1797
1798 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
1799 (x_query_font, x_find_ccl_program, x_set_window_size)
1800 (x_make_frame_visible, mac_initialize, XCreatePixmap)
1801 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
1802 (mac_draw_line_to_pixmap): Add prototypes.
1803
1804 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1805
1806 * macterm.c (XTread_socket): Fix mouse click on tool bar.
1807
1808 2004-03-11 Kim F. Storm <storm@cua.dk>
1809
1810 * dispextern.h: Move image related prototypes from xfns.c section
1811 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
1812 HAVE_X_WINDOWS.
1813
1814 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
1815 Move gtkutil.o to new GTK_OBJ list.
1816 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
1817 (GTK_OBJ) [USE_GTK]: New declaration.
1818 (obj): Add $(GTK_OBJ) to list.
1819
1820 2004-03-11 Steven Tamm <steventamm@mac.com>
1821
1822 * image.c [MAC_OSX]: Include sys/stat.h
1823
1824 * macfns.c (syms_of_macfns): Remove definitions of things now
1825 defined in image.c
1826
1827 2004-03-11 Kim F. Storm <storm@cua.dk>
1828
1829 The following changes consolidates the identical/similar image
1830 support code previously found in xfns.c, w32fns.c, and macfns.c
1831 into a new file image.c.
1832
1833 * makefile.w32-in (OBJ1): Add image.o.
1834 ($(BLD)/image.$(O)): Add dependencies.
1835
1836 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
1837 (image.o): Add dependencies.
1838
1839 * image.c: New file with consolidated image support code.
1840 (COLOR_TABLE_SUPPORT): New define to control whether
1841 color table support is available (X only).
1842 (Bitmap_Record): Common name for x_bitmap_record,
1843 w32_bitmap_record, and mac_bitmap_record.
1844 (XImagePtr): Common name for pointer to XImage or equivalent.
1845 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
1846 to XImagePtr on X+MAC, and to HDC on W32.
1847 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
1848 (NO_PIXMAP): Common name for "None" or equivalent.
1849 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
1850 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
1851 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
1852 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
1853 Define with suitable equivalents on W32 and MAC for code sharing.
1854 (XDrawLine): Define on MAC for code sharing.
1855 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
1856 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
1857 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1858 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1859 (x_reference_bitmap, x_create_bitmap_from_data)
1860 (x_create_bitmap_from_file, x_destroy_bitmap)
1861 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1862 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1863 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1864 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1865 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1866 (define_image_type, lookup_image_type, valid_image_p)
1867 (image_error, enum image_value_type, struct image_keyword)
1868 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1869 (make_image, free_image, prepare_image_for_display, image_ascent)
1870 (four_corners_best, image_background, image_background_transparent)
1871 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1872 (make_image_cache, free_image_cache, clear_image_cache)
1873 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1874 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1875 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1876 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1877 (init_image_func_pointer, image_load_quartz2d)
1878 (struct ct_color, init_color_table, free_color_table)
1879 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1880 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1881 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1882 (x_disable_image, x_build_heuristic_mask)
1883 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1884 (TIFF support, GIF support, Ghostscript support): Consolidate image
1885 code from xfns.c, w32fns.c, and macfns.c.
1886 (syms_of_image): Consolidate image related symbol setup here.
1887 (init_image): Consolidate image related initializations here.
1888
1889 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
1890 and init_image. Remove call to init_xfns.
1891
1892 * macterm.h (struct mac_bitmap_record): Add file member.
1893 Not currently used, but simplifies code sharing.
1894
1895 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1896 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1897 (x_reference_bitmap, x_create_bitmap_from_data)
1898 (x_create_bitmap_from_file, x_destroy_bitmap)
1899 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1900 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
1901 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1902 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1903 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1904 (define_image_type, lookup_image_type, valid_image_p)
1905 (image_error, enum image_value_type, struct image_keyword)
1906 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1907 (make_image, free_image, prepare_image_for_display, image_ascent)
1908 (four_corners_best, image_background, image_background_transparent)
1909 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1910 (make_image_cache, free_image_cache, clear_image_cache)
1911 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1912 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1913 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1914 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
1915 (init_image_func_pointer, image_load_quartz2d)
1916 (struct ct_color, init_color_table, free_color_table)
1917 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1918 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1919 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1920 (x_disable_image, x_build_heuristic_mask)
1921 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1922 (TIFF support, GIF support, Ghostscript support): Merge with image
1923 code from xfns.c and macfns.c into image.c.
1924 (syms_of_xfns): Move image related symbols to image.c.
1925 (init_external_image_libraries, init_xfns): Remove; initialization
1926 moved to init_image in image.c.
1927
1928 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1929 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1930 (x_reference_bitmap, x_create_bitmap_from_data)
1931 (x_create_bitmap_from_file, x_destroy_bitmap)
1932 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1933 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1934 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1935 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1936 (define_image_type, lookup_image_type, valid_image_p)
1937 (image_error, enum image_value_type, struct image_keyword)
1938 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1939 (make_image, free_image, prepare_image_for_display, image_ascent)
1940 (four_corners_best, image_background, image_background_transparent)
1941 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1942 (make_image_cache, free_image_cache, clear_image_cache)
1943 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1944 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1945 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1946 (struct ct_color, init_color_table, free_color_table)
1947 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1948 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1949 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1950 (x_disable_image, x_build_heuristic_mask)
1951 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1952 (TIFF support, GIF support, Ghostscript support): Merge with image
1953 code from xfns.c and macfns.c into image.c.
1954 (syms_of_xfns): Move image related symbols to image.c.
1955 (init_external_image_libraries, init_xfns): Remove; initialization
1956 moved to init_image in image.c.
1957
1958 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
1959 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1960 (x_reference_bitmap, x_create_bitmap_from_data)
1961 (x_create_bitmap_from_file, x_destroy_bitmap)
1962 (x_destroy_all_bitmaps, x_create_bitmap_mask)
1963 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
1964 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
1965 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
1966 (define_image_type, lookup_image_type, valid_image_p)
1967 (image_error, enum image_value_type, struct image_keyword)
1968 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
1969 (make_image, free_image, prepare_image_for_display, image_ascent)
1970 (four_corners_best, image_background, image_background_transparent)
1971 (x_clear_image_1, x_clear_image, x_alloc_image_color)
1972 (make_image_cache, free_image_cache, clear_image_cache)
1973 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
1974 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
1975 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
1976 (struct ct_color, init_color_table, free_color_table)
1977 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
1978 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
1979 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
1980 (x_disable_image, x_build_heuristic_mask)
1981 (XBM support, XPM support, PBM support, PNG support, JPEG support)
1982 (TIFF support, GIF support, Ghostscript support): Merge with
1983 w32fns.c and macfns.c image code into image.c.
1984 (syms_of_xfns): Move image related symbols to image.c.
1985 (init_xfns): Remove; initialization moved to init_image in image.c.
1986
1987 * lisp.h (syms_of_image, init_image): Add protoypes.
1988 (init_xfns): Remove prototype.
1989
1990 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1991 (x_reference_bitmap, x_create_bitmap_from_data)
1992 (x_create_bitmap_from_file, x_destroy_bitmap)
1993 (x_create_bitmap_mask): Move prototypes from dispextern.h.
1994 (gamma_correct) [MAC_OS]: Add prototype.
1995
1996 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
1997 (x_reference_bitmap, x_create_bitmap_from_data)
1998 (x_create_bitmap_from_file, x_destroy_bitmap)
1999 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2000
2001 2004-03-09 Kenichi Handa <handa@etlken2>
2002
2003 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2004 correctly.
2005
2006 2004-03-04 Richard M. Stallman <rms@gnu.org>
2007
2008 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2009
2010 * window.c (Fdisplay_buffer): Doc fix.
2011
2012 * buffer.c (Fpop_to_buffer): Doc fix.
2013
2014 2004-03-03 Kim F. Storm <storm@cua.dk>
2015
2016 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2017
2018 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2019
2020 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2021
2022 2004-03-02 Richard M. Stallman <rms@gnu.org>
2023
2024 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2025
2026 2004-03-02 Kenichi Handa <handa@m17n.org>
2027
2028 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2029
2030 2004-03-02 Kim F. Storm <storm@cua.dk>
2031
2032 * window.h (struct window): New member overlay_arrow_bitmap.
2033
2034 * window.c (make_window): Initialize overlay_arrow_bitmap.
2035
2036 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2037 implement and integrate multiple overlay arrows with redisplay.
2038 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2039 (last_arrow_position, last_arrow_string): Replace by properties.
2040 (Qlast_arrow_position, Qlast_arrow_string)
2041 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2042 (syms_of_xdisp): Intern and staticpro them.
2043 (overlay_arrow_string_or_property, update_overlay_arrows)
2044 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2045 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2046 (redisplay_internal): Use them instead of directly accessing
2047 Voverlay_arrow_position etc. for multiple overlay arrows.
2048 (mark_window_display_accurate): Use update_overlay_arrows.
2049 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2050 (try_window_id): Use overlay_arrows_changed_p.
2051 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2052 (display_line): Use overlay_arrow_at_row to check multiple
2053 overlay arrows, and get relevant overlay-arrow-string and
2054 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
2055 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2056 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2057
2058 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2059 (update_window_fringes): Remove unused code.
2060
2061 2004-03-01 Jason Rumney <jasonr@gnu.org>
2062
2063 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2064
2065 2004-03-01 Juanma Barranquero <lektu@terra.es>
2066
2067 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2068
2069 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2070
2071 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2072
2073 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2074 how many colors can be displayed.
2075
2076 2004-03-01 Kenichi Handa <handa@m17n.org>
2077
2078 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2079 correctly.
2080
2081 2004-02-28 Kim F. Storm <storm@cua.dk>
2082
2083 * dispnew.c (update_window): Update header line also if there are
2084 no other changes in window (move code after set_cursor label).
2085
2086 * lisp.h (mark_window_display_accurate): Remove prototype.
2087
2088 * window.c (window_loop, Fforce_window_update): Force mode line
2089 updates by setting prevent_redisplay_optimizations_p and
2090 update_mode_lines.
2091
2092 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2093
2094 * xfns.c (x_window): Fix indentation.
2095
2096 * xterm.c (x_calc_absolute_position): Call x_real_positions
2097 to get WM window sizes and use those to calculate position.
2098 (x_set_offset): Remove code commented out.
2099
2100 2004-02-28 Miles Bader <miles@gnu.org>
2101
2102 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2103
2104 2004-02-28 Kim F. Storm <storm@cua.dk>
2105
2106 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2107 an event into kbd fifo, but with special handling of quit event;
2108 a quit event is saved for later, and further events are discarded
2109 until the saved quit event has been processed.
2110 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2111 (gen_help_event): Store help event in kbd fifo.
2112 (NREAD_INPUT_EVENTS): Remove.
2113 (read_avail_input): Adapt to new read_socket_hook interface.
2114 Remove allocation and initialization of local input_event buffer,
2115 as read_socket_hook stores events directly in fifo. Allocate and
2116 initialize local hold_quit event to handle postponed quit event
2117 (and store it if set by kbd_buffer_store_event_hold).
2118
2119 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2120 (gen_help_event): Fix prototype.
2121
2122 * macterm.c (XTread_socket): Remove bufp_r and
2123 numcharsp args. Add hold_quit arg.
2124 Rework to use just one, local, inev input_event. Store inev
2125 directly in fifo using kbd_buffer_store_event_hold.
2126
2127 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2128 (read_input_waiting): Adapt to new read_socket_hook interface.
2129 Remove allocation and initialization of local input_event buffer,
2130 as read_socket_hook stores events directly in fifo. Allocate and
2131 initialize local hold_quit event to handle postponed quit event
2132 (and store it if set by kbd_buffer_store_event_hold).
2133
2134 * term.c (read_socket_hook): Fix arg list.
2135
2136 * termhooks.h (read_socket_hook): Fix prototype.
2137
2138 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2139 numcharsp args. Add hold_quit arg.
2140 Rework to use just one, local, inev input_event. Store inev
2141 directly in fifo using kbd_buffer_store_event_hold.
2142
2143 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2144
2145 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
2146 Add hold_quit arg. Rework to use just one, local, inev
2147 input_event. Store inev directly in fifo using
2148 kbd_buffer_store_event_hold. Update count in one place.
2149 Postpone call to gen_help_event until inev is stored; use new
2150 local do_help for this.
2151 Remove local emacs_event in handing of ButtonPress event; just use
2152 inev instead (so no reason to copy it later).
2153
2154 * xsmfns.c (x_session_check_input): Remove numchars arg.
2155
2156 * xterm.c (x_focus_changed, x_detect_focus_change):
2157 Remove numchars arg. Always store event into bufp arg.
2158 Return nothing. Callers changed accordingly.
2159 (glyph_rect): Simplify.
2160 (STORE_KEYSYM_FOR_DEBUG): New macro.
2161 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2162 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2163 (current_hold_quit) [USE_GTK]: Add.
2164 (event_handler_gdk): Adapt to new handle_one_xevent.
2165 (handle_one_xevent): Remove bufp_r and numcharsp args.
2166 Add hold_quit arg. Rework to use just one, local, inev
2167 input_event. Store inev directly in fifo using
2168 kbd_buffer_store_event_hold. Update count in one place.
2169 Postpone call to gen_help_event until inev is stored; use new
2170 local do_help for this.
2171 Simplify handling of keysyms (consolidate common code). Fix bug
2172 where count was updated with nchars instead of nbytes.
2173 Remove local emacs_event in handing of ButtonPress event; just use
2174 inev instead (so no reason to copy it later).
2175 Remove `out' label. Rename label `ret' to `done'; add various
2176 `goto done' to clarify code flow in deeply nested blocks.
2177 (x_dispatch_event): Simplify as handle_one_xevent now calls
2178 kbd_buffer_store_event itself.
2179 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
2180 arg. Call handle_one_xevent with new arglist. Store event from
2181 x_session_check_input in fifo.
2182 [USE_GTK]: Setup current_hold_quit.
2183 Decrement handling_signal before unblocking input.
2184 (x_initialize) [USE_GTK]: Initialize current_count.
2185
2186 * xterm.h (x_session_check_input): Fix prototype.
2187
2188 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2189
2190 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
2191
2192 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2193 macgui.h).
2194
2195 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
2196
2197 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2198 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2199 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2200 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2201 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2202 (Bitmap): Remove typedef.
2203 (Pixmap): Change int to GWorldPtr.
2204
2205 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2206
2207 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2208 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2209 New #define to extract 16-bit depth color components from unsigned
2210 long representation.
2211 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2212 colors used for masks.
2213 (struct mac_display_info): Add color_p. Remove n_cbits.
2214
2215 * macfns.c: Include sys/types.h and sys/stat.h.
2216 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2217 Include QuickTime/QuickTime.h.
2218 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2219 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2220 functions defined in macterm.c.
2221 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2222 (ZPixmap): New #define for compatibility with xfns.c.
2223 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2224 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
2225 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2226 New functions.
2227 (four_corners_best, x_create_x_image_and_pixmap)
2228 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2229 (x_edge_detection, init_color_table, colors_in_color_table)
2230 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2231 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2232 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2233 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2234 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2235 long mixup.
2236 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2237 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2238 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2239 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2240 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2241 (x_alloc_image_color, clear_image_cache, lookup_image)
2242 (x_find_image_file, xbm_read_bitmap_file_data)
2243 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2244 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2245 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2246 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2247 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
2248 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
2249 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
2250 #if 0.
2251 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
2252 #if 0. Free white_relief.gc and black_relief.gc.
2253 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
2254 New functions (from xfns.c).
2255 (Fx_create_frame): Record unwind_create_frame.
2256 (Fxw_display_color_p): Use dpyinfo->color_p.
2257 (Fx_display_grayscale_p, Fx_display_planes): Don't use
2258 dpyinfo->n_cbits.
2259 (Fx_display_color_cells): Use dpyinfo->n_planes;
2260 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
2261 (Qheuristic, cross_disabled_images, emboss_matrix)
2262 (laplace_matrix): New variables (from xfns.c).
2263 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
2264 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
2265 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
2266 (image_background_transparent): New function (from xfns.c).
2267 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2268 (image_load_quicktime): Add declaration.
2269 [MAC_OSX] (image_load_quartz2d): Likewise.
2270 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
2271 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
2272 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
2273 (xbm_load_image_from_file, x_laplace_read_row)
2274 (x_laplace_write_row, pbm_read_file): Remove functions.
2275 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
2276 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
2277 (colors_in_color_table): Sync with xfns.c (although not used).
2278 (lookup_rgb_color): Don't lookup color table. Just do gamma
2279 correction.
2280 (COLOR_INTENSITY): New #define (from xfns.c).
2281 (x_disable_image): New function (from xfns.c).
2282 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2283 (x_build_heuristic_mask): Sync with xfns.c.
2284 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2285 (HAVE_PBM): Remove #ifdef.
2286 (pbm_load): Sync with xfns.c. Set img->width and img->height
2287 before IMAGE_BACKGROUND.
2288 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
2289 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
2290 Don't enclose with #if HAVE_PNG.
2291 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
2292 symbol _CGImageCreateWithPNGDataProvider is defined.
2293 Otherwise use image_load_quicktime.
2294 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
2295 [HAVE_PNG] (png_load): Sync with xfns.c.
2296 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
2297 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
2298 HAVE_JPEG.
2299 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
2300 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
2301 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
2302 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
2303 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
2304 (tiff_image_p, tiff_load): Don't enclose declarations with #if
2305 HAVE_TIFF.
2306 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
2307 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
2308 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
2309 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
2310 New functions (from xfns.c).
2311 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
2312 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
2313 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
2314 Don't enclose with #if HAVE_GIF.
2315 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
2316 animated gif. Otherwise use image_load_quicktime.
2317 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
2318 gif_DrawText to avoid conflict with QuickdrawText.h.
2319 [HAVE_GIF] (gif_load): Sync with xfns.c.
2320 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
2321 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
2322 Ghostscript is not supported yet).
2323 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
2324 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
2325 cross_disabled_images (from xfns.c). Remove #if 0 for supported
2326 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2327 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
2328 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
2329 HAVE_PNG. Call EnterMovies to support animated gifs.
2330 Call init_image_func_pointer to bind a symbol
2331 _CGImageCreateWithPNGDataProvider if it is defined.
2332
2333 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2334 (x_draw_bar_cursor): Sync declaration with xterm.c.
2335 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
2336 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
2337 graphics).
2338 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
2339 (mac_draw_line_to_pixmap, XCreatePixmap)
2340 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
2341 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
2342 New functions.
2343 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
2344 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2345 Cast bits to char *.
2346 (reflect_byte): New function (from w32fns.c).
2347 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
2348 due to byte alignment.
2349 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
2350 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
2351 (XSetForeground): Remove static (now used in macfns.c).
2352 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
2353 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
2354 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
2355 (x_draw_glyph_string_box, x_draw_image_foreground)
2356 (x_draw_image_foreground_1, x_draw_image_glyph_string)
2357 (x_draw_stretch_glyph_string, x_draw_glyph_string)
2358 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
2359 Sync with xterm.c.
2360 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
2361 than the xterm.c version when a strictly horizontal or vertical
2362 line is drawn.
2363 (XTset_terminal_window): Add static.
2364 (x_make_frame_visible): Add UNBLOCK_INPUT.
2365 (x_free_frame_resources): New funcion (from xterm.c).
2366 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
2367 occurs in tool bar area.
2368 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
2369 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
2370 Initialize image cache.
2371 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
2372 Enclose unused functions with #if 0.
2373 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
2374 (decode_mac_font_name): New function to apply code conversions
2375 from a mac font name to an XLFD font name according to its script code.
2376 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
2377 font name to a mac font name according to REGISTRY and ENCODING fields.
2378 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
2379 whose name starts with `.'.
2380 (init_font_name_table): Use decode_mac_font_name. Add both
2381 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
2382 of a font is smJapanese.
2383 (mac_do_list_fonts): New function to list fonts that match a given
2384 pattern.
2385 (x_list_fonts, XLoadQueryFont): Use it.
2386 (XLoadQueryFont): Set rbearing field for each variable width
2387 character to avoid needless redraw.
2388 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
2389
2390 2004-02-26 Kim F. Storm <storm@cua.dk>
2391
2392 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
2393 as read_socket_hook handler on X aborts if buffer is too small
2394 and W32 handler doesn't always check buffer limit.
2395
2396 * xdisp.c (handle_single_display_prop): Handle left-fringe and
2397 right-fringe similar to a display margin image. Specifically,
2398 the characters having the fringe prop are no longer shown, and
2399 we use IT_IMAGE/next_element_from_image with image_id = -1 to
2400 do this. Set fringe bitmap face_id in it->face_id.
2401 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
2402 still realize it->face (i.e. the fringe bitmap face).
2403
2404 2004-02-25 Miles Bader <miles@gnu.org>
2405
2406 * xdisp.c (check_it): Check string/string_pos consistency.
2407 (init_iterator): Initialize string-related fields properly.
2408
2409 2004-02-11 Miles Bader <miles@gnu.org>
2410
2411 * xdisp.c (produce_image_glyph): Force negative descents to zero.
2412
2413 2004-02-10 Miles Bader <miles@gnu.org>
2414
2415 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
2416 BLOCK_INPUT can be nested, so it doesn't make much sense.
2417
2418 2004-02-24 Michael Mauger <mmaug@yahoo.com>
2419
2420 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
2421 (xbm_read_bitmap_data): Use unsigned char for image data.
2422
2423 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
2424
2425 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
2426
2427 2004-02-22 Jason Rumney <jasonr@gnu.org>
2428
2429 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
2430 correctly over other bitmaps.
2431
2432 2004-02-21 Eli Zaretskii <eliz@gnu.org>
2433
2434 * emacs.c (USAGE1): Split into two halves.
2435 (USAGE2): Second half of the old USAGE1.
2436 (USAGE3): Rename from USAGE2.
2437 (USAGE4): Rename from USAGE3.
2438
2439 2004-02-21 Juri Linkov <juri@jurta.org>
2440
2441 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
2442 Fix --multibyte. Move --help, --version to USAGE2. Add alias
2443 --file. Fix -f, -l. Sort options. Untabify.
2444 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
2445
2446 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
2447
2448 * category.c (Fdefine_category, Fcategory_docstring)
2449 (Fget_unused_category, Fset_category_table)
2450 (Fcategory_set_mnemonics): Doc fixes.
2451
2452 2004-02-20 Kim F. Storm <storm@cua.dk>
2453
2454 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
2455 The following changes are relative to the 2004-01-21 revision.
2456 (NREAD_INPUT_EVENTS): Define as max number of input events to read
2457 in one call to read_socket_hook. Value is 8.
2458 (read_avail_input): Separate and rework handling of read_socket_hook
2459 and non-read_socket_hook cases. Use smaller input_event buffer
2460 in read_socket_hook case, and repeat if full buffer is read.
2461 Use new local variable 'discard' to skip input after C-g.
2462 In non-read_socket_hook case, just use a single input_event, and
2463 call kbd_buffer_store_event on the fly for each character.
2464
2465 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
2466
2467 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
2468 Remove unused `gu' alternative.
2469
2470 2004-02-19 Andreas Schwab <schwab@suse.de>
2471
2472 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
2473 warning.
2474
2475 2004-02-18 Kim F. Storm <storm@cua.dk>
2476
2477 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
2478 Fix last change.
2479
2480 2004-02-17 Kim F. Storm <storm@cua.dk>
2481
2482 * xdisp.c (fast_find_position): Fix return value of new version;
2483 it was inverted compared to the 21.1 version.
2484 (get_window_cursor_type): Don't look at glyph if NULL.
2485 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
2486
2487 * keyboard.c: Rework previous change; it didn't consider that the
2488 buf array was allocated on the stack.
2489 (prev_read): Remove variable.
2490 (read_avail_input_buf): New static event buffer array.
2491 (in_read_avail_input): New static variable to handle re-entrancy.
2492 (read_avail_input): Change buf to pinter to read_avail_input_buf.
2493 Use in_read_avail_input to handle re-entrance; when re-entered,
2494 fully initialize and use tmp_buf array instead of read_avail_input_buf.
2495 Do not initialize read_avail_input_buf in full here; instead assume it
2496 is always cleared on entry. To ensure that, we clear (just) the
2497 entries that were used before we return.
2498 (init_keyboard): Initialize read_avail_input_buf here.
2499
2500 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
2501
2502 * cmds.c (Fend_of_line): Doc fix.
2503
2504 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
2505
2506 * keyboard.c (prev_read): New static variable.
2507 (read_avail_input): Use it to zero out only those slots in buf[]
2508 that were used last time we were called.
2509
2510 2004-02-16 Eli Zaretskii <eliz@gnu.org>
2511
2512 * Makefile.in (obj): Move fringe.o from here...
2513 (XOBJ, MAC_OBJ): ...to here.
2514
2515 2004-02-16 Stephen Eglen <stephen@gnu.org>
2516
2517 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
2518
2519 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
2520
2521 * data.c (Fbyteorder):
2522 * fringe.c (Fdefine_fringe_bitmap):
2523 * xdisp.c (handle_single_display_prop):
2524 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
2525
2526 2004-02-16 Jason Rumney <jasonr@gnu.org>
2527
2528 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
2529
2530 2004-02-15 Steven Tamm <steventamm@mac.com>
2531
2532 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
2533 controlling emulation of a three button mouse with option and
2534 command keys.
2535 (Qreverse, mac_get_enumlated_btn): Handle the emulation
2536 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
2537
2538 2004-02-15 Kim F. Storm <storm@cua.dk>
2539
2540 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
2541
2542 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
2543 Perform byte-swapping.
2544
2545 2004-02-14 Kim F. Storm <storm@cua.dk>
2546
2547 * dispextern.h (struct draw_fringe_bitmap_params): Change member
2548 bits from char to short to facilitate wider bitmaps.
2549 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
2550 member.
2551
2552 * fringe.c (struct fringe_bitmap): Change member bits from char to
2553 short to facilitate 16 bits wide bitmaps. Modify all standard
2554 bitmaps accordingly.
2555 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
2556 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
2557 (draw_fringe_bitmap): Ditto.
2558 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
2559 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
2560 handle up to 16 bits wide bitmaps.
2561 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
2562 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
2563
2564 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
2565 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
2566 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
2567
2568 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
2569 so it is no longer necessary to expand them here.
2570
2571 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
2572
2573 2004-02-12 Kim F. Storm <storm@cua.dk>
2574
2575 * window.c (Fwindow_fringes): Doc fix.
2576
2577 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2578
2579 * xselect.c (x_get_foreign_selection): Add new optional parameter
2580 time_stamp.
2581 (Fx_get_selection_internal): Ditto, pass time_stamp to
2582 x_get_foreign_selection.
2583
2584 * data.c (Fbyteorder): New function.
2585
2586 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2587
2588 * atimer.c: Move include stdio.h to same place as in other files.
2589
2590 * region-cache.c: Ditto.
2591
2592 * sysdep.c: Ditto.
2593
2594 * xfaces.c: Ditto.
2595
2596 2004-02-09 Sam Steingold <sds@gnu.org>
2597
2598 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
2599
2600 2004-02-09 Kim F. Storm <storm@cua.dk>
2601
2602 * fringe.c: New file. Move original fringe related declarations
2603 and code from dispextern.h and xdisp.c here.
2604 Rework code to support user defined fringe bitmaps, redefining
2605 standard bitmaps, ability to overlay user defined bitmap with
2606 overlay arrow bitmap, and add faces to bitmaps.
2607 (Voverflow_newline_into_fringe): Declare here.
2608 (enum fringe_bitmap_align): New enum.
2609 (..._bits): All bitmaps are now defined without bitswapping; that
2610 is now done in init_fringe_once (if necessary).
2611 (standard_bitmaps): New array with specifications for the
2612 standard fringe bitmaps.
2613 (fringe_faces): New array.
2614 (valid_fringe_bitmap_id_p): New function.
2615 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
2616 (draw_fringe_bitmap): New function which draws fringe bitmap,
2617 possibly overlaying bitmap with cursor in right fringe or the
2618 overlay arrow in the left fringe.
2619 (update_window_fringes): Do not handle overlay arrow here.
2620 Compare and copy fringe bitmap faces.
2621 (init_fringe_bitmap): New function.
2622 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
2623 define and destroy user defined fringe bitmaps.
2624 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
2625 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
2626 (syms_of_fringe): New function. Defsubr new DEFUNs.
2627 DEFVAR_LISP Voverflow_newline_into_fringe.
2628 (init_fringe_once, init_fringe): New functions.
2629 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
2630
2631 * Makefile.in (obj): Add fringe.o.
2632 (fringe.o): New dependencies.
2633
2634 * dispextern.h (FRINGE_ID_BITS): New definition for number of
2635 bits allocated to hold a fringe number. Increase number of bits
2636 from 4 to 8 to allow user defined fringe bitmaps.
2637 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
2638 left_user_fringe_face_id, right_user_fringe_bitmap,
2639 right_user_fringe_face_id.
2640 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
2641 Move to new file fringe.c.
2642 (MAX_FRINGE_BITMAPS): Define here.
2643 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
2644 and overlay_p. Change member which to int.
2645 (struct redisplay_interface): New members define_fringe_bitmap
2646 and destroy_fringe_bitmap.
2647 (valid_fringe_bitmap_id_p): Add prototype.
2648 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
2649
2650 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
2651 arrows.
2652 (update_frame): Do flush_display if force_flush_display_p to
2653 ensure display (specifically fringes) are updated in a timely
2654 manner when resizing the frame by dragging the mouse.
2655 (update_window_line): Update row if overlay arrow changed.
2656 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
2657 or overlay arrow changed.
2658
2659 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
2660 syms_of_fringe, and init_fringe.
2661
2662 * frame.h (struct frame): New member force_flush_display_p.
2663
2664 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
2665 Add prototypes.
2666
2667 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
2668 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
2669 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
2670 Use cursor color for displaying cursor in fringe.
2671 (x_redisplay_interface): Add null handlers for
2672 define_fringe_bitmap and destroy_fringe_bitmap functions.
2673
2674 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
2675 xterm.c to handle overlayed fringe bitmaps and to use cursor color
2676 for displaying cursor in fringe.
2677 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
2678 specific functions to define and destroy fringe bitmaps in fringe_bmp.
2679 (w32_redisplay_interface): Add them to redisplay_interface.
2680 (w32_term_init): Call w32_init_fringe instead of explicitly
2681 defining fringe bitmaps in fringe_bmp array.
2682 (x_delete_display): Call w32_reset_fringes instead of explicitly
2683 destroying fringe bitmaps in fringe_bmp array.
2684
2685 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
2686 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
2687 (continued_bits, continuation_bits, ov_bits, first_line_bits)
2688 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
2689 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
2690 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
2691 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
2692 Move fringe handling vars and code to new file fringe.c.
2693 (handle_display_prop): Handle left-fringe and right-fringe
2694 display properties; store user fringe bitmaps in iterator.
2695 (move_it_in_display_line_to): Handle cursor in fringe at eob.
2696 (clear_garbaged_frames): Set force_flush_display_p if resized.
2697 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
2698 (display_line): Handle cursor in fringe at eob.
2699 (display_line): Set row user fringe bitmaps from iterator.
2700
2701 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
2702 Use cursor color for displaying cursor in fringe.
2703 (x_redisplay_interface): Add null handlers for
2704 define_fringe_bitmap and destroy_fringe_bitmap functions.
2705
2706 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2707
2708 * macfns.c (Fx_change_window_property): Make doc string and
2709 parameters same as for X version.
2710
2711 * w32fns.c (Fx_change_window_property): Ditto.
2712
2713 2004-02-07 Kim F. Storm <storm@cua.dk>
2714
2715 * xdisp.c (hscroll_window_tree): Position cursor near to right
2716 margin in hscrolled window when jumping to end of line (rather
2717 than centering cursor).
2718
2719 * process.c (wait_reading_process_input): Don't do adaptive read
2720 buffering if waiting for a specific process.
2721
2722 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
2723
2724 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
2725 (Fread_minibuffer, Feval_minibuffer)
2726 (Fread_string, Fread_no_blanks_input)
2727 (Fcompleting_read): Doc fixes.
2728 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
2729 completion-regexp-list. Define Qcase_fold_search and staticpro it.
2730 (read_minibuf): Fix initial comment.
2731 (Ftry_completion, Fall_completions, Ftest_completion): Bind
2732 case-fold-search to the value of completion-ignore-case when
2733 checking completion-regexp-list.
2734 (Fdisplay_completion_list): Make it handle arguments that are
2735 symbols. Doc fix.
2736
2737 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2738
2739 * xterm.h: Add declaration of free_frame_menubar.
2740
2741 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
2742 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
2743 (Fx_change_window_property): Add declaration of parameters type and
2744 format. Remove unused variable cons.
2745
2746 * xselect.c: Include stdio,h.
2747
2748 2004-02-05 Kenichi Handa <handa@m17n.org>
2749
2750 * fns.c (Fset_char_table_range): Fix previous change.
2751
2752 * buffer.c (Fset_buffer_multibyte): Fix docstring.
2753
2754 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
2755
2756 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
2757
2758 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
2759
2760 * keymap.c (Vmouse_events): Rename from Vmenu_events.
2761 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
2762
2763 2004-02-04 Kenichi Handa <handa@m17n.org>
2764
2765 * fns.c (Fset_char_table_range): Handle charsets ascii,
2766 eight-bit-control, and eight-bit-graphic correctly.
2767
2768 2004-02-03 Jason Rumney <jasonr@gnu.org>
2769
2770 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
2771
2772 * w32fns.c (x_to_w32_font): Likewise.
2773
2774 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2775
2776 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
2777 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
2778
2779 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
2780 ClientMessages.
2781
2782 * xselect.c: Include termhooks.h and X11/Xproto.h
2783 (x_check_property_data, x_fill_property_data)
2784 (x_property_data_to_lisp, mouse_position_for_drop)
2785 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
2786 (Fx_send_client_event): Move here from xfns.c.
2787 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
2788
2789 * xfns.c (x-send-client-message): Move to xselect.c
2790 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
2791 OUTER_P.
2792 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
2793 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
2794 if vector_ret_p is true.
2795 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
2796
2797 2004-02-02 Eli Zaretskii <eliz@gnu.org>
2798
2799 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
2800 basename of FILE relative to it, not FILE itself.
2801
2802 2004-02-02 Kenichi Handa <handa@m17n.org>
2803
2804 * coding.c (coding_restore_composition): Check invalid
2805 composition data more rigidly.
2806
2807 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
2808
2809 * fileio.c (Fread_file_name_internal): Correctly handle the case
2810 where insert-default-directory is nil.
2811 (Fread_file_name): Always return an empty string if the user exits
2812 with an empty minibuffer. Adapt the docstring accordingly.
2813 (syms_of_fileio): Adapt the docstring of insert-default-directory
2814 to the change in Fread_file_name.
2815
2816 2004-01-29 Eli Zaretskii <eliz@gnu.org>
2817
2818 * alloca.c [!alloca]: Fix the prototype for xfree.
2819
2820 2004-01-29 Kenichi Handa <handa@m17n.org>
2821
2822 * fns.c (string_char_to_byte): Optimize for ASCII only string.
2823 (string_byte_to_char): Likewise.
2824
2825 2004-01-28 Peter Runestig <peter@runestig.com>
2826
2827 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
2828
2829 2004-01-27 Steven Tamm <steventamm@mac.com>
2830
2831 * unexmacosx.c (unexec_copy): Do not copy more than was
2832 requested to prevent overwriting during unexec.
2833
2834 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2835
2836 * process.c (sigchld_handler): Add comment about not calling malloc.
2837
2838 * process.h: Add extern to synch_process_termsig.
2839
2840 2004-01-27 Steven Tamm <steventamm@mac.com>
2841
2842 * macterm.c (make_mac_frame, make_mac_terminal_frame):
2843 Move setting of scroll bars from make_mac_frame to
2844 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
2845
2846 2004-01-26 Richard M. Stallman <rms@gnu.org>
2847
2848 * search.c (Freplace_match): Handle nonexistent
2849 back-references properly.
2850
2851 2004-01-03 Richard M. Stallman <rms@gnu.org>
2852
2853 * window.c (decode_any_window): New function.
2854 (Fwindow_height, Fwindow_width, Fwindow_edges)
2855 (Fwindow_pixel_edges, Fwindow_inside_edges)
2856 (Fwindow_inside_pixel_edges): Use decode_any_window.
2857
2858 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2859
2860 * process.h: synch_process_termsig new variable.
2861
2862 * callproc.c: Define synch_process_termsig.
2863 (Fcall_process): Initiate synch_process_termsig to zero and
2864 check if non-zero and get signal name after subprocess has ended.
2865
2866 * process.c (sigchld_handler): Set synch_process_termsig
2867 if terminated by a signal. synch_process_death setting removed.
2868
2869 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
2870
2871 2004-01-26 Andreas Schwab <schwab@suse.de>
2872
2873 * print.c (print_preprocess): Declare size as EMACS_INT to not
2874 lose bits.
2875 (print_object): Likewise.
2876 * alloc.c (Fpurecopy): Likewise.
2877
2878 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
2879
2880 * window.c (Fwindow_minibuffer_p): Doc fix.
2881
2882 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
2883
2884 * editfns.c (Fformat): Make both passes accept the same set of flags.
2885
2886 2004-01-23 Kenichi Handa <handa@m17n.org>
2887
2888 * fns.c (Fmd5): If OBJECT is a buffer different from the current
2889 one, set buffer to OBJECT temporarily.
2890
2891 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2892
2893 * keyboard.c (kbd_buffer_gcpro): Remove.
2894 (kbd_buffer_store_event, clear_event, Fdiscard_input)
2895 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
2896 Don't initialize and/or maintain the variable any more. It was made
2897 redundant by my commit of 2003-06-15.
2898
2899 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
2900
2901 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2902
2903 * lisp.h: Add undef DECL_ALIGN.
2904
2905 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
2906
2907 * process.c (wait_reading_process_input) [SYNC_INPUT]:
2908 Check interrupt_input_pending explicitly.
2909
2910 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
2911
2912 * keyboard.c (handle_async_input): New fun,
2913 extracted from input_available_signal.
2914 (input_available_signal, reinvoke_input_signal): Use it.
2915
2916 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
2917
2918 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
2919
2920 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
2921 manipulation macros for when tags are in the lower bits.
2922 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
2923 (DECL_ALIGN): New macro.
2924 (DEFUN): Use it.
2925
2926 * lisp.h [ENABLE_CHECKING]: Don't force union type.
2927
2928 * s/darwin.h (__attribute__): Remove outdated workaround.
2929
2930 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
2931
2932 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
2933 Don't check range of malloc address.
2934 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
2935
2936 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
2937
2938 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
2939
2940 2004-01-19 Kenichi Handa <handa@m17n.org>
2941
2942 * fontset.c (fontset_font_pattern): Fix previous change.
2943
2944 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
2945
2946 * xdisp.c (Voverflow_newline_into_fringe)
2947 (move_it_in_display_line_to, redisplay_internal)
2948 (update_window_fringes, redisplay_window, display_line, window):
2949 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
2950 that it compiles without a window-system.
2951 * dispnew.c (direct_output_for_insert, update_window): Likewise.
2952
2953 2004-01-16 Kim F. Storm <storm@cua.dk>
2954
2955 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
2956
2957 * buffer.c (init_buffer_once): Set buffer_defaults and
2958 buffer_local_flags for indicate_buffer_boundaries.
2959 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
2960 default- variable for it.
2961
2962 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
2963 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
2964 New members exact_window_width_line_p and cursor_in_fringe_p for
2965 overflowing newlines into right fringe.
2966 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
2967 and indicate_bottom_line_p for buffer boundaries and scrolling.
2968 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
2969 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
2970 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
2971 and HOLLOW_SQUARE_BITMAP.
2972 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
2973 Add prototypes.
2974
2975 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
2976 instead of related indicator fields.
2977 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
2978 (direct_output_for_insert): Handle exact width lines like
2979 contined lines. Call update_window_fringes.
2980 (update_window): Call update_window_fringes.
2981 (scrolling_window): Don't skip desired rows with changed bitmaps.
2982 Check if fringe bitmaps changes when assigning scrolled rows.
2983
2984 * xdisp.c (Voverflow_newline_into_fringe): New variable.
2985 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
2986 (move_it_in_display_line_to): Overflow newline into fringe for
2987 rows that are exactly as wide as the window.
2988 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
2989 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
2990 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
2991 (fringe_bitmaps): Add new bitmaps.
2992 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
2993 Select proper bitmap for cursor in fringe when appropriate.
2994 Handle alignment of bitmap to top or bottom of row.
2995 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
2996 done by update_window_fringes.
2997 (update_window_fringes, draw_window_fringes): New functions.
2998 (redisplay_internal): Call update_window_fringes in case only
2999 cursor row is updated.
3000 (redisplay_window): Call update_window_fringes.
3001 Explicitly call draw_window_fringes if redisplay was done using
3002 the current matrix or the overlay arrow is in the window.
3003 (try_window_reusing_current_matrix): Mark scrolled rows for
3004 fringe update (to update buffer-boundaries / scrolling icons).
3005 (find_last_unchanged_at_beg_row): Handle exact width lines line
3006 continued lines.
3007 (display_line): Overflow newline into fringe for rows that are
3008 exactly as wide as the window. Don't append space for newline
3009 in this case.
3010 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3011 in fringe as if it had been overwritten.
3012 (erase_phys_cursor): Erase cursor bitmap in fringe.
3013 (syms_of_xdisp): Mark show-trailing-whitespace and
3014 void-text-area-pointer as user options.
3015 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
3016
3017 * xterm.c (x_update_window_end): Call draw_window_fringes.
3018 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3019 in row instead of actually drawing fringe bitmaps.
3020 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3021 (x_draw_window_cursor): Draw cursor in fringe.
3022
3023 * w32term.c (x_update_window_end): Call draw_window_fringes.
3024 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3025 in row instead of actually drawing fringe bitmaps.
3026 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3027 (w32_draw_window_cursor): Draw cursor in fringe.
3028
3029 * macterm.c (x_update_window_end): Call draw_window_fringes.
3030 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3031 in row instead of actually drawing fringe bitmaps.
3032 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3033 (mac_draw_window_cursor): Draw cursor in fringe.
3034
3035 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3036
3037 * xterm.c (handle_one_xevent): Don't handle characters that are part
3038 of an old style (XLookupString) compose sequence.
3039
3040 2004-01-15 Kenichi Handa <handa@m17n.org>
3041
3042 * search.c (Freplace_match): Use make_multibyte_string or
3043 make_unibyte_string according to the buffer multibyteness.
3044
3045 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3046
3047 * alloc.c (struct interval_block, struct string_block)
3048 (struct symbol_block, struct marker_block, live_string_p)
3049 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3050 Better preserve alignment for objects in blocks.
3051 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3052
3053 * lread.c (defvar_per_buffer): Remove dead declaration.
3054
3055 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3056 space size.
3057
3058 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3059
3060 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3061 if a key press should pop down. Only pop down if a key is pressed
3062 outside the menu/dialog.
3063 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3064 popup_get_selection.
3065 (create_and_show_dialog): Pass 1 for down_on_keypress to
3066 popup_get_selection.
3067
3068 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3069
3070 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3071 BLOCK/UNBLOCK_INPUT.
3072
3073 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3074
3075 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3076 specified.
3077
3078 2004-01-08 Kenichi Handa <handa@m17n.org>
3079
3080 * editfns.c (Fformat): Fix '&' to '&&'.
3081
3082 2004-01-08 Andreas Schwab <schwab@suse.de>
3083
3084 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3085 size if PSEUDOVECTOR_FLAG is set.
3086
3087 2004-01-07 Kenichi Handa <handa@m17n.org>
3088
3089 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3090
3091 * fontset.c (fontset_ref_via_base): Fix previous change.
3092
3093 2004-01-07 Kim F. Storm <storm@cua.dk>
3094
3095 * process.c (read_process_output): Only activate adaptive
3096 buffering if we read less than 256 bytes at a time.
3097
3098 2004-01-06 Kim F. Storm <storm@cua.dk>
3099
3100 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3101 object and image object. Return glyph width and height.
3102 (mode_line_string, marginal_area_string): Ditto.
3103
3104 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3105 (marginal_area_string): Fix prototypes.
3106
3107 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
3108 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
3109 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3110
3111 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3112 buffer_posn_from_coords, and marginal_area_string functions to
3113 include both string object and image object in the lispy position.
3114 Also add actual glyph width and height to position.
3115 (read_key_sequence): Use real buffer position from mouse
3116 event to find keymap property even when click is in marginal area.
3117
3118 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3119 mode_line_string and marginal_area_string functions to handle
3120 both string object and image object properties.
3121
3122 2004-01-06 Andreas Schwab <schwab@suse.de>
3123
3124 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3125 character.
3126
3127 2004-01-02 Andreas Schwab <schwab@suse.de>
3128
3129 * macterm.c (emacs_options, x_initialized, same_x_server):
3130 Remove unused (and duplicated) definitions.
3131
3132 2004-01-02 Kim F. Storm <storm@cua.dk>
3133
3134 * process.h (struct Lisp_Process): New members for adaptive read
3135 buffering: adaptive_read_buffering, read_output_delay, and
3136 read_output_skip.
3137
3138 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3139 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3140 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3141 (process_output_delay_count, process_output_skip): New vars.
3142 (Vprocess_adaptive_read_buffering): New variable.
3143 (make_process): Initialize adaptive read buffering members.
3144 (Fstart_process): Set adaptive_read_buffering member.
3145 (deactivate_process): Cleanup adaptive read buffering.
3146 (wait_reading_process_input): Temporarily omit delayed
3147 subprocesses from the set of file descriptors to read from;
3148 adjust the select timeout if we skipped any subprocesses.
3149 (read_process_output): Increase adaptive read buffering delay if
3150 we read less than a full buffer; reduce delay when we read a
3151 full buffer.
3152 (send_process): Simplify using local Lisp_Process var.
3153 Reset adaptive read buffering delay after write.
3154 (init_process): Initialize process_output_delay_count and
3155 process_output_skip.
3156 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3157
3158 2004-01-01 Jason Rumney <jasonr@gnu.org>
3159
3160 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
3161
3162 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3163
3164 * print.c (Ferror_message_string): Add hyperlink in the docstring
3165 to the definition of `signal' in the Elisp manual.
3166 * eval.c (Fsignal): Ditto.
3167
3168 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
3169
3170 * fns.c (internal_equal): Return t for two NaN arguments.
3171
3172 2003-12-29 Richard M. Stallman <rms@gnu.org>
3173
3174 * data.c (store_symval_forwarding): Handle setting
3175 default-fill-column, etc., by changing the value in
3176 buffers that use the default.
3177
3178 * minibuf.c (Fset_minibuffer_window): Doc fix.
3179
3180 * fileio.c (choose_write_coding_system): Ignore auto_saving
3181 if using the visited file for auto saves.
3182 (Fwrite_region): Don't update SAVE_MODIFF
3183 if auto-saving in visited file.
3184
3185 2003-12-29 Kenichi Handa <handa@m17n.org>
3186
3187 * dispextern.h (face_font_available_p): Extern it.
3188
3189 * fontset.c (Voverriding_fontspec_alist): New variable.
3190 (lookup_overriding_fontspec): New function.
3191 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3192 (fontset_font_pattern): Likewise.
3193 (regulalize_fontname): New function.
3194 (Fset_fontset_font): Call regulalize_fontname.
3195 (Fset_overriding_fontspec_internal): New function.
3196 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3197 Defsubr Sset_overriding_fontspec_internal.
3198
3199 * xfaces.c (face_font_available_p): New function.
3200
3201 2003-12-28 Richard M. Stallman <rms@gnu.org>
3202
3203 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3204 or if its name is nil.
3205
3206 * buffer.c (Fkill_buffer): Don't delete auto-save file
3207 if it's the same as the visited file.
3208
3209 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3210
3211 * coding.c (Fcheck_coding_system): Doc fix.
3212
3213 2003-12-28 Kim F. Storm <storm@cua.dk>
3214
3215 * Makefile.in (eval.o): Depend on dispextern.h.
3216
3217 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3218 image glyph using image's ascent.
3219 (mode_line_string): Return image glyph as object clicked on.
3220 Adjust y0 for image glyph using image's ascent.
3221
3222 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3223 (struct glyph): New members, ascent and descent. Used to save
3224 this glyph's ascent and descent, instead of having.
3225 (struct glyph): Declare member face_id using FACE_ID_BITS.
3226 (find_hot_spot): Add prototype.
3227
3228 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3229 (QCmap): Declare extern.
3230 (make_lispy_position): When position is inside image hot-spot,
3231 use hot-spot element's id as posn element.
3232
3233 * lisp.h (IMAGEP): New macro to test for image object type.
3234 (Qimage): Declare extern.
3235
3236 * macfns.c (Qimage): Remove extern (now in lisp.h).
3237 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3238
3239 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3240
3241 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3242 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3243
3244 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3245
3246 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3247
3248 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3249 pointer types.
3250 (Qrelative_width, Qalign_to): Remove unused variables.
3251 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
3252 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
3253 image maps.
3254 (x_y_to_hpos_vpos): Return glyph relative coordinates through
3255 new dx and dy args.
3256 Remove buffer_only_p arg (always 0). Simplify code accordingly.
3257 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
3258 than row's ascent and height, to get sensible height on tall rows.
3259 (build_desired_tool_bar_string): Remove Qimage extern.
3260 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
3261 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
3262 image glyph is alone on the last line.
3263 (append_glyph, append_composite_glyph, produce_image_glyph)
3264 (append_stretch_glyph): Set glyph's ascent and descent.
3265 (on_hot_spot_p): New function to check if position is inside an
3266 rectangular, circular, or polygon-shaped image hot-spot,
3267 (find_hot_spot): New function to search for image hot-spot.
3268 (Flookup_image_map): New defun to search for image hot-spot.
3269 (define_frame_cursor1): New aux function to determine frame pointer.
3270 (note_mode_line_or_margin_highlight, note_mouse_highlight):
3271 Handle `pointer' text property and :pointer image property to
3272 control frame pointer shape. Detect image hot-spots for pointer
3273 and help_echo properties. Use define_frame_cursor1.
3274 (note_mouse_highlight): Use Vvoid_text_area_pointer.
3275 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
3276 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
3277
3278 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
3279
3280 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
3281 (Qimage): Remove extern (now in lisp.h).
3282 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3283
3284 * xmenu.c (show_help_event): Remove unused code.
3285
3286 * xterm.c (Qface, Qmouse_face): Remove unused externs.
3287 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
3288 row's ascent and descent, to get a sensible height on tall rows.
3289
3290 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
3291
3292 * minibuf.c (Fcompleting_read): Undo previous change.
3293
3294 2003-12-25 Lars Hansen <larsh@math.ku.dk>
3295
3296 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
3297 Arguments GCPRO'ed in call to file name handler.
3298
3299 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
3300
3301 * termcap.c (tgetst1): Scan for "%pN"; if all
3302 N are continuous in [1,9], remove all "%pN".
3303
3304 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3305
3306 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
3307
3308 * xfaces.c (lface_fully_specified_p): Take into account that
3309 MAC OS always have unspecified stipple.
3310
3311 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3312
3313 * tparam.c (tparam1): Add handling for `%pN', which
3314 means use param N for the next substitution.
3315
3316 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
3317
3318 * xfaces.c (Fcolor_gray_p): Fix omission bug:
3319 In case `frame' is nil, consult the selected frame.
3320 (Fcolor_supported_p): Likewise.
3321
3322 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
3323
3324 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
3325 Doc fixes.
3326
3327 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
3328 and an integer. Adapt the introductory comment accordingly.
3329 (Fread_from_minibuffer): Delete code moved into read_minibuf.
3330 Doc fix.
3331 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
3332 read_minibuf.
3333 (Fcompleting_read): Delete code moved into read_minibuf.
3334 (Ftest_completion): Make it handle obarrays and hash tables correctly.
3335
3336 2003-12-03 Kenichi Handa <handa@m17n.org>
3337
3338 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
3339 encoding sequence.
3340
3341 2003-12-01 Kenichi Handa <handa@m17n.org>
3342
3343 * composite.c (syms_of_composite): Don't make the compostion hash
3344 table week.
3345
3346 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
3347
3348 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
3349 * textprop.c (Fget_char_property_and_overlay): New function.
3350 (syms_of_textprop): Defsubr it.
3351
3352 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3353
3354 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
3355 to compile on terminal configuration.
3356
3357 * fileio.c (Fread_file_name): Check use_file_dialog also before
3358 calling Fx_file_dialog.
3359
3360 * fns.c: use_file_dialog: New variable.
3361 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
3362
3363 2003-11-29 Kim F. Storm <storm@cua.dk>
3364
3365 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
3366 (syms_of_msdos): Don't intern and staticpro them.
3367
3368 2003-11-27 Kim F. Storm <storm@cua.dk>
3369
3370 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
3371 coordinates relative to glyph at posn. If glyph is an image,
3372 return that as object at posn. Callers changed.
3373 (mode_line_string, marginal_area_string): Calculate and return
3374 pixel coordinates relative to glyph. Callers changed.
3375
3376 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3377 (marginal_area_string): Fix prototypes.
3378 (window_box_left_offset, window_box_right_offset): Add prototypes.
3379
3380 * frame.h (get_specified_cursor_type, get_window_cursor_type):
3381 Remove prototypes.
3382
3383 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
3384
3385 * keyboard.c (make_lispy_position): Add x and y coordinates
3386 relative to the current glyph as 7th element of position.
3387 If glyph is an image, return it in the object element.
3388 (read_key_sequence): Skip checks for keymap property in cases
3389 where POSN_STRING is not a string (e.g. an image).
3390
3391 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
3392 (Vshow_text_cursor_in_void): New variable.
3393 (glyph_to_pixel_coords): Don't use negative hpos.
3394 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
3395 (append_stretch_glyph): Change ascent arg to be actual value
3396 in pixels rather than ratio to height. Callers changed.
3397 (calc_pixel_width_or_height): New aux function, implementing
3398 pixel based artihmetic for glyph widths and heights.
3399 (produce_stretch_glyph): Use calc_pixel_width_or_height for
3400 :width, :height, :align-to, and :ascent, thus allowing these to
3401 be specified in pixels as well as multiples of characters.
3402 Don't produce stretch glyphs with zero width or height.
3403 (get_specified_cursor_type): Declare static.
3404 (get_window_cursor_type): Declare static. Add glyph arg to be
3405 able to know when cursor is on an image; always substitute
3406 hollow-box cursor for filled-box cursor on images, to avoid
3407 negative images and flicker when blinking the cursor.
3408 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
3409 (note_mode_line_or_margin_highlight): Use non-text cursor rather
3410 than vertical scroll-bar cursor in display margins.
3411 (note_mouse_highlight): Use non-text cursor rather than text
3412 cursor in fringes and over images in the text area.
3413 Use non-text cursor when mouse pointer is outside editable text,
3414 i.e. in the void after end-of-line or end-of-buffer; this was
3415 already done for W32, but is now standard for all systems --
3416 user can toggle show-text-cursor-in-void to get old behaviour.
3417 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
3418 Vdisplay_pixels_per_inch.
3419
3420 2003-11-25 Andreas Schwab <schwab@suse.de>
3421
3422 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
3423 EMACS_INT to not lose bits.
3424 (Ffillarray): Don't set bits beyond the size of a bool vector.
3425
3426 2003-11-25 Kim F. Storm <storm@cua.dk>
3427
3428 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
3429 define this defun on systems that cannot use stderr as lvalue.
3430
3431 2003-11-24 Gerd Moellmann <gerd@gnu.org>
3432
3433 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
3434 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
3435 ld's default is incompatible with unexec.
3436
3437 2003-11-23 Kim F. Storm <storm@cua.dk>
3438
3439 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
3440 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
3441 (Fforce_window_update): New defun.
3442 (syms_of_window): Defsubr it.
3443 (Fset_window_margins, Fset_window_fringes): Doc fix.
3444
3445 * print.c (Fredirect_debugging_output): New defun.
3446 (syms_of_print): Defsubr it.
3447
3448 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
3449
3450 * fns.c (Fset_char_table_parent): Doc fix.
3451
3452 2003-11-22 Kim F. Storm <storm@cua.dk>
3453
3454 * dispnew.c (buffer_posn_from_coords): Return actual row/column
3455 for glyph clicked on, rather than (unused) pixel positions.
3456 (mode_line_string, marginal_area_string): Change X and Y args to
3457 pointers for returning actual row/column for glyph clicked on.
3458 Simplify and optimize loops.
3459
3460 * dispextern.h (mode_line_string, marginal_area_string):
3461 Update prototypes.
3462
3463 * keyboard.c (make_lispy_position): New function for generating
3464 mouse click positions from frame and pixel coordinates.
3465 Enhanced to return buffer position and actual row/column for
3466 events outside the text area using updated mode_line_string and
3467 marginal_area_string functions.
3468 Return left-fringe and right-fringe clicks as such, rather than
3469 clicks in text area.
3470 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
3471 pixel_to_glyph_coords, as we never use the results.
3472 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
3473 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
3474 Eliminate unused code in WHEEL_EVENT handling.
3475 (make_lispy_movement): Use make_lispy_position.
3476
3477 * window.c (coordinates_in_window): Remove redundant tests.
3478 Fix returned X pixel value for left-margin.
3479
3480 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
3481 mode_line_string and marginal_area_string parameters.
3482
3483 2003-11-22 Lars Hansen <larsh@math.ku.dk>
3484
3485 * w32.c (struct the_group, getgrgid): Add.
3486 * mac.c (struct my_group, getgrgid): Add.
3487
3488 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3489
3490 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
3491
3492 2003-11-21 Lars Hansen <larsh@math.ku.dk>
3493
3494 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
3495 include in call to file name handler. Optionally translate numeric
3496 UID and GID to strings. Update docstring.
3497 (directory_files_internal): Add parameter ID-FORMAT.
3498 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
3499 include in call to file name handler and call to
3500 directory_files_internal. Update Docstring.
3501 (Fdirectory_files): Add dummy parameter in call to
3502 directory_files_internal.
3503 * lisp.h (Qinteger): Add.
3504 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
3505 (Ffile_attributes): Add parameter.
3506 * data.c (Qinteger): Export.
3507
3508 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
3509
3510 * fns.c (Freverse, Fnreverse): Doc fixes.
3511
3512 2003-11-19 Kim F. Storm <storm@cua.dk>
3513
3514 * xdisp.c (init_iterator): Initialize it->start to position
3515 before reseating (in case start position is invisible).
3516 (init_to_row_start): Set it->start to row-start.
3517 (redisplay_window): Accept optional_new_start if start position
3518 is invisible (in which case IT_CHARPOS overshoots PT).
3519 (display_line): Setup row->start from it->start (rather than
3520 it->current which is wrong if first char on line is invisible).
3521 When done, reseat it->start to it->current (= start of next row).
3522 (expose_area): Fix exposure of text area when first char (e.g. TAB)
3523 is only partially visible.
3524
3525 * dispextern.h (struct it): New member start.
3526
3527 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
3528
3529 * alloc.c (make_float, Fcons): Clear the markbit at init time.
3530 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
3531 of block_index outside of the macro call.
3532 (Fgarbage_collect): Remove null code.
3533
3534 * m/amdx86-64.h: Don't redefine XPNTR.
3535
3536 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
3537 of VALMASK.
3538
3539 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
3540 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
3541 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
3542
3543 * lisp.h (VALMASK): Only define for non-union type.
3544 (MARKBIT): Remove.
3545 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
3546 (XTYPE): Define unconditionally.
3547 (XSETTYPE): Remove one more remnant.
3548 (EQ): Define differently for the union and non-union cases.
3549 (INTMASK): New bit mask.
3550 (struct Lisp_Marker): Move down to prepare for upcoming patch.
3551 (GC_EQ): Delegate to EQ.
3552
3553 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
3554
3555 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3556
3557 * xterm.c (x_window_to_scroll_bar): Move check of display to
3558 where window_id is compared.
3559
3560 2003-11-17 Kim F. Storm <storm@cua.dk>
3561
3562 * dispextern.h (struct it): New member first_vpos.
3563
3564 * xdisp.c (start_display): Set it->first_vpos.
3565 (try_window_id): Use first_vpos to start display in first _text_
3566 line if no reusable lines at start of window with header line.
3567
3568 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3569
3570 * w32fns.c (XPutPixel):
3571 * w32bdf.c (w32_init_bdf_font):
3572 * sunfns.c (sel_read):
3573 * process.c (Fmake_network_process):
3574 * frame.c (store_frame_param):
3575 * fontset.c (Fset_fontset_font):
3576 * emacs.c (shut_down_emacs):
3577 * ccl.c (ccl_driver): Remove period at end of error message.
3578
3579 * config.in: Regenerate.
3580
3581 * xfns.c (x_window_to_frame, x_any_window_to_frame)
3582 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
3583 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
3584 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
3585 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
3586
3587 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
3588
3589 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
3590 (XTmouse_position, handle_one_xevent): Pass Display* to
3591 x_window_to_scroll_bar.
3592 (x_window_to_scroll_bar): Take a Display* argument.
3593 Check that display for frame is equal to Display* argument.
3594 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
3595 x_display_info_for_display instead. Use Display in xev instead
3596 of GDK_DISPLAY.
3597 (x_dispatch_event): Call x_display_info_for_display.
3598 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
3599 (x_connection_closed): Call xg_display_close for GTK.
3600 (x_term_init): Call xg_display_open for additional displays.
3601 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
3602 for GTK.
3603
3604 * xmenu.c (single_menu_item, mouse_position_for_popup)
3605 (x_activate_menubar): Formatting adjustments.
3606
3607 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
3608 adjustments.
3609
3610 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
3611 (xg_display_close, xg_create_default_cursor)
3612 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
3613 handling.
3614 (xg_left_ptr_cursor): Remove.
3615 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
3616 cursor here.
3617 (xg_win_to_widget): Take Display* argument, call
3618 gdk_xid_table_lookup_for_display.
3619 (xg_create_frame_widgets, xg_get_file_name, create_menus)
3620 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
3621 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
3622 in FRAME_X_DISPLAY_INFO.
3623 (xg_get_scroll_id_for_window): Take Display* argument.
3624 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
3625 (xg_initialize): Remove xg_left_ptr_cursor.
3626
3627 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
3628 Display* argument also. Declare xg_display_open,
3629 xg_display_close, xg_create_default_cursor.
3630
3631 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3632
3633 * xterm.c (x_detect_focus_change): Do not change focus frame for
3634 Enter/LeaveNotify if the current focus frame has explicit focus.
3635
3636 2003-11-14 Kim F. Storm <storm@cua.dk>
3637
3638 * dispnew.c (update_text_area): Fix redisplay error when hscroll
3639 is active and first glyph is only partially visible.
3640
3641 2003-11-13 Kenichi Handa <handa@m17n.org>
3642
3643 * xdisp.c (select_frame_for_redisplay): New function.
3644 (redisplay_internal): Record also selected_frame for
3645 unwind_redisplay. Call select_frame_for_redisplay before
3646 redrawing each frame.
3647 (unwind_redisplay): Argument changed to a cons.
3648
3649 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
3650
3651 * fns.c (Fstring_to_multibyte): Doc fix.
3652
3653 2003-11-11 Kenichi Handa <handa@m17n.org>
3654
3655 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
3656
3657 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3658
3659 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
3660 program specified positions.
3661
3662 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3663
3664 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
3665
3666 2003-11-08 Kenichi Handa <handa@m17n.org>
3667
3668 * Makefile.in (lisp): Add kannada.el.
3669 (shortlisp): Likewise.
3670
3671 2003-11-07 Kenichi Handa <handa@m17n.org>
3672
3673 * coding.c (coding_allocate_composition_data):
3674 Reset coding->composing to COMPOSITION_NO.
3675 (coding_restore_composition): Detect invalid composition data.
3676 Give Fstring and Fvector a Lispy integer, not C int.
3677
3678 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
3679
3680 * floatfns.c (Flogb): Don't use VALMASK.
3681
3682 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
3683 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
3684
3685 * lisp.h (XINT): Move the cast to clarify what is going on.
3686 (GCTYPEMASK, XSETTYPE): Remove.
3687 (XGCTYPE): Make it an alias of XTYPE.
3688
3689 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3690
3691 * xterm.c (x_term_init): Fix formatting.
3692
3693 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3694
3695 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
3696 and xg_did_tearoff.
3697
3698 * gtkutil.c: Remove variable xg_did_tearoff.
3699 (xg_have_tear_offs): New function.
3700 (tearoff_remove): Just decrease xg_detached_menus.
3701 (tearoff_activate): Increase xg_detached_menus and call
3702 tearoff_remove when tearoff is removed.
3703 (xg_keep_popup): Remove function.
3704 (create_menus): Give add_tearoff_p as argument to recursive
3705 call to create_menus.
3706 (xg_create_widget): Use variables instead of multiple
3707 strcmp. Tell create_menus to create tear off only for
3708 menu bar menus.
3709 (xg_update_menubar): Change title for a detached menu also.
3710 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
3711 of deep_p.
3712 (xg_initialize): Initialize xg_detached_menus, remove
3713 initialization of xg_did_tearoff.
3714
3715 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
3716 xg_have_tear_offs returns non-zero.
3717 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
3718 call to xg_keep_popup.
3719
3720 2003-11-01 Andrew Choi <akochoi@shaw.ca>
3721
3722 * macterm.c (XTread_socket): Handle menubar selection and grow
3723 window only for mouseDown events.
3724
3725 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3726
3727 * xterm.c (x_term_init): For GTK part, increase x_initialized
3728 to check for more than one display. Use error instead of return 0.
3729
3730 2003-10-31 Andrew Choi <akochoi@shaw.ca>
3731
3732 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
3733 (copy_dysymtab): Call it.
3734
3735 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
3736
3737 * eval.c (Fdefvaralias): Doc fix.
3738
3739 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
3740
3741 * data.c (Fsetplist): Doc fix.
3742
3743 2003-10-14 Lute Kamstra <lute@gnu.org>
3744
3745 * window.c (Fset_window_fringes): Clarify docstring.
3746
3747 2003-10-14 Kim F. Storm <storm@cua.dk>
3748
3749 * window.c (Fset_window_margins): Simplify arg checking.
3750
3751 2003-10-13 Richard M. Stallman <rms@gnu.org>
3752
3753 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
3754 (print_partial_compiled_pattern): Replace assert with a printout.
3755 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
3756
3757 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
3758
3759 * window.c (Fset_window_margins): Allow only integers as args.
3760 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
3761 Doc fixes.
3762
3763 2003-10-13 Lute Kamstra <lute@gnu.org>
3764
3765 * window.c (Fset_window_fringes): Elaborate docstring.
3766
3767 2003-10-12 Andrew Choi <akochoi@shaw.ca>
3768
3769 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
3770
3771 * s/darwin.h (GC_MARK_STACK): Define.
3772
3773 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3774
3775 * window.c (shrink_windows): New function.
3776 (size_window): Call shrink_windows to calculate window sizes when
3777 shrinking frame with more than one window.
3778
3779 2003-10-12 Kim F. Storm <storm@cua.dk>
3780
3781 * xdisp.c (compute_fringe_widths): Doc fix.
3782
3783 2003-10-08 Kenichi Handa <handa@m17n.org>
3784
3785 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
3786
3787 2003-10-07 Kenichi Handa <handa@m17n.org>
3788
3789 * coding.c (Qcoding_system_define_form): New variable.
3790 (syms_of_coding): Intern and staticpro it.
3791 (Fcheck_coding_system): Try to autoload the definition of
3792 CODING-SYSTEM.
3793
3794 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
3795
3796 * fns.c (Frequire): Doc fix.
3797
3798 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3799
3800 * xfns.c (Fx_send_client_event): New function as a base for
3801 manipulating extended window manager hints.
3802 (Fx_send_client_event): Remove unused variable s.
3803
3804 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
3805 that function is removed.
3806
3807 * xterm.c (x_set_offset): Use move_offset_left/top instead of
3808 x/y_pixels_outer_diff.
3809 (x_check_expected_move): Calculate move_offset_left/top.
3810
3811 * xterm.h (struct x_output): New members: move_offset_top/left.
3812
3813 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
3814 call x_set_offset directly.
3815
3816 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
3817
3818 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
3819
3820 * xterm.c (x_delete_display): Free font names and font_encoder
3821 in dpyinfo->font_table.
3822
3823 * xfns.c (Fx_close_connection): Only call XFreeFont here.
3824 Move xfree of font names to x_delete_display.
3825
3826 * xterm.h (struct x_display_info): New member, wm_type.
3827 (struct x_output): New members, expected_top/left and
3828 check_expected_move.
3829
3830 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
3831 is received.
3832 (handle_one_xevent): Rename x_check_expected_move from
3833 x_check_fullscreen_move.
3834 (x_set_offset): Only add WM decoration sizes to modified_top/left
3835 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
3836 (x_check_expected_move): Rename from x_check_fullscreen_move.
3837 Removed fullscreen specific code. Use check_expected_move,
3838 expected_left/top instead. Also, set wm_type.
3839 (x_term_init): Initialize wm_type to unknown.
3840
3841 * frame.c (x_fullscreen_move): Remove addition of WM decoration
3842 sizes to move_x/y.
3843
3844 2003-10-03 Kenichi Handa <handa@m17n.org>
3845
3846 * macterm.c (x_load_font): Clear all members of FONTP before start
3847 filling them.
3848
3849 2003-10-02 Kenichi Handa <handa@m17n.org>
3850
3851 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
3852 before calling find_ccl_program_func. Call find_ccl_program_func
3853 only when fontp->font_encoder is not NULL.
3854
3855 * xterm.c (x_load_font): Clear all members of FONTP before start
3856 filling them.
3857
3858 2003-10-03 John Paul Wallington <jpw@gnu.org>
3859
3860 * keymap.c (map_keymap): Don't abort when binding is a vector.
3861
3862 2003-10-02 Jason Rumney <jasonr@gnu.org>
3863
3864 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
3865 Sync dependencies with Makefile.in.
3866 (alloca.o): Remove.
3867
3868 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
3869 filling them.
3870
3871 * w32bdf.c (w32_load_bdf_font): Likewise.
3872
3873 2003-09-30 Richard M. Stallman <rms@gnu.org>
3874
3875 * term.c (set_tty_color_mode): Calculate current_mode_spec
3876 regardless of value of VAL.
3877
3878 * intervals.c (graft_intervals_into_buffer):
3879 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
3880 Handle over_used when splitting UNDER.
3881
3882 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3883
3884 * regex.c (regex_compile): Free the stack when returning from function.
3885
3886 2003-09-28 Kenichi Handa <handa@m17n.org>
3887
3888 * fontset.c (Finternal_char_font): Change return value to
3889 cons (FONT-NAME . GLYPH-CODE).
3890
3891 2003-09-28 Eli Zaretskii <eliz@gnu.org>
3892
3893 * term.c (tty_setup_colors): Treat any negative argument as -1.
3894
3895 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
3896
3897 * process.c (send_process): Delete unused temp_buf.
3898
3899 2003-09-26 Dave Love <fx@gnu.org>
3900
3901 * xterm.c (x_bitmap_mask): Declare.
3902
3903 2003-09-25 Dave Love <fx@gnu.org>
3904
3905 * Makefile.in (fns.o): Depend on md5.h.
3906
3907 2003-09-25 Kim F. Storm <storm@cua.dk>
3908
3909 * window.c (set_window_buffer): Fix redisplay problems when
3910 switching between buffers with different display margin widths.
3911
3912 2003-09-23 Kim F. Storm <storm@cua.dk>
3913
3914 * process.c (set_socket_option): Fix :bindtodevice option.
3915 (Fset_network_process_option): Update process contact list when
3916 setting option succeeds.
3917 (Fmake_network_process): Doc fix.
3918
3919 2003-09-23 Dave Love <fx@gnu.org>
3920
3921 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
3922
3923 2003-09-22 Eli Zaretskii <eliz@gnu.org>
3924
3925 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
3926 color mode is an integer number (it could be -1).
3927
3928 2003-09-22 Richard M. Stallman <rms@gnu.org>
3929
3930 * intervals.c (graft_intervals_into_buffer): Correct the main loop
3931 in the case where OVER is longer than UNDER.
3932
3933 2003-09-22 Masatake YAMATO <jet@gyve.org>
3934
3935 * window.c (Fset_window_scroll_bars): Validate the value of
3936 `vertical_type'.
3937
3938 2003-09-21 Kim F. Storm <storm@cua.dk>
3939
3940 * frame.c (Vdefault_frame_scroll_bars): New variable.
3941 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
3942 (syms_of_frame): DEFVAR_LISP it, and initialize according to
3943 window-system default scroll bar position.
3944
3945 * window.c (Fwindow_scroll_bars): Doc fix.
3946
3947 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3948
3949 * xterm.c (x_set_offset): Take window manager decorations into account.
3950
3951 2003-09-19 Richard M. Stallman <rms@gnu.org>
3952
3953 * atimer.h: Don't include lisp.h.
3954 (P_): Define it here (as well as elsewhere).
3955
3956 * print.c (Fprin1_to_string): Move the PRINTPREPARE
3957 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
3958
3959 * data.c (Fvariable_binding_locus): New function.
3960 (syms_of_data): defsubr it.
3961 (Flocal_variable_p): Delete duplicate call to indirect_variable.
3962
3963 2003-09-18 Dave Love <fx@gnu.org>
3964
3965 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
3966
3967 * process.c (Fnetwork_interface_info): Fix type error.
3968 (Fnetwork_interface_list): Doc fix.
3969 (read_process_output, read_process_output): Delete unused var.
3970
3971 2003-09-17 Kim F. Storm <storm@cua.dk>
3972
3973 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
3974 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
3975 (Fnetwork_interface_info): Check that ifreq struct has required
3976 fields before accessing them; this requires that those fields are
3977 defined as macros, which may be too restrictive on some platforms,
3978 but it is better than failing on other platforms.
3979 (syms_of_process): Only defsubr above fns when included.
3980
3981 2003-09-17 Dave Love <fx@gnu.org>
3982
3983 * unexalpha.c: Don't include varargs.h.
3984
3985 2003-09-17 Kim F. Storm <storm@cua.dk>
3986
3987 * process.c (Fset_process_sentinel): Add sentinel to childp plist
3988 for network process.
3989 (socket_options): Add `:' prefix to option names. Add optbit field.
3990 (set_socket_option): Remove no_error arg and special handling of s < 0.
3991 Return 1<<optbit for known option, 0 for unknown.
3992 Do not interpret 0 as false for boolean option (only nil).
3993 Pass failed option and value to report_file_error.
3994 (Fset_network_process_options): Replace by Fset_network_process_option.
3995 (Fset_network_process_option): New function to set just one option.
3996 (Fmake_network_process): Allow :coding arg to be a cons.
3997 Allow :server arg to be an integer specifying backlog size.
3998 Remove :options arg, and allow options to be specified directly
3999 as :KEY, VALUE pairs. Parse these options before binding socket.
4000 As before, :reuseaddr t is default for a server process, but this
4001 can now be disabled by specifying :reuseaddr nil.
4002 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4003 (init_process): Availability of network options is now checked with
4004 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4005 setup features.
4006 (syms_of_process): Fix defsubr's for the replaced functions.
4007
4008 2003-09-16 Dave Love <fx@gnu.org>
4009
4010 * Makefile.in: Depend on coding.h.
4011
4012 2003-09-14 Kim F. Storm <storm@cua.dk>
4013
4014 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4015 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4016 (syms_of_process): Defsubr them.
4017
4018 * config.in: Regenerate.
4019
4020 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4021
4022 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4023 * m/news-r6.h (XUNMARK): Remove.
4024 * m/mips.h (XUNMARK): Remove.
4025 * m/mips-siemens.h (XUNMARK): Remove.
4026 * m/iris4d.h (XUNMARK): Remove.
4027 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4028
4029 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4030
4031 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4032 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4033 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4034 (XTYPE): Use unsigned right-shift.
4035 (XMARKBIT, XMARK, XUNMARK): Remove.
4036
4037 * alloc.c (init_intervals, init_symbol, init_marker):
4038 Don't preallocate anything.
4039 (Fgarbage_collect, mark_object): Ignore the markbit.
4040
4041 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4042
4043 2003-09-08 Lute Kamstra <lute@gnu.org>
4044
4045 * xdisp.c (pint2hrstr): New function.
4046 (decode_mode_spec): Add `%i' and `%I' specs.
4047 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4048 for `mode-line-format'.
4049
4050 2003-09-07 Andreas Schwab <schwab@suse.de>
4051
4052 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4053 avoid warning.
4054
4055 2003-09-07 Eli Zaretskii <eliz@gnu.org>
4056
4057 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
4058
4059 2003-09-03 Kim F. Storm <storm@cua.dk>
4060
4061 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4062 change (superseded by 2002-08-30 change); the default blink-off
4063 cursor is now again "no cursor".
4064
4065 2003-09-01 Jason Rumney <jasonr@gnu.org>
4066
4067 * makefile.w32-in (alloca.o): Remove.
4068 (coding.o): Depend on intervals.h
4069 (emacs.o, bytecode.o): Depend on window.h
4070
4071 2003-09-01 Dave Love <fx@gnu.org>
4072
4073 * Makefile.in (alloca.o): Remove commands.
4074 (coding.o): Depend on intervals.h composite.h window.h.
4075 (emacs.o): Depend on window.h keyboard.h keymap.h.
4076 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4077 (bytecode.o): Depend on window.h.
4078
4079 2003-08-31 Jason Rumney <jasonr@gnu.org>
4080
4081 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4082 returned even when font_type is unknown.
4083
4084 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4085
4086 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4087
4088 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4089
4090 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4091 *_offset.
4092
4093 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4094 calculate pixel value.
4095
4096 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4097
4098 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4099 Don't tell redisplay display is accurate when it's actually been
4100 paused for pending input.
4101
4102 2003-08-29 Richard M. Stallman <rms@gnu.org>
4103
4104 * dispnew.c (adjust_glyph_matrix): Call window_box
4105 whenever W is nonzero.
4106
4107 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4108 (Fkill_local_variable, Fmake_variable_frame_local)
4109 (Flocal_variable_p, Flocal_variable_if_set_p):
4110 Use indirect_variable to trace thru variable aliases.
4111
4112 * config.in: Updated.
4113
4114 * callint.c (Fcall_interactively): Save and restore
4115 Vthis_command, Vthis_original_command, real_this_command,
4116 and current_kboard->Vlast_command.
4117
4118 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4119
4120 2003-08-29 Gerd Moellmann <gerd@gnu.org>
4121
4122 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4123
4124 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4125
4126 * coding.c (decode_coding_iso2022): Initialize local variable c2.
4127 (decode_coding_sjis_big5): Likewise.
4128
4129 2003-08-27 Jason Rumney <jasonr@gnu.org>
4130
4131 * w32.c (sys_pipe): Protect against file descriptor overflow.
4132
4133 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4134
4135 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4136
4137 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
4138
4139 * xfns.c (Vgtk_version_string): New variable.
4140 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4141
4142 2003-08-24 Eli Zaretskii <eliz@gnu.org>
4143
4144 * term.c (term_init): Remove `const' from buffer_size's declaration.
4145
4146 * Makefile.in (msdos.o): Depend on intervals.h.
4147
4148 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
4149
4150 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4151
4152 * xterm.h (struct x_display_info): New fields: client_leader_window
4153 and Xatom_wm_client_leader.
4154
4155 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4156 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4157
4158 * xsmfns.c (create_client_leader_window): New function.
4159 (x_session_initialize): Call create_client_leader_window, take
4160 dpyinfo as argument.
4161
4162 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4163
4164 * Makefile.in (xsmfns.o): Add more depenedencies.
4165
4166 2003-08-21 Dave Love <fx@gnu.org>
4167
4168 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4169
4170 2003-08-21 Kenichi Handa <handa@m17n.org>
4171
4172 * term.c (term_init): Fix previous change; don't rely on the
4173 length of `buffer' if TERMINFO is defined.
4174
4175 2003-08-20 Dave Love <fx@gnu.org>
4176
4177 * atimer.h: Include lisp.h.
4178
4179 * lisp.h (EMACS_LISP_H): New.
4180 (popup_activated_flag): Don't declare.
4181
4182 * alloca.c: Some merging with gnulib. Change logic and doc
4183 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4184 [DO_BLOCK_INPUT]: Don't include lisp.h.
4185 (xmalloc, xfree): Declare.
4186 (malloc): Don't declare.
4187
4188 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
4189 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4190 atimer.h, blockinput.h.
4191
4192 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4193
4194 * alloca.s: Removed.
4195
4196 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4197
4198 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4199 use -lncurses.
4200
4201 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4202 FreeBSD returns something longer than 2044. Abort if the end of
4203 the buffer is overwritten.
4204
4205 2003-08-19 Miles Bader <miles@gnu.org>
4206
4207 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4208
4209 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4210
4211 * alloc.c (lisp_align_malloc): Check for memory full when
4212 allocating ablocks, which also avoids freeing a pointer into an
4213 ablocks structure.
4214
4215 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4216
4217 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
4218
4219 2003-08-16 Richard M. Stallman <rms@gnu.org>
4220
4221 * editfns.c (Fencode_time): Doc fix.
4222
4223 2003-08-16 David Ponce <david@dponce.com>
4224
4225 * fileio.c (Fwrite_region): Fix conditional expression to issue
4226 the right message.
4227
4228 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4229
4230 * syntax.c (Fforward_word): Argument changed to optional.
4231 Set default value to 1.
4232
4233 2003-08-15 Kenichi Handa <handa@m17n.org>
4234
4235 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4236 what autoscaled.
4237 (best_matching_font): Once we find a better scalable font, set
4238 non_scalable_has_exact_height_p to 1.
4239 (try_font_list): Call try_alternative_families to try any family
4240 with the given registry.
4241
4242 2003-08-09 Andreas Schwab <schwab@suse.de>
4243
4244 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4245
4246 * print.c (print_string): Fix printing of multibyte string with
4247 nontrivial printcharfun.
4248
4249 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4250
4251 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
4252
4253 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
4254
4255 2003-07-31 Kenichi Handa <handa@m17n.org>
4256
4257 * process.c (read_process_output): Return the actually read bytes
4258 instead of the result of decoding.
4259
4260 2003-07-31 Kenichi Handa <handa@m17n.org>
4261
4262 * xterm.h (struct x_bitmap_record): New member have_mask.
4263
4264 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
4265 to 0.
4266 (x_create_bitmap_from_file): Likewise.
4267 (x_destroy_bitmap): Check have_mask member before freeing a mask.
4268 (x_destroy_all_bitmaps): Likewise.
4269 (x_create_bitmap_mask): Set have_mask member to 1.
4270
4271 2003-07-30 Richard M. Stallman <rms@gnu.org>
4272
4273 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
4274
4275 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4276
4277 * gtkutil.c (xg_mark_data): Update calls to mark_object.
4278
4279 2003-07-29 Richard M. Stallman <rms@gnu.org>
4280
4281 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
4282 Conditionalize XIM code on HAVE_XIM.
4283
4284 * fns.c (Fclear_string): New function.
4285 (syms_of_fns): defsubr it.
4286
4287 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
4288
4289 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
4290
4291 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
4292
4293 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
4294
4295 * buffer.c (delete_all_overlays): New function.
4296 * buffer.h (delete_all_overlays): Declare.
4297 * coding.c (run_pre_post_conversion_on_str):
4298 * print.c (temp_output_buffer_setup):
4299 * fileio.c (Finsert_file_contents):
4300 * minibuf.c (get_minibuffer): Use it.
4301
4302 2003-07-22 Andrew Choi <akochoi@shaw.ca>
4303
4304 * unexmacosx.c (unexec_regions_sort_compare):
4305 (unexec_regions_merge): New functions. Sort and merge unexec
4306 regions before dumping them.
4307
4308 2003-07-22 Dave Love <fx@gnu.org>
4309
4310 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
4311
4312 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
4313
4314 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
4315 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
4316 MARKBIT as the gcmarkbit for strings.
4317
4318 2003-07-21 Richard M. Stallman <rms@gnu.org>
4319
4320 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
4321
4322 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
4323 (syms_of_fns): Corresponding change.
4324
4325 * alloc.c (syms_of_alloc): Doc fixes.
4326
4327 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
4328
4329 * s/netbsd.h: Use -Wl syntax.
4330
4331 2003-07-17 Richard M. Stallman <rms@gnu.org>
4332
4333 * xterm.c (xim_initialize): Redo 6/24 change.
4334
4335 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
4336
4337 * buffer.c (copy_overlays): Use EMACS_INT for positions.
4338 (Fswitch_to_buffer): Don't signal an error when switching to the same
4339 buffer in a dedicated window.
4340
4341 * alloc.c: Use bitmaps for cons, as was done for floats.
4342 (init_float, init_cons): Let the normal code allocate the first block.
4343 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
4344 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
4345 New macros.
4346 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
4347 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
4348 (live_cons_p): Check the pointer is not past the `conses' array.
4349 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
4350 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
4351 (survives_gc_p): Use CONS_MARKED_P and simplify.
4352 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
4353
4354 2003-07-13 Paul Eggert <eggert@twinsun.com>
4355
4356 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
4357 puts it into BSS instead, at least on Solaris 8 and 9.
4358 This is a valid optimization, and it may occur on other platforms,
4359 so Emacs should not assume that initializing a static variable to
4360 zero puts it into data.
4361 * alloc.c (pure, staticvec):
4362 Initialize these arrays to nonzero, so that they're not
4363 put into BSS by that optimization.
4364
4365 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
4366
4367 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
4368 (lisp_align_malloc): Use posix_memalign is available.
4369 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
4370 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
4371 for consistency. Update users.
4372
4373 2003-07-13 Richard M. Stallman <rms@gnu.org>
4374
4375 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
4376
4377 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
4378
4379 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
4380 and use the Gtk+ function gtk_window_icon_from_file if available.
4381
4382 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
4383 handle mask of bitmaps.
4384 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
4385 mask property.
4386 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
4387
4388 * xterm.h (xg_set_icon): New function.
4389
4390 2003-07-12 Paul Eggert <eggert@twinsun.com>
4391
4392 * unexelf.c (unexec): Consider a section to precede the .bss
4393 section if its addresses overlap that of .bss.
4394
4395 2003-07-12 Richard M. Stallman <rms@gnu.org>
4396
4397 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
4398
4399 * config.in (HAVE_CRTIN): Add #undef.
4400 (INLINE): Really inline only if OPTIMIZE is defined.
4401
4402 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
4403 END_FILES_1.
4404 (START_FILES_1, END_FILES_1): New macros (conditional).
4405 (LD_SWITCH_SYSTEM_TEMACS): Define.
4406
4407 * s/openbsd.h: Don't include bsd4-3.h.
4408 (TERMINFO): Define.
4409 (LIBS_TERMCAP): Define.
4410 (LD_SWITCH_SYSTEM): Define (two definitions).
4411
4412 * xfns.c: Include libpng/png.h instead of png.h.
4413
4414 2003-07-11 Andreas Schwab <schwab@suse.de>
4415
4416 * buffer.c (modify_overlay): Update prototype.
4417 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
4418 Likewise.
4419
4420 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4421
4422 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
4423 (struct interval): Move to intervals.h.
4424 (struct Lisp_Marker): Use EMACS_INT for position info.
4425 (forward_point): Remove prototype of defunct function.
4426 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
4427 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
4428 (syms_of_textprop, set_text_properties): Remove prototypes that are
4429 already in intervals.h.
4430
4431 * intervals.h (struct interval): Move from lisp.h.
4432 Use EMACS_INT for position and size info.
4433
4434 * coding.c: Include intervals.h for Fset_text_properties.
4435
4436 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4437 position and length information.
4438
4439 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4440
4441 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
4442 position and length information.
4443
4444 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
4445
4446 Change overlays_after and overlays_before so the overlays themselves
4447 are linked into lists, rather than using cons cells. After all each
4448 Lisp_Misc already occupies 5 words, so we can add a `next' field to
4449 Lisp_Overlay for free and save up one cons cell per overlay (not
4450 to mention one indirection when traversing the list of overlay).
4451
4452 * lisp.h (struct Lisp_Overlay): New field `next'.
4453
4454 * buffer.h (struct buffer): Change overlays_before and overlays_after
4455 from Lisp lists of overlays to pointers to overlays.
4456
4457 * buffer.c (overlay_strings, recenter_overlay_lists):
4458 Fix typo in eassert in last commit.
4459 (unchain_overlay): New function.
4460 (add_overlay_mod_hooklist): Use AREF.
4461 (copy_overlays, reset_buffer, overlays_at, overlays_in)
4462 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
4463 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
4464 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
4465 (report_overlay_modification, evaporate_overlays, init_buffer_once):
4466 Adjust to new type of overlays_(before|after).
4467
4468 * alloc.c (mark_object): Mark the new `next' field of overlays.
4469 (mark_buffer): Manually mark the overlays_(after|before) fields.
4470
4471 * coding.c (run_pre_post_conversion_on_str):
4472 * editfns.c (overlays_around):
4473 * xdisp.c (load_overlay_strings):
4474 * fileio.c (Finsert_file_contents):
4475 * indent.c (current_column):
4476 * insdel.c (signal_before_change, signal_after_change):
4477 * intervals.c (set_point_both):
4478 * print.c (temp_output_buffer_setup): Use new type for
4479 overlays_(before|after).
4480
4481 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
4482
4483 * buffer.c (report_overlay_modification): Don't run hooks while
4484 traversing the list of overlays.
4485
4486 * buffer.h (struct buffer): Use an int for overlay_center.
4487 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4488 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4489
4490 * buffer.c (reset_buffer, recenter_overlay_lists)
4491 (adjust_overlays_for_insert, adjust_overlays_for_delete)
4492 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
4493 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
4494 (overlays_at, evaporate_overlays, recenter_overlay_lists)
4495 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
4496
4497 * xdisp.c (fast_find_position): Remove unused var.
4498
4499 * cmds.c (Qexpand_abbrev): New sym.
4500 (syms_of_cmds): Initialize it.
4501 (internal_self_insert): Use it to call expand-abbrev.
4502
4503 2003-07-09 Kim F. Storm <storm@cua.dk>
4504
4505 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
4506 was configured with --without-xim.
4507 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
4508
4509 2003-07-07 Richard M. Stallman <rms@gnu.org>
4510
4511 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
4512
4513 * alloc.c (Fgarbage_collect): Doc fix.
4514
4515 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
4516
4517 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
4518
4519 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4520
4521 * minibuf.c (read_minibuf): UNGCPRO before returning.
4522 (Ftry_completion, Fall_completions): Doc fix.
4523
4524 * alloc.c (live_float_p): Check that p is not past the `floats' array,
4525 now that `floats' is not the last element of the struct any more.
4526
4527 2003-07-06 Jason Rumney <jasonr@gnu.org>
4528
4529 * w32term.h (ClipboardSequence_Proc): New type.
4530
4531 * w32fns.c (clipboard_sequence_fn): New variable.
4532 (globals_of_w32fns): Initialize it.
4533
4534 * w32select.c (last_clipboard_sequence_number): New variable.
4535 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
4536 number if possible.
4537
4538 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
4539
4540 * m/amdx86-64.h (MARKBIT):
4541 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
4542 MARKBIT and ARRAY_MARK_FLAG any more.
4543
4544 * m/hp800.h (XSETMARKBIT):
4545 * m/sr2k.h (XSETMARKBIT):
4546 * lisp.h (XSETMARKBIT): Remove unused macro.
4547
4548 * lisp.h (mark_object): Change prototype.
4549
4550 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
4551 (last_marked): Change accordingly.
4552 (mark_interval, mark_maybe_object, mark_maybe_pointer)
4553 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
4554 (mark_buffer): Update calls to mark_object.
4555
4556 * bytecode.c (mark_byte_stack):
4557 * fns.c (sweep_weak_table):
4558 * keyboard.c (mark_kboards): Update calls to mark_object.
4559
4560 2003-07-06 Jason Rumney <jasonr@gnu.org>
4561
4562 * alloc.c (struct ablock): Only include padding when there is some.
4563
4564 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
4565
4566 * alloc.c (ALIGN): Add casts to simplify usage.
4567 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
4568 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
4569 (struct ablock, struct ablocks): New types.
4570 (free_ablock): New global var.
4571 (lisp_align_malloc, lisp_align_free): New functions.
4572 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
4573 (struct float_block): Reorder and add gcmarkbits.
4574 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
4575 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
4576 (init_float, make_float): Use lisp_align_malloc.
4577 (free_float, live_float_p): Don't use `type' any more.
4578 (make_float): Use FLOAT_UNMARK to access to mark bit.
4579 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
4580 Use FLOAT_MARKED_P to access the mark bit.
4581 (pure_alloc): Simplify use of ALIGN.
4582 (mark_object): Use FLOAT_MARK to access the mark bit.
4583 (gc_sweep): Use new macros to access the float's mark bit.
4584 (init_alloc_once): Init free_ablock.
4585
4586 * lisp.h (struct Lisp_Float): Remove unused field `type'.
4587
4588 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
4589
4590 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
4591 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
4592 (allocate_buffer): Move.
4593 (string_bytes): Don't mask markbit of `size_byte'.
4594 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4595 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
4596 Use the `size' field of buffers (rather than the `name' field) for
4597 the mark bit, as is done for all other vectorlike objects.
4598 Use the new macros to access the mark bit of vectorlike objects.
4599
4600 2003-06-26 Richard M. Stallman <rms@gnu.org>
4601
4602 * puresize.h (BASE_PURESIZE): Increment base size.
4603
4604 * xdisp.c (fast_find_position): Enable Gerd's new definition.
4605
4606 * xterm.c (xim_initialize): Undo previous change.
4607
4608 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
4609
4610 * alloc.c (survives_gc_p): Simplify.
4611
4612 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
4613
4614 * window.c (Fset_window_dedicated_p): Simplify.
4615 (display_buffer_1): Don't raise the win from which minibuf was entered.
4616 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
4617 (Fminibuffer_selected_window): Simplify.
4618
4619 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
4620
4621 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
4622 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
4623
4624 * insdel.c (check_markers, adjust_markers_for_delete)
4625 (adjust_markers_for_insert, adjust_markers_for_replace)
4626 (prepare_to_modify_buffer, RESTORE_VALUE):
4627 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
4628 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
4629 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
4630 * alloc.c (Fmake_marker, free_marker, gc_sweep):
4631 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
4632 * editfns.c (save_excursion_restore, transpose_markers):
4633 * window.c (delete_window):
4634 * xdisp.c (message_dolog): Update for new types.
4635
4636 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4637
4638 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
4639 (realize_default_face): Use default_face_done_p for the force_p
4640 argument to set_lface_from_font_name. Set default_face_done_p to one.
4641
4642 * frame.c (make_frame): Initialize default_face_done_p.
4643
4644 * frame.h (struct frame): Add default_face_done_p.
4645
4646 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
4647 will be defined.
4648
4649 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
4650
4651 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
4652 Initialize the new field `gcmarkbit'.
4653 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
4654 (mark_interval_tree): Don't mark the tree separately from the nodes.
4655 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
4656 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
4657 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
4658
4659 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
4660 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
4661 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
4662 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
4663 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
4664
4665 2003-06-24 Dave Love <fx@gnu.org>
4666
4667 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
4668
4669 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
4670 from gnulib.
4671
4672 2003-06-21 Richard M. Stallman <rms@gnu.org>
4673
4674 * fileio.c (Fwrite_region): Alternate messages
4675 for append and partial write.
4676
4677 * keyboard.c (read_key_sequence): When converting upcase fn key to
4678 downcase, update fkey and keytran so `backspace' gets translated.
4679
4680 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
4681
4682 * process.c (wait_reading_process_input): Don't signal SIGIO
4683 in batch mode.
4684
4685 2003-06-17 Kenichi Handa <handa@m17n.org>
4686
4687 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
4688 composite.h.
4689
4690 * xselect.c: Don't include charset.h, coding.h, composite.h.
4691 (Qforeign_selection): New variable.
4692 (syms_of_xselect): Intern and static it.
4693 (selection_data_to_lisp_data): Return a unibyte string made from
4694 data with `foreign-selection' text property.
4695
4696 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
4697
4698 * termhooks.h (EVENT_INIT): New macro.
4699
4700 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
4701
4702 * alloc.c (mark_kboards): Move to keyboard.c.
4703
4704 * keyboard.c (record_asynch_buffer_change, read_avail_input):
4705 * xterm.c (x_dispatch_event):
4706 * xmenu.c (find_and_call_menu_selection):
4707 * xdisp.c (handle_tool_bar_click):
4708 * w32menu.c (menubar_selection_callback):
4709 * sysdep.c (kbd_input_ast, read_input_waiting):
4710 * msdos.c (dos_rawgetc):
4711 * macterm.c (mac_check_for_quit_char):
4712 * macmenu.c (menubar_selection_callback):
4713 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
4714 data to kbd_buffer_store_event.
4715
4716 2003-06-15 Kim F. Storm <storm@cua.dk>
4717
4718 * xdisp.c (x_fix_overlapping_area): Always use area relative X
4719 to fix redisplay problem with tall characters (such as \e,AC\e(B).
4720
4721 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
4722
4723 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
4724
4725 2003-06-12 Kenichi Handa <handa@m17n.org>
4726
4727 * fileio.c (Fwrite_region): Save and restore restriction.
4728
4729 2003-06-12 Dave Love <fx@gnu.org>
4730
4731 * alloca.c (alloca): Declare arg as size_t.
4732
4733 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
4734 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
4735
4736 2003-06-11 Dave Love <fx@gnu.org>
4737
4738 * search.c (shrink_regexp_cache): Use xrealloc.
4739 (syms_of_search): Use xmalloc.
4740
4741 2003-06-10 Kim F. Storm <storm@cua.dk>
4742
4743 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
4744 Adjust phys_cursor.x to be relative to window box, rather than
4745 text area before checking -- to ensure cursor is redrawn when
4746 exposing window.
4747 Note: This also fixes a similar (older) bug if display margins
4748 are present.
4749
4750 2003-06-06 Kenichi Handa <handa@m17n.org>
4751
4752 * coding.c (encoding_buffer_size): If coding->type is
4753 coding_type_ccl, double magnification on CRLF encoding.
4754
4755 2003-06-06 Jason Rumney <jasonr@gnu.org>
4756
4757 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
4758 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
4759
4760 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
4761 Mac too.
4762
4763 2003-06-05 Dave Love <fx@gnu.org>
4764
4765 * strftime.c: Merge changes from gnulib.
4766
4767 * mktime.c (__mktime_internal): Merge changes from gnulib
4768 involving year 69 and dst2.
4769
4770 Changes to merge with gnulib version and be consistent with the
4771 autoconf test:
4772
4773 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
4774 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
4775 [HAVE_LOCALE_H]: Include locale.h.
4776 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
4777
4778 2003-06-05 Kim F. Storm <storm@cua.dk>
4779
4780 * window.c (coordinates_in_window): Convert X and Y to window
4781 relative coordinates inside mode-line and header-line parts.
4782 Convert X and Y to margin area relative coordinates inside left
4783 and right display margin parts.
4784
4785 2003-06-05 Jason Rumney <jasonr@gnu.org>
4786
4787 * w32fns.c (add_system_logical_colors_to_map): New function.
4788 (Fx_open_connection): Use it.
4789
4790 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
4791
4792 * process.c (allocate_pty): Revert part of the previous patch.
4793 (Faccept_process_output): Simplify.
4794
4795 2003-06-04 Jason Rumney <jasonr@gnu.org>
4796
4797 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
4798
4799 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
4800 (lispy_mouse_wheel_names): Remove.
4801 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
4802 Always define drag_and_drop_syms.
4803
4804 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
4805 WHEEL_EVENT events.
4806
4807 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
4808
4809 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
4810
4811 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
4812
4813 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4814
4815 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
4816 menu item label.
4817
4818 2003-06-03 Richard M. Stallman <rms@gnu.org>
4819
4820 * window.c (Fwindow_edges): Doc fix.
4821 (Fwindow_pixel_edges, Fwindow_inside_edges)
4822 (Fwindow_inside_pixel_edges): New functions.
4823 (syms_of_window): defsubr them.
4824
4825 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
4826 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
4827
4828 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
4829
4830 * dispnew.c (Fsit_for): Don't lie about the number of args.
4831
4832 2003-06-02 Dave Love <fx@gnu.org>
4833
4834 * callproc.c: Use HAVE_FCNTL_H, not USG5.
4835 (syms_of_callproc) <process-environment>: Doc fix.
4836
4837 * doc.c: Use HAVE_FCNTL_H, not USG5.
4838
4839 * xfaces.c (font_rescale_ratio): Fix for K&R.
4840
4841 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
4842
4843 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
4844
4845 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
4846
4847 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
4848 (xg_create_frame_widgets): Use ENCODE_UTF_8.
4849
4850 * xterm.c (Qutf_8): Move to coding.c
4851
4852 * xmenu.c (ENCODE_MENU_STRING): New.
4853 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
4854 Use it.
4855
4856 * coding.h (ENCODE_UTF_8): New.
4857 (Qutf_8): Declare.
4858
4859 * coding.c (Qutf_8): New.
4860 (syms_of_coding): Intern it.
4861
4862 * fns.c: Doc fixes.
4863
4864 2003-06-02 Kenichi Handa <handa@m17n.org>
4865
4866 * buffer.c (Fset_buffer_multibyte): Fix previous change.
4867
4868 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
4869
4870 * lread.c (openp): Make sure STR is a string.
4871
4872 2003-06-01 David Ponce <david@dponce.com>
4873
4874 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
4875 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
4876
4877 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
4878 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
4879 (discard_mouse_events): Discard WHEEL_EVENT events too.
4880 (lispy_wheel_names, wheel_syms): New.
4881 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
4882 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
4883 defined.
4884 (make_lispy_event): Add WHEEL_EVENT handler.
4885
4886 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
4887 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4888 WHEEL_EVENT events.
4889
4890 2003-05-31 John Paul Wallington <jpw@gnu.org>
4891
4892 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
4893 timer are in lisp/emacs-lisp.
4894
4895 2003-05-31 Kenichi Handa <handa@m17n.org>
4896
4897 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
4898 region when a buffer is changed to unibyte.
4899
4900 * charset.h (VALID_LEADING_CODE_P): New macro.
4901 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
4902
4903 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
4904 is nonzero, accept multibyte form of eight-bit-control chars.
4905 (decode_composition_emacs_mule): Likewise.
4906 (decode_coding_emacs_mule): Likewise.
4907 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
4908 multibyte form of eight-bit-control chars.
4909
4910 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
4911 (Finsert_file_contents): If coding-system-for-read is bound to
4912 Qauto_save_coding, use the coding system emacs-mule with special
4913 setting for recovering a file.
4914 (choose_write_coding_system): On auto saving, use the coding
4915 system emacs-mule with special setting for auto saving.
4916 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
4917
4918 2003-05-30 Kenichi Handa <handa@m17n.org>
4919
4920 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
4921 properly before calling ccl_driver.
4922
4923 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
4924
4925 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
4926 nonzero.
4927 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
4928 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
4929
4930 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
4931
4932 * xfaces.c (realize_default_face): Do not abort if lface is
4933 non-existent - reverts change from 2003-05-19.
4934
4935 2003-05-29 Kenichi Handa <handa@m17n.org>
4936
4937 * coding.c (decode_coding_iso2022): Pay attention to the byte
4938 sequence of CTEXT extended segment, and retain those bytes as is.
4939
4940 2003-05-28 Kenichi Handa <handa@m17n.org>
4941
4942 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
4943 of CODING_REPLACEMENT_CHARACTER.
4944 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
4945 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
4946 check this flag on encoding.
4947 (encode_coding_sjis_big5): Check
4948 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
4949 (Fset_terminal_coding_system_internal): Set
4950 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
4951 instead of setting CODING_FLAG_ISO_SAFE flag in
4952 terminal_coding.flags.
4953
4954 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
4955 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
4956 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
4957
4958 2003-05-28 Richard M. Stallman <rms@gnu.org>
4959
4960 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
4961
4962 * eval.c (unbind_to): Move init of this_binding to separate statement.
4963
4964 2003-05-28 Kim F. Storm <storm@cua.dk>
4965
4966 * xdisp.c (expose_window): Fix error in calculation of
4967 window relative coordinates of area to redisplay.
4968
4969 2003-05-27 Jason Rumney <jasonr@gnu.org>
4970
4971 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
4972
4973 2003-05-27 David Ponce <david@dponce.com>
4974
4975 Handle W32 mouse wheel events as mouse click events, like in X.
4976
4977 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
4978 MOUSE_WHEEL_EVENT anymore.
4979
4980 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
4981 Scrolling down/up the mouse wheel is respectively mapped to mouse
4982 button 4 and 5.
4983 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
4984 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
4985 WM_MOUSEWHEEL events.
4986
4987 2003-05-27 Andreas Schwab <schwab@suse.de>
4988
4989 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
4990
4991 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
4992 partially visible line.
4993
4994 * alloc.c (Fgarbage_collect): Fix last change.
4995
4996 2003-05-26 John Paul Wallington <jpw@gnu.org>
4997
4998 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
4999
5000 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5001
5002 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5003 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5004
5005 * window.h (window_box_text_cols): Declare.
5006
5007 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5008 (x_draw_vertical_border): Remove unused var `f'.
5009
5010 * xfaces.c (build_scalable_font_name): Remove `unused var
5011 pixel_size' warning.
5012
5013 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5014
5015 * unexelf.c (unexec): Remove `unused var n' warning.
5016
5017 * strftime.c (my_strftime_localtime_r): Remove `defined but
5018 unused' warning.
5019
5020 * process.c (allocate_pty): Remove `unused var stb' and
5021 `cp might be used uninitialized' warnings.
5022
5023 * dispnew.c (mode_line_string): Remove unused var `f'.
5024
5025 * coding.c (find_safe_codings): Remove unused var `i'.
5026
5027 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5028
5029 * buffer.c (Fkill_buffer): Remove unused var `list'.
5030
5031 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5032
5033 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5034
5035 * frame.c (make_frame): Condition want_fullscreen with
5036 HAVE_WINDOW_SYSTEM.
5037
5038 2003-05-25 Juanma Barranquero <lektu@terra.es>
5039
5040 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5041 (Fwindow_scroll_bars): Fix typo in docstring.
5042
5043 2003-05-24 Kim F. Storm <storm@cua.dk>
5044
5045 The following changes serve several purposes:
5046
5047 1) Swap the position of fringes and display margins in windows, i.e.
5048 the fringes are now displayed between the margins and the text area
5049 (by default).
5050
5051 2) Allow fringe and scroll bar parameters to be set per-buffer and
5052 per-window (like display margins). Such settings are now stored
5053 in window configurations, preserved when frames are resized, and
5054 copied when windows are split vertically or horizontally.
5055 Several bugs related to display margins have been fixed.
5056
5057 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
5058
5059 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5060 rather than FRAME_WIDTH (FRAME_FONT (f)).
5061
5062 5) Introduce a consistent naming of variables, members and macros
5063 depending on whether their value is measured in pixels or in
5064 canonical columns/lines. Pixel dimensions are named *_width and
5065 *_height, while canonical columns/lines are named *_cols and
5066 *_lines. Pixel positions are named *_x and *_y, while column/line
5067 positions are named *_col and *_line.
5068
5069 6) Consolidate more of the X, W32, and MAC gui code by moving
5070 common data into struct frame, and generalize it for the non-gui
5071 case by using suitable defaults.
5072
5073 7) Cleanup and consolidate the macros controlling frame and window
5074 layout into frame.h and window.h, and generalize the use of the
5075 various window_box_* functions (enhanced to handle the new fringe
5076 position and the per-window fringe and scroll bar settings).
5077
5078 * frame.h (struct frame): Rename members height to text_lines,
5079 width to text_cols, window_height to total_lines, window_width to
5080 total_cols, new_height to new_text_lines, new_width to
5081 new_text_cols. All uses changed.
5082 (struct frame): New members which consolidate common members of
5083 x_output, w32_output, and mac_output structures: left_pos,
5084 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5085 win_gravity, size_hint_flags, border_width, internal_border_width,
5086 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5087 want_fullscreen. All uses changed.
5088 (struct frame): New member column_width contaning the canonical
5089 column width, analogue to line_height. All uses changed.
5090 (struct frame): Rename members scroll_bar_pixel_width to
5091 config_scroll_bar_width, and scroll_bar_cols to
5092 config_scroll_bar_cols. All uses changed.
5093 (struct frame): New member scroll_bar_actual_width which
5094 consolidates and renames the vertical_scroll_bar_extra member of
5095 x_output, w32_output, and mac_output structures. All uses changed.
5096 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5097 from x/w32/macterm.h files. All uses changed. Also change code
5098 which referred to f->output_data...->pixel_height.
5099 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
5100 from x/w32/macterm.h files. All uses changed. Also change code
5101 which referred to f->output_data...->pixel_width.
5102 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5103 Also change code which referred to f->height.
5104 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5105 Also change code which referred to f->width.
5106 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5107 to update new_text_lines and new_text_cols members directly.
5108 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5109 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5110 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5111 FRAME_SCROLL_BAR_COLS. All uses changed.
5112 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5113 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5114 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5115 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5116 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5117 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5118 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5119 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5120 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5121 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5122 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5123 return line_height member (it now has proper value also for
5124 non-window frames).
5125 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5126 return new column_width member (rather than the default font width).
5127 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5128 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5129 from x/w32/macterm.h files. Unconditionally return corresponding
5130 member of frame structure (they now have proper values also for
5131 non-window frames).
5132 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5133 Calculate return value from left and right widths.
5134 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5135 internal_border_width member (has proper value for non-window frame).
5136 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5137 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5138 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5139 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5140 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5141 consolidated from xterm.h, macterm.h, and w32term.h.
5142 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5143 consolidated from xterm.h, macterm.h, and w32term.h.
5144 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5145 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5146 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5147 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5148 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5149 consolidated from x/mac/w32term.h.
5150 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5151 consolidated from x/mac/w32term.h.
5152 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5153 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5154 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5155 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5156
5157 * window.h (struct window): Rename members left to left_col,
5158 top to top_line, height to total_lines, width to total_cols,
5159 left_margin_width to left_margin_cols, right_margin_width to
5160 right_margin_cols, orig_height to orig_total_lines, orig_top to
5161 orig_top_line. All uses changed.
5162 (struct window): New members left_fringe_width, right_fringe_width,
5163 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5164 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5165 New macros primarily used to simplify other macros.
5166 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5167 referred to XINT (w->width).
5168 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5169 referred to XINT (w->height).
5170 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5171 referred to XINT (w->width) * canon_x_unit.
5172 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5173 referred to XINT (w->height) * canon_y_unit.
5174 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5175 referred to XINT (w->left).
5176 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5177 all uses and code that referred to XINT (w->left) + XINT (w->width).
5178 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5179 referred to XINT (w->top).
5180 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5181 referred to XINT (w->top) + XINT (w->height).
5182 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5183 referred to XINT (w->left) * canon_x_unit.
5184 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5185 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5186 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5187 referred to XINT (w->top) * canon_y_unit.
5188 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5189 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5190 (WINDOW_LEFTMOST_P): New macro.
5191 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5192 All uses changed.
5193 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5194 All uses changed.
5195 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5196 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5197 Do not exclude left fringe width.
5198 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5199 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5200 Do not exclude fringe widths.
5201 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5202 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5203 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5204 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5205 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5206 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5207 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5208 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5209 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5210 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5211 New macros. Change code which referenced corresponding
5212 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5213 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5214 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5215 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5216 allow per-window scroll-bar settings.
5217 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5218 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5219 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5220 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5221 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5222 FRAME_SCROLL_BAR_WIDTH.
5223 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
5224 (WINDOW_SCROLL_BAR_AREA_X): New macros.
5225 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5226 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5227 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5228 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5229 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5230 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5231 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5232 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5233 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5234 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5235 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5236 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5237 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5238 (window_from_coordinates): Update prototype.
5239 (Fset_window_buffer): Update EXFUN.
5240 (set_window_buffer): Update prototype.
5241
5242 * dispextern.h (struct glyph_matrix): Rename members window_left_x
5243 to window_left_col, window_top_y to window_top_line. All uses
5244 changed.
5245 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5246 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5247 internal_border_width is now set to 0 for non-window frames.
5248 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5249 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
5250 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
5251 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
5252 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
5253 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5254 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5255 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
5256 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
5257 Move to window.h and renamed [see window.h changes].
5258 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
5259 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
5260 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
5261 Use WINDOW_TOTAL_LINES.
5262 (frame_update_line_height): Remove prototype.
5263
5264 * buffer.h (struct buffer): Rename members measured in columns:
5265 left_margin_width to left_margin_cols, right_margin_width to
5266 right_margin_cols. All uses changed.
5267 New members left_fringe_width, right_fringe_width,
5268 fringes_outside_margins for per-buffer fringe settings.
5269 New members scroll_bar_width and vertical_scroll_bar_type for
5270 per-buffer scroll bar settings.
5271
5272 * buffer.c (init_buffer_once): Set buffer_defaults and
5273 buffer_local_flags for new buffer-local variables
5274 left_fringe_width, right_fringe_width, fringes_outside_margins,
5275 scroll_bar_width, and vertical_scroll_bar_type.
5276 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
5277 default-* variables for them.
5278
5279 * dispnew.c: Make (many) trivial substitutions for renamed and
5280 new macros in dispextern.h, frame.h and window.h.
5281 (mode_line_string): No need to adjust width for mode lines, as it
5282 is already adjusted by the caller.
5283 (marginal_area_string): Handle fringes inside/outside margins.
5284
5285 * frame.c: Make (many) trivial substitutions for renamed and
5286 new macros in dispextern.h, frame.h and window.h.
5287 (make_frame): Initialize left_fringe_width, right_fringe_width,
5288 fringe_cols, scroll_bar_actual_width, border_width,
5289 internal_border_width, column_width, line_height, x_pixels_diff,
5290 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
5291 members with values suitable for a non-window frames.
5292
5293 * gtkutil.c: Make (many) trivial substitutions for renamed and
5294 new macros in dispextern.h, frame.h and window.h.
5295
5296 * indent.c: Make (few) trivial substitutions for renamed and
5297 new macros in dispextern.h, frame.h and window.h.
5298
5299 * keyboard.c: Make (many) trivial substitutions for renamed and
5300 new macros in dispextern.h, frame.h and window.h.
5301 (make_lispy_event): Use window positions returned from
5302 window_from_coordinates when constructing the lisp event for
5303 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
5304 (incorrect) values locally.
5305 (make_lispy_movement): Use window positions returned from
5306 window_from_coordinates when constructing the lisp event, rather
5307 than calculating (incorrect) values locally.
5308
5309 * scroll.c: Make (some) trivial substitutions for renamed and
5310 new macros in dispextern.h, frame.h and window.h.
5311
5312 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
5313 scroll-bars.
5314
5315 * sysdep.c: Make (few) trivial substitutions for renamed and
5316 new macros in dispextern.h, frame.h and window.h.
5317
5318 * term.c: Make (some) trivial substitutions for renamed and
5319 new macros in dispextern.h, frame.h and window.h.
5320
5321 * widget.c: Make (few) trivial substitutions for renamed and
5322 new macros in dispextern.h, frame.h and window.h.
5323
5324 * window.c: Make (many) trivial substitutions for renamed and
5325 new macros in dispextern.h, frame.h and window.h.
5326 (make_window): Initialize new members
5327 left_margin_cols, right_margin_cols, left_fringe_width,
5328 right_fringe_width, fringes_outside_margins, scroll_bar_width,
5329 and vertical_scroll_bar_type.
5330 (coordinates_in_window): Adapted to new fringe/margin positions
5331 and per-window fringes and scroll-bars.
5332 Fix bug related to incorrectly adjusting coordinates by
5333 frame's internal_border_width (the effect normally negible since
5334 the internal_border_width is typically 0 or 1 pixel, but very
5335 noticeable for an internal_border_width of e.g. 25 pixels).
5336 Upon successful return (other than ON_NOTHING), the coordinates
5337 are now always properly converted to window relative for the
5338 given display element.
5339 (window_from_coordinates): Add new parameters wx and wy to
5340 return the window relative x and y position in the returned
5341 window and part. A null arg means, don't return the position.
5342 All callers changed.
5343 (adjust_window_margins): New function which may reduce the width
5344 of the display margins if a window's text area is too small after
5345 resizing or splitting windows.
5346 (size_window): Fix bug that did not account for display margin
5347 widths when checking the minimum width of a window; use
5348 adjust_window_margins.
5349 (set_window_buffer): Call Fset_window_fringes and
5350 Fset_window_scroll_bars to setup per-window elements.
5351 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
5352 existing display margin, fringe widths, and scroll bar settings
5353 (e.g. after splitting a window or resizing the frame).
5354 All callers changed.
5355 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
5356 (Fsplit_window): Duplicate original window's display margin,
5357 fringe, and scroll-bar settings; then call Fset_window_buffer with
5358 KEEP_MARGINS non-nil. This fixes a bug which caused a split
5359 window to only preserve the display margins in one of the windows.
5360 When splitting horizontally, call adjust_window_margins on both
5361 windows to ensure that the text area of the new windows is non too
5362 narrow. This fixes a bug which could cause Emacs to trap if the
5363 width of the split window was less than the width of the display
5364 margins.
5365 (window_box_text_cols): Renamed from window_internal_width.
5366 All uses changed. Adapt to per-window fringes and scroll bars.
5367 Fix bug that caused vertical separator to be subtracted also on
5368 window frames. Fix another bug that did not reduce the returned
5369 value by the columns used for display margins.
5370 (window_scroll_line_based): Fix bug related to scrolling too much
5371 when display margins are present (implicitly fixed by the fix to
5372 window_box_text_cols).
5373 (scroll_left, scroll_right): Fix bug related to scrolling too far
5374 by default when display margins are present (implicitly fixed by
5375 the fix to window_box_text_cols).
5376 (struct saved_window): Rename members left to left_col, top to
5377 top_line, width to total_cols, height to total_lines, orig_top to
5378 orig_top_line, orig_height to orig_total_lines. All uses changed.
5379 New members left_margin_cols, right_margin_cols,
5380 left_fringe_width, right_fringe_width, fringes_outside_margins,
5381 scroll_bar_width, and vertical_scroll_bar_type for saving
5382 per-window display elements.
5383 (Fset_window_configuration): Restore display margins, fringes,
5384 and scroll bar settings. This fixes a bug which caused display
5385 margins to be discarded when saving and restoring a window
5386 configuration.
5387 (save_window_save): Save display margins, fringes, and scroll bar
5388 settings. This fixes a bug which caused display margins to be
5389 discarded when saving and restoring a window configuration.
5390 (Fset_window_margins): Do nothing if display margins are not
5391 really changed. Otherwise, call adjust_window_margins to ensure
5392 the text area doesn't get too narrow. This fixes a bug which
5393 could cause Emacs to trap if setting display margins wider than
5394 the width of the window.
5395 (Fset_window_fringes): New defun to allow user to specifically set
5396 this window's fringe widths and position vs. display margins.
5397 (Fwindow_fringes): New defun to return window's actual fringe
5398 settings.
5399 (Fset_window_scroll_bars): New defun to allow user to specifically
5400 set this window's scroll bar width and position.
5401 (Fwindow_scroll_bars): New defun to return window's actual scroll
5402 bar settings.
5403 (compare_window_configurations): Also compare display margins,
5404 fringes, and scroll bar settings.
5405 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
5406
5407 * xdisp.c: Make (many) trivial substitutions for renamed and
5408 new macros in dispextern.h, frame.h and window.h.
5409 (window_box_width): Adapt to per-window fringes and scroll bars,
5410 and new fringe vs. display margin position. Note that returned
5411 value is no longer guaranteed to be a whole multiple of the frame
5412 column width, since per-window fringes may now be any width.
5413 (window_box_left_offset): New function like window_box_left, but
5414 value is relative to left border of window (rather than frame).
5415 (window_box_right_offset): New function like window_box_right,
5416 but value is relative to left border of window.
5417 (window_box_left): Adapt to per-window fringes and scroll bars,
5418 and new fringe vs. display margin position. Simplify by using
5419 WINDOW_LEFT_EDGE_X and window_box_left_offset.
5420 (window_box): Allow null args for unnecessary return values;
5421 change/simplify relevant callers.
5422 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
5423 and new fringe vs. display margin position.
5424 Use window_box_left_offset and window_box_right_offset
5425 (get_glyph_string_clip_rect): Adapt to per-window fringes and
5426 scroll bars, and new fringe vs. display margin position.
5427 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
5428 (draw_fringe_bitmap): Rework to handle per-window fringes and new
5429 fringe vs. display margin position.
5430 (hscroll_window_tree): Use window_box_width instead of window_box.
5431 (redisplay_window): Adapt to per-window scroll bars.
5432 (draw_glyphs): Rework to handle per-window fringes and scroll
5433 bars, and new fringe vs. display margin position.
5434 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
5435 (x_clear_end_of_line): Adapt to per-window fringes and scroll
5436 bars, and new fringe vs. display margin position. Fix bug which
5437 increased total width of full_width rows by width of scroll bars
5438 although window's total width already includes that.
5439 (x_fix_overlapping_area): Simplify using window_box_left_offset.
5440 (expose_area): Simplify using window_box_left_offset.
5441 (x_draw_vertical_border): Handle per-window scroll bar settings,
5442 mixing windows with left, right and no scroll bars.
5443
5444 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
5445 where it's used in x_list_fonts (for clarity).
5446 (frame_update_line_height): Remove unused function; functionality
5447 is now done directly when setting the default font in x_set_font.
5448
5449 * xfns.c: Make (many) trivial substitutions for renamed and
5450 new macros in dispextern.h, frame.h and window.h.
5451
5452 * xmenu.c: Make (some) trivial substitutions for renamed and
5453 new macros in dispextern.h, frame.h and window.h.
5454
5455 * xterm.h (struct x_output): Move members left_pos, top_pos,
5456 border_width, pixel_height, pixel_width, line_height,
5457 internal_border_width, vertical_scroll_bar_extra,
5458 left_fringe_width, right_fringe_width, fringe_cols,
5459 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5460 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5461 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5462 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5463 (PIXEL_WIDTH, PIXEL_HEIGHT)
5464 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5465 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5466 frame.h and renamed [see frame.h changes].
5467 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5468 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5469 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5470 and renamed [see frame.h changes].
5471
5472 * xterm.c: Make (several) trivial substitutions for renamed and
5473 new macros in dispextern.h, frame.h and window.h.
5474 (x_draw_glyph_string_box): Adapt to per-window fringes and
5475 scroll-bars.
5476 (scroll_run): Adapt to new fringe position.
5477 (glyph_rect): Use window coordinates returned from
5478 window_from_coordinates rather than frame_to_window_pixel_xy.
5479 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5480 scroll-bars.
5481 (handle_one_xevent): Simplify a USE_GTK conditional.
5482 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5483 (fringes are now inside margins, i.e. always in the clipping area).
5484 All callers changed.
5485 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5486 directly, then call compute_fringe_widths. Don't call
5487 frame_update_line_height.
5488
5489 * w32term.h (struct w32_output): Move members left_pos, top_pos,
5490 border_width, pixel_height, pixel_width, line_height,
5491 internal_border_width, vertical_scroll_bar_extra,
5492 left_fringe_width, right_fringe_width, fringe_cols,
5493 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5494 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
5495 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5496 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5497 (PIXEL_WIDTH, PIXEL_HEIGHT)
5498 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5499 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5500 frame.h and renamed [see frame.h changes].
5501 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5502 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5503 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5504 and renamed [see frame.h changes].
5505
5506 * w32term.c: Make (several) trivial substitutions for renamed and
5507 new macros in dispextern.h, frame.h and window.h.
5508 (x_draw_glyph_string_box): Adapt to per-window fringes and
5509 scroll-bars.
5510 (glyph_rect): Use window coordinates returned from
5511 window_from_coordinates rather than frame_to_window_pixel_xy.
5512 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5513 scroll-bars.
5514 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
5515 (fringes are now inside margins, i.e. always in the clipping area).
5516 All callers changed.
5517 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5518 directly, then call compute_fringe_widths. Don't call
5519 frame_update_line_height.
5520
5521 * w32console.c: Make (few) trivial substitutions for renamed and
5522 new macros in dispextern.h, frame.h and window.h.
5523
5524 * w32fns.c: Make (many) trivial substitutions for renamed and
5525 new macros in dispextern.h, frame.h and window.h.
5526
5527 * w32menu.c: Make (few) trivial substitutions for renamed and
5528 new macros in dispextern.h, frame.h and window.h.
5529
5530 * macterm.h (struct mac_output): Move members left_pos, top_pos,
5531 border_width, pixel_height, pixel_width, line_height,
5532 internal_border_width, vertical_scroll_bar_extra,
5533 left_fringe_width, right_fringe_width, fringe_cols,
5534 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
5535 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
5536 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
5537 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
5538 (PIXEL_WIDTH, PIXEL_HEIGHT)
5539 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
5540 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
5541 frame.h and renamed [see frame.h changes].
5542 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
5543 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
5544 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
5545 and renamed [see frame.h changes].
5546
5547 * macterm.c: Make (several) trivial substitutions for renamed and
5548 new macros in dispextern.h, frame.h and window.h.
5549 (x_draw_glyph_string_box): Adapt to per-window fringes and
5550 scroll-bars.
5551 (glyph_rect): Use window coordinates returned from
5552 window_from_coordinates rather than frame_to_window_pixel_xy.
5553 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
5554 scroll-bars.
5555 (x_clip_to_row): Remove superfluous whole_line_p arg and code
5556 (fringes are now inside margins, i.e. always in the clipping area).
5557 All callers changed.
5558 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
5559 directly, then call compute_fringe_widths. Don't call
5560 frame_update_line_height.
5561
5562 * macfns.c: Make (several) trivial substitutions for renamed and
5563 new macros in dispextern.h, frame.h and window.h.
5564 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
5565
5566 * macmenu.c: Make (few) trivial substitutions for renamed and
5567 new macros in dispextern.h, frame.h and window.h.
5568
5569 * msdos.h (struct x_output): Remove members left_pos, top_pos,
5570 and line_height, and use corresponding new members in struct
5571 frame. All uses changed.
5572 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
5573 superseeded by corresponding macros in frame.h.
5574
5575 * msdos.c: Make (several) trivial substitutions for renamed and
5576 new macros in dispextern.h, frame.h and window.h.
5577 (IT_note_mouse_highlight): Use updated window coordinates returned
5578 by window_from_coordinates, rather than adjusting them locally.
5579 (internal_terminal_init): No need to initialize line_height here;
5580 it now defaults to 1.
5581
5582 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
5583
5584 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
5585 dropping `down' events.
5586
5587 2003-05-24 Andreas Schwab <schwab@suse.de>
5588
5589 * coding.c (find_safe_codings): Fix last change.
5590
5591 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
5592
5593 * xfns.c (x_window): Fix typo from 2003-05-21 change.
5594
5595 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
5596
5597 * xdisp.c (display_mode_element): Increase max depth.
5598 Simplify the error handling code. Use a different error string
5599 for the case where we hit the depth limit.
5600
5601 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
5602
5603 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
5604
5605 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
5606
5607 * intervals.c (get_local_map): Don't get char-property of previous
5608 point any more: get_pos_property already does it and better.
5609
5610 2003-05-21 Dave Love <fx@gnu.org>
5611
5612 [Merged from unicode branch.]
5613
5614 * xfns.c (x_window, x_window): Use use_xim.
5615
5616 * xterm.c (use_xim): Initialize.
5617 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
5618 (x_term_init): Maybe set use_xim.
5619
5620 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
5621
5622 2003-05-21 Jason Rumney <jasonr@gnu.org>
5623
5624 * unexw32.c (_start): Remove _fmode initialization.
5625
5626 * emacs.c (main) [WINDOWSNT]: Move it here.
5627
5628 2003-05-20 Dave Love <fx@gnu.org>
5629
5630 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
5631
5632 2003-05-19 Richard M. Stallman <rms@gnu.org>
5633
5634 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
5635 as value for QCfont attribute.
5636 (realize_default_face): lface should already exist; crash if not.
5637 Specify 0 for FORCE_P when calling set_lface_from_font_name.
5638
5639 * frame.c (Fignore_event): Doc fix.
5640
5641 2003-05-19 Kenichi Handa <handa@m17n.org>
5642
5643 * coding.c (decode_coding_string): Handle post-read-conversion
5644 even if the coding doesn't require decoding.
5645
5646 2003-05-18 Richard M. Stallman <rms@gnu.org>
5647
5648 * callproc.c (Fcall_process_region): Doc fix.
5649
5650 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5651
5652 * lread.c (Fload): Print a message if package is obsolete.
5653
5654 * window.c (Fselect_window): Add optional `norecord' arg.
5655 (select_window_1): Fold into Fselect_window.
5656 (select_window_norecord): New function.
5657 (temp_output_buffer_show): Use it. Preserve current buffer.
5658
5659 * window.h (Fselect_window): Update declaration.
5660
5661 * window.c (delete_window, Fother_window, Fset_window_configuration):
5662 * minibuf.c (read_minibuf):
5663 * macterm.c (x_new_focus_frame):
5664 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
5665 * callint.c (Fcall_interactively):
5666 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
5667
5668 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
5669
5670 2003-05-17 David Kastrup <dak@gnu.org>
5671
5672 * process.c (read_process_output): Back out change from 2003-03-09.
5673
5674 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
5675
5676 * editfns.c (get_pos_property): Don't assume that `object' = nil.
5677
5678 * textprop.c (text_property_stickiness): New arg `buffer'.
5679
5680 * intervals.h (text_property_stickiness): New arg `buffer'.
5681 (get_pos_property): Declare.
5682
5683 * intervals.c (get_local_map): Use get_pos_property, to obey
5684 stickiness and empty overlays.
5685 (create_root_interval, graft_intervals_into_buffer): Use BEG.
5686 (merge_properties, intervals_equal, merge_properties_sticky):
5687 Use XCAR, XCDR.
5688 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
5689
5690 2003-05-17 Richard M. Stallman <rms@gnu.org>
5691
5692 * minibuf.c (read_minibuf): If buffer is empty, record the default
5693 in the history.
5694 (Fminibuffer_complete_word): When deleting the overlap, take account
5695 of its real position.
5696
5697 * fns.c (map_char_table): Fix previous change.
5698
5699 * syntax.c (find_defun_start):
5700 When open_paren_in_column_0_is_defun_start,
5701 return beginning of buffer.
5702
5703 * lisp.h (map_char_table): Declare added arg.
5704
5705 * fns.c (map_char_table): New arg TABLE gets the master table.
5706 All calls changed.
5707 Process default and inheritance, resorting to Faref if necessary.
5708
5709 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
5710 (Faccessible_keymaps): Pass new arg to map_char_table.
5711
5712 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
5713
5714 * casetab.c (set_case_table): Pass new arg to map_char_table.
5715
5716 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
5717
5718 * lisp.h (specbinding_func): New typedef.
5719 (struct specbinding): Use specbinding_func, to put the `volatile'
5720 in the right place.
5721
5722 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
5723 to avoid GCC warning.
5724
5725 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
5726
5727 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
5728
5729 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
5730
5731 * keyboard.c (apply_modifiers): Don't fill the other cache.
5732
5733 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
5734
5735 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
5736
5737 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
5738 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
5739 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
5740 (Fset_window_configuration, Fcurrent_window_configuration)
5741 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
5742 (Fpos_visible_in_window_p, mark_window_cursors_off)
5743 (window_internal_height, window_internal_width, Frecenter)
5744 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
5745 (replace_buffer_in_all_windows, init_window_once, init_window)
5746 (syms_of_window, keys_of_window): Move from lisp.h.
5747 * lisp.h: Move window.c declarations to window.h.
5748
5749 * bytecode.c: Include window.h.
5750 * emacs.c: Include window.h.
5751
5752 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
5753 (keyremap): Add `parent' field.
5754 (keyremap_step): Use it. Remove `parent' argument.
5755 (read_key_sequence): Setup and use the new `parent' field.
5756
5757 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
5758
5759 * keyboard.c (adjust_point_for_property): Ensure termination.
5760
5761 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
5762
5763 * keyboard.c (follow_key): Remove dead variable `did_meta'.
5764 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
5765 duplicated handling of function-key-map and key-translation-map
5766 in read_key_sequence.
5767 (read_key_sequence): Use them.
5768
5769 * keyboard.c (adjust_point_for_property): Try harder to move point
5770 to the non-sticky end of an invisible property.
5771
5772 * xdisp.c (single_display_prop_intangible_p): Make `space' display
5773 property intangible as well.
5774
5775 2003-05-10 Andreas Schwab <schwab@suse.de>
5776
5777 * xmenu.c (single_menu_item): Change last parameter to void* to
5778 avoid warning.
5779
5780 2003-05-09 Richard M. Stallman <rms@gnu.org>
5781
5782 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
5783 Bind Qinhibit_modification_hooks to t so there will be no GC.
5784 Rename local `tem' to `save_deactivate_mark'.
5785
5786 * eval.c (specpdl_ptr): Declare volatile.
5787 (unbind_to): Copy the whole binding and decrement specpdl_ptr
5788 before doing the work of unbinding it.
5789
5790 * lisp.h (struct specbinding): Declare elements volatile.
5791 (specpdl_ptr): Declare volatile.
5792
5793 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
5794
5795 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
5796 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
5797
5798 2003-05-08 Dave Love <fx@gnu.org>
5799
5800 * coding.c (Vlast_coding_system_used): Doc fix.
5801
5802 2003-05-07 Jason Rumney <jasonr@gnu.org>
5803
5804 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
5805 when system does not support them.
5806
5807 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
5808
5809 * fileio.c (Qwrite_region_annotate_functions): New var.
5810 (build_annotations): Use it to process the global part of the hook.
5811 (syms_of_fileio): Init and staticpro it.
5812
5813 * keyboard.c (safe_run_hooks_error): Display a message instead of
5814 silently ignoring the error.
5815
5816 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
5817
5818 * keyboard.c (input_available_signal): Mark static.
5819 (menu_bar_items): Use map_keymap.
5820 (menu_bar_one_keymap): Remove.
5821 (menu_bar_item): Adjust arglist (for use in map_keymap).
5822 Properly hide a second binding when not both are keymaps.
5823
5824 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
5825 (single_keymap_panes): Use it and map_keymap.
5826 (single_menu_item): Use skp as well.
5827
5828 * keymap.h (map_keymap_function_t): New type.
5829 (map_keymap): Declare.
5830
5831 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
5832 (map_keymap_call, Fmap_keymap): New functions.
5833 (syms_of_keymap): Defsubr map-keymap.
5834
5835 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5836
5837 * gtkutil.c (create_dialog, make_widget_for_menu_item)
5838 (make_menu_item, create_menus, xg_update_menu_item): Don't call
5839 ..._with_mnemonic functions for menu items.
5840
5841 2003-05-01 Kenichi Handa <handa@m17n.org>
5842
5843 * coding.c (coding_system_accept_latin_extra_p): Delete this
5844 function.
5845 (find_safe_codings): Pay attention to
5846 the property tranlsation-table-for-encode of each codings.
5847 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
5848
5849 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
5850
5851 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
5852
5853 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
5854
5855 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
5856
5857 * lisp.h (CHECK): Wrap args in parenthesis.
5858 (specbind): Fix doc: symbol = Qnil is not supported any more.
5859
5860 * bytecode.c (Fbyte_code) <unwind-protect>:
5861 Use Fprogn rather than 0 and Qnil.
5862
5863 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
5864 `double', and `triple' modifiers as well.
5865
5866 2003-04-30 Richard M. Stallman <rms@gnu.org>
5867
5868 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
5869
5870 * alloc.c (abort_on_gc): New variable.
5871 (Fgarbage_collect): Abort if abort_on_gc is set.
5872
5873 * lisp.h (abort_on_gc): Add decl.
5874
5875 * eval.c (Fsignal): Clear abort_on_gc.
5876
5877 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
5878 Reinit FORMAT_START and END before second scan.
5879
5880 * xdisp.c (move_it_vertically_backward): Do the final big else
5881 even if nlines is 0.
5882
5883 * xdisp.c (redisplay_internal): Finish the per-frame loop
5884 even if redisplay is suspended by input.
5885
5886 2003-04-24 Andrew Choi <akochoi@shaw.ca>
5887
5888 * macterm.c (x_list_fonts): Return all fonts that match if
5889 maxnames = -1.
5890
5891 2003-04-25 Kenichi Handa <handa@m17n.org>
5892
5893 * syntax.c (skip_chars): Fix previous change.
5894
5895 2003-04-24 Kenichi Handa <handa@m17n.org>
5896
5897 * syntax.c (skip_chars): Make the code faster by using the common
5898 technique of *p, *stop, and *endp.
5899
5900 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5901
5902 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
5903 tool_bar_items so GTK tool bar expose callback does not access items
5904 being updated.
5905
5906 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
5907
5908 * eval.c (Fapply): Undo last change and add a comment about why.
5909
5910 2003-04-18 Miles Bader <miles@gnu.org>
5911
5912 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
5913 pickier PARSE_MULTIBYTE_SEQ.
5914
5915 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
5916
5917 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
5918 Use XCDR, XCAR, CONSP.
5919 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
5920 (Fapply): Remove unnecessary GCPRO.
5921
5922 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
5923
5924 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
5925
5926 * buffer.h: Don't hardcode BEG==1.
5927
5928 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
5929
5930 2003-04-16 Richard M. Stallman <rms@gnu.org>
5931
5932 * xdisp.c (try_window, try_window_reusing_current_matrix):
5933 When at end of window, set window_end_pos to Z-ZV.
5934
5935 * buffer.c (Foverlay_recenter): Doc fix.
5936
5937 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
5938
5939 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
5940
5941 2003-04-14 Andrew Choi <akochoi@shaw.ca>
5942
5943 * macterm.c (mac_check_for_quit_char): Don't check more often than
5944 once a second.
5945
5946 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
5947
5948 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
5949 specially, so that they can't hide an implicit switch-frame event.
5950 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
5951 (head_table): Use switch-frame as event_kind for select-window.
5952 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
5953
5954 * editfns.c (Fformat): Lisp_Object/int mixup.
5955 (format2): Remove unused var numargs.
5956
5957 2003-04-11 Kenichi Handa <handa@m17n.org>
5958
5959 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
5960 (Qafter_insert_file_set_coding): New variable.
5961 (syms_of_fileio): Initialize and staticpro it. Delete declaration
5962 for after-insert-file-adjust-coding-function.
5963 (Finsert_file_contents): Call Qafter_insert_file_set_coding
5964 instead of Vafter_insert_file_adjust_coding_function.
5965
5966 2003-04-11 Kenichi Handa <handa@m17n.org>
5967
5968 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
5969
5970 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
5971 string. Callers changed.
5972
5973 2003-04-10 Kenichi Handa <handa@m17n.org>
5974
5975 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
5976 (syms_of_fileio): Declare it as a lisp variable.
5977 (Finsert_file_contents):
5978 Call Vafter_insert_file_adjust_coding_function before calling
5979 decode-format.
5980
5981 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5982
5983 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
5984 get GtkAdjustment as widget now is a GtkRange.
5985
5986 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
5987 GtkRange to avoid memory leak.
5988
5989 2003-04-09 Kenichi Handa <handa@m17n.org>
5990
5991 * xfaces.c (Vface_font_rescale_alist): New variable.
5992 (struct font_name): New member rescale_ratio.
5993 (font_rescale_ratio): New function.
5994 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
5995 (better_font_p): On comparing point sized, pay attention to
5996 recale_ratio member of fonts.
5997 (build_scalable_font_name): Reflect font->rescale_ratio in the
5998 font name.
5999 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
6000
6001 * lread.c (read1): Before calling index, check if the 2nd
6002 arguemnt is in ASCII range.
6003
6004 2003-04-08 Richard M. Stallman <rms@gnu.org>
6005
6006 * fileio.c (Ffile_symlink_p): Doc fix.
6007
6008 * editfns.c (Fformat): Translate positions of text properties
6009 in the format string to apply them to the result.
6010
6011 * fileio.c (Finsert_file_contents): Doc fix.
6012 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6013
6014 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6015
6016 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6017
6018 2003-04-08 Steven Tamm <steventamm@mac.com>
6019
6020 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6021 that self-contained application finds libexec files.
6022
6023 2003-04-08 Kenichi Handa <handa@m17n.org>
6024
6025 * coding.c (code_convert_region_unwind):
6026 Set Vlast_coding_system_used to the argument.
6027 (code_convert_region): If post-read-conversion function changed
6028 the value of last-coding-sytem, keep the new value in
6029 coding->symbol so that it won't be overridden.
6030 (run_pre_post_conversion_on_str): Likewise.
6031 (coding_system_accept_latin_extra_p): New function.
6032 (find_safe_codings): Pay attention to characters registered in
6033 latin-extra-code-table.
6034
6035 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6036
6037 * Makefile.in (md5.o): Add missing dependency info.
6038
6039 2003-04-06 Richard M. Stallman <rms@gnu.org>
6040
6041 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6042
6043 * marker.c (verify_bytepos): New function.
6044
6045 * intervals.c (set_intervals_multibyte_1): When becoming
6046 multibyte, adjust right and left child sizes to a whole set of
6047 characters. If an interval gets zero total-length, delete it.
6048 If an interval consists of just its children, delete one of them.
6049
6050 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6051 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
6052
6053 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6054 All calls deleted.
6055 (lisp_malloc): Do the work here directly.
6056
6057 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6058
6059 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6060 char tables.
6061
6062 2003-04-04 Kenichi Handa <handa@m17n.org>
6063
6064 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6065 destructively change "%S" to "%s".
6066
6067 2003-04-03 Miles Bader <miles@gnu.org>
6068
6069 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6070 always set.
6071
6072 2003-04-01 Dave Love <fx@gnu.org>
6073
6074 * xfns.c (xpm_lookup_color): Grok "opaque".
6075
6076 2003-03-31 Andrew Choi <akochoi@shaw.ca>
6077
6078 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6079 parent window ID.
6080
6081 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6082
6083 * macterm.h (struct mac_output): Define x_pixels_diff and
6084 y_pixels_diff.
6085
6086 2003-03-31 Juanma Barranquero <lektu@terra.es>
6087
6088 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6089 blockinput.h and files included from it.
6090
6091 2003-03-31 Kim F. Storm <storm@cua.dk>
6092
6093 The following changes consolidates the common code related to
6094 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6095 files into frame.c.
6096
6097 * frame.c: Include blockinput.h.
6098 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6099 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6100 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6101 related vars here.
6102 (struct frame_parm_table, frame_parms): New table for describing
6103 frame parameters and their associated Q-variable.
6104 The order of the parameters corresponds to the sequence of the
6105 frame_parm_handlers table in redisplay_interface.
6106 (x_fullscreen_move, x_set_frame_parameters)
6107 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6108 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6109 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6110 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6111 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6112 Generic functions for processing of frame parameters.
6113 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6114 (display_x_get_resource, x_get_resource_string): Functions for
6115 generic access to X resources.
6116 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6117 (x_default_parameter, Fx_parse_geometry): Functions for generic
6118 access to frame parameters.
6119 (x_figure_window_size): Generic calculation of frame size.
6120 Fixed to add space needed for tool bar. Also setup size_hint_flags.
6121 (syms_of_frame): Intern and staticpro frame parameter variables.
6122 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6123 Defsubr Sx_get_resource and Sx_parse_geometry.
6124
6125 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6126 parameter related vars defined in frame.c.
6127 (EMACS_CLASS): Define here.
6128 (enum FULLSCREEN_*): Define here.
6129 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6130 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6131 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6132 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6133 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6134 (x_set_visibility, x_set_autoraise, x_set_autolower)
6135 (x_set_unsplittable, x_set_vertical_scroll_bars)
6136 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6137 (x_figure_window_size): Add prototypes.
6138
6139 * dispextern.h (frame_parm_handler): New typedef.
6140 (struct redisplay_interface): New member frame_parm_handlers.
6141 (enum resource_types): Move declaration here.
6142 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6143 (x_default_parameter): Add prototypes.
6144
6145 * window.c: Remove extern decl for frame parameter vars.
6146 (change_window_heights): New generic function;
6147 replaces x_change_window_heights. All users changed.
6148
6149 * window.h (change_window_heights): Add prototype.
6150
6151 * xfaces.c: Remove extern decl for frame parameter vars.
6152
6153 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6154 (struct w32_display_info): Fix type of xrdb member.
6155 (enum FULLSCREEN_*): Remove.
6156 Remove prototypes for generic functions (in frame.h).
6157
6158 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6159 parameters now defined in frame.h and frame.c.
6160 (Vx_resource_name): Remove. Use generic var.
6161 (enum x_frame_parms): Remove (bogus, unused enum).
6162 (check_x_display_info): Make non-static (for frame.c).
6163 (struct x_frame_parm_table, x_frame_parms): Remove.
6164 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6165 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6166 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6167 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6168 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6169 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6170 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6171 Remove. Use generic functions instead.
6172 (enum resource_types): Remove.
6173 (x_set_scroll_bar_default_width): New global function (for frame.c).
6174 (Fx_create_frame): Depend on x_figure_window_size to add space for
6175 toolbar and setup size_hint_flags.
6176 (x_frame_parm_handlers): New table for redisplay_interface.
6177 (syms_of_xfns): Don't intern/staticpro removed vars.
6178
6179 * xterm.c: Remove unnecessary extern declarations.
6180 (x_fullscreen_adjust): Remove. Use generic instead.
6181 (x_redisplay_interface): Add x_frame_parm_handlers member.
6182
6183 * w32gui.h (XrmDatabase): New (dummy) typedef.
6184
6185 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6186 (struct w32_display_info): Fix type of xrdb member.
6187 (enum FULLSCREEN_*): Remove.
6188 (x_fullscreen_adjust): Remove prototype.
6189
6190 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6191 parameters now defined in frame.h and frame.c.
6192 (Vx_resource_name): Remove. Use generic var.
6193 (enum x_frame_parms): Remove (bogus, unused enum).
6194 (check_x_display_info): Make non-static (for frame.c).
6195 (struct x_frame_parm_table, x_frame_parms): Remove.
6196 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6197 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6198 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6199 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6200 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6201 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6202 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6203 Remove. Use generic functions instead.
6204 (enum resource_types): Remove.
6205 (x_set_scroll_bar_default_width): New global function (for frame.c).
6206 (Fx_create_frame): Depend on x_figure_window_size to add space for
6207 toolbar and setup size_hint_flags.
6208 (w32_frame_parm_handlers): New table for redisplay_interface.
6209 (syms_of_w32fns): Don't intern/staticpro removed vars.
6210
6211 * w32term.c: Remove unnecessary extern declarations.
6212 (x_fullscreen_adjust): Remove. Use generic instead.
6213 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6214
6215 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6216
6217 * macgui.h (XrmDatabase): New (dummy) typedef.
6218
6219 * macterm.h (EMACS_CLASS): Remove.
6220 (struct mac_display_info): Add xrdb member.
6221 (struct mac_output): Add want_fullscreen member.
6222
6223 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6224 parameters now defined in frame.h and frame.c.
6225 (Vx_resource_name): Remove. Use generic var.
6226 (check_x_display_info): Make non-static (for frame.c).
6227 (struct x_frame_parm_table, x_frame_parms): Remove.
6228 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6229 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6230 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6231 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6232 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6233 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6234 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6235 Remove. Use generic functions instead.
6236 (enum resource_types): Remove.
6237 (x_set_scroll_bar_default_width): New global function (for frame.c).
6238 (mac_frame_parm_handlers): New table for redisplay_interface.
6239 (syms_of_macfns): Don't intern/staticpro removed vars.
6240
6241 * macterm.c: Remove unnecessary extern declarations.
6242 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6243
6244 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6245 included from it (atimer.h and systime.h).
6246
6247 2003-03-30 Andreas Schwab <schwab@suse.de>
6248
6249 * xdisp.c (x_insert_glyphs): Fix swapped width and height
6250 parameters for shift_glyphs_for_insert.
6251
6252 * macterm.c (x_redisplay_interface): Add missing entry for
6253 draw_vertical_window_border.
6254
6255 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
6256
6257 * fileio.c (Fexpand_file_name): In the no-handler case, after
6258 expanding, look again for a handler and invoke it. This is needed
6259 for filenames like "/foo/../user@host:/bar/../baz" -- the first
6260 expansion produces "/user@host:/bar/../baz" which needs to be
6261 expanded again for the finame result "/user@host:/baz".
6262
6263 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6264
6265 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
6266 of area to be redrawn for better performance.
6267
6268 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
6269
6270 * xterm.c (take_vertical_position_into_account): Remove.
6271 (xt_action_hook): Call set_vertical_scroll_bar if needed.
6272 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
6273 (xm_scroll_callback, x_create_toolkit_scroll_bar)
6274 (x_set_toolkit_scroll_bar_thumb): Simplify.
6275 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
6276 (XTread_socket): Remove unused var.
6277 (x_make_frame_invisible): Replace goto with else.
6278
6279 * xdisp.c (set_vertical_scroll_bar): New fun.
6280 (redisplay_window): Use it.
6281
6282 2003-03-26 Richard M. Stallman <rms@gnu.org>
6283
6284 * xdisp.c (update_tool_bar): Recompute tool bar if
6285 update_mode_lines is set. Set w->update_mode_line
6286 only if the tool bar contents actually change.
6287 (update_menu_bar): Undo previous change.
6288
6289 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6290
6291 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
6292 (xg_frame_set_char_size): Calculate scroll bar width before frame
6293 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
6294 (xg_separator_p): Check for all documented separator types.
6295 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
6296 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
6297
6298 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
6299 so tool bar gets updated.
6300
6301 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
6302
6303 * data.c (store_symval_forwarding): Re-instate part of the code
6304 that was deleted with too much enthusiasm.
6305
6306 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
6307
6308 * data.c (store_symval_forwarding): Delete special read-only
6309 hack for type == -1, since we now use ->constant instead.
6310 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
6311
6312 * buffer.c (overlays_in): Declare static.
6313 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
6314 `constant' field rather than the variable's `type' field.
6315
6316 2003-03-24 Andrew Choi <akochoi@shaw.ca>
6317
6318 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
6319
6320 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
6321
6322 * fns.c [MAC_OSX]: Do not redefine vector.
6323
6324 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
6325
6326 * macgui.h: Remove definition of No_Cursor.
6327
6328 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
6329
6330 * xdisp.c: Define No_Cursor.
6331 (x_write_glyphs, notice_overwritten_cursor)
6332 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
6333 (note_mouse_highlight): Remove Mac-specific code.
6334 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
6335
6336 2003-03-24 John Paul Wallington <jpw@gnu.org>
6337
6338 * xdisp.c (redisplay_window): If mini window's buffer is not
6339 empty, then redisplay it like other windows.
6340
6341 2003-03-23 Kim F. Storm <storm@cua.dk>
6342
6343 * w32term.c (w32_draw_window_cursor): Fix last change.
6344
6345 2003-03-23 Kenichi Handa <handa@m17n.org>
6346
6347 * alloc.c (make_string_from_bytes, make_specified_string):
6348 Add `const' for the arg CONTENTS.
6349
6350 * lisp.h (make_string_from_bytes, make_specified_string):
6351 Prototypes adjusted.
6352
6353 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6354
6355 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
6356
6357 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
6358 (XG_SB_RANGE): New define.
6359
6360 * gtkutil.c (xg_fixed_handle_expose): New function.
6361 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
6362 expose events.
6363 (xg_update_scrollbar_pos): Take two more arguments, left and width
6364 of scroll bar including borders.
6365 Clear left and right part outside scroll bar separately as some
6366 themes have bars that are not an even number of pixels.
6367 Don't set reallocate_redraws, don't call
6368 gdk_window_process_all_updates.
6369 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
6370 so no need to change it. Calculate size and value with XG_SB_RANGE.
6371
6372 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
6373 Pass left and width of scroll bar including borders to
6374 xg_update_scrollbar_pos.
6375
6376 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
6377
6378 * Makefile.in: Make sure space precedes end-of-line backslashes.
6379
6380 2003-03-22 Kim F. Storm <storm@cua.dk>
6381
6382 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
6383 Add generic versions here. Remove system specific versions
6384 defined elsewhere.
6385
6386 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
6387 Add prototypes.
6388
6389 * xterm.h (STORE_NATIVE_RECT): New macro.
6390
6391 2003-03-21 Kim F. Storm <storm@cua.dk>
6392
6393 * xdisp.c (get_glyph_string_clip_rect):
6394 Use FRAME_INTERNAL_BORDER_WIDTH.
6395
6396 * dispextern.h (struct redisplay_interface): Add active_p
6397 argument to draw_window_cursor member. All uses changed.
6398
6399 2003-03-21 Kim F. Storm <storm@cua.dk>
6400
6401 The following changes consolidate code related to writing and
6402 inserting glyphs, exposing frame, the tool bar, the mouse face,
6403 the output cursor, and help echo from xterm.c, w32term.c and
6404 macterm.c into xdisp.c. It also generalizes the use of the
6405 window_part enum instead of using numeric values throughout.
6406
6407 * xdisp.c: Consolidate gui-independent code here.
6408 Include keymap.h.
6409 (Qhelp_echo): Import.
6410 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
6411 (help_echo_string, help_echo_window, help_echo_object)
6412 (previous_help_echo_string, help_echo_pos): Declare here.
6413 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
6414 (estimate_mode_line_height): Define here. Handle windowing
6415 systems directly (without using estimate_mode_line_height_hook).
6416 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
6417 (update_window_cursor, update_cursor_in_window_tree)
6418 (fast_find_position, fast_find_string_pos)
6419 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
6420 (expose_area, expose_line, expose_overlaps, expose_window)
6421 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
6422 declared static as they are only used locally in xdisp.c.
6423 (draw_glyphs): Rename from x_draw_glyphs and make static.
6424 (tool_bar_item_info, notice_overwritten_cursor): Make static.
6425 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6426 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
6427 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
6428 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6429 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
6430 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
6431 (note_mouse_highlight, x_clear_window_mouse_face)
6432 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
6433 (x_intersect_rectangles): New generic functions for use by xdisp.c
6434 and GUI front-ends.
6435 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
6436 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
6437
6438 * dispextern.h (Display_Info): Generic typedef for *_display_info.
6439 (NativeRectangle): Generic typedef for rectangle type.
6440 (enum window_part): Move here from window.c.
6441 (struct redisplay_interface): New members flush_display_optional,
6442 define_frame_cursor, clear_frame_area, draw_window_cursor,
6443 draw_vertical_window_border, shift_glyphs_for_insert.
6444 Rename member clear_mouse_face to clear_window_mouse_face.
6445 (estimate_mode_line_height_hook): Remove hook.
6446 (auto_raise_tool_bar_buttons_p): Don't declare extern.
6447 (tool_bar_item_info): Remove prototype.
6448 (help_echo_string, help_echo_window, help_echo_object)
6449 (previous_help_echo_string, help_echo_pos)
6450 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
6451 (x_stretch_cursor_p, output_cursor): Declare extern.
6452 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
6453 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
6454 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
6455 (display_and_set_cursor, set_output_cursor, x_cursor_to)
6456 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
6457 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
6458 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
6459 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
6460 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
6461 Add prototypes.
6462 (mode_line_string, marginal_area_string): Fix prototypes.
6463
6464 * window.c (enum window_part): Move to dispextern.h.
6465 (coordinates_in_window): Use enum window_part member names
6466 instead of numbers to describe return value.
6467 (struct check_window_data): Change part member to window_part.
6468 (check_window_containing): Return window_part unaltered.
6469 (window_from_coordinates): Change part arg from int to enum
6470 window_part. Allow part arg to be null. All users changed.
6471
6472 * window.h (window_from_coordinates): Fix prototype.
6473
6474 * term.c (estimate_mode_line_height): Move to xdisp.c.
6475
6476 * keyboard.c (make_lispy_event): Use enum window_part.
6477
6478 * dispnew.c (mode_line_string, marginal_area_string): Use enum
6479 window_part instead of int in arg list. Users changed.
6480
6481 * xterm.h (No_Cursor): Declare as None for X.
6482 (struct mac_output): Replace member cross_cursor by hand_cursor.
6483
6484 * xterm.c: Remove consolidated defines and code.
6485 (BETWEEN): Remove unused macro.
6486 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
6487 (x_define_frame_cursor, x_clear_frame_area)
6488 (x_draw_window_cursor): New X-specific functions for RIF.
6489 (x_redisplay_interface): Add new members.
6490
6491 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
6492
6493 * w32term.h (struct w32_output): Remove cross_cursor member.
6494
6495 * w32term.c: Remove consolidated defines and code.
6496 (BETWEEN): Remove unused macro.
6497 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
6498 (w32_define_frame_cursor, w32_clear_frame_area)
6499 (w32_draw_window_cursor): New W32-specific functions for RIF.
6500 (w32_redisplay_interface): Add new members.
6501
6502 * w32gui.h (No_Cursor): Define as 0 for W32.
6503 (XRectangle): Add X compatible rectangle type.
6504 (NativeRectangle): Declare as RECT for W32.
6505 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6506
6507 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
6508
6509 * w32console.c: Remove consolidated defines and code.
6510
6511 * msdos.h (Display_Info): Add generic typedef.
6512
6513 * msdos.c: Remove consolidated defines and code.
6514 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
6515
6516 * macterm.h (struct mac_output): Replace member cross_cursor by
6517 hand_cursor.
6518 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
6519
6520 * macterm.c: Remove consolidated defines and code.
6521 (BETWEEN): Remove unused macro.
6522 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
6523 (mac_define_frame_cursor, mac_clear_frame_area)
6524 (mac_draw_window_cursor): New Mac-specific functions for RIF.
6525 (x_redisplay_interface): Add new members.
6526
6527 * macgui.h (No_Cursor): Define as 0 for Mac.
6528 (XRectangle): Add X compatible rectangle type.
6529 (NativeRectangle): Declare as Rect for Mac.
6530 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
6531
6532 * macfns.c (x_set_mouse_color): Setup hand_cursor.
6533 (x_set_cursor_color): Use x_display_and_set_cursor.
6534
6535 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
6536 included from it. Add dependency on keymap.h.
6537
6538 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
6539
6540 2003-03-21 Kenichi Handa <handa@m17n.org>
6541
6542 * fileio.c (Fexpand_file_name): Fix previous change.
6543
6544 2003-03-19 Kenichi Handa <handa@m17n.org>
6545
6546 * fileio.c (Ffile_name_directory): Reconstruct file name by
6547 make_specified_string.
6548 (Ffile_name_nondirectory, Ffile_name_as_directory)
6549 (Fdirectory_file_name, Fexpand_file_name)
6550 (Fsubstitute_in_file_name): Likewise.
6551 (Fread_file_name): Compare decoded homedir with DIR and
6552 DEFAULT_FILENAME.
6553
6554 * alloc.c (make_specified_string): If NCHARS is negative, count
6555 the number of characters.
6556
6557 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6558
6559 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
6560 all widgets.
6561
6562 * gtkutil.h: Removed xg_ignore_next_thumb.
6563
6564 2003-03-18 Kenichi Handa <handa@m17n.org>
6565
6566 * coding.c (Vchar_coding_system_table): Remove this variable.
6567 (Vcoding_system_safe_chars): New variable.
6568 (intersection): Remove this function.
6569 (find_safe_codings): Don't use Vchar_coding_system_table, but try
6570 all codings in SAFE_CODINGS.
6571 (Ffind_coding_systems_region_internal): Adjust for the change of
6572 find_safe_codings. Get generic coding systems from
6573 Vcoding_system_safe_chars.
6574 (Fdefine_coding_system_internal): New function.
6575 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
6576 Initialize and staticpro Vcoding_system_safe_chars.
6577
6578 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6579
6580 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
6581 equal old values before updating.
6582
6583 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
6584
6585 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
6586
6587 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6588
6589 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
6590 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
6591 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
6592 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
6593 (xg_create_scroll_bar): Pass bar to button event callback.
6594 (xg_find_top_left_in_fixed): New function.
6595 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
6596 whole scroll bar area. Get old position with
6597 xg_find_top_left_in_fixed, calculate and only clear needed areas.
6598 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
6599 dragging is in progress. Calculate whole as for Motif.
6600 Remove code that saved last values. Call gtk_range functions to
6601 set scroll bar sizes.
6602
6603 * gtkutil.h: Removed xg_ignore_next_thumb.
6604
6605 2003-03-17 Juanma Barranquero <lektu@terra.es>
6606
6607 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
6608 and files included from it.
6609
6610 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
6611
6612 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
6613 multiple occurrences of the same keymap under different prefixes.
6614 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
6615
6616 2003-03-16 Jason Rumney <jasonr@gnu.org>
6617
6618 * w32gui.h: Use HDC for Display.
6619
6620 * w32term.c (w32_encode_char): Prevent double-byte chars from
6621 crashing Emacs.
6622
6623 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
6624 as binary.
6625
6626 2003-03-16 Juanma Barranquero <lektu@terra.es>
6627
6628 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
6629
6630 2003-03-16 Kim F. Storm <storm@cua.dk>
6631
6632 The following changes consolidate some of the gui-independent
6633 parts of the processing and drawing of "glyph strings" from
6634 xterm.c, w32term.c, and macterm.c into xdisp.c.
6635
6636 * dispextern.h (struct glyph): Reduce face_id member from 22 to
6637 21 bits (this reduces number of faces from 4M to 2M).
6638 Replace W32 specific w32_font_type member (2 bits) by generic
6639 font_type member (3 bits) for portability.
6640 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
6641 (enum draw_glyphs_face): Define here.
6642 (struct glyph_string): Define here. Merge W32 and X versions.
6643 (struct redisplay_interface): New members per_char_metric,
6644 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
6645 (VCENTER_BASELINE_OFFSET): Define here.
6646 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
6647 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
6648
6649 * xdisp.c: Consolidate gui-independent "glyph string" code here.
6650 (dump_glyph_string): Moved here.
6651 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
6652 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
6653 (fill_composite_glyph_string, fill_glyph_string)
6654 (fill_image_glyph_string, fill_stretch_glyph_string)
6655 (left_overwritten, left_overwriting, right_overwritten)
6656 (right_overwriting, get_char_face_and_encoding)
6657 (set_glyph_string_background_width, compute_overhangs_and_x)
6658 (append_glyph, append_composite_glyph, produce_image_glyph)
6659 (take_vertical_position_into_account, append_stretch_glyph)
6660 (produce_stretch_glyph): New generic functions (based on X version).
6661 Call platform specific functions through rif.
6662 (INIT_GLYPH_STRING): New macro, hides W32 details.
6663 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
6664 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
6665 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
6666 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
6667 (notice_overwritten_cursor):
6668 Generic functions exported to platform modules. Users changed.
6669
6670 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
6671 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
6672 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
6673 New macros for consolidated code.
6674
6675 * xterm.c: Remove consolidated defines and code.
6676 (x_per_char_metric, x_encode_char)
6677 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
6678 (x_redisplay_interface): Add new members.
6679
6680 * w32gui.h (Display): Add dummy typedef for consolidation.
6681 (XChar2b): Define alias for wchar_t for consolidation.
6682 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6683
6684 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
6685 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
6686 New macros for consolidation.
6687
6688 * w32term.c: Remove consolidated defines and code.
6689 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
6690 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
6691 (w32_per_char_metric): Change font_type arg to int for RIF.
6692 (w32_encode_char): Return int according to RIF requirements.
6693 (w32_compute_glyph_string_overhangs): Adapt to RIF.
6694 (w32_get_glyph_overhangs): New function for RIF. Uses generic
6695 x_get_glyph_overhangs.
6696 (w32_redisplay_interface): Add new members.
6697
6698 * macgui.h (XChar2b): Move typedef here for consolidation.
6699 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
6700
6701 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
6702 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
6703 consolidation.
6704
6705 * macterm.c: Remove consolidated defines and code.
6706 (mac_per_char_metric): New function for RIF.
6707 (mac_encode_char): Adapt to new RIF requirements.
6708 (mac_compute_glyph_string_overhangs): Adapt for RIF.
6709 (x_redisplay_interface): Add new members.
6710
6711 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
6712
6713 * keymap.c (Vmenu_events): New var.
6714 (syms_of_keymap): Initialize it.
6715 (where_is_internal): Check more carefully what is a menu event.
6716
6717 2003-03-14 Richard M. Stallman <rms@gnu.org>
6718
6719 * lread.c (read1): After #!, exit loop on eof.
6720
6721 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6722
6723 * gtkutil.h: Add declaration for xg_frame_cleared.
6724
6725 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
6726
6727 * gtkutil.c (struct xg_last_sb_pos): New structure.
6728 (handle_fixed_child): New function.
6729 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
6730 and force a redraw on them.
6731 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
6732 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
6733 so we can avoid unneeded redraws.
6734 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
6735 and force a redraw on the scroll bar.
6736 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
6737 if xg_last_sb_pos shows the positions are up to date.
6738 (xg_frame_cleared): New function.
6739
6740 2003-03-13 Kenichi Handa <handa@m17n.org>
6741
6742 * coding.c (Fdetect_coding_region): Fix docstring.
6743 (Fdetect_coding_string): Fix docstring.
6744
6745 2003-03-13 Andreas Schwab <schwab@suse.de>
6746
6747 * gtkutil.c: Add prototype for create_menus.
6748
6749 * data.c (long_to_cons): Fix type of top.
6750
6751 * xselect.c (selection_data_to_lisp_data): Use int instead of
6752 long for an integer of size 4.
6753
6754 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
6755 (xg_tool_bar_help_callback): Likewise.
6756
6757 2003-03-12 Andreas Schwab <schwab@suse.de>
6758
6759 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
6760
6761 2003-03-12 Kim F. Storm <storm@cua.dk>
6762
6763 The following changes consolidate the fringe handling from
6764 xterm.c, w32term.c, and macterm.c into xdisp.c.
6765
6766 * xdisp.c: Consolidate fringe handling code here.
6767 (left_bits, right_bits, continued_bits, continuation_bits)
6768 (ov_bits, zv_bits): Define fringe bitmaps.
6769 (fringe_bitmaps): New array holding fringe bitmaps.
6770 (draw_fringe_bitmap): Draw a specific bitmap; call display
6771 specific drawing routine via rif->draw_fringe_bitmap.
6772 (draw_row_fringe_bitmaps): Generic replacement for
6773 x_draw_row_fringe_bitmaps; all callers changed.
6774 (compute_fringe_widths): Generic replacement for
6775 x_compute_fringe_widths; all callers changed.
6776
6777 * dispextern.h (enum fringe_bitmap_type): Define here.
6778 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
6779 (fringe_bitmaps): Declare extern.
6780 (struct redisplay_interface): New member draw_fringe_bitmap.
6781 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
6782
6783 * xterm.c: Remove generic fringe code.
6784 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6785 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6786
6787 * w32term.c: Remove generic fringe code.
6788 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
6789 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
6790
6791 * macterm.c: Remove generic fringe code.
6792 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
6793 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
6794
6795 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
6796
6797 * print.c (Fprin1_to_string): Return unibyte string if possible.
6798
6799 2003-03-09 David Kastrup <dak@gnu.org>
6800
6801 * process.c (read_process_output): We have allocated enough space
6802 for readmax and carryover, so actually use the alloted space.
6803
6804 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6805
6806 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
6807 toolkit scrollbar click.
6808
6809 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
6810 for USE_GTK.
6811 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
6812 also.
6813 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
6814 scrollbar and control is pressed, call x_scroll_bar_handle_click.
6815
6816 * gtkutil.h: Declare xg_get_scroll_id_for_window.
6817
6818 * gtkutil.c (xg_get_scroll_id_for_window): New function.
6819 (xg_tool_bar_item_expose_callback): New function.
6820 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
6821 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
6822 on the tool bar widget.
6823 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
6824 to expose on the tool bar item widgets.
6825
6826 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6827
6828 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
6829 struct image* when deciding to update (struct image* may have been
6830 deleted from the image cache).
6831
6832 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
6833 the event isn't for a frame (i.e. for dialogs).
6834
6835 2003-03-07 Kenichi Handa <handa@m17n.org>
6836
6837 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
6838 composition components reaches the limit, terminate composing.
6839 (COMPOSITION_OK): New macro.
6840 (detect_coding_iso2022): Use it if an escape sequence for
6841 composition is found.
6842 (coding_restore_composition): Adjust the number of composition
6843 components if it is not sane.
6844
6845 2003-03-06 Juanma Barranquero <lektu@terra.es>
6846
6847 * w32term.h (struct w32_display_info): Add xrdb member to support
6848 passing resources via -xrm on Windows.
6849
6850 * w32term.c (w32_make_rdb): New function.
6851 (w32_term_init): Use it to initialize xrdb member of w32_display_info
6852 struct. Delete leftover code.
6853
6854 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
6855 for resources passed on the command line.
6856
6857 * w32reg.c (w32_get_rdb_resource): New function.
6858 (x_get_string_resource): Use it, so resources passed with -xrm
6859 supercede the ones in the registry.
6860
6861 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6862
6863 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
6864 instead of x_top_window_to_frame.
6865
6866 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6867
6868 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
6869 when restarting Emacs.
6870
6871 2003-03-03 Richard M. Stallman <rms@gnu.org>
6872
6873 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
6874 to run kill-buffer-query-functions.
6875 (Qkill_buffer_query_functions): New var.
6876 (syms_of_buffer): Init and staticpro it.
6877
6878 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6879
6880 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
6881
6882 2003-02-25 Kim F. Storm <storm@cua.dk>
6883
6884 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
6885 If centering point failed to make whole line visible and vscroll
6886 is non-zero, disable vscroll and try centering point again.
6887
6888 * lread.c (read1): Accept `single space' syntax like (? x).
6889
6890 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6891
6892 * keyboard.c (cancel_hourglass_unwind): Surround with
6893 #ifdef HAVE_X_WINDOWS
6894
6895 2003-02-25 Kenichi Handa <handa@m17n.org>
6896
6897 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
6898 process only when "subprocesses" is defined.
6899
6900 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
6901
6902 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
6903
6904 2003-02-24 Juanma Barranquero <lektu@terra.es>
6905
6906 * callint.c (fix_command): Declare as static void and move before
6907 Fcall_interactively.
6908
6909 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
6910 (syms_of_xdisp): Don't initialize Qwhen.
6911
6912 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6913
6914 * keyboard.c (cancel_hourglass_unwind): New function.
6915 (command_loop_1): Cancel hourglass with unwind-protect.
6916
6917 2003-02-23 Richard M. Stallman <rms@gnu.org>
6918
6919 * callint.c (fix_command): New subroutine, from Fcall_interactively.
6920 Detect (when ... (region-beginning)) etc.
6921 (Fcall_interactively): Call fix_command.
6922 (Qif, Qwhen): New variables.
6923 (syms_of_callint): Init and staticpro them.
6924
6925 * regex.c (print_partial_compiled_pattern): Output to stderr.
6926
6927 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6928
6929 * dired.c (directory_files_internal): Don't expand directory.
6930 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
6931 instead. From Lars Hansen <larsh@math.ku.dk>.
6932
6933 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
6934
6935 * fns.c (string_to_multibyte): Remove unused var i.
6936 (Flanginfo): Fix int/Lisp_Object mixup.
6937 (void_call2): New fun.
6938 (Fmap_char_table): Use it in place of call2.
6939
6940 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
6941
6942 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
6943
6944 * keymap.c (copy_keymap_1): Make it static.
6945
6946 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
6947
6948 2003-02-22 David Ponce <david@dponce.com>
6949
6950 * lread.c (Fload): Don't check STRING_MULTIBYTE.
6951
6952 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6953
6954 * process.h: Removed subtty field from struct Lisp_Process.
6955
6956 * process.c (create_process): Remove setting of subtty.
6957 (emacs_get_tty_pgrp): New function.
6958 (Fprocess_running_child_p, process_send_signal):
6959 Call emacs_get_tty_pgrp instead of ioctl.
6960 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
6961
6962 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
6963
6964 * keymap.c (Fdefine_key): Doc fix.
6965
6966 2003-02-21 Juanma Barranquero <lektu@terra.es>
6967
6968 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
6969
6970 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
6971 POLLING_PROBLEM_IN_SELECT.
6972
6973 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
6974 Delete #undef of POLLING_PROBLEM_IN_SELECT.
6975
6976 * s/hpux10-20.h: New file.
6977
6978 * process.c (wait_reading_process_input):
6979 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
6980
6981 2003-02-20 Kenichi Handa <handa@m17n.org>
6982
6983 * fontset.c (check_fontset_name): If NAME is nil, return the
6984 default fontset.
6985 (override_font_info): New function.
6986 (Fset_fontset_font): Document that NAME nil means the default fontset.
6987 (Ffontset_info): If FONTSET is not the default fontset, merge
6988 FONTSET onto the copy of the default fontset, and work on that
6989 copy. Document that NAME nil means the default fontset.
6990 (Ffontset_font): Document that NAME nil means the default fontset.
6991
6992 * process.c (setup_process_coding_systems): If the process's
6993 in/out descriptor is -1, do nothing.
6994
6995 2003-02-19 Andreas Schwab <schwab@suse.de>
6996
6997 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
6998 Add prototypes.
6999
7000 2003-02-19 Kenichi Handa <handa@m17n.org>
7001
7002 * xfaces.c (try_alternative_families): Try all scalable fonts if
7003 Vscalable_fonts_allowed is not Qt.
7004
7005 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7006
7007 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7008
7009 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7010
7011 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7012 names.
7013
7014 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
7015 (sorted_font_list): Move allocation of struct font_name to
7016 x_face_list_fonts.
7017 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7018 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7019
7020 2003-02-18 Kim F. Storm <storm@cua.dk>
7021
7022 * lread.c (read1): Fix last change.
7023 "`" is not always special. Allow "?" after a character constant.
7024
7025 2003-02-18 Andrew Choi <akochoi@shaw.ca>
7026
7027 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7028
7029 2003-02-18 Andreas Schwab <schwab@suse.de>
7030
7031 * window.c (window_scroll_pixel_based): Move outside a
7032 multi-glyph character before setting new window start.
7033
7034 * xdisp.c (in_display_vector_p): New function.
7035 * dispextern.h (in_display_vector_p): Declare.
7036
7037 2003-02-18 Kim F. Storm <storm@cua.dk>
7038
7039 * lread.c (read1): Fix and relax read syntax.
7040 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7041 Only recognize "," after dotted-pair dot if inside backquote.
7042 Never include "`" or "," (inside backquote) in a symbol.
7043 Allow dotted-pair dot after a character constant.
7044 Allow "`" and "," (inside backquote) after a character constant.
7045
7046 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7047
7048 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7049 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7050 icons. Set name of tool bar to emacs-toolbar.
7051 (update_frame_tool_bar): Connect expose event to
7052 xg_tool_bar_expose_callback.
7053
7054 2003-02-17 Richard M. Stallman <rms@gnu.org>
7055
7056 * keyboard.c (this_command_key_count_reset): New variable.
7057 Initiatize to 0 where this_command_key_count is set.
7058 (read_char): Save and restore this_command_key_count_reset
7059 around input method code.
7060 (read_char): If this_command_key_count_reset, echo reread commands.
7061 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7062
7063 2003-02-17 Kenichi Handa <handa@m17n.org>
7064
7065 * fns.c (string_to_multibyte): Always return a multibyte string.
7066
7067 2003-02-16 Jason Rumney <jasonr@gnu.org>
7068
7069 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7070 Negative max_fonts parameter means list all.
7071
7072 2003-02-14 Dave Love <fx@gnu.org>
7073
7074 * fns.c (Flanginfo): Doc fix.
7075
7076 2003-02-13 Kim F. Storm <storm@cua.dk>
7077
7078 * lread.c (read_escape): Interpret \s as a SPACE character, except
7079 for \s-X in a character constant which still is the super modifier.
7080 (read1): Signal an `invalid read syntax' error if a character
7081 constant is immediately followed by a digit or symbol character.
7082
7083 * search.c (Fmatch_data): Doc fix. Explicitly state that
7084 match-data is undefined if last search failed.
7085
7086 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7087 All uses changed.
7088
7089 2003-02-12 Juanma Barranquero <lektu@terra.es>
7090
7091 * eval.c (Fdefmacro): Fix typo.
7092
7093 2003-02-12 Kim F. Storm <storm@cua.dk>
7094
7095 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7096 macro is a string, convert meta modifiers in string when copying
7097 the string into a vector.
7098
7099 2003-02-11 Kim F. Storm <storm@cua.dk>
7100
7101 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7102
7103 2003-02-11 Kenichi Handa <handa@m17n.org>
7104
7105 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7106
7107 2003-02-10 Kim F. Storm <storm@cua.dk>
7108
7109 * process.c: Doc fixes.
7110 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7111
7112 2003-02-10 Kenichi Handa <handa@m17n.org>
7113
7114 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7115
7116 * process.c (QCfilter_multibyte): New variable.
7117 (setup_process_coding_systems): New function.
7118 (Fset_process_buffer, Fset_process_filter):
7119 Call setup_process_coding_systems.
7120 (Fstart_process): Initialize the member `filter_multibyte' of
7121 struct Lisp_Process.
7122 (create_process): Call setup_process_coding_systems.
7123 (Fmake_network_process): New keyward `:filter-multibyte'.
7124 Initialize the member `filter_multibyte' of struct Lisp_Process.
7125 Call setup_process_coding_systems.
7126 (server_accept_connection): Call setup_process_coding_systems.
7127 (read_process_output): If the process has a filter, decide the
7128 multibyteness of a string to given to the filter by
7129 `filter_multibyte' member of the process. If the process doesn't
7130 have a filter and the result of conversion is unibyte, use
7131 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7132 multibyte form.
7133 (Fset_process_coding_system): Call setup_process_coding_systems.
7134 (Fset_process_filter_multibyte): New function.
7135 (Fprocess_filter_multibyte_p): New function.
7136 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7137 Defsubr Sset_process_filter_multibyte and
7138 Sprocess_filter_multibyte_p.
7139
7140 * process.h (struct Lisp_Process): New member filter_multibyte.
7141
7142 * lisp.h (setup_process_coding_systems): Add prototype.
7143
7144 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7145 process, update coding systems for the process.
7146
7147 2003-02-09 Kenichi Handa <handa@m17n.org>
7148
7149 * fns.c (string_to_multibyte): New function.
7150 (Fstring_to_multibyte): New function.
7151 (syms_of_fns): Defsubr it.
7152
7153 2003-02-08 Andreas Schwab <schwab@suse.de>
7154
7155 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7156 instead of the substitution.
7157
7158 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7159
7160 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7161
7162 * xmenu.c (menu_position_func): Adjust menu popup position so that
7163 the menu is fully visible.
7164
7165 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7166
7167 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
7168 (x_make_frame_invisible, x_wm_set_icon_position):
7169 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
7170
7171 * xfns.c (x_set_name, x_set_title): Ditto.
7172
7173 2003-02-04 Richard M. Stallman <rms@gnu.org>
7174
7175 * keyboard.c (echo_now): Update before_command_echo_length.
7176 (Freset_this_command_lengths): Reset this_command_key_count etc.
7177 immediately rather than arranging to do it later.
7178 (before_command_key_count_1, before_command_echo_length_1)
7179 (before_command_restore_flag): Vars deleted.
7180 (add_command_key): Don't handle before_command_restore_flag.
7181 (read_char, record_menu_key): Don't update before_command_key_count or
7182 before_command_echo_length.
7183 (read_char): Don't handle before_command_restore_flag.
7184
7185 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7186 in direct-output clauses if it wouldn't be called in the ordinary case.
7187
7188 2003-02-04 Kim F. Storm <storm@cua.dk>
7189
7190 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7191
7192 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7193
7194 * gtkutil.c (remove_from_container): Copying list is not needed.
7195 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7196 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7197 on list returned from gtk_container_get_children to avoid memory leak.
7198
7199 2003-02-01 Jason Rumney <jasonr@gnu.org>
7200
7201 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7202 local malloc.
7203 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7204 definitions in xpm.h.
7205 (init_xpm_functions): New function.
7206 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
7207 (init_external_image_libraries): Try to load libXpm.dll.
7208
7209 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7210 timestamp.
7211
7212 2003-01-31 Dave Love <fx@gnu.org>
7213
7214 * syntax.c (Fskip_chars_forward)
7215 (open-paren-in-column-0-is-defun-start): Doc fix.
7216
7217 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7218
7219 * fileio.c: Support // at start of name for Cygwin (just added proper
7220 preprocessor tests).
7221
7222 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7223
7224 * Makefile.in: Use @EXEEXT@ for Cygwin.
7225
7226 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7227
7228 * s/cygwin.h: Added for Cygwin port.
7229
7230 2003-01-31 Juanma Barranquero <lektu@terra.es>
7231
7232 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7233 when including gif_lib.h.
7234 (init_gif_functions, init_tiff_functions): New functions.
7235 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7236 Windows. Disable color table lookups. Call library functions
7237 through pointers determined at runtime.
7238 (init_external_image_libraries): Try to load libungif.dll and
7239 libtiff.dll.
7240
7241 2003-01-31 Kenichi Handa <handa@m17n.org>
7242
7243 * xdisp.c (SKIP_GLYPHS): New macro.
7244 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
7245
7246 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7247
7248 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
7249
7250 2003-01-30 Dave Love <fx@gnu.org>
7251
7252 * alloc.c (Vgc_elapsed, gcs_done): New variables.
7253 (Fgarbage_collect): Use them.
7254 (init_alloc, syms_of_alloc): Set them up.
7255
7256 2003-01-30 Juanma Barranquero <lektu@terra.es>
7257
7258 * w32fns.c (init_external_image_libraries): Add missing operator.
7259
7260 2003-01-29 Jason Rumney <jasonr@gnu.org>
7261
7262 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
7263 an alternative name for jpeg.dll.
7264
7265 2003-01-29 Kenichi Handa <handa@m17n.org>
7266
7267 * xdisp.c (set_cursor_from_row): Pay attention to string display
7268 properties.
7269
7270 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
7271
7272 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
7273 <escape>.
7274 (keycode_to_xkeysym_table): Reformat and add more comments.
7275 (XTread_socket): Drop special case for backspace.
7276
7277 2003-01-28 Andrew Choi <akochoi@shaw.ca>
7278
7279 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
7280 values in old-style RGB specs.
7281
7282 2003-01-27 Juanma Barranquero <lektu@terra.es>
7283
7284 * w32fns.c (init_external_image_libraries): Try alternate names for the
7285 jpeg dll.
7286
7287 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7288
7289 * gtkutil.c (create_dialog, xg_separator_p)
7290 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
7291 before calling strcmp or strlen.
7292
7293 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7294
7295 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
7296 and handle image load failure.
7297
7298 2003-01-26 Jason Rumney <jasonr@gnu.org>
7299
7300 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
7301 New functions.
7302 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
7303 Disable color table lookups. Call jpeg library functions
7304 through pointers determined at runtime.
7305 (init_external_image_libraries): Try to load jpeg.dll.
7306
7307 2003-01-25 Richard M. Stallman <rms@gnu.org>
7308
7309 * lisp.h: Declare format2 instead of format1.
7310
7311 * fileio.c (barf_or_query_if_file_exists):
7312 Call format2 instead of format1.
7313
7314 * editfns.c (format2): New function, replaces format1
7315 but takes exactly two Lisp Objects as format args.
7316
7317 * buffer.c (Fkill_buffer): Call format2 instead of format1.
7318
7319 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7320
7321 * xterm.h: Change to return value of x_dispatch_event to int.
7322
7323 * xterm.c (x_filter_event): New function.
7324 (event_handler_gdk, XTread_socket): Call x_filter_event.
7325 (x_dispatch_event): Change to return value of finish.
7326 (event_handler_gdk): Use return value from x_dispatch_event.
7327
7328 * xfns.c (x_window): Call create_frame_xic for GTK version to
7329 initialize input methods.
7330
7331 * gtkutil.h: Add (void) prototypes.
7332
7333 * gtkutil.c (create_menus): Remove code that puts the help menu to
7334 the right.
7335
7336 2003-01-25 Jason Rumney <jasonr@gnu.org>
7337
7338 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
7339 [HAVE_PNG]: Sync with xfns.c version.
7340 (png_load): Adjust colors for Windows. Use Windows
7341 bitmaps. Disable color table lookups.
7342 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
7343 (init_png_functions): New function.
7344 (png_read_from_memory, png_load): Call png library functions
7345 through pointers determined at runtime.
7346 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
7347 (init_external_image_libraries): New function.
7348 (init_xfns): Call it.
7349
7350 2003-01-24 Andreas Schwab <schwab@suse.de>
7351
7352 * minibuf.c (Fminibuffer_message): Verify type of parameter.
7353
7354 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7355
7356 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
7357 of static initializer.
7358
7359 2003-01-24 Dave Love <fx@gnu.org>
7360
7361 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
7362 architectures.
7363
7364 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
7365 Use __alignof__.
7366
7367 2003-01-24 Kenichi Handa <handa@m17n.org>
7368
7369 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
7370 It it is nonzero, don't pretend that an invisible area doesn't exist.
7371 (command_loop_1): Call adjust_point_for_property with proper
7372 second arg.
7373
7374 2003-01-22 Jason Rumney <jasonr@gnu.org>
7375
7376 Sync changes with xterm.c and xfns.c.
7377
7378 * w32term.c (x_draw_glyph_string_foreground)
7379 (x_draw_composite_glyph_string_foreground): Implement overstriking.
7380
7381 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
7382 phys_cursor's hpos is overwritten. This is still not completely
7383 correct, as it doesn't really make sense to use hpos at all to
7384 get the cursor glyph (as that is relative to the width of the
7385 characters on the line, which may have changed during the update).
7386
7387 * w32term.c (notice_overwritten_cursor): Handle the special case
7388 of the cursor being in the first blank non-text line at the
7389 end of a window.
7390
7391 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
7392 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
7393 Compute from the x position returned by x_draw_glyphs.
7394
7395 (x_display_and_set_cursor): Don't set phys_cursor_width here,
7396 except for NO_CURSOR and system caret, to make phys_cursor_width
7397 contain what its name suggests.
7398 (notice_overwritten_cursor): Consider the cursor image erased if
7399 the output area intersects the cursor image in y-direction.
7400
7401 * w32term.c (note_mode_line_or_margin_highlight): Rename from
7402 note_mode_line_highlight and extend.
7403
7404 * w32term.c (last_window): New variable.
7405 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
7406 (note_mouse_movement): Remove reimplemented code in #if 0.
7407
7408 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
7409 not update_mode_lines, and always set it to 1.
7410
7411 2003-01-21 Jason Rumney <jasonr@gnu.org>
7412
7413 * w32fns.c (IDC_HAND): Define it if system headers don't.
7414
7415 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
7416
7417 * w32term.h (struct w32_output): New member hand_cursor.
7418 (WM_EMACS_SETCURSOR): New message definition.
7419
7420 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
7421 function w32_define_cursor.
7422 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
7423 position, change member name output_data.x to output_data.w32 and
7424 add function w32_define_cursor.
7425 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
7426 and change member name output_data.x to output_data.w32.
7427 (w32_initialize_display_info):
7428 Setup dpyinfo->vertical_scroll_bar_cursor.
7429
7430 * w32fns.c (Vx_hand_shape): New variable.
7431 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
7432 WM_EMACS_SETCURSOR.
7433 (x-create-frame): Setup Cursor types.
7434
7435 2003-01-21 David Ponce <david@dponce.com>
7436
7437 * w32term.c (w32_encode_char): For DIM=1 charset, set
7438 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
7439 x_encode_char change by Kenichi Handa <handa@m17n.org> on
7440 2002-09-30.)
7441 (w32_draw_relief_rect): Declare all args.
7442 (w32_define_cursor): New.
7443
7444 * w32fns.c (w32_load_cursor): New function.
7445 (w32_init_class): Use it.
7446 (x_put_x_image): Declare all args.
7447
7448 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7449
7450 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
7451
7452 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7453
7454 * gtkutil.c: Must include stdio.h before termhooks.h
7455
7456 2003-01-21 Dave Love <fx@gnu.org>
7457
7458 * alloc.c (Fgc_status): Print zombie list.
7459 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7460 Fix assignment of zombies.
7461 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
7462 Don't take car of non-cons.
7463
7464 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7465
7466 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
7467
7468 2003-01-20 David Ponce <david@dponce.com>
7469
7470 * w32menu.c (digest_single_submenu): Declare all args.
7471
7472 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
7473 changes in xmenu.c:
7474
7475 (parse_single_submenu): Use individual keymap's prompt
7476 string as pane name, if there is one.
7477 (set_frame_menubar): Save menu_items_n_panes from each call to
7478 parse_single_submenu and use it when calling digest_single_submenu.
7479
7480 2003-01-20 Steven Tamm <steventamm@mac.com>
7481
7482 * macterm.c (XTread_socket): Checks for valid, visible window
7483 before sending a scroll-wheel event.
7484
7485 2003-01-20 Richard M. Stallman <rms@gnu.org>
7486
7487 * xdisp.c (redisplay_window): If mini window's buffer is not
7488 a minibuffer, then redisplay it like other windows.
7489
7490 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7491
7492 * gtkutil.c (xg_create_frame_widgets): Check if there is an
7493 external tool bar before setting tool bar height.
7494
7495 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7496
7497 * xterm.c (handle_one_xevent): Surround popup_activated
7498 with #ifdef:s for non-toolkit version.
7499
7500 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
7501 (gtkutil.o): New file.
7502 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
7503 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
7504
7505 * gtkutil.c: New file for GTK version.
7506
7507 * gtkutil.h: New file for GTK version.
7508
7509 * xterm.h: Add xt_or_gtk_widget.
7510 Include gtk files for USE_GTK.
7511 (struct x_output): Add toolbar_height.
7512 (struct x_output): Add GTK widgets and Gdk size_hints.
7513 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
7514 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
7515 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
7516
7517 * xterm.c: Include gtkutil.h for USE_GTK.
7518 Declare extern void free_frame_menubar for USE_GTK.
7519 (note_mouse_highlight): Check popup_activated for USE_GTK.
7520 (xt_action_hook): Don't compile if USE_GTK.
7521 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
7522 (xg_scroll_callback): New function.
7523 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
7524 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
7525 for USE_GTK.
7526 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
7527 xg_show_scroll_bar for USE_GTK.
7528 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
7529 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
7530 (event_handler_gdk): New function for USE_GTK.
7531 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
7532 (handle_one_xevent): Make sure widget is mapped before
7533 calling x_real_positions for USE_GTK.
7534 (XTread_socket): Add GTK event loop for USE_GTK.
7535 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
7536 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
7537 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
7538 (x_iconify_frame): Add code for USE_GTK.
7539 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
7540 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
7541 is in gtkutil.c.
7542 (x_term_init): Add initialization for GTK.
7543 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
7544
7545 * xmenu.c: Include gtkutil.h for USE_GTK.
7546 (Fx_popup_menu): Use current position if x and y is NIL.
7547 (single_menu_item, single_menu_item, Fx_popup_dialog):
7548 Check for USE_GTK.
7549 (popup_widget_loop): New function for USE_GTK.
7550 (x_activate_menubar): Add code for USE_GTK.
7551 (popup_activate_callback, popup_deactivate_callback)
7552 (menu_highlight_callback, menubar_selection_callback):
7553 Add USE_GTK versions.
7554 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
7555 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
7556 (free_frame_menubar): Only compile if not USE_GTK. GTK version
7557 is in gtkutil.c.
7558 (popup_selection_callback): New version for USE_GTK.
7559 (create_and_show_popup_menu): New fuction, one USE_GTK version and
7560 one USE_X_TOOLKIT version.
7561 (xmenu_show): Call create_and_show_popup_menu.
7562 (dialog_selection_callback): New version for USE_GTK.
7563 (create_and_show_dialog): New fuction, one USE_GTK version and
7564 one USE_X_TOOLKIT version.
7565 (xdialog_show): Call create_and_show_dialog.
7566
7567 * xfns.c: Include gtkutil for USE_GTK.
7568 (x_window_to_frame, x_any_window_to_frame)
7569 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
7570 (x_top_window_to_frame): Add code for USE_GTK.
7571 (x_set_background_color): Call xg_set_background_color for GTK.
7572 (x_set_menu_bar_lines): Check for USE_GTK.
7573 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
7574 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
7575 (x_window): Call xg_create_frame_widgets for USE_GTK.
7576 (Fx_create_frame): Check for USE_GTK
7577 (Fx_file_dialog): New implementation for USE_GTK.
7578
7579 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
7580 (update_menu_bar): Add check for USE_GTK.
7581 (update_tool_bar): Add check for USE_GTK and external tool bar.
7582 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
7583 (redisplay_internal): Add check for USE_GTK and popup_activated.
7584 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
7585 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
7586 (display_menu_bar): Add check for USE_GTK
7587
7588 * lisp.h: Declare Vx_resource_name extern.
7589
7590 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
7591 for USE_GTK.
7592 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
7593
7594 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
7595 (FRAME_EXTERNAL_TOOL_BAR): New macro.
7596 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
7597
7598 * fileio.c (Fread_file_name): Add check for USE_GTK.
7599
7600 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
7601 Add check for USE_GTK.
7602
7603 * config.in: Added HAVE_GTK
7604
7605 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
7606
7607 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
7608
7609 * charset.h (Funibyte_char_to_multibyte): Export.
7610
7611 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7612
7613 * xmenu.c (mouse_position_for_popup): New function.
7614 (Fx_popup_menu): Call mouse_position_for_popup for X and
7615 mouse_position_hook for others.
7616
7617 2003-01-17 Kim F. Storm <storm@cua.dk>
7618
7619 * editfns.c (Finsert): Mention `string-make-multibyte' and
7620 `string-as-multibyte' in doc string.
7621
7622 2003-01-17 Kenichi Handa <handa@m17n.org>
7623
7624 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
7625
7626 * editfns.c (Fformat): Convert an unibyte char argument that is
7627 formatted by "%c" to multibyte if the total result must be a
7628 multibyte string.
7629
7630 2003-01-16 Kim F. Storm <storm@cua.dk>
7631
7632 * process.c (set-process-filter): Document unibyte/multibyte-ness
7633 of string argument.
7634
7635 2003-01-16 Kenichi Handa <handa@m17n.org>
7636
7637 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
7638
7639 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
7640 (re_search_2): Likewise.
7641
7642 2003-01-15 Kenichi Handa <handa@m17n.org>
7643
7644 * xdisp.c (message_dolog): Fix bug of the case that *Message*
7645 buffer is unibyte.
7646
7647 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
7648
7649 * fns.c (Fsubstring): Clarify doc string.
7650
7651 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
7652 (Fprevious_char_property_change)
7653 (Fnext_single_char_property_change)
7654 (Fprevious_single_char_property_change, Fnext_property_change)
7655 (Fnext_single_property_change, Fprevious_property_change)
7656 (Fprevious_single_property_change, Fadd_text_properties)
7657 (Fput_text_property, Fset_text_properties)
7658 (Fremove_text_properties, Fremove_list_of_text_properties)
7659 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
7660
7661 2003-01-14 Kim F. Storm <storm@cua.dk>
7662
7663 * process.h (struct Lisp_Process): New member plist replaces old
7664 member private_vars. All uses changed.
7665
7666 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
7667 (QCplist): Rename from QCvars. Change all uses.
7668 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
7669 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
7670 (syms_of_process): Intern, staticpro, defsubr these.
7671 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
7672
7673 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
7674
7675 * m/delta.h: Remove (obsolete).
7676
7677 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
7678
7679 * fileio.c (Fdelete_directory, Fdelete_file): Document the
7680 behaviour in front of symlinks.
7681 (Fdelete_file): Raise an error on directories.
7682
7683 2003-01-13 Dave Love <fx@gnu.org>
7684
7685 * fns.c (Freverse): Use QUIT.
7686
7687 2003-01-13 Richard M. Stallman <rms@gnu.org>
7688
7689 * minibuf.c (minibuffer_completion_contents):
7690 Error if point is inside prompt.
7691
7692 * keyboard.c (command_loop_1): Don't redisplay directly
7693 if there's a post-command-hook.
7694
7695 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
7696 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
7697
7698 2003-01-12 Kim F. Storm <storm@cua.dk>
7699
7700 * process.h (struct Lisp_Process): New member private_vars.
7701
7702 * process.c (QCvars): New variable.
7703 (syms_of_process): Intern and staticpro it.
7704 (Fset_process_contact): Removed function.
7705 (Fprocess_variable, Fset_process_variable): New functions.
7706 (syms_of_process): Defsubr them.
7707 (Fstart_process): Initialize private_vars plist to nil.
7708 (Fmake_network_process): New arg :vars to setup the private
7709 variables for new network process.
7710 (server_accept_connection): Copy server's private variables to
7711 client process.
7712
7713 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
7714 crashes). Code rewritten and simplified. Now directly aligns the
7715 pointer and recalculates pure_bytes_used, rather than aligning the
7716 size and adjusting the pointer.
7717
7718 2003-01-11 Kim F. Storm <storm@cua.dk>
7719
7720 * process.c (Fset_process_contact): New function.
7721 (syms_of_process): defsubr it.
7722 (make-network-process): Update doc.
7723
7724 2003-01-10 Andreas Schwab <schwab@suse.de>
7725
7726 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
7727 Reported by Berthold Gunreben <b.gunreben@web.de>.
7728
7729 2003-01-10 Dave Love <fx@gnu.org>
7730
7731 * composite.c (syms_of_composite): Make composition_hash_table weak.
7732
7733 2003-01-09 Kim F. Storm <storm@cua.dk>
7734
7735 * process.c (Fmake_network_process): Convert new port number
7736 to host byte order for `:service t' case. From Mario Lang.
7737
7738 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7739
7740 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
7741 instead of XtAppProcessEvent.
7742
7743 * xterm.c (handle_one_xevent): New function.
7744 (x_dispatch_event): New function.
7745 (XTread_socket): Call handle_one_xevent.
7746
7747 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
7748
7749 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
7750 call XQueryPointer to get coordinates.
7751 (popup_get_selection): Do not set popup_activated_flag to zero,
7752 let popup_deactivate_callback do that. Needed for Motif.
7753 Call x_dispatch_event instead of XtDispatchEvent.
7754 (xmenu_show): Calculate root coordinate from frame top/left position.
7755
7756 2003-01-08 Kim F. Storm <storm@cua.dk>
7757
7758 * process.c (server_accept_connection): Fix recording of new
7759 connection's local address in :local property of contact info.
7760 (Fmake_network_process): Record local network address for new
7761 client processes in :local property of contact info.
7762 (format-network-address): Add arg OMIT-PORT. Change callers.
7763
7764 2003-01-07 Dave Love <fx@gnu.org>
7765
7766 * Makefile.in (fns.o): Depend on coding.h.
7767
7768 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
7769
7770 * minibuf.c (Fread_variable): Doc fix.
7771
7772 * eval.c (Fuser_variable_p): Doc change. For custom variables,
7773 use the same test as for custom-variable-p.
7774
7775 2003-01-05 Richard M. Stallman <rms@gnu.org>
7776
7777 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
7778 Count LAST_LINE_MISFIT in scroll margin for end of window.
7779 Move label too_near_end before setting SCROLL_MARGIN_POS.
7780 Set LAST_LINE_MISFIT before jumping there.
7781
7782 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
7783 scroll_conservatively case. If scrolling that much doesn't change
7784 STARTP, move it down one line.
7785
7786 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
7787 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
7788
7789 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
7790 selected frame.
7791
7792 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
7793 (syms_of_keymap): staticpro them.
7794 (Fapropos_internal): Initialize them and clear them out.
7795 Don't GCPRO them.
7796
7797 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
7798 Doc fixes.
7799
7800 * lisp.h: New misc type Lisp_Save_Value.
7801 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
7802 (XSAVE_VALUE): New macro.
7803 (struct Lisp_Save_Value): New data type.
7804 (union Lisp_Misc): Add u_save_value alternative.
7805 (make_save_value): Declared.
7806
7807 * alloc.c (make_save_value): New function.
7808
7809 * xterm.c (x_catch_errors): Save dpy using make_save_value.
7810 (x_catch_errors_unwind): Call XSync.
7811
7812 2003-01-01 Richard M. Stallman <rms@gnu.org>
7813
7814 * window.c (window_scroll_pixel_based): Partially undo last change.
7815
7816 * keyboard.c (command_loop_1): Call adjust_point_for_property
7817 in direct action cases for Qforward_char and Qbackward_char.
7818 Set already_adjusted so it won't be done twice.
7819
7820 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
7821
7822 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
7823 type definition of size_t.
7824
7825 2003-01-02 Steven Tamm <steventamm@mac.com>
7826
7827 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
7828 distinguish Carbon GUI builds from X11 builds on darwin.
7829
7830 2002-12-30 Steven Tamm <steventamm@mac.com>
7831
7832 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
7833 to default to t.
7834
7835 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
7836
7837 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
7838
7839 2002-12-28 Steven Tamm <steventamm@mac.com>
7840
7841 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
7842 allow building in a different directory than source. Uses some
7843 GNU Make extensions, but there is no other make on Mac OS X.
7844
7845 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
7846
7847 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
7848 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
7849 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
7850 (Fstring_to_number): Mention the returned value in the doc strings.
7851
7852 2002-12-23 Richard M. Stallman <rms@gnu.org>
7853
7854 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
7855 <scroll-down-aggressively>: Doc fix.
7856
7857 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
7858 string as pane name, if there is one.
7859 (set_frame_menubar): Save menu_items_n_panes from each call to
7860 parse_single_submenu and use it when calling digest_single_submenu.
7861
7862 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
7863 Don't try to make last line fully visible if it is past end of window.
7864
7865 2002-12-22 Steven Tamm <steventamm@mac.com>
7866
7867 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
7868 (mac_menu_show): Add support for hierarchical popup menus.
7869 (add_menu_item): Remove indentation support.
7870 (fill_submenu, fill_menu): Create hierarchical menus
7871 instead of using indentation.
7872
7873 2002-12-22 Richard M. Stallman <rms@gnu.org>
7874
7875 * xdisp.c (try_cursor_movement): Don't call try_window here.
7876 (redisplay_window): Never redisplay minibuffer when inactive.
7877
7878 * window.c (select_window_1): Undo 9/21 change.
7879
7880 2002-12-22 Steven Tamm <steventamm@mac.com>
7881
7882 * macterm.c (XTread_socket): Call KeyTranslate for control and
7883 meta to deal correctly shifted non-alpha characters, like C-S-5
7884 being treated like C-%. Does not look for shift key to deal
7885 with masking off control-key with mac-reverse-ctrl-meta.
7886
7887 2002-12-21 Richard M. Stallman <rms@gnu.org>
7888
7889 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
7890 If it is non-nil, run timers. Use an unwind-protect to requeue
7891 the events that were read ahead.
7892 (popup_get_selection_unwind): New subroutine.
7893 (popup_get_selection_queue): File-scope variable now holds that queue.
7894 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
7895 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
7896 Use an unwind-protect to pop down the dialog box.
7897 (xdialog_show_unwind): New subroutine implements that.
7898
7899 * xdisp.c (row_containing_pos): Change exit test using last_y.
7900 (try_window_id): Abort if row_containing_pos returns null.
7901
7902 * lread.c (load_error_handler): New function.
7903 (Fload): Handle errors in Fsubstitute_in_file_name.
7904 Don't expect Fsignal to return.
7905
7906 * eval.c: Errors and throws work right with interrupt blocking.
7907 (struct catchtag): New elt interrupt_input_blocked.
7908 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
7909 (internal_catch, Fcondition_case, internal_condition_case)
7910 (internal_condition_case_1, internal_condition_case_2): Save it.
7911 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
7912
7913 * editfns.c (Fformat): Add parens.
7914
7915 * dired.c (file_name_completion): Fix that change.
7916 Delete special quit-handling code; just use QUIT.
7917
7918 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
7919
7920 * dired.c (file_name_completion): Close directory on error
7921 just as in directory_files_internal.
7922
7923 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
7924
7925 * window.c (Fset_window_configuration): Set old_point to correct
7926 value when new_current_buffer == current_buffer.
7927
7928 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
7929
7930 Revisited my earlier fix for the following entry in etc/PROBLEMS:
7931 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
7932 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
7933
7934 These changes were in part based upon suggestions made by Peter
7935 'Luna' Runestig [peter@runestig.com].
7936
7937 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
7938 g_b_init_get_token_information, g_b_init_lookup_account_sid,
7939 g_b_init_get_sid_identifier_authority ): Add several static
7940 global variables.
7941
7942 * w32.c (globals_of_w32): New function. Used to initialize those
7943 global variables that must always be initialized on startup even
7944 when the global variable initialized is non zero. Its primary
7945 purpose at this time is to set the global variables
7946 g_b_init_is_windows_9x, g_b_init_open_process_token,
7947 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
7948 g_b_init_get_sid_identifier_authority to 0 on startup.
7949 Called from main.
7950
7951 * w32.c (is_windows_9x): Perform initialization only if
7952 g_b_init_is_windows_9x is equal to 0. On initialization set
7953 g_b_init_is_windows_9x equal to 1.
7954
7955 * w32.c (open_process_token): Perform initialization only if
7956 g_b_init_open_process_token is equal to 0. On initialization set
7957 g_b_init_open_process_token equal to 1.
7958
7959 * w32.c (get_token_information): Perform initialization only if
7960 g_b_init_get_token_information is equal to 0. On initialization
7961 set g_b_init_get_token_information equal to 1.
7962
7963 * w32.c (lookup_account_sid): Perform initialization only if
7964 g_b_init_lookup_account_sid is equal to 0. On initialization
7965 set g_b_init_lookup_account_sid equal to 1.
7966
7967 * w32.c (get_sid_identifier_authority): Perform initialization
7968 only if g_b_init_get_sid_identifier_authority is equal to 0.
7969 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
7970
7971 * w32fns.c (globals_of_w32fns): New function. Used to initialize
7972 those global variables that must always be initialized on startup
7973 even when the global variable initialized is non zero.
7974 Its primary purpose at this time is to initialize the global variable
7975 track_mouse_event_fn.
7976
7977 * w32fns.c (w32_wnd_proc): Remove initialization of
7978 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
7979
7980 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
7981
7982 * w32menu.c (globals_of_w32menu): New function. Used to
7983 initialize those global variables that must always be initialized
7984 on startup even when the global variable initialized is non zero.
7985 Its primary purpose at this time is to initialize the global
7986 variables get_menu_item_info and set_menu_item_info.
7987
7988 * w32menu.c (initialize_frame_menubar): Remove initialization of
7989 get_menu_item_info and set_menu_item_info.
7990
7991 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
7992
7993 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
7994 Declare them.
7995
7996 * emacs.c (main): Call globals_of_w32 prior to calling
7997 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
7998 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
7999 is defined.
8000
8001 * w32term.c (x_update_window_begin): Fix Windows API error
8002 detected by BoundsChecker. Test to determine if
8003 w32_system_caret_hwnd is NULL prior to attempting to use
8004 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
8005
8006 * w32term.c (x_update_window_end): Fix Windows API error
8007 detected by BoundsChecker. Test to determine if
8008 w32_system_caret_hwnd is NULL prior to attempting to use
8009 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
8010
8011 2002-12-17 Kenichi Handa <handa@m17n.org>
8012
8013 * coding.c (coding_system_require_warning): New variable.
8014 (syms_of_coding): DEFVAR it.
8015
8016 * coding.h (coding_system_require_warning): Extern it.
8017
8018 * fileio.c (choose_write_coding_system): Even if
8019 Vcoding_system_for_write is non-nil, if
8020 coding_system_require_warning is nonzero, call
8021 Vselect_safe_coding_system_function.
8022
8023 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
8024
8025 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8026 (lisp): Add font-core.
8027
8028 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
8029
8030 * textprop.c (text_read_only): New arg `propval'.
8031 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8032 (verify_interval_modification): Use text_read_only's new arg.
8033
8034 2002-12-13 Kenichi Handa <handa@m17n.org>
8035
8036 * coding.c (Funencodable_char_position): Set pend correctly.
8037
8038 2002-12-12 Jason Rumney <jasonr@gnu.org>
8039
8040 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8041 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8042 Be more careful about when help_events are generated.
8043
8044 2002-12-12 Steven Tamm <steventamm@mac.com>
8045
8046 * macterm.c (mac_check_for_quit_char): Correctly set the
8047 modifiers of the event to 0.
8048 * mac.c (sys_select): Duplicate rfds before calling select to
8049 ensure that rfds survive the while loop.
8050
8051 2002-12-11 Kim F. Storm <storm@cua.dk>
8052
8053 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8054 row_containing_pos returned NULL.
8055
8056 2002-12-10 Steven Tamm <steventamm@mac.com>
8057
8058 * mac.c (sys_read): Fix sys_read to not call select if IO is
8059 non-blocking.
8060 (sys_select): Fix sys_select to not use a timeout larger than
8061 the one given.
8062
8063 2002-12-10 Juanma Barranquero <lektu@terra.es>
8064
8065 * editfns.c (Fformat): Use alloca, not _alloca.
8066
8067 2002-12-09 Richard M. Stallman <rms@gnu.org>
8068
8069 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8070 as the last thing.
8071
8072 2002-12-09 Dave Love <fx@gnu.org>
8073
8074 * s/sol2-8.h: Removed. (Not necessary.)
8075
8076 2002-12-09 Matthew Swift <swift@alum.mit.edu>
8077
8078 * editfns.c (Fformat): Handle precision in string conversion
8079 specifiers like libc functions do (ie, print at most that many
8080 characters).
8081
8082 2002-12-08 Richard M. Stallman <rms@gnu.org>
8083
8084 * xdisp.c (row_containing_pos): Check more carefully
8085 whether charpos is really in the row before returning it.
8086
8087 2002-12-07 Steven Tamm <steventamm@mac.com>
8088
8089 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
8090
8091 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8092 each stack frame. This may change as it could be time consuming.
8093
8094 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8095 (init_quit_char_handler, mac_determine_quit_char_modifiers)
8096 (mac_initialize): Add code to check for pressing of quit_char
8097 in the OS event queue.
8098
8099 * mac.c (sys_select): Call mac_check_for_quit_char every second
8100 while blocking on select.
8101
8102 * mac.c (sys_read): Use sys_select to test for input first
8103 before calling read, to allow C-g to break.
8104
8105 2002-12-07 Richard M. Stallman <rms@gnu.org>
8106
8107 * minibuf.c (Fcompleting_read): Doc fix.
8108
8109 * lread.c (syms_of_lread) <load-history>: Doc fix.
8110
8111 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
8112
8113 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8114 autoload.
8115
8116 * data.c (Fdefalias): Record in load-history redefining an autoload.
8117
8118 * alloca.c: Undo ifdef change accidentally made on 12-04.
8119
8120 2002-12-06 Francesco Potorti` <pot@gnu.org>
8121
8122 * xfns.c (png_load): Avoid double gamma correction for PNG images.
8123
8124 2002-12-04 Richard M. Stallman <rms@gnu.org>
8125
8126 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
8127
8128 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
8129
8130 * alloca.c: Don't use #error.
8131
8132 2002-12-03 Dave Love <fx@gnu.org>
8133
8134 * buffer.c (Qucs_set_table_for_input): New.
8135 (Fget_buffer_create): Use it.
8136 (Qset_buffer_major_mode_hook): Deleted.
8137 (Fset_buffer_major_mode): Revert previous change.
8138 (init_buffer_once): Intern ucs-set-table-for-input.
8139 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8140 Add &Qucs_set_table_for_input.
8141
8142 2002-12-03 Andreas Schwab <schwab@suse.de>
8143
8144 * callint.c (Fcall_interactively): Use next_event only if less
8145 than key_count.
8146
8147 2002-12-02 Andrew Choi <akochoi@shaw.ca>
8148
8149 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8150 names to 255 characters.
8151
8152 * macterm.c (XTread_socket): If all frames have been collapsed,
8153 expand the first one before handling drag-and-drop events.
8154
8155 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8156 which is detected by autoconf.
8157
8158 2002-12-01 Steven Tamm <steventamm@mac.com>
8159
8160 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8161 offset in two hints table to allow prebinding to be redone and
8162 allow the executable to be stripped.
8163
8164 2002-11-29 Dave Love <fx@gnu.org>
8165
8166 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8167 already provided.
8168
8169 2002-11-29 Richard M. Stallman <rms@gnu.org>
8170
8171 * xdisp.c (start_display): Check more intelligently for
8172 whether the line is continued.
8173 (move_it_vertically_backward): Clear it->continuation_lines_width.
8174
8175 2002-11-28 Dave Love <fx@gnu.org>
8176
8177 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8178 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
8179
8180 2002-11-27 Steven Tamm <steventamm@mac.com>
8181
8182 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8183 more descriptive error output from lread.c:Fload upon most require
8184 cycles during boostrapping.
8185
8186 2002-11-27 Jason Rumney <jasonr@gnu.org>
8187
8188 * fileio.c (Finsert_file_contents): Give a more appropriate error
8189 for files bigger than 2Gb when off_t is 32 bit.
8190
8191 * dired.c (Ffile_attributes): Don't return negative file sizes for
8192 files bigger than 2Gb when off_t is 32 bit.
8193
8194 2002-11-27 Dave Love <fx@gnu.org>
8195
8196 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8197
8198 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8199 Test GETPGRP_VOID instead.
8200 [BSD_TERMIOS]: Remove definitions (never used).
8201
8202 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8203 Don't define.
8204 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8205
8206 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8207
8208 2002-11-25 Jason Rumney <jasonr@gnu.org>
8209
8210 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8211 supported.
8212
8213 2002-11-25 Dave Love <fx@gnu.org>
8214
8215 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
8216
8217 * Makefile.in (TEMACS_LDFLAGS): Update last change.
8218
8219 2002-11-25 Andreas Schwab <schwab@suse.de>
8220
8221 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
8222
8223 2002-11-24 Steven Tamm <steventamm@mac.com>
8224
8225 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8226 determine the size of pointers alloced in unexed space instead
8227 of using possibly invalid emacs_zone pointers. This fixes the
8228 binary incompatibility problems caused by updates to libSystem.B.
8229
8230 2002-11-24 Richard M. Stallman <rms@gnu.org>
8231
8232 * search.c (Fstring_match): Doc fix.
8233
8234 * callint.c (Fcall_interactively): If a command fails because
8235 `*' detects a read-only buffer, but RECORD_FLAG is set,
8236 record it anyway if the args don't actually do tty input.
8237
8238 2002-11-22 Dave Love <fx@gnu.org>
8239
8240 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
8241
8242 * keyboard.c (interrupt_signal): Provide forward declaration.
8243 (kbd_buffer_store_event): Don't declare interrupt_signal.
8244
8245 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
8246
8247 2002-11-21 Richard M. Stallman <rms@gnu.org>
8248
8249 * eval.c (interactive_p): Skip any number of bytecode
8250 and special form frames, in any order.
8251
8252 2002-11-20 Jason Rumney <jasonr@gnu.org>
8253
8254 * w32fns.c (convert_mono_to_color_image): New function.
8255 (xbm_load, xbm_load_image): Use it when foreground or background
8256 is explicitly set.
8257
8258 2002-11-19 Dave Love <fx@gnu.org>
8259
8260 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
8261
8262 2002-11-18 Jason Rumney <jasonr@gnu.org>
8263
8264 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
8265 (XPutPixel): Swap blue and red.
8266 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
8267 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
8268 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
8269 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
8270
8271 2002-11-18 Dave Love <fx@gnu.org>
8272
8273 * m/orion105.h (HAVE_ALLOCA): Don't define.
8274
8275 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
8276
8277 * m/intel386.h: Don't include alloca.h or define alloca.
8278
8279 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
8280 malloc, realloc, calloc.
8281
8282 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
8283 (bcmp): Don't define.
8284
8285 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
8286
8287 * m/amdahl.h: Don't define LIB_STANDARD.
8288
8289 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
8290
8291 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
8292
8293 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
8294 Don't include alloca.h.
8295
8296 * s/aix3-2.h (HAVE_FSYNC): Don't define.
8297
8298 * regex.c (_GNU_SOURCE): Don't define.
8299
8300 * process.c (_GNU_SOURCE): Don't define.
8301
8302 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
8303
8304 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
8305
8306 * s/sol2-8.h: Include sol2-6.h.
8307
8308 2002-11-18 Miles Bader <miles@gnu.org>
8309
8310 * dispextern.h (struct face): Add `overstrike' field.
8311 * xterm.c (x_draw_glyph_string_foreground)
8312 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8313 * xfaces.c (load_face_font): Set `face->overstrike' based on
8314 result from choose_face_font.
8315 (best_matching_font, choose_face_font): Add `needs_overstrike'
8316 argument, and use it to return whether overstriking is desirable
8317 for this face/font combo.
8318 (set_font_frame_param: Pass new argument to choose_face_font.
8319
8320 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8321
8322 This change is my fix for the following entry in etc/PROBLEMS:
8323 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8324 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8325
8326 * w32.c: Added wrapper functions around the win32 API functions
8327 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
8328 GetSidIdentifierAuthority. These wrapper functions serve two
8329 purposes:
8330 1. They ensure that the wrapped function can never be called
8331 when Emacs is running on an operating system on which they are
8332 not supported (Microsoft Windows 95 / 98 / ME).
8333 2. They call the wrapped functions via function pointers rather
8334 than calling them directly. This avoids taking advantage of the
8335 undocumented fact that although these functions are not supported
8336 in the 9x branch of Microsoft Windows, the functions do exist in
8337 the version of advapi32.dll that is found in the 9x branch of
8338 Microsoft Windows.
8339
8340 * w32.c (init_user_info): Replace the calls to the win32 API
8341 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
8342 and GetSidIdentifierAuthority with calls to the newly added
8343 wrapper functions.
8344
8345 * w32.h: Added extern declarations for the following functions:
8346 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
8347 syms_of_w32menu, and void syms_of_fontset.
8348
8349 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
8350 function pointer track_mouse_event_fn in the handler for the
8351 WM_SETFOCUS message.
8352
8353 * w32menu.c (initialize_frame_menubar): Add code to
8354 reinitialize the function pointers set_menu_item_info and
8355 get_menu_item_info.
8356
8357 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
8358
8359 * sound.c: Added a partial implementation of play-sound-internal
8360 for Microsoft Windows. Added various #ifdef / #else / #endif
8361 code blocks to separate the code that will compile under
8362 Microsoft Windows from the code that is specific to Gnu/Linux.
8363 Moved several blocks of code around to make this separation of code
8364 into Windows compatible and Gnu/Linux compatible code blocks easier.
8365
8366 * makefile.w32-in: Include sound.c and link with WinMM.lib.
8367
8368 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
8369 added support for play-sound-internal under Windows would be
8370 included in the build of Emacs.
8371
8372 2002-11-16 Jason Rumney <jasonr@gnu.org>
8373
8374 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
8375
8376 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
8377
8378 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
8379
8380 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
8381 (adjust_point_for_property): Move out of display and invisible even if
8382 we were already inside before (in case a property was added while
8383 we weren't looking). Be more careful when handling invisible props.
8384 Skip invisible text as if it really wasn't there at all.
8385
8386 2002-11-15 Jason Rumney <jasonr@gnu.org>
8387
8388 * w32term.c (x_draw_image_foreground)
8389 (w32_draw_image_foreground_1): Use standard copy and invert
8390 operations to draw images.
8391
8392 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
8393 depth of 1.
8394 (xbm_read_bitmap_data): Invert bits as xbm is read in.
8395 (XPutPixel): Don't invert bits here.
8396
8397 2002-11-15 Jason Rumney <jasonr@gnu.org>
8398
8399 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
8400 (w32_draw_image_foreground_1): Handle image masks.
8401 (x_draw_image_glyph_string): Don't BitBlt transparently.
8402
8403 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
8404 (x_from_xcolors): Adjust RGB values for W32.
8405 (image_background, image_background_transparent)
8406 (postprocess_image, x_to_xcolors, x_disable_image)
8407 (x_build_heuristic_mask): Adapt for W32 and enable.
8408 (x_create_x_image_and_pixmap): Mark images with palettes as such.
8409 (xbm_load): Remove unused variable.
8410
8411 2002-11-14 Richard M. Stallman <rms@gnu.org>
8412
8413 * buffer.c (syms_of_buffer): Doc fix.
8414
8415 2002-11-14 Dave Love <fx@gnu.org>
8416
8417 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
8418
8419 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
8420 * xmenu.c (unuse_menu_items, digest_single_submenu):
8421 * xfns.c (x_put_x_image):
8422 * xdisp.c (message2_nolog, set_message):
8423 * undo.c (record_point):
8424 * terminfo.c (tparam):
8425 * syntax.c (scan_sexps_forward):
8426 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
8427 * composite.c (update_compositions):
8428 * cm.c (calccost, cmgoto):
8429 * charset.c (c_string_width): Declare all args (per C99).
8430
8431 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
8432
8433 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
8434 Don't declare.
8435
8436 * emacs.c (main) [!VMS]: Avoid third arg.
8437
8438 * fns.c (Fcopy_sequence): Doc fix.
8439 (Fmap_char_table): Cast `call2'.
8440
8441 2002-11-14 Francesco Potorti` <pot@gnu.org>
8442
8443 * s/sol2-8.h: New file.
8444
8445 2002-11-14 Kim F. Storm <storm@cua.dk>
8446
8447 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
8448 dependency on `risky-local-variable' and the :propertize form.
8449
8450 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
8451
8452 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
8453
8454 * syntax.c (scan_sexps_forward): Undo last patch.
8455 Use a more obvious fix: check eob before updating the syntax table.
8456
8457 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
8458
8459 * syntax.c (scan_sexps_forward): Update syntax table before reading
8460 a char rather than after so we don't update the table past eob.
8461
8462 2002-11-09 Dave Love <fx@gnu.org>
8463
8464 * buffer.c (Fset_buffer_major_mode): Fix last change.
8465
8466 * regex.c (regexec): Fix pmatch declaration.
8467
8468 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
8469
8470 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
8471 to self-inserting characters.
8472 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
8473
8474 * coding.c (Vtranslation_table_for_input): New.
8475 (syms_of_coding): DEFVAR it.
8476
8477 2002-11-08 Juanma Barranquero <lektu@terra.es>
8478
8479 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
8480 window.
8481
8482 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
8483
8484 * process.c (Fformat_network_address): Remove unused locals p,
8485 cp, and i.
8486
8487 2002-11-06 Dave Love <fx@gnu.org>
8488
8489 * buffer.c (Qset_buffer_major_mode_hook): New.
8490 (Fset_buffer_major_mode): Use it.
8491
8492 2002-11-06 Richard M. Stallman <rms@gnu.org>
8493
8494 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
8495 and stop_polling.
8496
8497 * process.c (wait_reading_process_input):
8498 Test POLLING_PROBLEM_IN_SELECT, not hpux.
8499 Avoid initialization for auto Lisp_Object var.
8500
8501 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
8502
8503 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
8504
8505 2002-11-05 Richard M. Stallman <rms@gnu.org>
8506
8507 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
8508
8509 * callint.c (Fcall_interactively): New local filter_specs.
8510 (Fcall_interactively): Check for progn as well as let.
8511 Add a gcpro.
8512 (Qprogn): New variable.
8513 (syms_of_callint): Staticpro and init Qprogn.
8514
8515 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
8516
8517 * lread.c (Feval_buffer): Doc fix.
8518
8519 2002-11-04 Dave Love <fx@gnu.org>
8520
8521 * keyboard.c (read_char): Always translate iff
8522 Vkeyboard_translate_table is a char table and c is valid.
8523
8524 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
8525 and fix C types.
8526
8527 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
8528
8529 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
8530
8531 * editfns.c (get_pos_property): Don't hardcode Qfield.
8532
8533 * keyboard.c (adjust_point_for_property): Handle `display' prop on
8534 overlays. Also handle `invisible' prop.
8535
8536 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
8537
8538 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
8539 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
8540
8541 2002-11-01 Andreas Schwab <schwab@suse.de>
8542
8543 * editfns.c (Fmessage): Revert last change to properly handle %%.
8544
8545 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
8546
8547 * xmenu.c (unuse_menu_items): New fun.
8548 (menu_items_inuse): New var.
8549 (syms_of_xmenu): Initialize it.
8550 (init_menu_items): Use it to detect re-entrance.
8551 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
8552 (Fx_popup_menu): Remove spurious XSETFRAME.
8553
8554 * editfns.c (find_field): Make an exception for nil fields.
8555
8556 2002-11-01 Dave Love <fx@gnu.org>
8557
8558 * m/gec63.h: Deleted.
8559
8560 2002-10-31 Dave Love <fx@gnu.org>
8561
8562 * xterm.c (XTread_socket): Fix last change.
8563 (xaw_scroll_callback): Cast call_data to long to avoid warning.
8564
8565 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
8566
8567 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
8568
8569 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
8570
8571 * editfns.c (overlays_around, get_pos_property): New funs.
8572 (find_field): Use them.
8573 Also be careful not to modify POS before its last use.
8574 (Fmessage): Don't Fformat if there's nothing to format.
8575
8576 2002-10-30 Dave Love <fx@gnu.org>
8577
8578 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
8579 [HAVE_PTY_H]; Include pty.h.
8580
8581 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
8582
8583 * xterm.c (Qeql): Declare.
8584 (Vx_keysym_table): New.
8585 (syms_of_xterm): Initialize it.
8586 (XTread_socket): Use it. Deal with ASCII keysyms.
8587 (XSetIMValues) [HAVE_X11R6]: Prototype.
8588
8589 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
8590 (lispy_kana_keys): Comment out.
8591 (make_lispy_event) [XK_kana_A]: Comment out.
8592 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
8593 Fix sprintf call.
8594
8595 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
8596 regexp.h change).
8597 (TERMINFO, LIBS_TERMCAP): Define.
8598
8599 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
8600 (bcmp): Define conditional on HAVE_BCMP.
8601 (NO_SIOCTL_H): Don't define.
8602 (TIOCSIGSEND): Don't make conditional on IRIX6.
8603
8604 * s/sol2-5.h: Don't include strings.h.
8605 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
8606
8607 * s/irix6-0.h (IRIX6): Don't define.
8608 (bcopy, bcmp, bzero): Don't undef.
8609
8610 * s/irix6-5.h: Don't include strings.h.
8611 (IRIX6): Don't define.
8612 (bcopy, bcmp, bzero): Don't undef.
8613
8614 * syntax.c (Fforward_comment): Doc fix.
8615
8616 2002-10-29 Kim F. Storm <storm@cua.dk>
8617
8618 * process.c (Fsignal_process): Allow PROCESS to be specified by
8619 name in addition to pid (as integer or string).
8620
8621 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
8622
8623 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
8624 environments.
8625
8626 2002-10-27 Kim F. Storm <storm@cua.dk>
8627
8628 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8629
8630 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
8631
8632 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
8633
8634 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
8635
8636 2002-10-26 Richard M. Stallman <rms@gnu.org>
8637
8638 * editfns.c (Fformat): Detect invalid format letters for floats.
8639
8640 2002-10-25 Kenichi Handa <handa@m17n.org>
8641
8642 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
8643 (x_set_title): Likewise.
8644
8645 2002-10-25 Juanma Barranquero <lektu@terra.es>
8646
8647 * macgui.h:
8648 * w32gui.h: Remove definition of XColor.
8649
8650 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
8651
8652 2002-10-24 Kim F. Storm <storm@cua.dk>
8653
8654 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
8655 Callers changed (supply dummy arg).
8656
8657 * lisp.h (get_window_cursor_type): Update prototype.
8658
8659 * w32term.c (x_display_and_set_cursor): Get active_cursor from
8660 get_window_cursor_type to track system caret.
8661
8662 2002-10-24 Kim F. Storm <storm@cua.dk>
8663
8664 * process.c (Fformat_network_address): New function.
8665 (syms_of_process): Defsubr it.
8666 (list_processes_1): Use it to format :local/:remote address if
8667 service/host is not set; before Emacs would crash in that case.
8668 (Fmake_network_process): Don't use Ffind_operation_coding_system
8669 to setup coding system if host or service is not set.
8670
8671 2002-10-23 Juanma Barranquero <lektu@terra.es>
8672
8673 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
8674
8675 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
8676 COLORREF.
8677
8678 * macgui.h:
8679 * w32gui.h: Add definition of XColor.
8680
8681 * macfns.c:
8682 * w32fns.c:
8683 * xfaces.c: Remove definition of XColor.
8684
8685 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
8686
8687 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
8688
8689 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
8690 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
8691 window if it is dedicated.
8692 (Fshrink_window): Add preserve_before as was done for enlarge_window.
8693 (Vspecial_display_function): Update docstring.
8694
8695 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
8696 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
8697 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
8698
8699 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
8700
8701 * casefiddle.c (casify_region): Don't treat a prefix char as part
8702 of a word when at the beginning.
8703
8704 2002-10-17 Juanma Barranquero <lektu@terra.es>
8705
8706 * lread.c (syms_of_lread): Fix typos.
8707
8708 2002-10-17 Dave Love <fx@gnu.org>
8709
8710 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
8711
8712 2002-10-16 Richard M. Stallman <rms@gnu.org>
8713
8714 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
8715
8716 2002-10-14 Juanma Barranquero <lektu@terra.es>
8717
8718 * w16select.c (syms_of_win16select): Fix docstring for
8719 `selection-coding-system'.
8720
8721 * w32select.c (syms_of_w32select): Likewise.
8722
8723 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
8724
8725 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
8726 a backslash-quoted char.
8727 (scan_lists, scan_sexps_forward): Pacify the compiler.
8728
8729 2002-10-13 Richard M. Stallman <rms@gnu.org>
8730
8731 * window.c (window_scroll): Set immediate_quit.
8732
8733 * print.c (print): When backquote form is the car of a list,
8734 output in old style. Use old_backquote_output to output all
8735 comma forms inside it in old style too.
8736
8737 * buffer.h (struct buffer): Move `undo_list' down below `name'.
8738
8739 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
8740
8741 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
8742 batch mode).
8743
8744 * lread.c (Fload): Doc fix (load-suffixes).
8745
8746 2002-10-10 Steven Tamm <steventamm@mac.com>
8747
8748 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
8749 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
8750 Also switch the default to Qnil from Qt.
8751
8752 2002-10-08 Kenichi Handa <handa@m17n.org>
8753
8754 * coding.c (code_convert_region): When we need more GAP for
8755 conversion, pay attention to the case that coding->produced is not
8756 greater than coding->consumed.
8757
8758 2002-10-07 Richard M. Stallman <rms@gnu.org>
8759
8760 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
8761
8762 2002-10-06 Andrew Choi <akochoi@shaw.ca>
8763
8764 * macmenu.c (mac_menu_show): Add j to count menu items; match
8765 menu_item_selection to it to find selected item.
8766
8767 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8768
8769 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
8770 cases. The correct fix is to pass ReparentNotify to Xt.
8771 The shell widget interprets ConfigureNotify differently depending
8772 on if it has been reparented or not.
8773
8774 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
8775
8776 * editfns.c (Fformat_time_string): Doc fix.
8777
8778 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
8779
8780 * fns.c (Flength): Doc fix.
8781
8782 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
8783
8784 * keyboard.c (keyremap): New struct.
8785 (read_key_sequence): Use it: globally replace keytran_foo with
8786 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
8787 keytran_next and fkey_next to just `next'.
8788
8789 2002-10-04 Steven Tamm <steventamm@mac.com>
8790
8791 * macterm.c (keycode_to_xkeysym_table): Change return to be
8792 treated like an X keysym.
8793
8794 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8795
8796 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
8797 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
8798 This is to also handle x/y changes that occur because of a resize.
8799
8800 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
8801
8802 * frame.c (Vdelete_frame_functions): New variable.
8803 (syms_of_frame): Initialize and defvar it.
8804 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
8805 it when frame's `tooltip' parameter is non-nil.
8806
8807 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
8808
8809 * w32fns.c (x_create_tip_frame): Likewise.
8810
8811 * macfns.c (x_create_tip_frame): Likewise.
8812
8813 2002-09-30 Kenichi Handa <handa@m17n.org>
8814
8815 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
8816 -1 before calling ccl_driver.
8817
8818 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
8819 Only when it is non-nil, handle composition sequence.
8820 (setup_coding_system) <0>: Don't force composition handling.
8821
8822 * Makefile.in (lisp, shortlisp): Add utf-16.elc
8823
8824 2002-09-29 Richard M. Stallman <rms@gnu.org>
8825
8826 * search.c (Freplace_match): Adjust match data for the substitution
8827 just made in the buffer.
8828
8829 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
8830 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
8831
8832 2002-09-27 Richard M. Stallman <rms@gnu.org>
8833
8834 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
8835 (read_char): Use them. Do all exits thru the end of the function.
8836
8837 2002-09-27 Kenichi Handa <handa@etl.go.jp>
8838
8839 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
8840 is nil.
8841
8842 2002-09-26 Richard M. Stallman <rms@gnu.org>
8843
8844 * regex.h (__restrict_arr): Don't define if already defined.
8845
8846 * coding.c (run_pre_post_conversion_on_str):
8847 Save and restore Vdeactivate_mark.
8848
8849 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
8850
8851 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
8852
8853 2002-09-26 Kenichi Handa <handa@etl.go.jp>
8854
8855 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
8856 nonzero, try face's family at first. Otherwise try FAMILY at first.
8857 (choose_face_font): If C is a single byte char or latin-1, call
8858 try_font_list with PREFER_FACE_FAMILY 1.
8859
8860 2002-09-21 Richard M. Stallman <rms@gnu.org>
8861
8862 * window.c (select_window_1): Don't select frame.
8863 Set frame's selected window only when frame itself is selected.
8864 (Fselect_window): Doc fix.
8865
8866 2002-09-18 Kim F. Storm <storm@cua.dk>
8867
8868 * process.c (make-network-process): Doc fix (there is no
8869 network-server-log-function hook).
8870
8871 2002-09-18 Richard M. Stallman <rms@gnu.org>
8872
8873 * print.c (print): Clear out the unused parts of Vprint_number_table.
8874 (syms_of_print): Doc fix for `print-number-table'.
8875
8876 * unexelf.c (unexec): Undo previous change.
8877
8878 2002-09-17 Andreas Schwab <schwab@suse.de>
8879
8880 * m/alpha.h [LINUX]: Don't define DATA_START.
8881
8882 2002-09-16 Dave Love <fx@gnu.org>
8883
8884 * unexelf.c (unexec): Deal with .got, reinstating change from
8885 25-08-1999.
8886
8887 2002-09-13 Richard M. Stallman <rms@gnu.org>
8888
8889 * s/sol2-6.h (UNEXEC): Comment out definition.
8890
8891 * unexsol.c (unexec): Don't downcase first letter of error msg.
8892
8893 * xfaces.c (Fcolor_supported_p): Just one arg is required.
8894
8895 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
8896
8897 * unexsol.c: Include buffer.h, charset.h, coding.h.
8898
8899 2002-09-11 Richard M. Stallman <rms@gnu.org>
8900
8901 * unexsol.c: Don't use report_file_error; do it by hand
8902 using dlerror.
8903
8904 * process.c (wait_reading_process_input, both versions):
8905 Before calling turn_on_atimers, call stop_polling.
8906
8907 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
8908
8909 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
8910 we go to too_near_end, call clear_glyph_matrix.
8911 (redisplay_window): After make_cursor_line_fully_visible,
8912 call clear_glyph_matrix and bypass `goto done'.
8913
8914 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
8915 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
8916
8917 2002-09-10 Richard M. Stallman <rms@gnu.org>
8918
8919 * fileio.c (Fdo_auto_save): Catch error making directory.
8920 Only call push_message if we need to.
8921 At the same time, make an unwind-protect to pop it.
8922 Rename local message_p to old_message_p.
8923 (do_auto_save_make_dir, do_auto_save_eh): New functions.
8924 (do_auto_save_unwind): Don't call pop_message.
8925
8926 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
8927
8928 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
8929
8930 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
8931
8932 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
8933
8934 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
8935
8936 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
8937 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
8938 (re_match_2_internal): Be more careful with infinite loops.
8939
8940 2002-09-10 Kim F. Storm <storm@cua.dk>
8941
8942 * macros.c (end_kbd_macro): New function.
8943 (Fend_kbd_macro): Use it.
8944
8945 * macros.h (end_kbd_macro): Declare extern.
8946
8947 * keyboard.c (Fdiscard_input): If defining keyboard macro,
8948 end and save it instead of discarding it.
8949
8950 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
8951
8952 * s/sol2-6.h: Fix typo. Add comment.
8953
8954 2002-09-09 Richard M. Stallman <rms@gnu.org>
8955
8956 * regex.c (regnum_t): Use signed int, not unsigned int.
8957
8958 * s/sol2-6.h: New file.
8959
8960 * s/sol2-5.h (UNEXEC): Definition deleted.
8961
8962 2002-09-08 Kim F. Storm <storm@cua.dk>
8963
8964 * macros.c (executing_macro_index): Change type to EMACS_INT.
8965 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
8966
8967 * macros.h (executing_macro_index): Change type to EMACS_INT.
8968
8969 2002-09-06 Richard M. Stallman <rms@gnu.org>
8970
8971 * casetab.c (set_case_table): Make canon table point to eqv table.
8972
8973 2002-09-06 Juanma Barranquero <lektu@terra.es>
8974
8975 * coding.c (syms_of_coding): Fix spacing.
8976
8977 * composite.c (Fcompose_region_internal)
8978 (Fcompose_string_internal): Likewise.
8979
8980 * data.c (Flsh): Likewise.
8981
8982 * fontset.c (Fset_fontset_font): Likewise.
8983
8984 * macfns.c (Fx_server_max_request_size): Likewise.
8985
8986 * w16select.c (syms_of_win16select): Likewise.
8987
8988 * w32select.c (syms_of_w32select): Likewise.
8989
8990 * xselect.c (syms_of_xselect): Likewise.
8991
8992 2002-09-05 Richard M. Stallman <rms@gnu.org>
8993
8994 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
8995 call EXTEND_RANGE_TABLE and return a proper value.
8996 (set_image_of_range): Don't call set_image_of_range_1
8997 if no TRANSLATE or if range includes all of Latin-1.
8998 Only call it for the Latin-1 part of the range.
8999 For other cases, make two separate ranges,
9000 one for the original specified characters and one for
9001 their case-conversions.
9002
9003 2002-09-04 Richard M. Stallman <rms@gnu.org>
9004
9005 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9006
9007 * window.c (displayed_window_lines): Correct for one-off bug
9008 in HEIGHT on non-window displays.
9009
9010 * regex.c (set_image_of_range_1): New function.
9011 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9012 Return a value to indicate running out of memory.
9013 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9014 (extend_range_table_work_area): New subroutine.
9015 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9016 Different calling conventions, and used from set_image_of_range{,_1}.
9017 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9018
9019 2002-09-04 Juanma Barranquero <lektu@terra.es>
9020
9021 * makefile.w32-in: All dependencies updated.
9022
9023 2002-09-01 Richard M. Stallman <rms@gnu.org>
9024
9025 * unexsol.c: New file.
9026
9027 * xfns.c (Qbox): Declare external, don't define.
9028
9029 * xdisp.c (redisplay_window) <force-start case>:
9030 If point is on semi-visible last line, reposition
9031 it at previous line.
9032
9033 * alloc.c (display_malloc_warning): Use display-warning.
9034 (malloc_warning_1): Function deleted.
9035
9036 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9037
9038 * lread.c (read1): Handle #! by skipping the line.
9039
9040 2002-08-31 Richard M. Stallman <rms@gnu.org>
9041
9042 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9043 Don't include LDFLAGS.
9044 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9045
9046 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9047
9048 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9049 member of x_display_info unless we compile for some window system.
9050
9051 2002-08-31 Kim F. Storm <storm@cua.dk>
9052
9053 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9054 (get_window_cursor_type): Don't use them.
9055 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9056
9057 2002-08-30 Kenichi Handa <handa@etl.go.jp>
9058
9059 * xdisp.c (get_next_display_element): Fix previous change.
9060
9061 2002-08-30 Andrew Choi <akochoi@shaw.ca>
9062
9063 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9064 (expose_window): Use it to fix the display of overlapping
9065 rows (merge code from xterm.c).
9066
9067 * macfns.c (Qbox): Add extern declaration.
9068
9069 2002-08-30 Juanma Barranquero <lektu@terra.es>
9070
9071 * w32fns.c (Qbox): Make extern.
9072 (syms_of_w32fns): Remove initialization of Qbox.
9073
9074 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9075
9076 * xfns.c (Fx_open_connection): Fix error message.
9077
9078 2002-08-30 Kim F. Storm <storm@cua.dk>
9079
9080 The following changes consolidates the handling of the cursor
9081 type in xdisp.c, moving duplicate code and functionality from
9082 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9083
9084 * frame.h (enum text_cursor_kinds): Consolidated here.
9085 Added DEFAULT_CURSOR value.
9086 (struct frame) <desired_cursor, cursor_width>
9087 <blink_off_cursor, blink_off_cursor_width>: New fields.
9088 Consolidated from output_x, output_w32 and output_mac structs.
9089 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9090 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9091
9092 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9093 Variables consolidated here.
9094 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9095 (Vcursor_in_non_selected_windows): Renamed from
9096 cursor_in_non_selected_windows and changed to Lisp_Object.
9097 (syms_of_xdisp): Define and staticpro new and moved variables.
9098 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9099 consolidated here. Recognize Qhollow setting.
9100 (set_frame_cursor_types): New function to set frame cursor types
9101 based on the frame parameters.
9102 (get_window_cursor_type): New function to calculate new cursor
9103 type and width for the specified window. Based on duplicated
9104 code consolidated here.
9105 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9106 check buffer-local alternate-cursor-type and blink-cursor-alist
9107 before using built-in blink off methods.
9108
9109 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9110
9111 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9112 (get_specified_cursor_type, get_window_cursor_type)
9113 (set_frame_cursor_types): Added prototypes.
9114
9115 * macfns.c (x_specified_cursor_type): Removed.
9116 (x_set_cursor_type): Use set_frame_cursor_types.
9117 (Qbar, Qbox): Removed.
9118 (syms_of_macfns): Don't intern or staticpro them.
9119
9120 * macterm.c (x_specified_cursor_type): Remove prototype.
9121 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9122 (x_display_and_set_cursor): Use get_window_cursor_type.
9123 Remove unused local variables cursor_non_selected, active_cursor.
9124 Redraw cursor if hbar cursor width changes.
9125 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9126
9127 * macterm.h (enum text_cursor_kinds): Removed.
9128 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9129 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9130 (FRAME_DESIRED_CURSOR): Macro removed.
9131
9132 * w32fns.c (Vblink_cursor_alist): Removed.
9133 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9134 (syms_of_w32fns): Don't intern, staticpro, or define them.
9135 (x_specified_cursor_type): Removed.
9136 (x_set_cursor_type): Use set_frame_cursor_types.
9137
9138 * w32term.c (x_specified_cursor_type): Remove prototype.
9139 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9140 (x_display_and_set_cursor): Use get_window_cursor_type.
9141 Remove unused local variables cursor_off_state.
9142 Redraw cursor if hbar cursor width changes.
9143 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9144
9145 * w32term.h (enum text_cursor_kinds): Removed.
9146 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9147 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9148 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9149 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9150 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9151 w32_highlight_frame.
9152
9153 * xfns.c (Vblink_cursor_alist): Removed.
9154 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9155 (syms_of_xfns): Don't intern, staticpro, or define them.
9156 (x_specified_cursor_type): Removed.
9157 (x_set_cursor_type): Use set_frame_cursor_types.
9158
9159 * xterm.c (x_specified_cursor_type): Remove prototype.
9160 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9161 (x_display_and_set_cursor): Use get_window_cursor_type.
9162 Remove unused local variables cursor_off_state.
9163 Redraw cursor if hbar cursor width changes.
9164
9165 * xterm.h (enum text_cursor_kinds): Removed.
9166 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9167 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9168 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9169 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9170 (x_specified_cursor_type): Remove prototype.
9171
9172 2002-08-28 Richard M. Stallman <rms@gnu.org>
9173
9174 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9175 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9176 (Vblink_cursor_alist): New variable.
9177 (syms_of_w32fns): Initialize and defvar it.
9178 (x_specified_cursor_type): Recognize Qbox for filled box.
9179 Exceptions are hollow boxes.
9180 (Qbox, Qhollow): New variables.
9181 (syms_of_w32fns): Initialize and staticpro them.
9182
9183 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9184 New macros.
9185 (struct w32_output): New fields blink_off_cursor,
9186 blink_off_cursor_width.
9187 (FRAME_CURSOR_WIDTH): New macro.
9188
9189 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9190 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9191
9192 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9193 for bar cursor.
9194
9195 * w32term.c (expose_overlaps): New function.
9196 (expose_window): Use it to fix the display of overlapping rows.
9197
9198 2002-08-28 Simon Josefsson <jas@extundo.com>
9199
9200 * xfns.c (Fx_open_connection): Improve help when X connection
9201 fails, xhost is insecure and xauth is better.
9202
9203 2002-08-28 Juanma Barranquero <lektu@terra.es>
9204
9205 * makefile.w32-in: Add missing dependencies on w32term.h and
9206 composite.h.
9207
9208 * emacs.c (USAGE1): Add missing newline.
9209
9210 2002-08-27 Andrew Choi <akochoi@shaw.ca>
9211
9212 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9213
9214 2002-08-27 Richard M. Stallman <rms@gnu.org>
9215
9216 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9217 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9218 (Vblink_cursor_alist): New variable.
9219 (syms_of_xfns): Initialize and defvar it.
9220 (x_specified_cursor_type): Recognize Qbox for filled box.
9221 Exceptions are hollow boxes.
9222 (Qbox, Qhollow): New variables.
9223 (syms_of_xfns): Initialize and staticpro them.
9224
9225 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9226 New macros.
9227 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9228
9229 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9230 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9231
9232 * emacs.c (main): Handle --script.
9233 (USAGE1): Mention --script.
9234 (standard_args): Define sort order for --script.
9235
9236 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9237
9238 * xdisp.c (redisplay_updating_p): Variable removed.
9239 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9240 New variables.
9241 (init_iterator): Don't free realized faces if
9242 inhibit_free_realized_faces is set.
9243 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9244 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9245 initialize Qinhibit_free_realized_faces.
9246
9247 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9248 when iterator is adding glyphs to a glyph matrix.
9249
9250 2002-08-27 Kenichi Handa <handa@etl.go.jp>
9251
9252 * xdisp.c (get_next_display_element): In unibyte case, don't use
9253 octal form for such eight-bit characters that can be converted to
9254 multibyte char.
9255
9256 2002-08-26 Kim F. Storm <storm@cua.dk>
9257
9258 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
9259 and background colors. From Joe Buehler (tiny change).
9260
9261 2002-08-26 Miles Bader <miles@gnu.org>
9262
9263 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
9264
9265 2002-08-25 Andrew Choi <akochoi@shaw.ca>
9266
9267 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
9268 defined instead of MAC_OSX.
9269
9270 * s/darwin.h (select): Define select to sys_select only if
9271 HAVE_CARBON is defined.
9272 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
9273 (DONT_REOPEN_PTY): #def it.
9274
9275 * macterm.c (XTread_socket): Remove code to call
9276 SendEventToEventTarget for keys with command modifiers when
9277 mac_command_key_is_meta is nil.
9278
9279 2002-08-24 Andreas Schwab <schwab@suse.de>
9280
9281 * eval.c (Fdefvar): Fix last change.
9282
9283 2002-08-23 Richard M. Stallman <rms@gnu.org>
9284
9285 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
9286 Record variables in load history as (defvar . VAR).
9287 (Fdefvar): Don't record in load history if no initial value.
9288 (Qdefvar): New variable.
9289 (syms_of_eval): Init and staticpro it.
9290
9291 * lread.c (syms_of_lread): Doc fix.
9292 (build_load_history): Use Fmember to see if a definition
9293 is already in the Vload_history element.
9294
9295 * process.c (Fstart_process): Remove /: from program name.
9296
9297 * emacs.c (decode_env_path): Don't add /: if file name handler
9298 has a `safe-magic' property.
9299
9300 * callproc.c (Fcall_process): Remove /: from program name.
9301
9302 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
9303
9304 * regex.c (PATFETCH): Remove the translating fetch.
9305 (PATFETCH_RAW): Rename to PATFETCH.
9306 (set_image_of_range): New fun.
9307 (SET_RANGE_TABLE_WORK_AREA): Use it.
9308 (regex_compile): Don't translate the pattern chars so eagerly.
9309 Only do it when inserting an `exactn' bytecode or when handling
9310 a char-range.
9311 (mutually_exclusive_p): Avoid empty statement.
9312
9313 2002-08-22 Kim F. Storm <storm@cua.dk>
9314
9315 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
9316 end up on a partially visible line; this reverts a specific part
9317 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
9318 display error which has been reported several times now.
9319 However it introduces the problem that changes was supposed to fix.
9320 See my comments in the source if you want to debug this further.
9321
9322 2002-08-20 Kenichi Handa <handa@etl.go.jp>
9323
9324 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
9325
9326 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
9327
9328 * msdos.c (croak): Add `void' to definition.
9329
9330 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
9331 Don't define them, they are defined in msdos.c.
9332
9333 * mem-limits.h [MSDOS]: Declare etext.
9334
9335 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
9336 `const' since CORRECT_DIR_SEPS modifies its target.
9337
9338 2002-08-19 Kim F. Storm <storm@cua.dk>
9339
9340 * keyboard.c (Fclear_this_command_keys): Add optional arg
9341 KEEP-RECORD to avoid clearing lossage when we just want to clear
9342 the current key sequence (kmacro needs this).
9343
9344 2002-08-19 Kenichi Handa <handa@localhost>
9345
9346 * composite.c (run_composition_function): Call FUNC if it is fboundp.
9347
9348 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
9349 cons, return Qnil.
9350
9351 2002-08-17 Richard M. Stallman <rms@gnu.org>
9352
9353 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
9354
9355 * sysdep.c [!VMS]: Include sys/files.h.
9356
9357 * editfns.c (save_restriction_restore): Defend from unchained marker.
9358
9359 * buffer.c (overlays_at): Handle extending vec uniformly.
9360 (overlays_in): Handle extending vec from length 0 as in overlays_at.
9361
9362 2002-08-15 Andrew Choi <akochoi@shaw.ca>
9363
9364 * mac.c (init_mac_osx_environment): New function.
9365
9366 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
9367
9368 2002-08-14 Kim F. Storm <storm@cua.dk>
9369
9370 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
9371 executing macro before appending to it (when used from Lisp).
9372 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
9373 which is called prior to each iteration of macro (for kmacro.el).
9374 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
9375
9376 * lisp.h (Fexecute_kbd_macro): Update prototype.
9377
9378 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
9379
9380 2002-08-14 Kenichi Handa <handa@etl.go.jp>
9381
9382 * xselect.c (QUTF8_STRING): New variable.
9383 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
9384 (x_atom_to_symbol): Likewise.
9385 (x_get_local_selection): New argument local_request. If it is
9386 nonzero, call handler_fn with the second arg nil.
9387 (x_handle_selection_request): Call x_get_local_selection with
9388 local_request 0.
9389 (lisp_data_to_selection_data): Don't encode the string here.
9390 (Fx_get_selection_internal): Call x_get_local_selection with
9391 local_request 1.
9392 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
9393
9394 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
9395
9396 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
9397
9398 2002-08-13 Richard M. Stallman <rms@gnu.org>
9399
9400 * minibuf.c (Fminibufferp): New function.
9401 (syms_of_minibuf): Defsubr it.
9402 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
9403
9404 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
9405
9406 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
9407
9408 2002-08-12 Richard M. Stallman <rms@gnu.org>
9409
9410 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
9411 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
9412 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
9413 already.
9414
9415 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
9416
9417 2002-08-11 Andrew Choi <akochoi@shaw.ca>
9418
9419 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
9420 (Vmac_pass_command_to_system): New variable.
9421 (Vmac_pass_control_to_system): New variable.
9422 (do_mouse_moved): Check wp with is_emacs_window.
9423 (XTread_socket): Check window_ptr with is_emacs_window.
9424 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
9425 events back to Mac Toolbox for processing, depending on values of
9426 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
9427 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
9428 Vmac_pass_control_to_system.
9429
9430 2002-08-10 Kenichi Handa <handa@etl.go.jp>
9431
9432 * coding.c (unencodable_char_position): New function.
9433 (Funencodable_char_position): New function.
9434 (syms_of_coding): Defsubr Funencodable_char_position.
9435
9436 2002-08-10 Andrew Choi <akochoi@shaw.ca>
9437
9438 * mac.c (sys_select) [MAC_OSX]: New function.
9439
9440 * macterm.c (MakeMeTheFrontProcess): New function.
9441 (mac_initialize): Call MakeMeTheFrontProcess.
9442
9443 * s/darwin.h: Define select to sys_select.
9444
9445 2002-08-09 Richard M. Stallman <rms@gnu.org>
9446
9447 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
9448
9449 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
9450
9451 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
9452 end of the buffer.
9453
9454 2002-08-08 Ken Raeburn <raeburn@mit.edu>
9455
9456 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
9457
9458 * puresize.h (BASE_PURESIZE): Increase to 910000.
9459
9460 2002-08-08 Kenichi Handa <handa@etl.go.jp>
9461
9462 * coding.c (Ffind_operation_coding_system): For write-region, if
9463 VISIT is a filename, make it the target.
9464
9465 2002-08-07 Richard M. Stallman <rms@gnu.org>
9466
9467 * alloc.c (mark_object): Detect long lists for debugging.
9468 (mark_object_loop_halt): New variable.
9469
9470 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
9471
9472 * data.c (Fmake_variable_frame_local): Doc fix.
9473
9474 2002-08-01 David Ponce <david@dponce.com>
9475
9476 * w32menu.c (local_heap, local_alloc, local_free): New macros.
9477 (malloc_widget_value, free_widget_value)
9478 (w32_free_submenu_strings): Use them.
9479
9480 (push_submenu_start, push_submenu_end, push_left_right_boundary)
9481 (push_menu_pane, push_menu_item, single_keymap_panes)
9482 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
9483 (single_submenu, set_frame_menubar)
9484 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
9485
9486 (Fx_popup_menu): Don't show pop up menu until preceding one is
9487 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
9488
9489 * w32menu.c: Changes adapted from xmenu.c
9490 (set_frame_menubar): First parse all submenus,
9491 then make widget_value trees from them.
9492 Don't allocate any widget_value objects
9493 until we are done with the parsing.
9494 (parse_single_submenu): New function.
9495 (digest_single_submenu): New function.
9496 (single_submenu): Function deleted, replaced by those two.
9497
9498 2002-08-04 Andrew Choi <akochoi@shaw.ca>
9499
9500 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
9501 returns a valid window pointer before proceeding for keyDown and
9502 autoKey events.
9503
9504 2002-08-03 Andrew Choi <akochoi@shaw.ca>
9505
9506 * macterm.c (USE_CARBON_EVENTS): New macro.
9507 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
9508 (x_iconify_frame): Call CollapseWindow.
9509 (Vmac_reverse_ctrl_meta): New variable.
9510 (Vmac_wheel_button_is_mouse_2): New variable.
9511 (init_mac_drag_n_drop): New function.
9512 (mac_do_receive_drag): New function.
9513 (mac_handle_service_event): New function.
9514 (init_service_handler): New function.
9515 (mac_to_emacs_modifiers): New function.
9516 (mac_event_to_emacs_modifiers): New function.
9517 (mac_get_mouse_btn): New function.
9518 (mac_convert_event_ref): New function.
9519 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
9520 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
9521 mac_get_mouse_btn.
9522 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
9523
9524 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
9525 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
9526 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
9527 TOOL_BAR_EVENT for MAC_OS as well.
9528 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
9529 as for WINDOWS_NT.
9530 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
9531
9532 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
9533
9534 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
9535
9536 * xdisp.c (forward_to_next_line_start): Fix a condition that
9537 lead to a newline being skipped.
9538
9539 2002-08-02 Andrew Choi <akochoi@shaw.ca>
9540
9541 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
9542
9543 2002-08-01 Richard M. Stallman <rms@gnu.org>
9544
9545 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
9546
9547 2002-07-31 Andrew Choi <akochoi@shaw.ca>
9548
9549 * macfns.c: #undef init_process before #define-ing it.
9550
9551 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
9552 HAVE_CARBON is defined.
9553
9554 2002-07-31 Richard M. Stallman <rms@gnu.org>
9555
9556 * xmenu.c (set_frame_menubar): First parse all submenus,
9557 then make widget_value trees from them.
9558 Don't allocate any widget_value objects
9559 until we are done with the parsing.
9560 (parse_single_submenu): New function.
9561 (digest_single_submenu): New function.
9562 (single_submenu): Function deleted, replaced by those two.
9563
9564 2002-07-30 Juanma Barranquero <lektu@terra.es>
9565
9566 * w32proc.c (syms_of_ntproc): Fix docstring of
9567 `w32-get-true-file-attributes'.
9568
9569 2002-07-28 Richard M. Stallman <rms@gnu.org>
9570
9571 * s/hpux8.h (HPUX8): Define this before including hpux.h.
9572 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
9573
9574 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
9575
9576 * keyboard.c (make_lispy_event):
9577 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
9578 Explicitly clear up_modifier in event->modifiers.
9579
9580 2002-07-27 Richard M. Stallman <rms@gnu.org>
9581
9582 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
9583
9584 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9585 for bar cursor.
9586
9587 2002-07-26 Kenichi Handa <handa@etl.go.jp>
9588
9589 * coding.c (detect_coding_iso2022): While checking a byte sequence
9590 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
9591 it in the normal loop.
9592
9593 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
9594
9595 * xterm.c (expose_overlaps): New function.
9596 (expose_window): Use it to fix the display of overlapping rows.
9597
9598 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
9599
9600 2002-07-23 Ken Raeburn <raeburn@gnu.org>
9601
9602 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
9603 since it only depends on XUINT.
9604
9605 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
9606 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
9607 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
9608 Macros deleted.
9609
9610 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
9611 its value over other approaches.
9612 * sysdep.c (start_of_data): Don't define the function if a macro
9613 form has been defined.
9614
9615 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
9616
9617 * xdisp.c (redisplay_updating_p): New variable.
9618 (init_iterator): Don't free realized faces when
9619 redisplay_updating_p is set.
9620 (redisplay_internal): Set redisplay_updating_p while updating
9621 the display.
9622
9623 2002-07-23 Richard M. Stallman <rms@gnu.org>
9624
9625 * editfns.c (Fmessage): Treat "" like nil.
9626
9627 2002-07-23 Kenichi Handa <handa@etl.go.jp>
9628
9629 * xdisp.c (face_before_or_after_it_pos):
9630 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
9631
9632 2002-07-22 Juanma Barranquero <lektu@terra.es>
9633
9634 * callproc.c (init_callproc) [DOS_NT]:
9635 Initialize Vshared_game_score_directory to nil.
9636 (syms_of_callproc) [DOS_NT]: Likewise.
9637
9638 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
9639
9640 * xdisp.c (display_line): Replace an abort with xassert.
9641
9642 2002-07-21 Richard M. Stallman <rms@gnu.org>
9643
9644 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
9645 and END_UNCHANGED when setting buffer_unchanged_p.
9646 Use current_matrix_up_to_date_p to decide whether to use
9647 try_cursor_movement.
9648
9649 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
9650
9651 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
9652
9653 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
9654 Set to nil if dir does not exist.
9655 (syms_of_callproc): Init unconditionally and simply.
9656
9657 * buffer.c (Fbuffer_list): Doc fix.
9658
9659 2002-07-21 Ken Raeburn <raeburn@gnu.org>
9660
9661 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
9662
9663 * buffer.c (mmap_realloc): When shrinking, make sure number of
9664 pages to unmap is rounded towards zero.
9665
9666 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
9667 (XSETINT): Deleted.
9668
9669 * m/att3b.h (XINT): Don't define.
9670 (VALBITS, VALMASK, XTYPE): Deleted.
9671 (DATA_SEG_BITS): Define.
9672 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
9673 ARRAY_MARK_FLAG): Deleted.
9674 (DATA_SEG_BITS): Define.
9675 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
9676 (DATA_SEG_BITS): Define.
9677
9678 2002-07-20 Richard M. Stallman <rms@gnu.org>
9679
9680 * print.c (print_error_message): New args CONTEXT and CALLER.
9681 Calls changed.
9682
9683 * lisp.h (print_error_message): Declare new args.
9684
9685 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
9686 and CONTEXT to print_error_message, don't print them here.
9687 For a Quit, don't use Vsignaling_function.
9688 Call message_log_maybe_newline.
9689
9690 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
9691
9692 2002-07-20 Kim F. Storm <storm@cua.dk>
9693
9694 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
9695
9696 2002-07-19 Ken Raeburn <raeburn@gnu.org>
9697
9698 * bytecode.c (struct byte_stack): Pointers into byte string now
9699 point to const.
9700 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
9701 const.
9702 * charset.h (BCOPY_SHORT): Source pointer now points to const.
9703 * coding.c (encode_eol, detect_coding, detect_eol):
9704 (decode_coding, encode_coding, detect_coding_system):
9705 Source strings now treated as const.
9706 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
9707 modify Lisp string contents.
9708 * coding.h (decode_coding, encode_coding, detect_coding,
9709 detect_eol): Declarations updated.
9710 * composite.c (compose_chars_in_text): Treat Lisp string contents
9711 as const.
9712 * dispnew.c (safe_bcopy): Source pointer now points to const.
9713 * lisp.h (STRING_COPYIN): New macro.
9714 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
9715 (internal_with_output_to_temp_buffer): Declarations updated.
9716 * print.c (temp_output_buffer_setup):
9717 (internal_with_output_to_temp_buffer): Buffer name argument is now
9718 pointer to const.
9719 * sound.c (struct sound_device): Function pointer field "write"
9720 buffer argument now points to const.
9721 (vox_write): Buffer argument points to const.
9722 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
9723 contents as const.
9724 * sysdep.c (emacs_write): Buffer pointer now const.
9725 * term.c (encode_terminal_code): Buffer pointer now const.
9726 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
9727 (x_face_list_fonts, x_update_menu_appearance):
9728 (hash_string_case_insensitive): Treat Lisp string contents as const.
9729
9730 2002-07-19 Juanma Barranquero <lektu@terra.es>
9731
9732 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
9733
9734 * fileio.c (syms_of_fileio): Likewise.
9735 (Ffile_name_as_directory): Fix argument name in docstring.
9736 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
9737
9738 2002-07-18 Richard M. Stallman <rms@gnu.org>
9739
9740 * data.c (Fdefalias): Doc fix.
9741
9742 2002-07-17 Dave Love <fx@gnu.org>
9743
9744 * intervals.h (text_property_stickiness): Use P_.
9745
9746 * ccl.c: Remove `emacs' conditionals.
9747 (ccl_backtrace_table): Fix size spec.
9748 (ccl_driver): Fix type errors.
9749
9750 2002-07-16 Ken Raeburn <raeburn@gnu.org>
9751
9752 * alloc.c (xstrdup, make_string, make_unibyte_string)
9753 (make_multibyte_string, build_string): String pointer args now
9754 point to const.
9755 * charset.c (find_charset_in_text, c_string_width):
9756 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
9757 * fileio.c (report_file_error):
9758 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
9759 (count_combining_before, count_combining_after, insert_1_both):
9760 (insert, insert_and_inherit, insert_string):
9761 (insert_before_markers, insert_before_markers_and_inherit):
9762 * lread.c (intern, oblookup, hash_string):
9763 * minibuf.c (temp_echo_area_glyphs):
9764 * search.c (fast_c_string_match_ignore_case):
9765 * sysdep.c (emacs_open, set_file_times):
9766 * xfaces.c (xstricmp):
9767 * xdisp.c (store_frame_title, string_char_and_length):
9768 (message_dolog, message2, message2_nolog, set_message): Likewise.
9769 (set_message_1): Cast message string argument to const pointer.
9770 * editfns.c (general_insert_function): Insertion function now
9771 takes pointer to const for input data.
9772 * charset.h (find_charset_in_text, c_string_width):
9773 (parse_str_as_multibyte): Declarations updated.
9774 * dispextern.h (xstricmp): Declaration updated.
9775 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
9776 (count_size_as_multibyte, count_combining_before):
9777 (count_combining_after, insert_1, insert_1_both, message_dolog):
9778 (insert, insert_and_inherit, insert_before_markers)
9779 (insert_before_markers_and_inherit, set_message, message2):
9780 (message2_dolog, build_string, make_string, make_unibyte_string):
9781 (make_multibyte_string, intern, oblookup, report_file_error):
9782 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
9783 (emacs_open, xstrdup): Declarations updated.
9784 * systime.h (set_file_times): Declaration updated.
9785
9786 * charset.c (find_charset_in_text, lisp_string_width): Use const
9787 for pointer to lisp string data.
9788 * charset.h (FETCH_STRING_CHAR_ADVANCE):
9789 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
9790 * coding.c (Ffind_coding_systems_region_interval):
9791 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
9792 (Fmake_directory_internal, Fdelete_directory):
9793 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
9794 * fontset.c (font_family_registry, fs_query_fontset):
9795 (list_fontsets):
9796 * frame.c (Fframe_parameter):
9797 * keyboard.c (cmd_error_internal):
9798 * keymap.c (Fdescribe_buffer_bindings):
9799 * lread.c (complete_filename_p, openp):
9800 * minibuf.c (Fminibuffer_complete_word):
9801 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
9802 (face_before_or_after_it_pos, next_element_from_string):
9803 (get_overlay_arrow_glyph_row, display_mode_element):
9804 (decode_mode_spec_coding):
9805 * xterm.c (same_x_server): Likewise.
9806
9807 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
9808 settings of non-existent fields.
9809
9810 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
9811 copy a lisp value.
9812
9813 * lread.c (Fintern_soft): Use string macros instead of
9814 Lisp_String fields.
9815 * keyboard.c (echo_char, parse_modifiers_uncached):
9816 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
9817 * textprop.c (validate_interval_range, interval_of): Likewise.
9818
9819 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
9820
9821 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9822 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
9823 XSTRING()->size_byte.
9824
9825 * lisp.h (SDATA, SREF): Produce rvalue.
9826 (SSET): New macro.
9827 * alloc.c (make_event_array): Use SSET for storing into a string.
9828 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
9829 a string.
9830 * casefiddle.c (casify_object): Use SSET.
9831 * charset.h (FETCH_STRING_CHAR_ADVANCE)
9832 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
9833 address of string contents.
9834 * data.c (Faref): Use SDATA.
9835 (Faset): Use SDATA, SSET.
9836 * dired.c (directory_files_internal): Use SSET.
9837 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
9838 (Fread_file_name): Use SREF, SSET.
9839 * fns.c (concat): Use SSET.
9840 (concat, Fdelete): Use SDATA.
9841 * insdel.c (insert_from_string_1): Use SDATA.
9842 * keyboard.c (Fevent_convert_list): Use SREF.
9843 * lread.c (Fload): Use SDATA, SSET.
9844 * macfns.c (validate_x_resource_name): Use SSET.
9845 * process.c (status_message): Use SSET.
9846 * search.c (wordify): Use SDATA.
9847 (Freplace_match): Use SREF.
9848 * w32fns.c (validate_x_resource_name): Use SSET.
9849 * xfns.c (validate_x_resource_name): Use SSET.
9850 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
9851
9852 2002-07-16 Richard M. Stallman <rms@gnu.org>
9853
9854 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
9855
9856 * xdisp.c (reconsider_clip_changes):
9857 Don't test prevent_redisplay_optimizations_p.
9858 (redisplay_internal): Test prevent_redisplay_optimizations_p
9859 along with clip_changed in some cases.
9860 (try_window_id): Likewise.
9861 (redisplay_window): New local var buffer_unchanged_p.
9862
9863 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
9864
9865 * process.c (create_process): Test USG_SUBTTY_WORKS.
9866 (process_send_signal): Clean up handling of GID.
9867 Detect errors in ioctls meant to set GID.
9868
9869 * window.c (temp_output_buffer_show):
9870 Don't set prevent_redisplay_optimizations_p.
9871
9872 2002-07-15 Juanma Barranquero <lektu@terra.es>
9873
9874 * eval.c (Fdefvaralias): Add docstring argument.
9875
9876 2002-07-15 Ken Raeburn <raeburn@gnu.org>
9877
9878 * lisp.h (STRING_INTERVALS): Produce rvalue.
9879 (STRING_SET_INTERVALS): New macro.
9880 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
9881 * fns.c (Fstring_as_multibyte): Likewise.
9882 * intervals.c (balance_possible_root_interval, delete_interval)
9883 (create_root_interval, copy_intervals_to_string): Likewise.
9884 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
9885 instead of 0.
9886
9887 2002-07-14 Ken Raeburn <raeburn@gnu.org>
9888
9889 * lisp.h (STRING_SET_CHARS): New macro.
9890 (SCHARS, SBYTES): Produce rvalues.
9891 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
9892 * fns.c (concat): Likewise.
9893 * lread.c (read_vector): Likewise.
9894
9895 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
9896 (STRING_SET_UNIBYTE): New macro.
9897 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
9898 length of -1) changed to use STRING_SET_UNIBYTE.
9899 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
9900 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
9901 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
9902 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
9903 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
9904 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
9905 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
9906 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
9907 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
9908 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
9909 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
9910 STRING_BYTES or indirection changed to SCHARS, SBYTES,
9911 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
9912 unchanged for now.
9913
9914 2002-07-13 Kim F. Storm <storm@cua.dk>
9915
9916 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
9917
9918 2002-07-12 Richard M. Stallman <rms@gnu.org>
9919
9920 * fileio.c (Fwrite_region): Doc fix.
9921
9922 * print.c (print_error_message): Don't handle Vsignaling_function here.
9923
9924 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
9925 (command_loop_1): Avoid certain actions after memory-full error.
9926
9927 * eval.c (Fsignal): Don't call cancel_hourglass.
9928 For a memory-full error, don't call Vsignal_hook_function
9929 and don't set Vsignaling_function.
9930
9931 * process.c (process_send_signal): Add abort call.
9932
9933 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
9934
9935 * keymap.c (Fkey_binding): Fix typo.
9936
9937 2002-07-11 Richard M. Stallman <rms@gnu.org>
9938
9939 * alloc.c (Vmemory_full): New variable.
9940 (Vmemory_signal_data): Renamed from memory_signal_data.
9941 Uses changed.
9942 (syms_of_alloc): Defvar them.
9943 (memory_full, buffer_memory_full): Set Vmemory_full.
9944
9945 * lisp.h (Vmemory_full): Add declaration.
9946 (current_column, indented_beyond_p): Change declaration.
9947
9948 * indent.c (last_known_column): Declare as double, not float.
9949 (current_column, current_column_1, string_display_width)
9950 (position_indentation): Return `double'.
9951 (indented_beyond_p): Arg `column' is `double'. Callers changed.
9952
9953 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
9954 (back_to_previous_visible_line_start)
9955 (reseat_at_next_visible_line_start, next_element_from_buffer):
9956 Use `double', not `float', when calling indented_beyond_p.
9957
9958 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
9959
9960 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
9961
9962 2002-07-11 Juanma Barranquero <lektu@terra.es>
9963
9964 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
9965 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
9966 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
9967 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
9968 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
9969 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
9970
9971 2002-07-10 Juanma Barranquero <lektu@terra.es>
9972
9973 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
9974 All callers changed.
9975
9976 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
9977
9978 * data.c (Fdefalias): Add an optional `docstring' argument.
9979 (set_internal, Fsetq_default): Use XCAR/XCDR.
9980
9981 * composite.c (HASH_VALUE, HASH_KEY):
9982 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
9983
9984 2002-07-09 Kenichi Handa <handa@etl.go.jp>
9985
9986 * callproc.c (Fcall_process): Fix previous change.
9987
9988 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
9989
9990 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9991 Add support for hash-tables.
9992 (Ftry_completion): Return t even if the string appears multiple times.
9993
9994 * fns.c (Fnconc): Use XCDR.
9995 (Fprovide): Use CONSP and XCDR.
9996 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
9997 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
9998 (Fmake_hash_table): Accept `:size nil'.
9999 (Fmakehash): Delete: moved to subr.el.
10000 (syms_of_fns): Don't defsubr makehash.
10001
10002 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10003 (HASH_TABLE_SIZE): Move from fns.c.
10004
10005 2002-07-07 Richard M. Stallman <rms@gnu.org>
10006
10007 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10008 Instead just return 0 when there is something to be done.
10009 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10010 retry scrolling as if cursor were off the bottom.
10011 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10012 return CURSOR_MOVEMENT_MUST_SCROLL.
10013 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10014 go to try_to_scroll.
10015
10016 * buffer.c (Fbuffer_local_value): Store current value into its binding
10017 so we get the up-to-date value for the binding that is loaded.
10018
10019 * eval.c (Fdefmacro): Doc fix.
10020
10021 2002-07-05 Dave Love <fx@gnu.org>
10022
10023 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10024 correctly.
10025
10026 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10027 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10028 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10029 CCL_LookupCharConstTbl.
10030 (syms_of_ccl): Defvar translation-hash-table-vector.
10031
10032 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10033
10034 * xdisp.c: Remove unused variable `face'.
10035
10036 2002-07-04 Juanma Barranquero <lektu@terra.es>
10037
10038 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10039 obsolescence information.
10040
10041 2002-07-03 Andrew Choi <akochoi@shaw.ca>
10042
10043 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10044 pattern. Search cache first.
10045 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10046 for Japanese font.
10047 (XLoadQueryFont): Use it.
10048
10049 2002-07-02 Richard M. Stallman <rms@gnu.org>
10050
10051 * keymap.c (Fdefine_key): Doc fix.
10052
10053 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10054
10055 2002-07-02 Juanma Barranquero <lektu@terra.es>
10056
10057 * keymap.c (syms_of_keymap): Fix typo.
10058
10059 2002-07-01 Andrew Choi <akochoi@shaw.ca>
10060
10061 * s/darwin.h: Define POSIX_SIGNALS.
10062
10063 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10064 and FSRefMakePath to convert FSSpec returned with Apple Event to
10065 Posix pathname.
10066 (mac_initialize) [TARGET_API_MAC_CARBON]:
10067 Call init_required_apple_events and disable the `Quit' menu item
10068 provided automatically by the Carbon Toolbox.
10069
10070 2002-07-01 Dave Love <fx@gnu.org>
10071
10072 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10073 for K&R.
10074
10075 * xterm.c: Fix prototype for K&R.
10076
10077 * term.c (costs_set): Declare static, non-initialized for pcc.
10078
10079 2002-07-01 Richard M. Stallman <rms@gnu.org>
10080
10081 * keyboard.c (timer_last_idleness_start_time): New variable.
10082 (timer_start_idle): Set that.
10083 (read_key_sequence): Use that to reset timer_idleness_start_time
10084 to previous value.
10085
10086 * window.c (Frecenter): With arg, set optional_new_start.
10087
10088 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10089
10090 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10091 buffer for completion.
10092
10093 2002-06-29 Ken Raeburn <raeburn@gnu.org>
10094
10095 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10096
10097 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10098
10099 * keyboard.c (readable_filtered_events): New function that filters
10100 FOCUS_IN_EVENT depending on parameter.
10101 (readable_events): Calls readable_filtered_events, not filtering
10102 FOCUS_IN_EVENT.
10103 (get_filtered_input_pending): New function, filtering parameter passed
10104 to readable_filtered_events.
10105 (get_input_pending): Calls get_filtered_input_pending, not filtering
10106 FOCUS_IN_EVENT.
10107 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10108 FOCUS_IN_EVENT.
10109
10110 * xterm.h (struct x_output): Add focus_state.
10111
10112 * xterm.c (x_focus_changed): New function.
10113 (x_detect_focus_change): New function.
10114 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10115 EnterNotify and LeaveNotify to track X focus changes.
10116
10117 2002-06-28 Andreas Schwab <schwab@suse.de>
10118
10119 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10120
10121 2002-06-27 Kim F. Storm <storm@cua.dk>
10122
10123 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10124 (mode_line_string_face_prop): New variables.
10125 (store_mode_line_string): New function.
10126 (display_mode_element): Use store_mode_line_string to
10127 add mode-line string elements to mode_line_string_list
10128 when mode_line_string_list is non-nil.
10129 (Fformat_mode_line): Now returns propertized string by
10130 default. New arg NO-PROPS to ignore properties.
10131 (decode_mode_spec): Only add two dashes for %- in propertized
10132 mode-line string.
10133 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10134
10135 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10136
10137 * minibuf.c (minibuffer_completion_contents): Add return type.
10138
10139 2002-06-27 Juanma Barranquero <lektu@terra.es>
10140
10141 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10142
10143 2002-06-26 Juanma Barranquero <lektu@terra.es>
10144
10145 * fileio.c (read_file_name_cleanup): Add missing return.
10146
10147 2002-06-26 Richard M. Stallman <rms@gnu.org>
10148
10149 * window.c (Frecenter): Don't set force_start flag.
10150
10151 * minibuf.c (do_completion, Fminibuffer_complete_word)
10152 (Fminibuffer_completion_help): Complete just the text before point.
10153 (minibuffer_completion_contents): New function.
10154
10155 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10156
10157 * frame.c (frames_bury_buffer): Function deleted.
10158
10159 2002-06-25 Miles Bader <miles@gnu.org>
10160
10161 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10162 the end of callint_message, allow for a terminating '\0'.
10163
10164 2002-06-24 Juanma Barranquero <lektu@terra.es>
10165
10166 * w32select.c: Include composite.h
10167
10168 * w16select.c: Likewise.
10169
10170 2002-06-24 Kenichi Handa <handa@etl.go.jp>
10171
10172 * callproc.c (Fcall_process): If code detection is necessary,
10173 call detect_coding directly here.
10174
10175 * coding.c (detect_eol): Preserve coding->cmp_data.
10176
10177 * w16select.c (Fw16_get_clipboard_data):
10178 * w32fns.c (w32_to_x_font):
10179 * w32select.c (Fw32_get_clipboard_data):
10180 * xselect.c (selection_data_to_lisp_data):
10181 * xterm.c (XTread_socket): Disable composition handling.
10182
10183 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10184
10185 * print.c (temp_output_buffer_setup): Kill all local variables.
10186
10187 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10188
10189 * lread.c (Fread): Remove redundant and imprecise declaration.
10190
10191 * xfns.c (check_x_display_info): Use check_x_frame.
10192
10193 * .gdbinit (xprintsym): Use the new `xname' field.
10194 (xsymbol): Use it.
10195
10196 2002-06-22 Jason Rumney <jasonr@gnu.org>
10197
10198 * w32fns.c (file_dialog_callback): New function.
10199 (Fx_file_dialog): Allow selecting directories as well as files.
10200
10201 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10202
10203 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
10204 OpenBSD. Add support for mipseb-*-netbsd* machines.
10205
10206 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10207
10208 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10209 black and white before scrolling. Restore frame background and
10210 foreground color after scrolling.
10211 (do_window_update): Call XClearWindow before calling expose_frame.
10212 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10213 FRAME_FOREGROUND_PIXEL of frame.
10214
10215 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10216 test Mac command key as <ALT> key.
10217
10218 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10219
10220 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10221
10222 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10223 Lookup keys in function-key-map immediately so that key-translation-map
10224 can be applied earlier.
10225 Remove function_key_possible and key_translation_possible, replaced
10226 by checking `keytran_start < t'.
10227
10228 * .gdbinit (xsymbol): Use the new `xname' field.
10229
10230 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10231
10232 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10233 test Mac command key as <ALT> key.
10234
10235 * mac.c (do_applescript): Call initialize_applescript if necessary
10236 when first called. Dispose of result_desc only when there is no error.
10237 (Fdo_applescript): Use %d format specifier instead of %ld.
10238
10239 2002-06-16 Andrew Choi <akochoi@shaw.ca>
10240
10241 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10242 of FrontWindow for cases keyDown and autoKey.
10243
10244 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10245 Vdefault_fontset to Monaco with mac-roman coding.
10246
10247 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10248 init_process before and after inclusion of Carbon/Carbon.h, resp.
10249
10250 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
10251 cursor_gc.
10252 (add_font_name_table_entry): New function.
10253 (init_font_name_table): Use add_font_name_table_entry; add italic,
10254 bold, and bold-italic entries for truetype fonts.
10255
10256 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
10257 for Mac too.
10258 (try_font_list) [MAC_OS]: If no font matches given registry, try
10259 fonts with any registry matching face_family.
10260 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
10261
10262 * s/darwin.h: If autoconf detects the Ncurses library, define
10263 LIBS_TERMCAP to -lncurses to use it.
10264
10265 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
10266
10267 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
10268
10269 2002-06-15 Richard M. Stallman <rms@gnu.org>
10270
10271 * window.c (Fset_window_configuration): Explicitly preserve
10272 the point value that new_current_buffer had at the start.
10273
10274 2002-06-14 Juanma Barranquero <lektu@terra.es>
10275
10276 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
10277 Fix typos.
10278
10279 2002-06-14 Kim F. Storm <storm@cua.dk>
10280
10281 * insdel.c (insert_1_both, insert_from_string_1)
10282 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
10283 insert happened in the end_unchanged region. Otherwise, the
10284 redisplay may be confused and duplicate the last line in the
10285 buffer [seen after save-buffer when require-final-newline==t].
10286
10287 2002-06-13 Jason Rumney <jasonr@gnu.org>
10288
10289 * w32.c (init_environment): Remove EMACSLOCKDIR.
10290 (stat): Swap _S_IFDIR and _S_IFREG.
10291
10292 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10293
10294 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
10295 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
10296 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
10297 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
10298 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
10299 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
10300 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
10301 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
10302 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
10303 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
10304 SELECTION_REQUEST_EVENT, selection_clear_event to
10305 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
10306 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
10307 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
10308 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
10309 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
10310 no_event to NO_EVENT.
10311
10312 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10313
10314 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
10315
10316 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
10317
10318 * intervals.c (textget): Don't forget to `return'.
10319 (lookup_char_property): Use XCAR/XCDR.
10320
10321 2002-06-12 Juanma Barranquero <lektu@terra.es>
10322
10323 * xdisp.c (Fformat_mode_line): Fix typo.
10324
10325 2002-06-12 Kim F. Storm <storm@cua.dk>
10326
10327 * xdisp.c (Fformat_mode_line): New function.
10328 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
10329 (store_frame_title_char, store_frame_title): Use unconditionally.
10330 (init_xdisp): Defsubr Fformat_mode_line.
10331 Initialize frame_title_buf etc. unconditionally.
10332
10333 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
10334
10335 * keyboard.c (read_key_sequence):
10336 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
10337 things through those maps after downcasing events.
10338 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
10339 applies after function-key-map.
10340 Make sure that keytran can be done in the middle in the sequence.
10341 Be careful not to throw away events past the one we downcase.
10342
10343 * lread.c (read_integer): Remove unused var `tem'.
10344 (read1): Fix int/Lisp_Object mixup.
10345
10346 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
10347
10348 2002-06-11 Richard M. Stallman <rms@gnu.org>
10349
10350 * keyboard.c (readable_events): Ignore any number of
10351 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
10352
10353 2002-06-09 Miles Bader <miles@gnu.org>
10354
10355 * xfaces.c (Ftty_supports_face_attributes_p): New function.
10356 (parse_rgb_list, tty_lookup_color): New functions.
10357 (tty_defined_color): Use `tty_lookup_color' to do all the work.
10358 (color_distance, Fcolor_distance): New functions.
10359 (TTY_SAME_COLOR_THRESHOLD): New macro.
10360 (Qtty_color_standard_values): New variable.
10361 (syms_of_xfaces): Initialize new vars & functions.
10362
10363 2002-06-08 Colin Walters <walters@verbum.org>
10364
10365 * textprop.c (Vchar_property_alias_alist): New variable.
10366 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
10367
10368 * intervals.c (lookup_char_property): New function for looking up
10369 overlay and text properties, created from textget.
10370 (textget): Use it.
10371
10372 * intervals.h (lookup_char_property): Declare.
10373 (Vchar_property_alias_alist): Declare.
10374
10375 * buffer.c (Foverlay_get): Use lookup_char_property.
10376
10377 2002-06-07 Sam Steingold <sds@gnu.org>
10378
10379 * xselect.c (lisp_data_to_selection_data): Fix last change:
10380 *data_ret is not a Lisp string, while unibyte_string is.
10381
10382 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
10383
10384 * xselect.c (lisp_data_to_selection_data): Fix last change:
10385 set size_ret.
10386
10387 2002-06-07 Andreas Schwab <schwab@suse.de>
10388
10389 * m/amdx86-64.h: New file.
10390
10391 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
10392
10393 * fns.c (Fstring_make_unibyte): Doc fix.
10394
10395 * xselect.c (lisp_data_to_selection_data): If the requested type
10396 is STRING, call string_make_unibyte to encode the selected text
10397 as a string.
10398
10399 * window.c (Fset_window_hscroll): Doc fix.
10400
10401 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10402
10403 * fileio.c (choose_write_coding_system):
10404 Call select-safe-coding-system properly.
10405
10406 2002-06-03 Richard M. Stallman <rms@gnu.org>
10407
10408 * xdisp.c (message_with_string): Error if STRING is not a string.
10409
10410 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
10411
10412 * fileio.c (choose_write_coding_system): Pass FILE arg to
10413 Vselect_safe_coding_system_function.
10414
10415 2002-06-03 Ken Raeburn <raeburn@gnu.org>
10416
10417 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
10418
10419 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
10420
10421 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
10422 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
10423 * keymap.c (describe_command): Likewise.
10424 * minibuf.c (read_minibuf): Likewise.
10425
10426 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
10427 Cast `current_column' return value to int.
10428 (back_to_previous_visible_line_start)
10429 (reseat_at_next_visible_line_start, next_element_from_buffer):
10430 Cast `indented_beyond_p' 3rd arg to float.
10431
10432 * indent.c (last_known_column): Now a float.
10433 (current_column_1, position_indentation, current_column)
10434 (string_display_width): Return float.
10435 (Fcurrent_column): Cast `current_column' return value to int.
10436 (Fcurrent_indentation): Cast `position_indentation' retval to int.
10437 (indented_beyond_p): Third arg now a float.
10438 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
10439
10440 * lisp.h (current_column): Now returns float.
10441 (indented_beyond_p): 3rd arg now a float.
10442
10443 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
10444
10445 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
10446 is Qcompound_text_with_extensions.
10447
10448 * xselect.c (lisp_data_to_selection_data): Always set selection
10449 type as string if x_encode_text returns streingp non-NULL.
10450
10451 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
10452
10453 2002-05-30 Richard M. Stallman <rms@gnu.org>
10454
10455 * window.c (Fset_window_configuration): Correct the handling
10456 of point in current buffer, to work with multiple windows.
10457
10458 2002-05-29 Colin Walters <walters@verbum.org>
10459
10460 * lread.c (Fread_from_string): Don't depend on order of evaluation
10461 for C function parameters.
10462
10463 2002-05-28 Richard M. Stallman <rms@gnu.org>
10464
10465 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
10466 way for blinked-off state and for a nonselected window.
10467
10468 * window.c (window_scroll_pixel_based): Don't call Fbolp;
10469 instead, see if the new start pos is at beginning of line.
10470
10471 * fileio.c (Fwrite_region): If START is a string, don't
10472 make any annotations.
10473
10474 * eval.c (syms_of_eval): Doc fix.
10475
10476 2002-05-28 Colin Walters <walters@debian.org>
10477
10478 * emacs.c (USAGE1): Add --no-splash.
10479 (standard_args): Ditto.
10480
10481 2002-05-28 Colin Walters <walters@gnu.org>
10482
10483 * lread.c (readchar_count): New variable.
10484 (readchar): Increment it.
10485 (unreadchar): Decrement it.
10486 (read_multibyte): Decrement it.
10487 (Vread_with_symbol_positions): New variable.
10488 (Vread_symbol_positions_list): New variable.
10489 (read_internal_start): New function, created from Fread and
10490 Fread_from_string. Handle Vread_symbol_positions_list and
10491 Vread_with_symbol_positions.
10492 (readevalloop, Fread, Fread_from_string): Use it.
10493 (read1): Use readchar_count to add symbol positions to
10494 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
10495 (syms_of_lread): DEFVAR_LISP and initialize them.
10496
10497 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
10498 (substitute_object_recurse, substitute_object_in_subtree)
10499 (substitute_in_interval): Prototype.
10500 (read_multibyte): Return c if it's less than zero.
10501
10502 2002-05-28 Kim F. Storm <storm@cua.dk>
10503
10504 * fileio.c (Fread_file_name_internal): Added brute-force
10505 speed up for using predicate file-directory-p.
10506
10507 2002-05-28 Kim F. Storm <storm@cua.dk>
10508
10509 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
10510 New variables.
10511 (syms_of_fileio): DEFVAR_LISP them.
10512 (read_file_name_cleanup): New unwind function.
10513 (Fread_file_name_internal): Only return completions satifying
10514 Vread_file_name_predicate. Temporarily unwind protect and rebind
10515 default-directory while checking completions against the predicate.
10516 (Fread_file_name): Added PREDICATE argument. Specbind it to
10517 Vread_file_name_predicate during completion.
10518 Call Vread_file_name_function to read the file name if non-nil.
10519
10520 * lisp.h (Fread_file_name): Now has 6 args.
10521
10522 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
10523 predicate for Fread_file_name when reading directory name.
10524 Supply Qnil for predicate in other calls to Fread_file_name.
10525
10526 2002-05-26 Miles Bader <miles@gnu.org>
10527
10528 * term.c (tty_capable_p): New function.
10529 * dispextern.h (tty_capable_p): New function declaration.
10530 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
10531 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
10532
10533 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
10534
10535 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
10536 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
10537 (Vwrite_region_annotate_functions): Docstring fix.
10538
10539 2002-05-23 Kim F. Storm <storm@cua.dk>
10540
10541 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
10542 phys_cursor's hpos is overwritten. This is still not completely
10543 correct, as it doesn't really make sense to use hpos at all to
10544 get the cursor glyph (as that is relative to the width of the
10545 characters on the line, which may have changed during the update).
10546
10547 2002-05-22 Jason Rumney <jasonr@gnu.org>
10548
10549 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
10550 Lisp_Object.
10551 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
10552 Use modified enumfont_t struct.
10553
10554 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
10555
10556 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
10557 Handle the `hbar' cursor type.
10558 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
10559
10560 * w32fns.c (Qhbar): New variable.
10561 (x_specified_cursor_type): Use it.
10562
10563 2002-05-21 Ken Raeburn <raeburn@gnu.org>
10564
10565 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
10566 now, when the address is needed.
10567
10568 2002-05-21 Colin Walters <walters@gnu.org>
10569
10570 * Makefile.in (shortlisp): Add font-core.el.
10571
10572 2002-05-20 Richard M. Stallman <rms@gnu.org>
10573
10574 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
10575
10576 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
10577 equivalent key bindings here.
10578
10579 2002-05-20 Ken Raeburn <raeburn@gnu.org>
10580
10581 Change symbol structure to contain a lisp object for the symbol
10582 name:
10583 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
10584 object field named "xname".
10585 (SYMBOL_NAME): New macro.
10586 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
10587 name field.
10588 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
10589 (mark_object, gc_sweep): Use symbol xname field and XSTRING
10590 instead of name field.
10591 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
10592 SYMBOL_NAME instead of XSYMBOL and name field.
10593 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
10594 instead of XSYMBOL and name field.
10595 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
10596 and SYMBOL_NAME instead of XSYMBOL and name field.
10597 * coding.c (Fread_coding_system, code_convert_region1)
10598 (code_convert_string1, code_convert_string_norecord)
10599 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
10600 XSYMBOL and name field.
10601 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
10602 (Fmake_variable_buffer_local, Fmake_local_variable)
10603 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
10604 of XSYMBOL and name field.
10605 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
10606 XSYMBOL and name field.
10607 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
10608 instead of XSYMBOL and name field.
10609 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
10610 XSYMBOL and name field.
10611 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
10612 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10613 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
10614 instead of XSYMBOL and name field.
10615 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
10616 (parse_modifiers, apply_modifiers, Fevent_convert_list)
10617 (parse_solitary_modifier, Fexecute_extended_command):
10618 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10619 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
10620 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
10621 of XSYMBOL and name field.
10622 (describe_command, describe_translation): Use SYMBOL_NAME and
10623 assignment instead of XSYMBOL and name field and XSETSTRING.
10624 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
10625 instead of XSYMBOL and name field.
10626 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
10627 name field and XSETSTRING.
10628 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10629 of XSYMBOL and name field.
10630 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
10631 assignment instead of XSYMBOL and name field and XSETSTRING.
10632 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
10633 XSTRING instead of XSYMBOL and name field.
10634 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
10635 and XSTRING instead of XSYMBOL and name field.
10636 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
10637 and XSTRING instead of XSYMBOL and name field.
10638 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
10639 XSTRING instead of XSYMBOL and name field.
10640 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
10641 of XSYMBOL and name field.
10642 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
10643 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
10644
10645 2002-05-19 Ken Raeburn <raeburn@gnu.org>
10646
10647 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
10648 and XCDR real rvalues in most configurations.
10649
10650 * buffer.c (fix_overlays_in_range, fix_overlays_before):
10651 Don't take the address of the cdr part of a cons cell; instead, track
10652 the parent cell and call XSETCDR, or set the variable for the head
10653 of the list if we haven't started down the list yet.
10654
10655 2002-05-19 Richard M. Stallman <rms@gnu.org>
10656
10657 * doc.c (reread_doc_file): Don't ask for confirmation.
10658
10659 2002-05-18 Jason Rumney <jasonr@gnu.org>
10660
10661 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
10662 (xbm_load_image): Use it.
10663 (xbm_load): Ditto.
10664 (xbm_read_bitmap_data): Reverted to xfns.c version.
10665 From David Ponce <david@dponce.com>.
10666
10667 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
10668
10669 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
10670 2.02 and later.
10671
10672 2002-05-16 Juanma Barranquero <lektu@terra.es>
10673
10674 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
10675
10676 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
10677
10678 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
10679 meaningful test.
10680 (read_char_minibuf_menu_prompt): Fix typo.
10681
10682 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
10683
10684 * eval.c (Fcommandp): Doc fix.
10685
10686 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
10687
10688 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
10689 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
10690 (Fset_keymap_parent): Gcpro a bit more.
10691 (access_keymap): Gcpro around meta_map call and around the main loop.
10692 (get_keyelt): Gcpro when following indirect references.
10693 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
10694 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
10695 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
10696 Remove useless ad-hoc remap code.
10697
10698 2002-05-13 Richard M. Stallman <rms@gnu.org>
10699
10700 * search.c (search_buffer): Give up boyer moore search if inverse
10701 translation change charset_base.
10702
10703 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
10704
10705 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
10706 characters is carried over from the previous block of text, adjust
10707 coding->produced to account for the extra character.
10708
10709 2002-05-11 Andreas Schwab <schwab@suse.de>
10710
10711 * coding.c (intersection): Keep the elements of the returned list
10712 in the same order as in the first list.
10713
10714 2002-05-11 Kim F. Storm <storm@cua.dk>
10715
10716 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
10717 only update cmm_size if realloc actually succeeds.
10718 Testing with initial size of 2 elements revealed that using
10719 realloc on GNU/Linux would cause a random trap in xmalloc
10720 later on, so I rewrote the code to use malloc/bcopy/free instead
10721 of realloc.
10722
10723 2002-05-10 Jason Rumney <jasonr@gnu.org>
10724
10725 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
10726
10727 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
10728
10729 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
10730 parens, to ensure correct evaluation order.
10731
10732 2002-05-10 Kim F. Storm <storm@cua.dk>
10733
10734 * keymap.c (Vemulation_mode_map_alists): New variable.
10735 (syms_of_keymap): DEFVAR_LISP it.
10736 (current_minor_maps): Process keymap alists in that list before
10737 minor-mode-overriding-map-alist and minor-mode-map-alist.
10738
10739 2002-05-09 Richard M. Stallman <rms@gnu.org>
10740
10741 * search.c (Freplace_match): Doc fix.
10742
10743 2002-05-09 Kim F. Storm <storm@cua.dk>
10744
10745 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10746 Enlarge cursor rectangle drawn around image with non-zero relief.
10747
10748 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
10749 Enlarge cursor rectangle drawn around image with non-zero relief.
10750
10751 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
10752 Enlarge cursor rectangle drawn around image with non-zero relief.
10753
10754 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
10755
10756 * xselect.c (lisp_data_to_selection_data): Don't set selection
10757 type if comes from the Lisp object's car. If the selection
10758 contains a pure ASCII text, always return QSTRING as its type.
10759
10760 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10761
10762 * mac.c (mac-cut-function): Doc fix.
10763
10764 2002-05-05 Richard M. Stallman <rms@gnu.org>
10765
10766 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
10767
10768 2002-05-04 Jason Rumney <jasonr@gnu.org>
10769
10770 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
10771 for event-click-count.
10772
10773 * process.c (init_process): Only add server subfeature if we can
10774 use non-blocking I/O.
10775
10776 2002-05-04 Andrew Choi <akochoi@shaw.ca>
10777
10778 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
10779 repeatedly.
10780
10781 2002-05-03 Jason Rumney <jasonr@gnu.org>
10782
10783 * process.c (Fmake_network_process): Only support server sockets
10784 when we can make them non-blocking.
10785
10786 * s/ms-w32.h (HAVE_SELECT): Define.
10787
10788 * w32.h (FILE_NDELAY): New flag.
10789
10790 * w32.c (sys_getpeername, fcntl): New functions.
10791 (_sys_read_ahead): Temporarily block on non-blocking sockets.
10792
10793 * w32proc.c: include sys/file.h.
10794
10795 2002-05-03 Colin Walters <walters@verbum.org>
10796
10797 * callproc.c (Vgame_score_directory): Renamed to
10798 Vshared_game_score_directory.
10799
10800 2002-04-30 Richard M. Stallman <rms@gnu.org>
10801
10802 * s/gnu.h [emacs]: Include stdio.h.
10803 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
10804
10805 * eval.c (do_autoload): Error if called while preparing to dump.
10806
10807 * fns.c (Frequire): Error if need to load while preparing to dump.
10808
10809 2002-04-28 Colin Walters <walters@verbum.org>
10810
10811 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
10812 Default to "~/.emacs.d/games".
10813
10814 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
10815
10816 * lread.c (openp): Change arg exec_only to predicate.
10817 (build_load_history): Use XCAR/XCDR.
10818 (Flocate_file_internal): New fun.
10819 (syms_of_lread): Defsubr it.
10820 (Fload): Update call to openp.
10821
10822 * lisp.h (openp): Update prototype.
10823
10824 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
10825 * w32proc.c (sys_spawnve):
10826 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
10827 * w32.c (check_windows_init_file):
10828 * sound.c (Fplay_sound_internal):
10829 * process.c (Fstart_process):
10830 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
10831 * mac.c (run_mac_command):
10832 * emacs.c (init_cmdargs):
10833 * callproc.c (Fcall_process): Update call to openp.
10834
10835 * textprop.c (remove_properties): Don't use XCAR without CONSP.
10836
10837 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
10838
10839 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10840
10841 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
10842 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
10843
10844 2002-04-28 Richard M. Stallman <rms@gnu.org>
10845
10846 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
10847
10848 * eval.c (Fcommandp): New arg for_call_interactively.
10849 * lisp.h (Fcommandp): Declare new arg.
10850
10851 2002-04-28 Jason Rumney <jasonr@gnu.org>
10852
10853 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
10854
10855 * w32.c (stat, fstat): Use file index information to generate
10856 inodes for directories where available.
10857
10858 2002-04-26 Andrew Choi <akochoi@shaw.ca>
10859
10860 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
10861 [HAVE_CARBON]: Include Mac object files.
10862
10863 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
10864 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
10865 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
10866 MAC_OSX, and MAC_OS instead of macintosh.
10867
10868 * editfns.c [MAC_OS8]: Include stdio.h.
10869
10870 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
10871
10872 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
10873 Apple Monaco.
10874
10875 * process.c: Declare QCfamily and QCfilter as extern.
10876 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
10877 calling select.
10878
10879 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
10880
10881 * tparam.c [MAC_OSX]: Don't define BC and UP.
10882
10883 * config.in [HAVE_CARBON]: Add.
10884
10885 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
10886 Move here from mac/src and mac/inc.
10887
10888 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
10889
10890 2002-04-26 Gerd Moellmann <gerd@gnu.org>
10891
10892 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
10893 Compute phys_cursor_width from the x position returned
10894 by x_draw_glyhs, which is cheaper.
10895 (x_display_and_set_cursor): Compute the buffer-local value
10896 of `cursor-in-non-selected-windows' only when needed.
10897
10898 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10899
10900 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
10901 cursor on a stretch glyph has a width that depends on
10902 x_stretch_cursor_p.
10903
10904 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10905
10906 * abbrev.c (abbrev-start-location): Doc fix.
10907
10908 * indent.c (Fvertical_motion): Fix last change.
10909
10910 2002-04-25 Gerd Moellmann <gerd@gnu.org>
10911
10912 * indent.c (Fvertical_motion): Move to the start of the line
10913 containing PT before moving up or down.
10914
10915 2002-04-24 Gerd Moellmann <gerd@gnu.org>
10916
10917 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
10918 case of writing a whole row, more or less analogous to the case of
10919 writing only parts of a row.
10920
10921 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
10922 0 for NO_CURSOR.
10923
10924 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
10925
10926 2002-04-23 Colin Walters <walters@verbum.org>
10927
10928 * buffer.c (syms_of_buffer): Doc fix.
10929
10930 2002-04-23 Gerd Moellmann <gerd@gnu.org>
10931
10932 * xterm.c (notice_overwritten_cursor): Handle the special case
10933 of the cursor being in the first blank non-text line at the
10934 end of a window.
10935
10936 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
10937 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
10938 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
10939 bar cursors only, to make phys_cursor_width contain what its name
10940 suggests.
10941 (notice_overwritten_cursor): Consider the cursor image erased if
10942 the output area intersects the cursor image in y-direction.
10943
10944 2002-04-23 Simon Marshall <simon@gnu.org>
10945
10946 * xfns.c (x_set_mouse_color): Change default for cross_cursor
10947 to XC_hand2.
10948
10949 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10950
10951 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
10952
10953 2002-04-22 Kim F. Storm <storm@cua.dk>
10954
10955 * textprop.c (remove_properties): Fixed trap for malformed plist.
10956
10957 2002-04-22 Richard M. Stallman <rms@gnu.org>
10958
10959 * cmds.c (Fend_of_line): Handle intangible text in mid line.
10960
10961 * window.c (make_window): Initialize height_fixed_p,
10962 last_cursor_off_p, and p->cursor_off_p slots.
10963
10964 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10965
10966 * fns.c (use-dialog-box): Doc fix.
10967
10968 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10969
10970 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
10971 variables `row', `i' and `area'.
10972 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
10973 toolkit library.
10974
10975 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
10976
10977 * xfaces.c (clear_font_table): Don't free the default font of
10978 a frame even if it's on another display.
10979 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
10980 that could be Qt.
10981
10982 2002-04-19 Juanma Barranquero <lektu@terra.es>
10983
10984 * indent.c (Fmove_to_column): Remove unused local variable
10985 `next_boundary_byte'.
10986 (current_column_1): Likewise.
10987
10988 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
10989
10990 * msdos.c (Qhbar): New variable.
10991 (syms_of_msdos): Intern and staticpro it.
10992 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
10993 cursor type.
10994
10995 2002-04-19 Dave Lambert <dlambert@acm.org>
10996
10997 Theses change implement an underscore-like (`hbar') cursor.
10998
10999 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11000
11001 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11002 Handle the `hbar' cursor type.
11003 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11004
11005 * xfns.c (Qhbar): New variable.
11006 (syms_of_xfns): Intern and staticpro it.
11007 (x_specified_cursor_type): Handle `hbar' cursor.
11008
11009 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11010 not defined.
11011
11012 2002-04-18 Richard M. Stallman <rms@gnu.org>
11013
11014 * textprop.c (remove_properties): New arg LIST allows scanning
11015 either a list or a plist.
11016 (interval_has_some_properties_list): New function, like
11017 interval_has_some_properties using list instead of plist.
11018 All callers changed.
11019 (Fremove_list_of_text_properties): New function.
11020 (syms_of_textprop): Defsubr it.
11021
11022 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11023
11024 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11025
11026 2002-04-17 Juanma Barranquero <lektu@terra.es>
11027
11028 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11029
11030 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11031
11032 * window.c (coordinates_in_window): Don't report on margin area
11033 if its width is zero.
11034
11035 2002-04-16 Jason Rumney <jasonr@gnu.org>
11036
11037 * w32fns.c (Fx_file_dialog): Decode file name before using.
11038
11039 * w32term.c (construct_drag_n_drop): Likewise.
11040
11041 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11042
11043 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11044 store load-history in pure space.
11045
11046 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11047
11048 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11049
11050 * xterm.c (Qlatin_1, Qutf_8): New vars.
11051 (syms_of_xterm): Initialize them.
11052 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11053 decoding the output of X*LookupString.
11054 Always use latin-1 to decode the output of XLookupString.
11055 Try Xutf8LookupString if XmbLookupString failed.
11056
11057 * region-cache.c (new_region_cache): Use BEG.
11058
11059 2002-04-16 Gerd Moellmann <gerd@gnu.org>
11060
11061 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11062 configuration files.
11063 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11064 returns 0.
11065
11066 2002-04-15 Andreas Schwab <schwab@suse.de>
11067
11068 * config.in: Regenerated using autoheader.
11069
11070 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11071 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11072 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11073 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11074 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11075 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11076 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11077 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11078 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11079 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11080 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11081 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11082 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11083 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11084 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11085 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11086 STACK_DIRECTION, now set by autoconf.
11087
11088 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11089
11090 * dispnew.c (marginal_area_string): Sort arguments.
11091
11092 * dispextern.h (marginal_area_string): Add prototype.
11093
11094 2002-04-13 Richard M. Stallman <rms@gnu.org>
11095
11096 * fileio.c (Finsert_file_contents):
11097 Don't call temp_output_buffer_setup--do just part, by hand.
11098
11099 * coding.c (run_pre_post_conversion_on_str):
11100 Don't call temp_output_buffer_setup--do just part, by hand.
11101
11102 * keyboard.c (command_loop_1): Don't call start_hourglass
11103 or cancel_hourglass when executing a macro.
11104
11105 * marker.c (count_markers): New function.
11106
11107 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11108 grow without limit. Move recently used elements to the front.
11109
11110 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11111
11112 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11113
11114 2002-04-12 Gerd Moellmann <gerd@gnu.org>
11115
11116 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11117 rows marginal areas.
11118 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11119 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11120
11121 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11122
11123 2002-04-12 Dave Love <fx@gnu.org>
11124
11125 * dispnew.c (marginal_area_string): New.
11126
11127 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11128 (Qleft_margin, Qright_margin): Declare.
11129 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11130
11131 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11132 note_mode_line_highlight and extended.
11133
11134 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11135 (make_lispy_event): Deal with mouse events in margins.
11136
11137 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11138
11139 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11140
11141 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11142 than deactivating the mark if tmm is set to `lambda'.
11143 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11144 Use a single event for HELP_EVENT.
11145 (Fexecute_extended_command): Save last_point_position.
11146
11147 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11148
11149 * lisp.h (Fpropertize): Add prototype.
11150
11151 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11152
11153 2002-04-10 Colin Walters <walters@verbum.org>
11154
11155 * config.in: Add HAVE_SHARED_GAME_DIR.
11156
11157 * callproc.c: (Vgame_score_directory): New variable.
11158 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11159
11160 2002-04-10 Richard M. Stallman <rms@gnu.org>
11161
11162 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11163
11164 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11165
11166 * minibuf.c (read_minibuf): Use empty_string.
11167 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11168 Short-circuit the search as soon as it "failed".
11169 (Fall_completions): Allow lambda forms and lists of strings for alist.
11170 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11171 when require_match is nil.
11172 (Ftest_completion): Rename from `test_completion' and export to elisp.
11173 Call the predicate also when alist is a list.
11174 Obey Vcompletion_regexp_list.
11175 (do_completion, Fminibuffer_complete_and_exit): Use it.
11176 (Fassoc_string): Rename from `assoc_for_completion'.
11177 Allow list of strings as well and export to elisp.
11178
11179 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11180
11181 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11182
11183 2002-04-08 Juanma Barranquero <lektu@terra.es>
11184
11185 * w32.c (sys_accept): Don't hide variable `s'.
11186
11187 2002-04-05 Gerd Moellmann <gerd@gnu.org>
11188
11189 * callint.c (Fcall_interactively): Use INTEGERP instead of
11190 NUMBERP for checking Vhistory_length.
11191
11192 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11193
11194 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11195 Doc fix to reflect it.
11196
11197 2002-04-04 Richard M. Stallman <rms@gnu.org>
11198
11199 * xdisp.c (display_mode_element): New arg RISKY.
11200 Disregard text props found or specified within a variable
11201 that isn't marked risky-local-variable.
11202 (Qrisky_local_variable): New variable.
11203 (syms_of_xdisp): Init and staticpro it.
11204
11205 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11206
11207 * undo.c (record_point): New fun.
11208 (record_delete, record_insert): Use it.
11209
11210 2002-04-03 Juanma Barranquero <lektu@terra.es>
11211
11212 * doc.c (Fdocumentation): Add missing parentheses.
11213 (Fdocumentation_property): Likewise.
11214
11215 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11216
11217 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11218 data is 0, just return nil.
11219
11220 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11221
11222 * msdos.c (syms_of_msdos): Fix last change with
11223 mouse_autoselect_window.
11224
11225 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11226
11227 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11228 mouse_autoselect_window.
11229
11230 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11231
11232 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11233 with system-specific keysyms. Use it also for unknown function keys.
11234
11235 * doc.c (reread_doc_file): Return whether reload was attempted.
11236 (Fdocumentation, Fdocumentation_property): Don't try to reload
11237 if the doc is 0 and only ask once.
11238
11239 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11240
11241 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11242
11243 * keyboard.c (read_char): If the event was Qselect_window,
11244 restore timer_idleness_start_time to its previous value.
11245
11246 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11247
11248 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11249
11250 * region-cache.c (new_region_cache): Use BEG.
11251
11252 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
11253 Use BEG and BEG_BYTE.
11254
11255 * doc.c (get_doc_string): Return nil if the location is wrong.
11256 (reread_doc_file): New fun.
11257 (Fdocumentation, Fdocumentation_property):
11258 Call it if get_doc_string fails.
11259 (Fsnarf_documentation): Make it work for a dumped Emacs.
11260
11261 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
11262 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
11263
11264 * charset.c (Fstring): Allow 0 arguments.
11265
11266 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
11267
11268 * process.c (DATAGRAM_CONN_P, list_processes_1)
11269 (Fprocess_datagram_address, Fset_process_datagram_address)
11270 (Fset_network_process_options, server_accept_connection):
11271 Fix some int/Lisp_Object confusions (thank you union types).
11272
11273 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11274
11275 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
11276
11277 * w32term.c: Likewise.
11278 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
11279
11280 * keyboard.c (Qselect_window): New symbol.
11281 (head_table): Use it.
11282 (keys_of_keyboard): Bound select-window event to handle-select-window.
11283 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
11284
11285 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
11286 (last_window): New variable.
11287 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
11288 (note_mouse_movement): Remove reimplemented code in #if 0.
11289 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
11290 Emacs windows.
11291
11292 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
11293
11294 2002-03-31 Gerd Moellmann <gerd@gnu.org>
11295
11296 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
11297 Callers changed.
11298
11299 2002-03-30 Richard M. Stallman <rms@gnu.org>
11300
11301 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
11302 loop whenever it stops making progress.
11303
11304 * widget.c (set_frame_size): Don't call change_frame_size.
11305
11306 2002-03-30 Gerd Moellmann <gerd@gnu.org>
11307
11308 * dispnew.c (direct_output_for_insert):
11309 Call mark_window_display_accurate.
11310
11311 2002-03-29 Jason Rumney <jasonr@gnu.org>
11312
11313 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
11314
11315 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
11316
11317 * Makefile.in (lread.o): Depend on coding.h.
11318
11319 * lread.c (openp, Fload): Encode the file name before passing it
11320 to `stat', `access', and `emacs_open'.
11321 (openp): GCPRO the encoded file name. Don't recompute Lisp
11322 strings unnecessarily.
11323
11324 2002-03-29 Kim F. Storm <storm@cua.dk>
11325
11326 * fns.c (Flax_plist_put): Doc fix.
11327
11328 2002-03-28 Miles Bader <miles@gnu.org>
11329
11330 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
11331
11332 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11333
11334 * process.c (set-network-process-options): Add usage.
11335 (make-network-process): Doc fix.
11336
11337 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
11338
11339 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
11340
11341 2002-03-26 Richard M. Stallman <rms@gnu.org>
11342
11343 * fns.c (Fsubstring_no_properties): New function.
11344 (Flax_plist_get, Flax_plist_put): New functions.
11345 (syms_of_fns): defsubr them.
11346
11347 * xdisp.c (update_menu_bar): Test only update_mode_lines;
11348 don't test or alter w->update_mode_line.
11349
11350 * window.c (Fdisplay_buffer): Doc fix.
11351
11352 2002-03-24 Richard M. Stallman <rms@gnu.org>
11353
11354 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
11355
11356 2002-03-24 Gerd Moellmann <gerd@gnu.org>
11357
11358 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
11359 (Fdefmacro): Handle `(declare ...)'.
11360 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
11361 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
11362
11363 2002-03-24 Jason Rumney <jasonr@gnu.org>
11364
11365 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
11366 (xbm_file_p): Add prototypes.
11367 (xbm_format, xbm_image_p): Sync with xfns.c.
11368 (reflect_byte): New function.
11369 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
11370 (xbm_load_image): Create bitmaps with a depth of 1.
11371 (init_xfns): Enable XBM images.
11372
11373 2002-03-23 Jason Rumney <jasonr@gnu.org>
11374
11375 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
11376 correctly. Do not pass up_modifier to keyboard buffer.
11377
11378 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
11379
11380 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
11381
11382 * Makefile.in (bootstrapclean): New target.
11383 (bootstrap-temacs, bootstrap-doc): Remove.
11384 (bootstrap-emacs): Use a bog-standard `temacs'.
11385 Don't bother to build a DOC file.
11386
11387 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
11388
11389 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
11390 in temacs even if !CANNOT_DUMP.
11391 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
11392
11393 * alloc.c (check_pure_size): Only output a warning.
11394
11395 2002-03-22 Jason Rumney <jasonr@gnu.org>
11396
11397 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
11398 supported.
11399
11400 * w32term.c (zv_bits): Declare as short, for word alignment.
11401 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
11402 (syms_of_w32term): Define x-use-underline-position-properties.
11403
11404 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
11405 (clear_image_cache): Block input, fix logic, clear matrices in
11406 all frames that share this cache.
11407
11408 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
11409
11410 * emacs.c (main): Update the Copyright year in the blurb printed
11411 by "emacs --version".
11412
11413 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
11414
11415 * xterm.c (XTread_socket): If XK_ISO_Lock and
11416 XK_ISO_Last_Group_Lock are defined, handle keysyms between
11417 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
11418
11419 2002-03-21 Kim F. Storm <storm@cua.dk>
11420
11421 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
11422 menu-bar bindings in keymap and local-map properties _are_ used.
11423 But try keymap property first in accordance with 2002-01-03 patch.
11424 Added comment describing why this is not always reliable.
11425 (tool_bar_items): Ditto for tool-bar.
11426
11427 2002-03-21 Jason Rumney <jasonr@gnu.org>
11428
11429 * w32fns.c (x_clear_image_1): Disable color table code.
11430
11431 2002-03-21 Kim F. Storm <storm@cua.dk>
11432
11433 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
11434 removed the wrong version of the DEFUN macro; fixed it.
11435
11436 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
11437 Fmember rather than Fmemq).
11438 (Fprovide): Check that subfeatures is a list.
11439
11440 * process.c (QCfeature, QCdatagram): Removed variables.
11441 (QCtype, Qdatagram): New variables.
11442 (network_process_featurep): Removed function.
11443 (Fmake_network_process): Removed :feature check.
11444 Use :type 'datagram instead of :datagram t to create a datagram
11445 socket. This allows us to add other connection types (e.g. raw
11446 sockets) later in a consistent manner.
11447 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
11448 supported subfeatures for feature make-network-process.
11449 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
11450 Intern and staticpro QCtype and Qdatagram.
11451 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
11452
11453 * xfns.c: (QCtype): Remove duplicate declaration and
11454 initialization (is now declared in process.c).
11455
11456 * w32fns.c: (QCtype): Remove duplicate declaration and
11457 initialization (is now declared in process.c).
11458
11459 2002-03-21 Richard M. Stallman <rms@gnu.org>
11460
11461 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
11462 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
11463 when jumping to `fail' to avoid undoing reg changes in the
11464 last iteration of the loop.
11465 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
11466
11467 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
11468 Depend on process.h.
11469
11470 2002-03-20 Jason Rumney <jasonr@gnu.org>
11471
11472 Most of the following changes are still conditional on HAVE_IMAGES
11473 which is not set by default on Windows.
11474
11475 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
11476
11477 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
11478 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
11479 (four_corners_best, x_clear_image_1, x_clear_image)
11480 (x_alloc_image_color, postprocess_image)
11481 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
11482 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
11483 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
11484
11485 * w32gui.h (struct XImage): Define.
11486
11487 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
11488 extract mouse co-ordinates.
11489
11490 2002-03-20 Jason Rumney <jasonr@gnu.org>
11491
11492 * w32.c (init_winsock): Dynamically load new server and UDP
11493 socket functions.
11494 (socket_to_fd): New function.
11495 (sys_socket): Use it.
11496 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
11497 (sys_recvfrom, sys_sendto): New wrapper functions.
11498
11499 * process.c (QCfamily, QCfilter): Remove duplicate declaration
11500 and initialization.
11501
11502 * makefile.w32-in (LIBS): Remove $(WSOCK32).
11503
11504 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
11505
11506 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
11507 Don't use "sun" as a variable, it's a predefined constant on Sun
11508 machines.
11509
11510 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11511
11512 * bytecode.c (Fbyte_code): Revert last change.
11513
11514 2002-03-19 Kim F. Storm <storm@cua.dk>
11515
11516 * makefile.w32-in (LIBS): Add $(WSOCK32).
11517 From David Ponce <dponce@voila.fr>.
11518
11519 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11520
11521 * process.c (wait_reading_process_input): Move variables `pname'
11522 and `pnamelen' down where they are used.
11523
11524 * bytecode.c (Fbyte_code): Discard unused computed value to
11525 prevent gcc warning.
11526
11527 * lisp.h (Fplist_member): Add prototype.
11528
11529 2002-03-18 Kim F. Storm <storm@cua.dk>
11530
11531 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
11532 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
11533
11534 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
11535 Remove explicit GNU_LINUX settings for datagram support.
11536
11537 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11538
11539 * process.c (Fmake_network_process): Remove unused variable `sa'.
11540 Doc fix. Add usage:.
11541 (set_socket_options): Remove unused variables `optnum' and `opttype'.
11542
11543 2002-03-17 Richard M. Stallman <rms@gnu.org>
11544
11545 * xdisp.c (cursor_type_changed): New variable.
11546 (redisplay_internal): Redisplay all windows if cursor_type_changed.
11547 Clear it when clearing windows_or_buffers_changed.
11548 (try_cursor_movement, redisplay_window, try_window_id)
11549 (try_window_reusing_current_matrix): Test cursor_type_changed
11550 along with windows_or_buffers_changed.
11551
11552 * window.h (cursor_type_changed): New variable.
11553
11554 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
11555 not update_mode_lines, and always set it to 1.
11556
11557 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
11558 if no frames needed redrawing.
11559
11560 2002-03-17 Kim F. Storm <storm@cua.dk>
11561
11562 The following changes add support for network server processes,
11563 datagram connections, and local (unix) sockets.
11564
11565 * process.h (struct Lisp_Process): New member log.
11566 Doc fix: Member command used to indicate stopped network process.
11567 Doc fix: Member childp contains plist for network process.
11568 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
11569
11570 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
11571 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
11572 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
11573 New variables.
11574 (NETCONN1_P): New macro.
11575 (DATAGRAM_SOCKETS): New conditional symbol.
11576 (datagram_address): New array.
11577 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
11578 (status_message): Use concat3.
11579 (Fprocess_status): Add `listen' status to doc string. Return `stop'
11580 for a stopped network process.
11581 (Fset_process_buffer): Update contact plist for network process.
11582 (Fset_process_filter): Ditto. Don't enable input for stopped
11583 network processes. Server must listen, even if filter is t.
11584 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
11585 New functions.
11586 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
11587 (Fprocess_contact): Added KEY argument. Handle datagrams.
11588 (list_processes_1): Optionally show only processes with the query
11589 on exit flag set. Dynamically adjust column widths. Omit tty
11590 column if not needed. Report stopped network processes.
11591 Identify server and datagram network processes.
11592 (Flist_processes): New optional arg `query-only'.
11593 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
11594 (conv_lisp_to_sockaddr, set_socket_options)
11595 (network_process_featurep, unwind_request_sigio): New helper functions.
11596 (Fprocess_datagram_address, Fset_process_datagram_address):
11597 (Fset_network_process_options): New lisp functions.
11598 (Fopen_network_stream): Removed. Now defined in simple.el.
11599 (Fmake_network_process): New lisp function. Code is based on previous
11600 Fopen_network_stream, but heavily reworked with new property list based
11601 argument list, support for datagrams, server processes, and local
11602 sockets in addition to old client-only functionality.
11603 (server_accept_connection): New function.
11604 (wait_reading_process_input): Use it to handle incoming connects.
11605 Do not enable input on a new connection if process is stopped.
11606 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
11607 (send_process): Handle datagram sockets.
11608 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
11609 network process is indicated by setting command field to t .
11610 (Fprocess_send_eof): No-op if datagram connection.
11611 (Fstatus_notify): Don't read input for a stream server socket or a
11612 stopped network process.
11613 (init_process): Initialize datagram_address array.
11614 (syms_of_process): Intern and staticpro new variables, defsubr new
11615 functions.
11616
11617 2002-03-16 Jason Rumney <jasonr@gnu.org>
11618
11619 * w32fns.c (w32_to_all_x_charsets): Return correct type in
11620 startup case.
11621
11622 2002-03-16 Richard M. Stallman <rms@gnu.org>
11623
11624 * xdisp.c (redisplay_internal, redisplay_windows):
11625 Use list_of_error to call internal_condition_case_1.
11626 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
11627 so as to catch all errors with no possibility of debugger redisplay.
11628 (list_of_error): New variable.
11629 (syms_of_xdisp): Init and staticpro it.
11630
11631 * print.c (print_object): Delete `\ ' from printed rep of frame.
11632
11633 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
11634
11635 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
11636 until its implementation is fixed.
11637
11638 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11639
11640 * xfns.c (png_load): Remove unused variable `gamma_str'.
11641
11642 2002-03-14 Richard M. Stallman <rms@gnu.org>
11643
11644 * xfns.c (x_real_positions): Handle failure in XQueryTree.
11645
11646 2002-03-14 Miles Bader <miles@gnu.org>
11647
11648 * intervals.c (adjust_for_invis_intang): New function.
11649 (set_point_both): Use `adjust_for_invis_intang' to do most of the
11650 work for dealing with invisible+intangible regions. Do so before
11651 and after both forward and backward movements, to handle both
11652 front-sticky and rear-sticky cases.
11653 * textprop.c (text_property_stickiness): Function moved here from
11654 `editfns.c'.
11655 * intervals.h (text_property_stickiness): New declaration.
11656 * editfns.c (char_property_eq): Function removed.
11657 (text_property_stickiness): Function moved to `textprop.c'.
11658
11659 2002-03-13 Jason Rumney <jasonr@gnu.org>
11660
11661 * config.in: Add STRFTIME_NO_POSIX2.
11662
11663 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
11664 and %OX when underlying strftime does not.
11665
11666 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
11667
11668 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
11669 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
11670 line) to avoid annoying flicker.
11671 (xm_scroll_callback): Get rid of the now unnecessary kludge.
11672 (XTread_socket): Mark it static.
11673
11674 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
11675
11676 2002-03-13 Kim F. Storm <storm@cua.dk>
11677
11678 * puresize.h (BASE_PURESIZE): Increase to 775000.
11679
11680 2002-03-12 Juanma Barranquero <lektu@terra.es>
11681
11682 * editfns.c (syms_of_editfns): Fix typo.
11683
11684 2002-03-12 Gerd Moellmann <gerd@gnu.org>
11685
11686 * xsmfns.c: Include stdio.h because termhooks.h needs it.
11687 Include termopt.h for interrupt_input.
11688
11689 2002-03-11 Andreas Schwab <schwab@suse.de>
11690
11691 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
11692
11693 2002-03-11 Gerd Moellmann <gerd@gnu.org>
11694
11695 * xterm.c (note_mouse_movement): Put code for
11696 x_autoselect_window_p in #if 0.
11697
11698 * lread.c (Fload): Don't assume that message_with_string uses the
11699 string it is given like a C string.
11700
11701 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11702
11703 * xterm.h (x_session_check_input, x_session_initialize): Declared.
11704
11705 * xterm.c: (XTread_socket): Add call to x_session_check_input and
11706 x_session_have_connection.
11707 (x_initialize): Add call to x_session_initialize.
11708
11709 * termhooks.h (enum event_kind): Add save_session_event.
11710
11711 * keyboard.c: Add Emacs event save_session_event.
11712
11713 * emacs.c (main): Add call to syms_of_xsmfns.
11714
11715 * lisp.h: Declare syms_of_xsmfns as extern.
11716
11717 * config.in: Add HAVE_X_SM.
11718
11719 * Makefile.in (LIBXT): Add -lSM -lICE
11720 if HAVE_X_SM and not USE_X_TOOLKIT.
11721 (XOBJ): New file xsmfns.c added.
11722
11723 * xsmfns.c: New file for X session management.
11724
11725 2002-03-09 Jason Rumney <jasonr@gnu.org>
11726
11727 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
11728 read-only when setting modified time.
11729
11730 2002-03-08 Gerd Moellmann <gerd@gnu.org>
11731
11732 * xdisp.c (move_it_vertically_backward): At the end of the function,
11733 when moving forward by lines, treat terminal frames specially.
11734
11735 * keyboard.c (echo_char): Make sure to add a separator between
11736 keys even if echo_dash hasn't been called.
11737
11738 * xdisp.c: Use new string macros.
11739 (update_echo_area): Pass number of bytes to message3 instead of
11740 number of chars.
11741 (set_message_1): Don't access a string's size_byte directly.
11742 (decode_mode_spec_coding): Use number of bytes of eoltype string
11743 instead number of chars.
11744
11745 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
11746
11747 2002-03-08 Juanma Barranquero <lektu@terra.es>
11748
11749 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
11750 24-bit.
11751
11752 2002-03-06 Jason Rumney <jasonr@gnu.org>
11753
11754 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
11755
11756 2002-03-06 Gerd Moellmann <gerd@gnu.org>
11757
11758 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
11759 (cancel_echoing, echo_length, echo_truncate): Changed to
11760 work with new kboard definition.
11761 (echo_now): Use message3_nolog instead of message2_nolog.
11762
11763 * alloc.c (mark_kboards): Mark echo_string.
11764
11765 * keyboard.h (ECHOBUFSIZE): Removed.
11766 (struct kboard): Member echoptr removed, member echobuf renamed
11767 to echo_string.
11768
11769 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
11770 message3 instead of message2 to display the message using STRING's
11771 text properties.
11772
11773 2002-03-05 Andreas Schwab <schwab@suse.de>
11774
11775 * xdisp.c (hscroll_margin): Change to EMACS_INT.
11776
11777 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
11778
11779 * frame.c (default-frame-alist): Explain that setting it doesn't
11780 affect existing frames.
11781
11782 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
11783
11784 * indent.c (skip_invisible): Fix my brain fart.
11785
11786 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
11787
11788 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
11789
11790 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
11791 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
11792 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
11793 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
11794 and variables to use EMACS_INT instead of just int.
11795
11796 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
11797
11798 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
11799
11800 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
11801 environment, pass it down with corrected value.
11802
11803 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11804
11805 * lread.c (read_filtered_event): Do not call start_hourglass
11806 before returning.
11807
11808 2002-03-04 Juanma Barranquero <lektu@terra.es>
11809
11810 * w32term.c (x_display_and_set_cursor): Fix typo.
11811
11812 2002-03-03 Richard M. Stallman <rms@gnu.org>
11813
11814 * fileio.c (Fmake_temp_name): Doc fix.
11815
11816 2002-03-03 Gary Wong <gtw@gnu.org>
11817
11818 * termcap.c [!emacs]: Replace ospeed for building standalone
11819 libtermcap, for binary compatibility.
11820
11821 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
11822
11823 2002-03-03 Richard M. Stallman <rms@gnu.org>
11824
11825 * xrdb.c (file_p): Rename arg `path' to `filename'.
11826
11827 * abbrev.c (Fexpand_abbrev): Increment plist as use count
11828 only if it is an integer.
11829
11830 * xfns.c (png_load): Set screen_gamma based on f->gamma.
11831 If png_get_sRGB gives an answer, call png_set_gamma
11832 using the default image gamma value.
11833
11834 * lread.c (read1): When reading from a file, default string to
11835 multibyte only if it has some multibyte characters.
11836
11837 * print.c (print_object): Output multibyte chars 128...255
11838 using \x even if ! print_escape_multibyte.
11839
11840 * xdisp.c (display_mode_element): Move the places where
11841 bytepos, charpos, this, and lisp_string are set.
11842 Use lisp_string to set bytepos.
11843
11844 * xdisp.c (redisplay_internal):
11845 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
11846
11847 * xdisp.c (display_mode_element): Merge properties specified with
11848 :propertize onto those that come with the string.
11849
11850 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
11851
11852 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
11853 automatic-hscrolling. Users changed.
11854 <hscroll-margin>: Renamed from automatic-hscroll-margin.
11855 Users changed.
11856 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
11857
11858 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
11859
11860 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
11861
11862 2002-03-02 Kim F. Storm <storm@cua.dk>
11863
11864 * window.c (Fminibuffer_selected_window): New function.
11865 (syms_of_window): Defsubr it.
11866
11867 2002-03-01 Kim F. Storm <storm@cua.dk>
11868
11869 * window.h (struct window): New member phys_cursor_width.
11870
11871 * window.c (make_window, replace_window): Init phys_cursor_width.
11872
11873 * xterm.c (x_display_and_set_cursor): Blink box cursor using
11874 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11875
11876 * w32term.c (x_display_and_set_cursor): Blink box cursor using
11877 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
11878
11879 * lisp.h (GCPRO6): New macro.
11880
11881 * process.c (Fopen_network_stream): Use GCPRO6.
11882
11883 2002-03-01 Kim F. Storm <storm@cua.dk>
11884
11885 * process.c (Qconnect, Qfailed): New variables.
11886 (syms_of_process): Intern and staticpro them.
11887 (Fprocess_status): Document connect and failed return values.
11888 [NON_BLOCKING_CONNECT]: New conditional.
11889 (connect_wait_mask, num_pending_connects): New variables.
11890 (status_message): Convert Qfailed status.
11891 (Fopen_network_stream): Added support for non-blocking connect.
11892 New optional args: filter, sentinel, non_blocking. Doc updated.
11893 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
11894 (deactivate_process): Handle pending non-blocking connect.
11895 (wait_reading_process_input): Poll for status of non-blocking
11896 connects. Exec sentinel directly when connect succeeds.
11897 (status_notify): Don't read process output if not yet connected.
11898
11899 2002-02-28 Kim F. Storm <storm@cua.dk>
11900
11901 * window.c: (minibuf_selected_window): Renamed from
11902 Vminibuf_selected_window. Users changed.
11903 (syms_of_window): Staticpro it.
11904
11905 2002-02-26 Kim F. Storm <storm@cua.dk>
11906
11907 The following changes add a new Vminibuf_selected_window variable
11908 which is similar to Vminibuf_scroll_window, but which is only set
11909 on entry to the minibuffer (from a non-minibuffer window):
11910
11911 * window.c: (Vminibuf_selected_window): New variable.
11912 (struct save_window_data): New member minibuf_selected_window.
11913 (Fset_window_configuration): Restore Vminibuf_selected_window.
11914 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
11915 Set minibuf_scroll_window member to nil if minibuf_level is 0.
11916 (compare_window_configurations): Compare minibuf_selected_window.
11917
11918 * window.h: (Vminibuf_selected_window): Declare extern.
11919
11920 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
11921 entry to minibuffer or on entry from a non-minibuffer window.
11922
11923 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
11924 Vminibuf_selected_window instead of Vminibuf_scroll_window.
11925
11926 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
11927 instead of Vminibuf_scroll_window when deciding in which window
11928 the region should be highlighted. Consequently, the region remains
11929 highlighteded even when a completion buffer is also displayed.
11930
11931 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
11932
11933 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
11934
11935 * xselect.c (Qcompound_text_with_extensions): Renamed from
11936 Qcompound_text_no_extensions.
11937 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
11938
11939 2002-02-26 Juanma Barranquero <lektu@terra.es>
11940
11941 * w32proc.c (syms_of_ntproc): Doc fix.
11942
11943 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11944
11945 * intervals.h: Include "dispextern.h" unconditionally.
11946
11947 2002-02-24 Jason Rumney <jasonr@gnu.org>
11948
11949 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
11950 and disp-table.elc.
11951 (lisp): Add emacs-lisp/backquote.elc.
11952
11953 2002-02-24 Kim F. Storm <storm@cua.dk>
11954
11955 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
11956 The validation of the event type was too strict as it didn't
11957 allow string events; buffer names are used in bindings for
11958 menu-bar-select-buffer (see `menu-bar-update-buffers').
11959
11960 2002-02-23 Kim F. Storm <storm@cua.dk>
11961
11962 The following changes rework my patch of 2002-02-06 which
11963 added command remapping by entering the commands directly into
11964 the keymaps. Now, command remapping uses an explicit `remap'
11965 prefix in the keymaps, i.e. [remap COMMAND].
11966
11967 * keymap.c (Qremap, remap_command_vector): New variables.
11968 (is_command_symbol): Removed function.
11969 (Fdefine_key): No longer accept a symbol for KEY.
11970 Added validation of [remap COMMAND] argument for KEY.
11971 The DEF is no longer required to be a symbol when remapping a command.
11972 (Fremap_command): New function to remap command through keymaps.
11973 (Flookup_key): Perform command remapping initiated by
11974 Fremap_command directly for speed.
11975 (Fkey_binding): Use Fremap_command for command remapping.
11976 (where_is_internal): Handle new command remapping representation.
11977 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
11978 staticpro them. Defsubr Fremap_command.
11979
11980 * keymap.h (Fremap_command): Declare extern.
11981 (is_command_symbol): Remove extern.
11982
11983 * keyboard.c (command_loop_1): Use Fremap_command for command
11984 remapping; now try command remapping for all symbols.
11985
11986 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
11987
11988 * coding.h (run_pre_post_conversion_on_str): Add prototype.
11989
11990 2002-02-23 Jason Rumney <jasonr@gnu.org>
11991
11992 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
11993 on the string before encoding it.
11994 (Fw32_get_clipboard_data): Run post-read-conversion on the string
11995 after decoding it.
11996
11997 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
11998
11999 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12000
12001 * w32term.c (enter_timestamp): Remove unused static variable to
12002 prevent warning.
12003
12004 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12005
12006 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12007
12008 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12009
12010 * xselect.c (selection_data_to_lisp_data): Fix last change.
12011
12012 2002-02-22 Jason Rumney <jasonr@gnu.org>
12013
12014 * w32term.h (struct w32_output): New member menu_command_in_progress.
12015
12016 * w32menu.c (menubar_selection_callback): Free the menu and
12017 clear the menu_command_in_progress flag.
12018
12019 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12020 (menu_free_timer): New variable.
12021 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12022 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12023 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12024 menu command is in progress.
12025 <WM_COMMAND>: Set the menu_command_in_progress flag.
12026 Kill any menu_free_timer that is running.
12027
12028 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12029 Call ExtTextOutA rather than ExtTextOut.
12030
12031 2002-02-22 Eli Zaretskii <eliz@gnu.org>
12032
12033 * puresize.h (BASE_PURESIZE): Increase to 755000.
12034
12035 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12036
12037 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12038 on the string before encoding it.
12039 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12040 after decoding it.
12041
12042 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12043
12044 Support for ICCCM Extended Segments in X selections:
12045
12046 * xselect.c <Qcompound_text_no_extensions>: New variable.
12047 (syms_of_xselect): Intern and staticpro it.
12048 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12049 selection text.
12050 (lisp_data_to_selection_data): If next-selection-coding-system is
12051 compound-text-no-extensions, set the type of selection to be
12052 compound-text.
12053
12054 * xterm.h (x_encode_text): Update prototype.
12055
12056 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12057 callers changed. If SELECTIONP is non-zero, run the
12058 pre-write-conversion function before encoding the selection text.
12059
12060 2002-02-21 Kim F. Storm <storm@cua.dk>
12061
12062 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12063
12064 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12065 Correct composing of language-change event.
12066
12067 2002-02-20 Kim F. Storm <storm@cua.dk>
12068
12069 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12070 bindings at PT when building menu (the menu is not updated often
12071 enough for this to work reliable).
12072 (tool_bar_items): Likewise.
12073 (current_active_maps): Removed unused (and buggy) function.
12074
12075 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12076
12077 * xfns.c (gif_load): Use correct width and height for GIF images.
12078
12079 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12080
12081 * floatfns.c (Fatan): Accept an optional second arg and call
12082 atan2 if passed 2 args.
12083
12084 2002-02-18 Jason Rumney <jasonr@gnu.org>
12085
12086 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12087
12088 2002-02-17 Jason Rumney <jasonr@gnu.org>
12089
12090 * w32term.c (x_autoselect_window_p): New variable.
12091 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12092 (note_mouse_movement): Use it.
12093
12094 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12095
12096 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12097
12098 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12099 New variables.
12100 (syms_of_w32fns): Intern and staticpro them.
12101 (x_frame_parms) <"fullscreen">: New parameter.
12102 (x_fullscreen_move, x_set_fullscreen): New functions.
12103 (x_set_frame_parameters): Support Qfullscreen.
12104 (x_real_positions): Save x/y_pixels_diff frame params.
12105 (x_figure_window_size): Support full-screen frames.
12106 (Fx_create_frame): Default the fullscreen parameter.
12107
12108 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12109 (x_fullscreen_adjust): New functions.
12110 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12111 fullscreen. Call x_check_fullscreen_move, and set the
12112 want_fullscreen member of output_data.w32
12113 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12114
12115 * w32term.h: New enum for FULLSCREEN_* constants.
12116 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12117 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12118 (x-fullscreen-adjust): New prototype.
12119
12120 2002-02-17 Kim F. Storm <storm@cua.dk>
12121
12122 * frame.c: (Vmouse_highlight): New variable.
12123 (syms_of_frame): DEFVAR_LISP it.
12124
12125 * frame.h: (Vmouse_highlight): Declare extern.
12126
12127 * xterm.h (struct x_display_info): Add mouse_face_hidden.
12128
12129 * xterm.c (disable_mouse_highlight): Removed variable.
12130 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12131 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12132 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12133 and on after keyboard input.
12134 (x_term_init): Initialize mouse_face_hidden.
12135
12136 * msdos.h (struct display_info): Add mouse_face_hidden.
12137
12138 * msdos.c (disable_mouse_highlight): Removed variable.
12139 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12140 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12141 (internal_terminal_init): Initialize mouse_face_hidden.
12142 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12143 and on after keyboard input.
12144
12145 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
12146
12147 * w32term.c (disable_mouse_highlight): Removed variable.
12148 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12149 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12150 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12151 and on after keyboard input.
12152 (w32_initialize_display_info): Initialize mouse_face_hidden.
12153
12154 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
12155
12156 * msdos.c (last_mouse_window): New variable.
12157 (dos_rawgetc): Fix last change--if the mouse is in the same window
12158 as recorded in last_mouse_window, don't select this window.
12159
12160 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
12161
12162 * msdos.c (x_autoselect_window_p): New variable.
12163 (syms_of_msdos): Defvar it.
12164 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12165 which the last mouse movement occured, unless it is already selected.
12166
12167 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12168 New variables.
12169 (syms_of_xdisp): DEVFAR them.
12170 (hscroll_window_tree): Use automatic_hscroll_margin and
12171 Vautomatic_hscroll_step to compute the amount of window scrolling.
12172
12173 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12174
12175 * xterm.c (x-autoselect-window): New variable.
12176 (note_mouse_movement): Use it.
12177
12178 * keyboard.c: Do not include "systime.h" twice.
12179
12180 2002-02-15 Andreas Schwab <schwab@suse.de>
12181
12182 * puresize.h (BASE_PURESIZE): Increase to 9/5.
12183
12184 * alloc.c (NSTATICS): Increase to 1280.
12185
12186 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
12187
12188 * alloc.c (NSTATICS): Bump to 1026.
12189
12190 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12191 (Vx_super_keysym): New variables.
12192 (syms_of_xterm): DEFVAR_LISP them.
12193 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12194 variables to determine which keys to use for the various modifiers.
12195
12196 2002-02-13 Kim F. Storm <storm@cua.dk>
12197
12198 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12199 (mode_line_in_non_selected_windows): New variable.
12200 (syms_of_window): DEFVAR_BOOL it.
12201
12202 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12203 Use mode_line_in_non_selected_windows.
12204 (mode_line_in_non_selected_windows): Declare extern.
12205 (Vmode_line_in_non_selected_windows): Removed extern.
12206
12207 2002-02-13 Richard M. Stallman <rms@gnu.org>
12208
12209 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12210 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12211 (Fclear_this_command_keys): Doc fixes.
12212
12213 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12214 (update_face_from_frame_parameter): Increment face_change_count
12215 and windows_or_buffers_changed to force redisplay using changed faces.
12216
12217 * xdisp.c (QCpropertize): New variable.
12218 (mode_line_proptrans_alist): New variable.
12219 (display_mode_element): New arg PROPS; all calls changed.
12220 Implement this, for strings.
12221 Handle literal output of strings by sharing the
12222 main-line code for strings, using local var `literal'.
12223 Handle :propertize feature.
12224 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12225 mode_line_proptrans_alist.
12226
12227 2002-02-11 Kim F. Storm <storm@cua.dk>
12228
12229 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12230 (syms_of_window): DEFVAR_LISP it.
12231
12232 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12233 (CURRENT_MODE_LINE_FACE_ID): Use it.
12234 (Vmode_line_in_non_selected_windows): Declare extern.
12235
12236 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12237 to get mode line face.
12238
12239 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
12240
12241 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12242 variables; cus-start.el doesn't need them anymore.
12243
12244 2002-02-09 Kim F. Storm <storm@cua.dk>
12245
12246 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12247 reduction. This fixes a display problem where stray newlines were
12248 inserted in the window (corrected by C-l). Clarified code (IMHO).
12249
12250 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
12251
12252 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
12253
12254 * xdisp.c (display_mode_lines): Fix last change.
12255
12256 2002-02-09 Jason Rumney <jasonr@gnu.org>
12257
12258 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
12259 match each other.
12260 (w32_load_system_font): Prevent Cleartype fonts from loading.
12261 (Fx_show_tip): Ensure tip frames are above other topmost windows.
12262
12263 2002-02-09 Kim F. Storm <storm@cua.dk>
12264
12265 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
12266 (CURRENT_MODE_LINE_HEIGHT): Use it.
12267 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
12268
12269 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
12270 (pos_visible_p, handle_face_prop): Likewise.
12271 (display_mode_lines): Likewise, but for the real selected window.
12272 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
12273
12274 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
12275 in non-selected windows.
12276 (realize_basic_faces): Realize it.
12277 (syms_of_term): Intern and staticpro it.
12278
12279 2002-02-08 Kim F. Storm <storm@cua.dk>
12280
12281 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
12282 Changed mail addresses to emacs-devel@gnu.org.
12283
12284 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
12285
12286 * fileio.c (Fsubstitute_in_file_name): If the file name includes
12287 ~user, and there's no such user, don't discard everything before ~user.
12288
12289 * floatfns.c (Fround): Doc fix.
12290
12291 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12292
12293 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
12294
12295 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
12296
12297 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
12298
12299 2002-02-07 Kim F. Storm <storm@cua.dk>
12300
12301 * keymap.c (where_is_internal): Only check whether definition is
12302 remapped if it fulfills is_command_symbol.
12303
12304 2002-02-07 Andreas Schwab <schwab@suse.de>
12305
12306 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
12307
12308 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
12309
12310 2002-02-06 Kim F. Storm <storm@cua.dk>
12311
12312 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
12313 defining command remapping. Doc updated.
12314 (Flookup_key): Remap command through keymap if KEY is a symbol.
12315 (is_command_symbol): New function.
12316 (Fkey_binding): Use it. New optional argument NO-REMAP.
12317 Doc updated. Callers changed. Perform command remapping via
12318 recursive call unless that arg is non-nil.
12319 (where_is_internal): New argument no_remap. Callers changed.
12320 Call recursively to find original key bindings for a remapped
12321 comand unless that arg is non-nil.
12322 (Fwhere_is_internal): New optional argument NO-REMAP.
12323 Doc updated. Callers changed. Pass arg to where_is_internal.
12324
12325 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
12326 (is_command_symbol): Added prototype.
12327
12328 * keyboard.c (Vthis_original_command): New variable.
12329 (syms_of_keyboard): DEFVAR_LISP it.
12330 (command_loop_1): Set it, and perform command remapping.
12331
12332 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12333
12334 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
12335
12336 2002-02-06 Jason Rumney <jasonr@gnu.org>
12337
12338 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
12339
12340 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
12341
12342 * charset.c (get_charset_id): Use if-else instead of ?:.
12343
12344 2002-02-06 Richard M. Stallman <rms@gnu.org>
12345
12346 * filelock.c (S_ISLNK): Define if not defined.
12347
12348 2002-02-03 Richard M. Stallman <rms@gnu.org>
12349
12350 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
12351
12352 * lread.c (read1): Redesign strategy for force_multibyte and
12353 force_singlebyte. Now is_multibyte records whether read_buffer
12354 is multibyte. Encountering any multibyte character makes it so.
12355
12356 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
12357
12358 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
12359 with the same sequence, map that sequence to f10 rather than f0.
12360
12361 2002-02-03 Andreas Schwab <schwab@suse.de>
12362
12363 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
12364 latter never being defined on GNU/Linux.
12365
12366 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
12367
12368 * xfaces.c (realize_default_face): Don't set the weight and slant of
12369 the default face to Qnormal, unless these attributes are unspecified.
12370
12371 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12372
12373 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
12374 Call cancel_hourglass unconditionally.
12375
12376 * eval.c (Fsignal): Remove duplicated declaration of
12377 the variable `display_hourglass_p'.
12378
12379 2002-01-31 Richard M. Stallman <rms@gnu.org>
12380
12381 * editfns.c (region_limit): Nicer error message.
12382
12383 * coding.c (decode_composition_emacs_mule):
12384 Give up if NCOMPONENT gets too large to index `component'.
12385
12386 * callint.c (check_mark): New arg to specify clearer error message.
12387 Callers changed.
12388
12389 2002-01-27 Richard M. Stallman <rms@gnu.org>
12390
12391 * minibuf.c (Fcompleting_read): Doc fix.
12392
12393 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12394
12395 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
12396 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
12397 Fix doc-strings.
12398
12399 2002-01-26 Richard M. Stallman <rms@gnu.org>
12400
12401 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
12402
12403 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
12404 and scroll_up_aggressively.
12405
12406 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12407
12408 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
12409
12410 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
12411
12412 * textprop.c (Fnext_property_change, Fnext_single_property_change)
12413 (Fprevious_property_change, Fprevious_single_property_change):
12414 Stay within the narrowed-buffer boundaries.
12415
12416 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
12417
12418 * term.c (Ftty_display_color_cells): New function.
12419 (syms_of_term): Defsubr it.
12420 (Ftty_display_color_cells, Ftty_display_color_p): Change the
12421 argument name to DISPLAY. Doc fix.
12422
12423 * dispextern.h: Add prototype for set_tty_color_mode and
12424 tty_setup_colors.
12425
12426 2002-01-24 Jason Rumney <jasonr@gnu.org>
12427
12428 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
12429 If region left to draw is not what was expected, mark the frame as
12430 garbaged.
12431
12432 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
12433 Combine the regions returned by BeginPaint and GetUpdateRect.
12434
12435 2002-01-23 Jason Rumney <jasonr@gnu.org>
12436
12437 * w32term.c (x_update_window_begin): Only hide caret if
12438 w32_use_visible_system_caret is set.
12439 (x_update_window_end): Only show caret if
12440 w32_use_visible_system_caret is set.
12441 (syms_of_w32term): Handle SystemParametersInfo call failing.
12442
12443 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
12444
12445 2002-01-22 Richard M. Stallman <rms@gnu.org>
12446
12447 * unexelf.c (unexec): Define n so as to cause compilation error
12448 for the code where people have often written n instead of nn.
12449
12450 * .gdbinit (hookpost-run): Defined.
12451
12452 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12453
12454 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
12455
12456 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12457
12458 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
12459 if fullscreen is being set.
12460
12461 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12462
12463 * minibuf.c (Fminibuffer_contents)
12464 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
12465 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
12466
12467 2002-01-21 Richard M. Stallman <rms@gnu.org>
12468
12469 * window.c (check_frame_size): Fix minimum height calculation.
12470
12471 2002-01-20 Ken Raeburn <raeburn@gnu.org>
12472
12473 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
12474 height before comparison.
12475 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
12476
12477 2002-01-20 Jason Rumney <jasonr@gnu.org>
12478
12479 * w32term.c (w32_system_caret_width): Remove.
12480 (w32_use_visible_system_caret): New user flag.
12481 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
12482 Windows reports a screen reader running.
12483 (x_update_window_begin): Hide the system caret.
12484 (x_update_window_end): Show the system caret.
12485 (x_display_and_set_cursor): Don't draw a cursor when
12486 w32_use_visible_system_caret is set. Do not adjust width.
12487
12488 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
12489 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
12490 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
12491 the user requests it. Use system default width when creating.
12492 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
12493
12494 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
12495 New window messages.
12496
12497 2002-01-20 Richard M. Stallman <rms@gnu.org>
12498
12499 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
12500
12501 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12502
12503 * doprnt.c (doprnt1): Fix typos in error call.
12504
12505 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
12506
12507 * unexelf.c (unexec) [__sgi]: Support the .got sections.
12508
12509 2002-01-20 Jason Rumney <jasonr@gnu.org>
12510
12511 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
12512 that Windows returns. If a double check fails, try to guess how
12513 ExtTextOut is going to act.
12514
12515 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
12516 in place of stricmp.
12517 (w32_list_synthesized_fonts): Removed.
12518 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
12519 (struct enumfont_t): New element; list.
12520 (enum_font_cb2): List all style and charset variations of a font.
12521 (Fw32_select_font): New optional argument; include_proportional.
12522 Exclude vertical fonts. Exclude proportional fonts unless
12523 include_proportional is non-nil.
12524 (w32_enable_synthesized_fonts): Change to a boolean.
12525 (Fw32_send_sys_command): Doc fix.
12526
12527 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12528
12529 * dispnew.c (update_frame): Move the variable `tem' to the block
12530 where it is used.
12531
12532 2002-01-19 Jason Rumney <jasonr@gnu.org>
12533
12534 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
12535 call to face-set-after-frame-default.
12536
12537 2002-01-18 Richard M. Stallman <rms@gnu.org>
12538
12539 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
12540 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
12541
12542 2002-01-17 Richard M. Stallman <rms@gnu.org>
12543
12544 * window.c (enlarge_window): When exceeding size of parent,
12545 directly delete all the siblings instead of trying to resize it.
12546
12547 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12548
12549 * term.c (set_tty_color_mode): Remove unused variable `tem'.
12550
12551 2002-01-16 Henrik Enberg <henrik@enberg.org>
12552
12553 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
12554
12555 2002-01-16 Kim F. Storm <storm@cua.dk>
12556
12557 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
12558 is invisible. This can happen if cursor is on top line of a
12559 window, and we switch to a buffer with a header line.
12560
12561 * w32term.c (x_erase_phys_cursor): Ditto.
12562
12563 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12564
12565 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
12566 `dont_resize' only when used.
12567
12568 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
12569
12570 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
12571
12572 * xdisp.c (display_mode_element): When computing charpos, depend
12573 on multibyteness of elt, not the text in field.
12574
12575 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12576
12577 * buffer.c (Fkill_all_local_variables):
12578 Increment `update_mode_lines' only once.
12579
12580 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12581
12582 * lisp.h (adjust_after_replace_noundo)
12583 (Fupdate_coding_systems_internal): Add prototypes.
12584
12585 * sound.c (Fplay_sound): Initialize header_size also for :data case.
12586
12587 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
12588
12589 Support for the --color command-line argument and tty-color-mode
12590 frame parameter:
12591
12592 * term.c (tty_default_color_capabilities, tty_setup_colors)
12593 (set_tty_color_mode): New functions.
12594 (term_init): Call tty_default_color_capabilities.
12595 (Qtty_color_mode_alist): New variable.
12596 (syms_of_term): Intern and staticpro it.
12597
12598 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
12599 frames.
12600 (do_switch_frame): For termcap frames, switch the tty
12601 color mode as specified by the frame's parameters.
12602 (Qtty_color_mode): New variable.
12603 (syms_of_frame): Intern and staticpro it.
12604
12605 * emacs.c (USAGE2): Add the --color option.
12606 (standard_args): Ditto.
12607
12608 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12609
12610 * xterm.h (struct x_output): New members want_fullscreen,
12611 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
12612 y_pixels_outer_diff.
12613 New enum for FULLSCREEN_* constants.
12614 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
12615 is NULL.
12616 (x_fullscreen_adjust): Add prototype.
12617
12618 * emacs.c (USAGE2): Add the new full-screen arguments.
12619 (standard_args): Ditto.
12620
12621 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12622 New variables.
12623 (syms_of_xfns): Intern and staticpro them.
12624 (x_frame_parms) <"fullscreen">: New parameter.
12625 (x_fullscreen_move, x_set_fullscreen): New functions.
12626 (x_set_frame_parameters): Support for Qfullscreen.
12627 (x_real_positions): More accurate computation of the frame position.
12628 (x_figure_window_size): Support full-screen frames.
12629 (Fx_create_frame): Default the fullscreen parameter.
12630
12631 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
12632 (XTread_socket) <Expose>: Call x_check_fullscreen.
12633 <ConfigureNotify>: Don't resize to fullscreen.
12634 Call x_check_fullscreen_move, and set the want_fullscreen member of
12635 output_data.x.
12636
12637 2002-01-13 Jason Rumney <jasonr@gnu.org>
12638
12639 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
12640 for mice with more than 3 buttons.
12641
12642 * w32term.c (parse_button): New parameter xbutton. Callers changed.
12643 (w32_read_socket): Handle new "XBUTTON" messages.
12644
12645 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
12646 (syms_of_w32fns): DEFVAR_BOOL it.
12647 (w32_wnd_proc): Handle new "XBUTTON" messages.
12648
12649 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12650
12651 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
12652
12653 2002-01-13 Andreas Schwab <schwab@suse.de>
12654
12655 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
12656
12657 2002-01-12 Andreas Schwab <schwab@suse.de>
12658
12659 * .gdbinit (xbuffer): Remove address operator since data is now a
12660 pointer.
12661
12662 2002-01-11 Richard M. Stallman <rms@gnu.org>
12663
12664 * insdel.c (adjust_after_replace_noundo): New function.
12665
12666 * coding.c (code_convert_region): Don't copy old text if undo disabled.
12667
12668 2002-01-09 Jason Rumney <jasonr@gnu.org>
12669
12670 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
12671 when checking for multiple frames.
12672
12673 2002-01-08 Richard M. Stallman <rms@gnu.org>
12674
12675 * window.c (delete_window): Rewrite the code for changing the
12676 selected window to handle the case where WINDOW is not a leaf.
12677
12678 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
12679
12680 * process.c (send_process): Set src_multibyte to 1 after the call
12681 top setup_coding_system, not before the call.
12682
12683 2002-01-07 Jason Rumney <jasonr@gnu.org>
12684
12685 * xmenu.c (set_frame_menubar, xmenu_show):
12686 (xdialog_show): Initialize wv->help to Qnil.
12687
12688 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
12689 (w32_dialog_show): Initialize wv->help to Qnil.
12690
12691 2002-01-06 Jason Rumney <jasonr@gnu.org>
12692
12693 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
12694
12695 * w32menu.c (w32_menu_display_help): Revert last change.
12696
12697 * xmenu.c (menu_highlight_callback): Revert last change.
12698
12699 2002-01-06 Andreas Schwab <schwab@suse.de>
12700
12701 * insdel.c (make_gap_larger): Make sure buffer size does not
12702 overflow range of int.
12703
12704 2002-01-05 Jason Rumney <jasonr@gnu.org>
12705
12706 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
12707 OVERLAPS_P.
12708
12709 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
12710
12711 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
12712 to the left or to the right of the pointer, put it against
12713 the left screen edge.
12714 (x_frame_parms): Add missing braces around initializer.
12715
12716 * w32term.c (x_setup_relief_colors): Don't compute an image's
12717 background color if it doesn't have a Pixmap.
12718 (notice_overwritten_cursor): Don't depend on
12719 output_cursor and updated_area. Compare pixel coordinates with
12720 window's cursor pixel coordinates.
12721 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12722 Call notice_overwritten_cursor with new arg list.
12723 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12724 unconditionally.
12725 (x_draw_image_relief): Use predefined macro instead of
12726 constant when the value of `tool_bar_button_relief' is negative.
12727
12728 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
12729
12730 2002-01-04 Richard M. Stallman <rms@gnu.org>
12731
12732 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
12733
12734 2002-01-03 Richard M. Stallman <rms@gnu.org>
12735
12736 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
12737 (Fkey_binding): Try the `keymap' property map first.
12738 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
12739 minor mode bindings.
12740
12741 2002-01-03 Kim F. Storm <storm@cua.dk>
12742
12743 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
12744
12745 2002-01-02 Richard M. Stallman <rms@gnu.org>
12746
12747 * keyboard.c (read_key_sequence): Handle the keymap property
12748 before minor mode maps.
12749
12750 * editfns.c (Fformat): Update thissize from field_width
12751 based on the actual width, in the string case.
12752
12753 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12754
12755 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
12756 when used as truth value to prevent gcc warnings.
12757
12758 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
12759 * w32proc.c: Include <config.h>.
12760
12761 2002-01-01 Andreas Schwab <schwab@suse.de>
12762
12763 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
12764 not EMACS_INT, to make them compatible with DEFVAR_INT.
12765 * lisp.h (max_specpdl_size): Adjust declaration.
12766
12767 2002-01-01 Richard M. Stallman <rms@gnu.org>
12768
12769 * print.c (print_object): Test print_escape_nonascii only for
12770 unibyte strings.
12771 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
12772 when outputting to a multibyte buffer.
12773
12774 2001-12-29 Richard M. Stallman <rms@gnu.org>
12775
12776 * print.c (print_object): In multibyte string, use hex escapes.
12777 Use octal only for unibyte strings.
12778 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
12779
12780 * lread.c (read_escape): New arg BYTEREP for reporting whether
12781 escape forces unibyte or multibyte.
12782 (read1): When reading a string, take note of that info.
12783
12784 2001-12-29 Ken Raeburn <raeburn@gnu.org>
12785
12786 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
12787 comparison to test lisp value returned by Fget.
12788
12789 2001-12-29 Richard M. Stallman <rms@gnu.org>
12790
12791 * lisp.h (max_specpdl_size): Add declaration.
12792
12793 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
12794
12795 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
12796 Handle modifier bits. Correct typo in error message.
12797
12798 2001-12-28 Richard M. Stallman <rms@gnu.org>
12799
12800 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
12801 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
12802 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
12803 Update calls to Fdefine_abbrev.
12804 (write_abbrev): Update for changed data format.
12805 Don't list "system" abbrevs.
12806 (Fexpand_abbrev): Update use count with new data format.
12807 (describe_abbrev): Update for changed data format.
12808 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
12809
12810 * config.in (HAVE_MBSINIT): Add #undef.
12811
12812 * strftime.c (mbsinit): Define as no-op if not available.
12813
12814 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
12815 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
12816
12817 * keymap.c (Flookup_key): Error message if key has wrong data type.
12818 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
12819 (exclude_key): New variable.
12820
12821 2001-12-28 Gerd Moellmann <gerd@gnu.org>
12822
12823 * xterm.c (x_setup_relief_colors): Don't compute an image's
12824 background color if it doesn't have a Pixmap.
12825
12826 * xterm.c (notice_overwritten_cursor): Don't depend on
12827 output_cursor and updated_area. Compare pixel coordinates with
12828 window's cursor pixel coordinates.
12829 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
12830 Call notice_overwritten_cursor with new arg list.
12831 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
12832 unconditionally.
12833
12834 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
12835 height of the cursor line to the amount to scroll.
12836
12837 2001-12-27 Richard M. Stallman <rms@gnu.org>
12838
12839 * intervals.c (set_point_both): The position after an invisible,
12840 intangible character is not an acceptable stopping point.
12841
12842 2001-12-27 Ken Raeburn <raeburn@gnu.org>
12843
12844 * window.c (enlarge_window): In new preserve_before code, convert
12845 CURBEG from lisp object to integer before doing arithmetic.
12846
12847 2001-12-27 Richard M. Stallman <rms@gnu.org>
12848
12849 * bytecode.c (Fbyte_code): Undo previous change.
12850
12851 2001-12-26 Kim F. Storm <storm@cua.dk>
12852
12853 * keyboard.c (record_char): Ignore duplicate help-echo events only
12854 separated by mouse-movement. When tracking mouse, only record
12855 first and last mouse-movement event in same window.
12856 Don't record mouse-movement events in keyboard macros.
12857
12858 2001-12-25 Richard M. Stallman <rms@gnu.org>
12859
12860 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
12861 (Fenlarge_window): New arg PRESERVE_BEFORE.
12862
12863 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
12864 instead of Fstring_as_unibyte.
12865
12866 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12867
12868 The following changes remove mocklisp support:
12869
12870 * mocklisp.h, mocklisp.c: Files removed.
12871
12872 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
12873 `Qmocklisp' and `Qmocklisp_arguments'.
12874 Remove prototype of syms_of_mocklisp.
12875
12876 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
12877
12878 * callint.c: Do not include mocklisp.h.
12879 (Fcall_interactively): Do not test for mocklisp case.
12880
12881 * eval.c: Remove variables `Qmocklisp_arguments',
12882 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
12883 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
12884 Do not test for mocklisp case.
12885 (Fwhile): Remove unused variable `tem'.
12886 (syms_of_eval): Remove variable `moclisp-arguments'.
12887
12888 * data.c (wrong_type_argument): Remove mocklisp case.
12889
12890 * doc.c (Fdocumentation): Remove mocklisp case.
12891
12892 * emacs.c (main): Do not call syms_of_mocklisp.
12893
12894 2001-12-21 Richard M. Stallman <rms@gnu.org>
12895
12896 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
12897 to the left or to the right of the pointer, put it against
12898 the left screen edge.
12899
12900 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
12901
12902 * Makefile.in (distclean): Remove .gdbinit if we are building
12903 outside the source tree.
12904
12905 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
12906
12907 * w32.c (emacs_root_dir): New function.
12908
12909 * msdos.c (emacs_root_dir): New function.
12910
12911 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
12912 of the current drive as the fallback for default_directory.
12913
12914 * dired.c (file_name_completion): Run the elements of
12915 completion-ignored-extensions through ENCODE_FILE.
12916
12917 * lisp.h (scmp): Remove prototype, since it's now a static
12918 function private to dired.c.
12919
12920 2001-12-18 Richard M. Stallman <rms@gnu.org>
12921
12922 * dired.c (scmp): Function moved from minibuf.c.
12923 Delete multibyte handling--used only on encoded strings.
12924
12925 * minibuf.c (scmp): Function moved to dired.c.
12926
12927 * fns.c (merge): Add QUIT call.
12928
12929 2001-12-18 Dave Love <fx@gnu.org>
12930
12931 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
12932 language/georgian.el.
12933
12934 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
12935
12936 * Makefile.in (lisp, shortlisp): Synchronize with changes to
12937 lisp/Makefile.in:DONTCOMPILE.
12938
12939 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12940
12941 * xdisp.c (window_box_height): Do not return negative values.
12942 From Gerd Moellmann <gerd@gnu.org>.
12943
12944 * keyboard.c (head_table): Add missing braces around initializer.
12945
12946 * term.c (keys): Likewise.
12947
12948 * xfns.c (x_frame_parms, visual_classes): Likewise.
12949
12950 2001-12-17 Sam Steingold <sds@gnu.org>
12951
12952 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
12953 patch (COMPOSING_P, not COMPOSING).
12954
12955 2001-12-17 Richard M. Stallman <rms@gnu.org>
12956
12957 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
12958
12959 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
12960 before calling decode_coding.
12961
12962 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
12963
12964 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
12965 instead of only for COMPOSITION_DISABLED.
12966
12967 2001-12-16 Richard M. Stallman <rms@gnu.org>
12968
12969 * alloc.c (pure_alloc): After overflow, allocate just a small block.
12970
12971 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
12972
12973 * buffer.h (struct buffer): New field `display_error_modiff'.
12974 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
12975
12976 * window.c (Frecenter): Clear display_error_modiff field.
12977
12978 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
12979 Call redisplay_window, but not if display_error_modiff field says no.
12980 (redisplay_window_error): New function.
12981 (displayed_buffer): New variable.
12982 (redisplay_internal, redisplay_windows): Call the new functions
12983 instead of redisplay_window directly.
12984
12985 2001-12-15 Richard M. Stallman <rms@gnu.org>
12986
12987 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
12988
12989 2001-12-14 Andrew Innes <andrewi@gnu.org>
12990
12991 * makefile.w32-in (EMACSLOADPATH): Define.
12992 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
12993 (bootstrap-temacs): Remove dependency on bootstrap-clean.
12994
12995 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
12996
12997 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
12998 parameter have a numeric value all the time.
12999
13000 * w32fns.c (x_report_frame_params): Likewise.
13001
13002 2001-12-12 Richard M. Stallman <rms@gnu.org>
13003
13004 * fileio.c (Fwrite_region): Doc fix.
13005
13006 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13007 (redisplay_internal): Call clear_image_cache only for window terminals.
13008
13009 2001-12-12 Gerd Moellmann <gerd@gnu.org>
13010
13011 * xdisp.c (move_it_vertically_backward): Change heuristic
13012 for the case that we didn't move far enough initially.
13013
13014 * window.c (Frecenter): Simplify computation in the case of window
13015 system frames and ARG < 0; use window_box_height.
13016
13017 2001-12-11 Richard M. Stallman <rms@gnu.org>
13018
13019 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13020 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
13021
13022 2001-12-11 Andrew Innes <andrewi@gnu.org>
13023
13024 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13025 arg is negative.
13026
13027 2001-12-11 Richard M. Stallman <rms@gnu.org>
13028
13029 * m/hp800.h: Split the __hpux conditional into the parts
13030 that are right for GNU/Linux too and the parts that are not.
13031 Use the former if GNU_LINUX.
13032 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
13033
13034 * s/gnu-linux.h (GNU_LINUX): Defined.
13035
13036 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13037
13038 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13039 `new style' [w/`doc:' keyword].
13040
13041 2001-12-10 Jason Rumney <jasonr@gnu.org>
13042
13043 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13044 before using.
13045
13046 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13047
13048 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13049 keyword].
13050
13051 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
13052
13053 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
13054
13055 * s/hpux10.h (srand48): Don't undefine.
13056
13057 2001-12-09 Jason Rumney <jasonr@gnu.org>
13058
13059 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13060 Add comment to explain where the struct came from.
13061 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13062 (add_menu_item): Process pop-up menus first to avoid memory leak.
13063 (add_menu_item, w32_menu_display_help): Use `help' field as
13064 Lisp_Object.
13065 (w32_free_submenu_strings): Only free owner-drawn strings.
13066
13067 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13068
13069 * COPYING: Moved back.
13070
13071 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13072 Add parentheses around && within ||.
13073
13074 * indent.c (compute_motion): Likewise.
13075
13076 * intervals.c (merge_properties_sticky): Likewise.
13077
13078 * coding.c (setup_coding_system, shrink_encoding_region)
13079 (Fdecode_sjis_char): Likewise.
13080
13081 2001-12-07 Andreas Schwab <schwab@suse.de>
13082
13083 * xdisp.c (display_mode_element): Don't read past end of string if
13084 it ends with '%'.
13085
13086 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13087 can hold.
13088
13089 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13090 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13091 type changed to Lisp_Object.
13092 (syms_of_data): DEFVAR_LISP them.
13093
13094 2001-12-07 Richard M. Stallman <rms@gnu.org>
13095
13096 * callproc.c (init_callproc): Set Vdata_directory based on the source
13097 location whenever Emacs was run uninstalled.
13098
13099 2001-12-06 Paul Eggert <eggert@twinsun.com>
13100
13101 * config.in (HAVE_WORKING_VFORK): New #undefs.
13102 * process.c (create_process):
13103 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13104 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13105 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13106 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13107 * m/intel386.h (HAVE_VFORK): Likewise.
13108 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13109 * m/mips.h (HAVE_VFORK): Likewise.
13110 * s/freebsd.h (vfork): Remove #define.
13111 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13112 * s/usg5-4-2.h: Fix comment about vfork.
13113
13114 2001-12-06 Richard M. Stallman <rms@gnu.org>
13115
13116 * s/hpux10.h (random): Add undef.
13117 (HAVE_RANDOM): Define it just once.
13118
13119 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
13120
13121 * eval.c: Undo last change: the standard syntax is not wanted.
13122
13123 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
13124
13125 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13126 scroll bars of the frame before deleting the frame itself. If the
13127 frame has a widget, delete the frame with XtDestroyWidget, and do
13128 not call XDestroyWindow before that.
13129
13130 2001-12-06 Kim F. Storm <storm@cua.dk>
13131
13132 * xfns.c (x_report_frame_params): Return actual fringe widths.
13133
13134 * w32fns.c (x_report_frame_params): Return actual fringe widths.
13135
13136 2001-12-05 Andrew Innes <andrewi@gnu.org>
13137
13138 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13139 excessively large.
13140
13141 * insdel.c (make_gap_larger): New function.
13142 (make_gap_smaller): New function.
13143 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13144 Call make_gap_smaller if arg is negative.
13145
13146 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
13147
13148 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13149 Pass a dummy argument when calling interrupt_signal.
13150 (parse_menu_item): Mark disabled items before checking for empty def.
13151 (read_char_minibuf_menu_prompt): Make safety more visible.
13152 (read_key_sequence): Add a `first_unbound' variable.
13153 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13154 unbound prefix as soon as we can detect it.
13155
13156 * doc.c (Fsnarf_documentation): Add prototype.
13157 (get_doc_string): Handle negative arguments.
13158 (Fdocumentation): Use AREF and ASIZE.
13159 Move the calls to get_doc_string to a single place.
13160 Don't confuse an interactive-spec for a docstring reference.
13161 (Fdocumentation_property): Take advantage of the fact that
13162 get_doc_string now ignores the sign of the docstring position.
13163
13164 * eval.c: Use standard syntax for usage in docstrings.
13165
13166 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13167
13168 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
13169
13170 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13171
13172 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13173 constant when the value of `tool_bar_button_relief' is negative.
13174
13175 2001-12-02 Richard M. Stallman <rms@gnu.org>
13176
13177 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13178 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
13179
13180 * fileio.c (read_non_regular): Delete Fsignal call.
13181
13182 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
13183
13184 * lisp.h (run_hook_list_with_args): Undo last change.
13185
13186 2001-12-01 Gerd Moellmann <gerd@gnu.org>
13187
13188 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
13189
13190 2001-12-01 Jason Rumney <jasonr@gnu.org>
13191
13192 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
13193
13194 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13195 [!WM_MOUSELEAVE]: Define.
13196
13197 * w32menu.c (current_popup_menu, get_menu_item_info):
13198 (set_menu_item_info): New vars.
13199 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13200 (w32_menu_show): Set current_popup_menu.
13201 (add_menu_item): Allocate new strings for owner-drawn menu items
13202 and help strings.
13203 Use owner-draw for disabled menu items again.
13204 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13205 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
13206
13207 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13208 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13209 <WM_EXITMENULOOP>: Free menu strings.
13210 <WM_MOUSELEAVE>: Stop tracking mouse.
13211 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
13212
13213 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13214 and mouse face.
13215
13216 2001-12-01 Kim F. Storm <storm@cua.dk>
13217
13218 The following changes add left-fringe and right-fringe
13219 frame parameters to adjust fringe widths, or remove one or
13220 both fringes.
13221
13222 * frame.h (struct frame): Remove trunc_area_pixel_width and
13223 trunc_area_cols fields.
13224 (Qleft_fringe, Qright_fringe): Declare.
13225 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
13226
13227 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13228 (syms_of_frame): Initialize them.
13229
13230 * window.c (coordinates_in_window): Handle separate left and right
13231 fringe widths.
13232
13233 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13234 and fringe_cols fields.
13235 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13236 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13237 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13238 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13239 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13240 (x_compute_fringe_widths): Add prototype.
13241
13242 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13243 fill fringe evenly with small dashes.
13244 (x_draw_fringe_bitmap): Clear background if necessary. Align and
13245 clip the new ZV bitmap to avoid jitter between rows.
13246 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13247 background. Don't draw fringe bitmaps if fringe width is zero.
13248 (x_compute_fringe_widths): New function.
13249 (x_new_font, x_set_window_size_1): Use it.
13250
13251 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
13252 (x_set_frame_parameters): Process `font' parameter before other
13253 parameters as fringe widths depend on it.
13254 (x_set_fringe_width): New function.
13255 (x_figure_window_size): Use x_compute_fringe_widths.
13256 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
13257 parameters.
13258
13259 * widget.c (set_frame_size): Use x_compute_fringe_widths.
13260 (EmacsFrameSetCharSize): Ditto.
13261
13262 * w32term.h: Merged changes from xterm.h.
13263 * w32term.c: Merged changes from xterm.c.
13264 * w32fns.c: Merged changes from xfns.c.
13265
13266 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13267
13268 * COPYING: Removed.
13269
13270 2001-11-29 Dave Love <fx@gnu.org>
13271
13272 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
13273 extra extra slot.
13274 (detect_coding_mask): Fix call of detect_coding_iso2022.
13275
13276 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13277
13278 * fileio.c (file-name-coding-system)
13279 (default-file-name-coding-system): Doc fix (links to referenced
13280 variables added).
13281
13282 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13283
13284 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
13285 Add dummy uses of gcproN variables.
13286
13287 * category.c (describe_category, describe_category_1)
13288 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
13289 (syms_of_category): Don't defsubr Sdescribe_categories.
13290
13291 2001-11-28 Richard M. Stallman <rms@gnu.org>
13292
13293 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
13294
13295 * Makefile.in (lispdir): New variable, referring to build dir.
13296 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
13297
13298 2001-11-28 Andrew Innes <andrewi@gnu.org>
13299
13300 * w32menu.c (w32_menu_display_help): Actually add the new argument
13301 OWNER.
13302
13303 2001-11-28 Jason Rumney <jasonr@gnu.org>
13304
13305 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
13306 menu items. From David Ponce <dponce@wanadoo.fr>.
13307 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
13308 conditionally.
13309 (w32_menu_display_help): New argument OWNER. Rewritten to store a
13310 help event in the owner frame's keyboard buffer.
13311
13312 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
13313 (Fx_show_tip): Don't subtract last width from row width.
13314
13315 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
13316 (w32_read_socket): Use EQ to compare frames.
13317
13318 2001-11-28 Gerd Moellmann <gerd@gnu.org>
13319
13320 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13321 OVERLAPS_P.
13322
13323 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13324
13325 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
13326 `gcpro3' and `gcpro4'.
13327
13328 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
13329
13330 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
13331
13332 * ccl.c: Use AREF and ASIZE.
13333
13334 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
13335
13336 * lisp.h (run_hook_list_with_args): Remove.
13337 (LIST_END_P): Fix call to wrong_type_argument.
13338 (make_fixnum_or_float): Use EMACS_INT rather than int.
13339
13340 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
13341
13342 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
13343 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
13344
13345 * eval.c: Use AREF and ASIZE.
13346 (Ffetch_bytecode): Add the file name to the error message.
13347
13348 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
13349 which match the end of the file-name.
13350 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
13351 is not a valid env var, but leave it as is instead.
13352
13353 * keymap.c (access_keymap): Handle t bindings like nil bindings.
13354 Make nil bindings in char-tables transparent.
13355 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
13356
13357 2001-11-26 Richard M. Stallman <rms@gnu.org>
13358
13359 * textprop.c (set_text_properties_1): Allow START, END in either order.
13360 Do nothing if range is empty.
13361
13362 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
13363
13364 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
13365 (clean): Not here.
13366
13367 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13368
13369 * textprop.c (set_text_properties_1): Clearly mark that the
13370 interval should not be empty.
13371
13372 * intervals.c (graft_intervals_into_buffer):
13373 Don't call set_text_properties_1 on an empty interval.
13374
13375 2001-11-25 Richard M. Stallman <rms@gnu.org>
13376
13377 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
13378
13379 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
13380 don't lose the data in it.
13381
13382 2001-11-25 Juanma Barranquero <lektu@terra.es>
13383
13384 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
13385
13386 * buffer.c (Fkill_buffer): Likewise.
13387
13388 * print.c (temp_output_buffer_setup): Likewise.
13389
13390 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
13391
13392 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
13393
13394 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
13395
13396 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
13397 Niemitalo <kon@iki.fi>.
13398
13399 2001-11-25 Jason Rumney <jasonr@gnu.org>
13400
13401 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
13402
13403 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
13404 (Fx_show_tip): Block input during frame creation.
13405 (Fx_show_tip, Fx_hide_tip): Enable.
13406
13407 2001-11-24 Richard M. Stallman <rms@gnu.org>
13408
13409 * lread.c (Fload): Detect recursive load error for more than 3
13410 nestings of the same file.
13411 (Vrecursive_load_depth_limit): Variable deleted.
13412 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
13413
13414 2001-11-24 Jason Rumney <jasonr@gnu.org>
13415
13416 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
13417 mouse position if either left or top is not specified.
13418
13419 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
13420 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
13421 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
13422 (my_create_tip_window): Assign tip_window.
13423 (x_create_tip_frame): Use same defaults as X.
13424 (compute_tip_xy): Remove unused variable. Use full screen width.
13425 (Fx_show_tip): Do not double height. Call ShowWindow directly.
13426
13427 * w32term.c (x_after_update_window_line): Doc fix.
13428 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
13429 frames.
13430 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
13431
13432 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
13433 for all Windowed systems.
13434
13435 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
13436
13437 * msdos.c (IT_clear_screen): If the frame's faces are not yet
13438 realized, use the initial screen colors to clear the screen.
13439
13440 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13441
13442 * textprop.c (Fset_text_properties): Remove unused variables
13443 `unchanged', `prev_changed', `s' and `len'.
13444
13445 * search.c (Freplace_match): Remove unused variable `inslen'.
13446
13447 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
13448
13449 2001-11-22 Jason Rumney <jasonr@gnu.org>
13450
13451 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
13452 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
13453 (my_create_tip_window): New function.
13454 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
13455 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
13456
13457 2001-11-20 Jason Rumney <jasonr@gnu.org>
13458
13459 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
13460 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
13461
13462 * w32fns.c (Vw32_system_coding_system): Remove.
13463 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
13464
13465 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
13466
13467 * fileio.c (Fwrite_region): Move choose_write_coding_system to
13468 after build_annotations.
13469
13470 * syntax.c (describe_syntax): Add dummy arg.
13471 (describe_syntax_1): Update call to describe_vector.
13472
13473 * category.c (describe_category): Add dummy arg.
13474 (describe_category_1): Update call to describe_vector.
13475
13476 * keymap.c (Fdescribe_vector): Add `describer' parameter.
13477 (describe_command, describe_translation): Add dummy second param.
13478 (describe_map): Call elt_describer with two arguments.
13479 (describe_vector_princ): Add `fun' parameter.
13480 Call it instead of the hardcoded `princ'.
13481 (describe_vector): Add arg `args'.
13482 Pass it as a new second argument to elt_describer.
13483
13484 * keymap.h (describe_vector): Update prototype.
13485
13486 * frame.c: Don't include keymap.h any more.
13487 (keys_of_frame): Remove.
13488
13489 * lisp.h (keys_of_frame): Remove declaration.
13490
13491 * emacs.c (main): Don't call `keys_of_frame' any more.
13492
13493 2001-11-14 Andreas Schwab <schwab@suse.de>
13494
13495 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
13496 if defined, 0 otherwise.
13497 (MAP_FAILED): Define if not defined and use it to test mmap failure.
13498 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
13499
13500 2001-11-19 Richard M. Stallman <rms@gnu.org>
13501
13502 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
13503
13504 2001-11-18 Jason Rumney <jasonr@gnu.org>
13505
13506 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
13507 (x_draw_bar_cursor): If the background color of the glyph under
13508 the cursor equals the frame's cursor color, use the glyph's
13509 foreground color for drawing the bar cursor.
13510 (x_after_update_window_line): Clear internal border in different
13511 circumstances.
13512 (w32_set_vertical_scroll_bar): Check for width and height > 0.
13513 (w32_draw_relief_rect): Correct relief by 1 pixel.
13514 (x_set_glyph_string_background_width):
13515 Set extends_to_end_of_line_p if the row's fill_line_p is set and
13516 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
13517 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
13518 if cursor_in_non_selected_windows is false.
13519 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
13520 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
13521 Notice if cursor gets overwritten.
13522 (notice_overwritten_cursor): Renamed from
13523 note_overwritten_text_cursor. Rewritten to take glyph widths
13524 into account, and to take X positions as parameters.
13525 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
13526 around call to x_draw_glyphs.
13527 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
13528 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
13529 color to use for image glyph reliefs.
13530 (x_draw_image_relief): Accept zero tool_bar_button_relief.
13531 (glyph_rect): Remove unused variable `area'.
13532
13533 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
13534 some items.
13535 (x_set_internal_border_width): Set frame garbaged when window
13536 doesn't exist yet.
13537 (Fx_create_frame): Accept zero tool_bar_button_relief.
13538 (x_clear_image_1, four_corners_best, image_background)
13539 (image_background_transparent): New functions.
13540 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
13541 (gs_format): Add `:background' entry.
13542 (lookup_image): Set IMG's background color if specified.
13543 (pbm_load, xbm_load_image, png_load): Set IMG's background field
13544 when appropriate.
13545 (x_clear_image_1): Reset `background_valid' and
13546 `background_transparent_valid' fields.
13547 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
13548 calculating it here. Set IMG's background_transparent field.
13549 (enum xpm_keyword_index): Add XPM_BACKGROUND.
13550 (enum png_keyword_index): Add PNG_BACKGROUND.
13551 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
13552 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
13553 (enum gif_keyword_index): Add GIF_BACKGROUND.
13554 (enum gs_keyword_index): Add GS_BACKGROUND.
13555 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
13556 Pre-calculate image background color where necessary.
13557 (x_create_x_image_and_pixmap, xbm_load, gs_load):
13558 Use display info's n_cbits entry for screen depth.
13559 (Fx_show_tip): Remove unused variables `buffer', `top',
13560 `left', `max_width' and `max_height'.
13561
13562 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
13563
13564 2001-11-18 Gerd Moellmann <gerd@gnu.org>
13565
13566 * puresize.h (BASE_PURESIZE): Increase to 750000.
13567
13568 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13569
13570 * frame.c (Fframe_live_p): Doc fix.
13571
13572 2001-11-18 Richard M. Stallman <rms@gnu.org>
13573
13574 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
13575 (message_dolog_marker3): New static variables hold three markers.
13576 (syms_of_xdisp): Initialize and staticpro them.
13577 (message_dolog): Use message_dolog_marker1..3 instead of
13578 allocating markers each time. Unchain them when done.
13579
13580 2001-11-17 Richard M. Stallman <rms@gnu.org>
13581
13582 * doc.c (Fsnarf_documentation): Doc fix.
13583
13584 2001-11-17 Andreas Schwab <schwab@suse.de>
13585
13586 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
13587
13588 2001-11-17 Richard M. Stallman <rms@gnu.org>
13589
13590 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
13591
13592 2001-11-17 Jason Rumney <jasonr@gnu.org>
13593
13594 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
13595
13596 2001-11-17 Gerd Moellmann <gerd@gnu.org>
13597
13598 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
13599 with invalid position.
13600
13601 2001-11-16 Richard M. Stallman <rms@gnu.org>
13602
13603 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
13604
13605 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
13606 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
13607 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
13608
13609 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
13610
13611 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13612
13613 * fileio.c (build_annotations): Split off the tail.
13614 (build_annotations_2): New fun. Extracted from build_annotations.
13615 (Fwrite_region): Split the call to build_annotations into two
13616 calls to build_annotations and build_annotations_2.
13617
13618 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13619
13620 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
13621 clear_waiting_for_input with argument.
13622
13623 * xterm.h (x_update_cursor): Remove duplicated prototype.
13624
13625 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
13626
13627 * xterm.c (waiting_for_input): Remove unnecessary declaration.
13628
13629 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
13630
13631 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
13632
13633 * fileio.c (choose_write_coding_system): New fun, extracted
13634 from Fwrite_region.
13635 (Fwrite_region): Use it.
13636
13637 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
13638 (funcall_lambda, run_hook_with_args): Make static and add prototype.
13639 (ml_apply, find_handler_clause): Add prototype.
13640
13641 2001-11-16 Eli Zaretskii <eliz@gnu.org>
13642
13643 * config.in: Add #undef HAVE_COFF_H.
13644
13645 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
13646 Required for ISC 4.1.
13647
13648 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
13649
13650 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
13651 Andrew Wiseman <a.wiseman@btclick.com>.
13652
13653 2001-11-16 Kim F. Storm <storm@cua.dk>
13654
13655 The following changes are made to clean up the various internal
13656 references to the fringes to actually use the term `fringe' for
13657 them. Previously, they were called `flags areas', `bitmap areas',
13658 `left/right side of windows', or implicitly as `flags' or
13659 `bitmaps':
13660
13661 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
13662 Comments fixed. Use renamed symbols.
13663
13664 * dispnew.c: Comment fix. Use renamed symbols.
13665
13666 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
13667 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
13668 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
13669
13670 * msdos.c: Comment fix.
13671
13672 * w32fns.c: Use renamed symbols.
13673
13674 * w32term.c: Comment fixes. Use renamed symbols.
13675 (fringe_bitmap_type): Renamed from bitmap_type.
13676 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13677 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
13678 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13679
13680 * w32term.h: Comment fixes. Use renamed symbols.
13681 (fringes_extra): Renamed from flags_areas_extra.
13682 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13683 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13684 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13685 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13686 (FRAME_X_LEFT_FRINGE_WIDTH):
13687 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13688 (FRAME_X_RIGHT_FRINGE_WIDTH):
13689 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13690
13691 * widget.c: Use renamed symbols.
13692
13693 * window.c: Comment fixes. Use renamed symbols.
13694 (coordinates-in-window-p): Doc fix.
13695
13696 * xdisp.c: Comment fixes. Use renamed symbols.
13697
13698 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
13699
13700 * xfns.c: Use renamed symbols.
13701
13702 * xterm.c: Comment fixes. Use renamed symbols.
13703 (fringe_bitmap_type): Renamed from bitmap_type.
13704 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
13705 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
13706 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
13707
13708 * xterm.h: Comment fixes. Use renamed symbols.
13709 (fringes_extra): Renamed from flags_areas_extra.
13710 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
13711 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
13712 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
13713 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
13714 (FRAME_X_LEFT_FRINGE_WIDTH):
13715 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
13716 (FRAME_X_RIGHT_FRINGE_WIDTH):
13717 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
13718
13719 2001-11-15 Jason Rumney <jasonr@gnu.org>
13720
13721 * w32menu.c (add-menu-item): Make help_echo and radio buttons
13722 work for most menu items. From David Ponce
13723 <david.ponce@wanadoo.fr>.
13724
13725 2001-11-15 Gerd Moellmann <gerd@gnu.org>
13726
13727 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
13728 Some x_set_* function expect to be called even if old and new
13729 value are equal.
13730
13731 * xdisp.c (build_desired_tool_bar_string): Accept zero
13732 tool_bar_button_relief.
13733
13734 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
13735
13736 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
13737
13738 * xterm.c (x_draw_bar_cursor): If the background color of the
13739 glyph under the cursor equals the frame's cursor color, use
13740 the glyph's foreground color for drawing the bar cursor.
13741
13742 * dispnew.c (direct_output_forward_char): Fix character/byte
13743 position comparison.
13744
13745 2001-11-15 Miles Bader <miles@gnu.org>
13746
13747 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
13748 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
13749 Update arguments to find_field.
13750 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
13751 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
13752 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
13753 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
13754
13755 2001-11-14 Richard M. Stallman <rms@gnu.org>
13756
13757 * editfns.c (Fpropertize): Allow call with 1 arg.
13758
13759 * dispextern.h (image_background, image_background_transparent):
13760 Conditionalize on HAVE_X_WINDOWS.
13761
13762 2001-11-13 Richard M. Stallman <rms@gnu.org>
13763
13764 * print.c (Fprin1_to_string): Doc fix.
13765
13766 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
13767
13768 * floatfns.c (Fceiling, Ffloor): Doc fixes.
13769
13770 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
13771
13772 * fileio.c (Ffile_accessible_directory_p): Doc fix.
13773
13774 * eval.c (syms_of_eval): Doc fix.
13775
13776 * coding.c (syms_of_coding): Doc fix.
13777
13778 * doc.c (Fsnarf_documentation): Doc fix.
13779
13780 * dispnew.c (syms_of_display): Doc fix.
13781
13782 * category.c (Fget_unused_category): Doc fix.
13783
13784 * buffer.c (syms_of_buffer): Doc fixes.
13785
13786 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
13787
13788 * print.c (prin1, print): Doc fix.
13789
13790 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13791
13792 * fontset.h: Remove declarations of variables
13793 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
13794
13795 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
13796 `Vclip_large_size_font'.
13797
13798 2001-11-13 Jason Rumney <jasonr@gnu.org>
13799
13800 * w32fns.c: Doc fix.
13801
13802 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13803
13804 * xfaces.c (Fface_attributes_as_vector): Doc fix.
13805
13806 * fns.c: Doc fix.
13807
13808 * emacs.c: Doc fix.
13809
13810 * coding.c: Doc fix.
13811
13812 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
13813 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
13814 `new style' [w/`doc:' keyword].
13815
13816 2001-11-12 Richard M. Stallman <rms@gnu.org>
13817
13818 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
13819 LeaveNotify events. Only FocusIn and FocusOut do that now.
13820 (x_display_and_set_cursor): Do display hollow cursors in active
13821 minibuffer windows when they are not selected.
13822
13823 2001-11-12 Jason Rumney <jasonr@gnu.org>
13824
13825 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
13826 * w32term.c: Change doc-string comments to `new style'
13827 [w/`doc:' keyword]. Doc fixes.
13828
13829 * w32fns.c: Don't define max.
13830 (Fx_open_connection): Only execute once.
13831
13832 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13833
13834 * ccl.c: Change macros to use do-while block instead of if-else.
13835 Use braces to follow GNU Coding Standards.
13836
13837 2001-11-11 Richard M. Stallman <rms@gnu.org>
13838
13839 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
13840
13841 * lread.c (read_escape): Use end_of_file_error for reporting eof.
13842
13843 * insdel.c (replace_range): Use adjust_markers_for_replace
13844 instead of adjust_markers_for_delete and adjust_markers_for_insert.
13845
13846 * intervals.h: Declare set_text_properties and set_text_properties_1.
13847
13848 * textprop.c (set_text_properties_1): New subroutine
13849 broken out of set_text_properties.
13850 (set_text_properties): Use set_text_properties_1.
13851
13852 * intervals.c (graft_intervals_into_buffer):
13853 Use set_text_properties_1 to clear out properties.
13854
13855 * search.c (Freplace_match): Use replace_range to insert
13856 and delete. Don't request property inheritance from
13857 surrounding text.
13858
13859 2001-11-10 Jason Rumney <jasonr@gnu.org>
13860
13861 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
13862 vertical fonts. Allow them if face name is explicitly specified.
13863 Do not give up if we find a font that cannot be converted to an xlfd.
13864
13865 2001-11-10 Gerd Moellmann <gerd@gnu.org>
13866
13867 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
13868 instead of malloc/free.
13869
13870 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13871
13872 * xfaces.c (merge_face_vectors): Use braces to follow GNU
13873 Coding Standards.
13874 (Finternal_set_lisp_face_attribute): Likewise.
13875
13876 * buffer.c (Fbury_buffer): Likewise.
13877
13878 * indent.c (current_column_1): Remove unused variable `prev_col'.
13879
13880 * coding.c (encode_coding): Use precomputed value of `src'.
13881 (encode_coding): Remove unused variable `src_end'.
13882 (code_convert_region): Remove unused variables `count'.
13883
13884 2001-11-07 Jason Rumney <jasonr@gnu.org>
13885
13886 * w32term.c (x_display_and_set_cursor): Do not move system caret
13887 if cursor_glyph is NULL.
13888
13889 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13890
13891 * keymap.c (access_keymap): Fix compilation error.
13892
13893 2001-11-07 Miles Bader <miles@gnu.org>
13894
13895 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
13896
13897 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13898
13899 * intervals.c (graft_intervals_into_buffer):
13900 Remove #ifdef'd-out code.
13901 (graft_intervals_into_buffer): Remove unused variable `middle'.
13902
13903 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
13904 code (eval-current-buffer).
13905 Change doc-string comments to `new style' [w/`doc:' keyword].
13906
13907 2001-11-06 Richard M. Stallman <rms@gnu.org>
13908
13909 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
13910
13911 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
13912
13913 * lread.c (read1): Fix behavior with nested backquoting.
13914
13915 * keyboard.c (make_lispy_event): Check integerness and fix
13916 Lisp_Object/int mixup.
13917
13918 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13919
13920 * fns.c (copy_hash_table): Remove unused variable `v'.
13921
13922 * fontset.c (fontset_font_pattern): Remove unused variable
13923 `family_registry'.
13924
13925 * indent.c (current_column_1): Remove unused variable `prev_col'.
13926
13927 2001-11-05 Richard M. Stallman <rms@gnu.org>
13928
13929 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
13930
13931 * buffer.c (Fkill_buffer): Don't delete auto save file
13932 if buffer is modified.
13933
13934 2001-11-05 Andrew Innes <andrewi@gnu.org>
13935
13936 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
13937 CHECK_NUMBER_CDR.
13938
13939 2001-11-05 Richard M. Stallman <rms@gnu.org>
13940
13941 * unexelf.c (unexec): Minor changes; clean up comments.
13942
13943 2001-11-05 Sam Steingold <sds@gnu.org>
13944
13945 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
13946
13947 2001-11-05 Andreas Schwab <schwab@suse.de>
13948
13949 * sound.c (sound_perror): Save errno from being clobbered.
13950
13951 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
13952
13953 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
13954 the program image directly.
13955
13956 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13957
13958 * buffer.h (Fbuffer_local_value): Add prototype.
13959
13960 2001-11-04 Richard M. Stallman <rms@gnu.org>
13961
13962 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
13963 and CHECK_BUFFER.
13964
13965 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
13966 (record_char): Likewise.
13967
13968 * keyboard.c (make_lispy_event): Don't insist a drag event must
13969 move to a different buffer position. Instead, check for moving at
13970 least double_click_fuzz.
13971
13972 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
13973
13974 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
13975
13976 * indent.c (current_column_1, Fmove_to_column): Separate the code
13977 for display-table glyphs from the code for buffer text, to fix
13978 bugs in the former.
13979
13980 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
13981
13982 * buffer.c (Fbuffer_local_value): New function.
13983 (syms_of_buffer): Defsubr it.
13984
13985 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
13986 value of `cursor-in-non-selected-windows'.
13987
13988 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
13989 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
13990 (syms_of_xdisp): Initialize it.
13991
13992 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13993
13994 * xfns.c (Fx_create_frame): Doc fix.
13995
13996 * coding.c: Change doc-string comments to `new style' [w/`doc:'
13997 keyword].
13998
13999 * eval.c (top_level_value, top_level_set): Remove commented and
14000 #ifdef'd-out code.
14001 (Fdefvar): Fix usage in doc-string.
14002
14003 2001-11-03 Richard M. Stallman <rms@gnu.org>
14004
14005 * xfns.c: Include unistd.h, if it exists.
14006
14007 * editfns.c: Move the include of ctype.h after unistd.h.
14008
14009 * gmalloc.c: Test BROKEN_PROTOTYPES.
14010
14011 2001-11-03 Ken Raeburn <raeburn@gnu.org>
14012
14013 * lisp.h (CHECK_STRING_CAR): New macro.
14014 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14015 treating XCAR and XCDR as lvalues.
14016 (openp): Use CHECK_STRING_CAR.
14017 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
14018
14019 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
14020
14021 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14022 (SIGMASKTYPE): Define.
14023
14024 * syssignal.h (sigunblock): Don't define if already defined.
14025
14026 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14027
14028 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14029 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14030 Fix typos in comments.
14031
14032 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14033 and #ifdef'd-out code.
14034 Fix and reindent comments.
14035
14036 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
14037
14038 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14039 argument `i' in macros.
14040
14041 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14042 `i' in macros.
14043
14044 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14045 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14046 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14047 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14048 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14049 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14050 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14051 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14052 in macros.
14053
14054 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14055 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14056 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14057 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14058 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14059 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14060 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14061 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14062 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14063 (remove unused second argument).
14064
14065 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
14066
14067 * syntax.c (describe_syntax): New wrapper.
14068 (Finternal_describe_syntax_value): Rename from describe_syntax.
14069 Don't insert space at front and \n at the end.
14070 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
14071
14072 * regex.c (re_wctype): Try to fix some warnings.
14073 (regcomp, regexec): Don't forget the __restrict.
14074
14075 2001-11-02 Richard M. Stallman <rms@gnu.org>
14076
14077 * textprop.c (Fget_char_property): Doc fix.
14078
14079 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14080
14081 * process.c (Fstart_process): Add usage to doc-string.
14082
14083 * data.c (Fsetq_default): Ditto.
14084
14085 * callint.c (Finteractive): Ditto.
14086
14087 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
14088
14089 * macros.c: Don't include keymap.h any more.
14090
14091 2001-11-01 Richard M. Stallman <rms@gnu.org>
14092
14093 * data.c (Fmake_local_variable): Doc fix.
14094
14095 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14096 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
14097
14098 * keymap.c (Fdescribe_buffer_bindings): Print character property
14099 bindings along with or instead of the buffer local map.
14100 Make the overriding maps override what they should.
14101
14102 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14103
14104 * window.c (grow_mini_window): Fix typo in comment.
14105
14106 2001-11-01 Gerd Moellmann <gerd@gnu.org>
14107
14108 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14109 (XTset_vertical_scroll_bar): Likewise.
14110
14111 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14112 instead of IMAGE_BACKGROUND.
14113
14114 * xfns.c (four_corners_best): Reindent.
14115
14116 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
14117 Handle :box so that it is possible to specify sexprs.
14118
14119 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14120
14121 * s/hpux11.h: New file.
14122
14123 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14124
14125 * emacs.c (USAGE1): Show command line option --no-window-system
14126 instead of --no-windows in usage.
14127 (standard_args): Rename --no-windows to --no-window-system.
14128 (bug_reporting_address): Follow Emacs coding conventions.
14129
14130 * eval.c (Fcommandp): Doc fix.
14131 Change doc-string comments to `new style' [w/`doc:' keyword].
14132
14133 * frame.c (Fframe_live_p): Doc fix.
14134
14135 * buffer.c (selective-display-ellipses): Doc fix.
14136
14137 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14138
14139 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14140
14141 * xfaces.c (realize_x_face): If C is not a single-byte character,
14142 set the face's colors_copied_bitwise_p instead of the defaulted_p
14143 members which have a different meaning.
14144 (free_face_colors): Do nothing for a face whose colors have been
14145 copied bitwise.
14146
14147 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
14148
14149 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14150
14151 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14152 [w/`doc:' keyword].
14153
14154 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14155
14156 * fns.c (require_unwind): Return Lisp_Object.
14157
14158 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14159
14160 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14161 (last-input-char): Revert doc-string to be the same as the
14162 doc-string of `last-input-event'.
14163
14164 * xdisp.c: Fix typos in comments.
14165
14166 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14167
14168 * window.c (grow_mini_window): Handle case that the root
14169 window is already smaller than the nominal mininum height.
14170
14171 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14172
14173 * emacs.c (main): Don't call keys_of_macros any more.
14174
14175 * lisp.h (keys_of_macros): Remove.
14176
14177 * macros.c (keys_of_macros): Remove.
14178
14179 * xfaces.c (Fface_attribute_relative_p): Declare args.
14180
14181 2001-10-30 Jason Rumney <jasonr@gnu.org>
14182
14183 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14184 (enum_font_cb2): Ignore fonts with vertical orientation.
14185
14186 2001-10-30 Richard M. Stallman <rms@gnu.org>
14187
14188 * keyboard.c (Finput_pending_p): Doc fix.
14189
14190 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14191
14192 * xterm.c (x_after_update_window_line): Don't run the code
14193 clearing in borders for rows whose visible height is 0.
14194
14195 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14196 resized_p flag is set. If not set, use the much less flickering
14197 method previously used.
14198
14199 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14200
14201 * frame.h (struct frame) <resized_p>: New member.
14202
14203 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14204 as large as the number of bytes to convert.
14205
14206 * lread.c (to_multibyte): New function.
14207 (read1): Use it.
14208
14209 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14210
14211 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14212
14213 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14214
14215 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
14216 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14217 if the row's fill_line_p is set and drawing the last glyph with
14218 DRAW_IMAGE_{RAISED,SUNKEN}.
14219
14220 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14221
14222 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14223
14224 * xmenu.c: Include coding.h and charset.h.
14225 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14226 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14227 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14228 Explicitly set wv->help. Use `TRUE' rather than `True'.
14229 (menu_help_callback): Use empty_string.
14230
14231 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14232 (Fx_popup_dialog): Explicitly init f.
14233 (w32_menu_display_help): Use empty_string.
14234
14235 2001-10-29 Richard M. Stallman <rms@gnu.org>
14236
14237 * fns.c (Frequire): Detect recursive try to require the same
14238 feature 3 or more levels deep, and get error.
14239 (require_unwind): New subroutine.
14240 (require_nesting_list): New variable.
14241 (syms_of_fns): Init and staticpro it.
14242
14243 * print.c (print_object): Clarify indication of insertion type.
14244
14245 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14246
14247 * coding.c (syms_of_coding): Document that locale-coding-system is
14248 used for decoding input on X.
14249
14250 * window.c (Fscroll_left, Fscroll_right): Doc fix.
14251
14252 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14253
14254 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
14255 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
14256
14257 2001-10-29 Gerd Moellmann <gerd@gnu.org>
14258
14259 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
14260 use NO_CURSOR if cursor_in_non_selected_windows is false.
14261
14262 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
14263 the slant attribute if FRAME is t.
14264
14265 * xfns.c (x_set_internal_border_width): Set frame garbaged
14266 when X window doesn't exist yet.
14267
14268 * xterm.c (x_after_update_window_line): Clear internal border
14269 in different circumstances.
14270
14271 * xterm.c (XTread_socket) <KeyPress>: Don't use
14272 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
14273 <handa@etl.go.jp>.
14274
14275 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
14276
14277 * m/ibms390.h: New file. From Adam Thornton
14278 <athornton@sinenomine.net>.
14279
14280 2001-10-28 Gerd Moellmann <gerd@gnu.org>
14281
14282 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
14283
14284 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
14285 a loop counter.
14286
14287 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14288
14289 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
14290
14291 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
14292 keyword].
14293 Fix typos in comments.
14294
14295 * emacs.c (bug_reporting_address): New function.
14296 Use it when displaying usage message.
14297
14298 * minibuf.c (read_minibuf): Remove unused external declaration of
14299 variable `Qread_only'.
14300
14301 * keymap.c (access_keymap): Remove unused variable `charset'.
14302
14303 2001-10-28 Miles Bader <miles@gnu.org>
14304
14305 * xfaces.c (merge_face_heights): Handle TO being relative as well.
14306 Remove #ifdef'd-out code.
14307 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
14308 (syms_of_xfaces): Initialize them.
14309
14310 2001-10-27 Jason Rumney <jasonr@gnu.org>
14311
14312 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
14313 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
14314 position using the system caret.
14315
14316 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
14317 (w32_system_caret_height, w32_system_caret_x)
14318 (w32_system_caret_y): New variables for tracking system caret.
14319 (w32_initialize): Initialize them.
14320 (x_display_and_set_cursor): Make system caret follow the active cursor.
14321
14322 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
14323 New messages types.
14324
14325 * w32term.c (note_mouse_highlight): Clear old help_echo.
14326
14327 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14328
14329 * xterm.c: Fix typo in a comment.
14330
14331 * emacs.c: Fix typos in comments.
14332 Remove unnecessary spaces.
14333 Change doc-string comments to `new style' [w/`doc:' keyword].
14334 (USAGE2): Fix typos in usage string.
14335
14336 * xterm.c: Fix typo in a comment.
14337
14338 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
14339 emacs.c.
14340
14341 2001-10-27 Gerd Moellmann <gerd@gnu.org>
14342
14343 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
14344 instead of 1/2 line_height in the heuristic for skipping
14345 farther backward when target_y was not reached.
14346
14347 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
14348 Display errno only if non-zero.
14349 (sound_warning): New function.
14350 (vox_configure): Don't treat failing to set sample rate as error.
14351 (various places): Improve error messages.
14352
14353 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
14354
14355 * fileio.c (Faccess_file): Run the argument filename through
14356 Fexpand_file_name, before using it.
14357
14358 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
14359 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
14360
14361 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14362
14363 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
14364
14365 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14366 Fix clearing in the case of scroll bars on the right.
14367
14368 2001-10-26 Juanma Barranquero <lektu@terra.es>
14369
14370 * w32gui.h (XImage): Add a dummy typedef.
14371
14372 2001-10-26 Gerd Moellmann <gerd@gnu.org>
14373
14374 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
14375
14376 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
14377
14378 * frame.c (Fframe_parameter): Fix last change.
14379
14380 * fileio.c: Revert last change (which removed old commented-out
14381 version of expand-file-name). Add a comment that explains why
14382 this old version should not be removed.
14383
14384 2001-10-25 Gerd Moellmann <gerd@gnu.org>
14385
14386 * frame.c (Fframe_parameter): Fix a bug whereby some
14387 ``artificial'' frame parameters, like `minibuffer' were not
14388 obtained by calling Fframe_parameters.
14389
14390 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
14391 cursor differently.
14392
14393 * xdisp.c (move_it_vertically_backward): Compute line height
14394 differently. Add heuristic to try to be more compatible to 20.x.
14395
14396 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
14397
14398 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
14399
14400 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
14401 boolean.
14402
14403 2001-10-25 Miles Bader <miles@gnu.org>
14404
14405 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
14406 BG is a pointer to a structure, not a structure.
14407 (gif_format, png_format): Add missing commas.
14408
14409 2001-10-24 Richard M. Stallman <rms@gnu.org>
14410
14411 * xfaces.c (Fface_attributes_as_vector): New function.
14412 (syms_of_xfaces): Defsubr it.
14413
14414 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14415
14416 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
14417 variable `area'.
14418
14419 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14420
14421 * search.c (scan_newline): Remove unused variable `selective_display'.
14422
14423 2001-10-25 Miles Bader <miles@gnu.org>
14424
14425 * dispextern.h (struct image): Add `background',
14426 `background_valid', and `background_transparent' fields.
14427 (image_background, image_background_transparent): New declarations.
14428 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
14429 * xfns.c (image_background, image_background_transparent)
14430 (four_corners_best): New functions.
14431 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14432 (gs_format): Add `:background' entry.
14433 (lookup_image): Set IMG's background color if specified.
14434 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14435 when appropriate.
14436 (x_clear_image_1): Reset `background_valid' and
14437 `background_transparent_valid' fields.
14438 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14439 calculating it here. Set IMG's background_transparent field.
14440 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14441 (enum png_keyword_index): Add PNG_BACKGROUND.
14442 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14443 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14444 (enum gif_keyword_index): Add GIF_BACKGROUND.
14445 (enum gs_keyword_index): Add GS_BACKGROUND.
14446 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14447 Pre-calculate image background color where necessary.
14448 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14449 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14450 color to use for image glyph reliefs.
14451
14452 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14453
14454 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
14455 in full-width rows.
14456
14457 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
14458 Fix clearing of area not covered by scroll bar.
14459
14460 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14461
14462 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
14463 and `real_start'.
14464 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
14465 (glyph_rect): Remove unused variable `area'.
14466
14467 2001-10-24 Gerd Moellmann <gerd@gnu.org>
14468
14469 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
14470
14471 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
14472 (row_containing_pos): Take additional argument DY.
14473 Treat rows ending in middle of char differently.
14474 (display_line): Handle tabs on window systems differently.
14475
14476 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
14477 with additional argument.
14478
14479 * dispextern.h (row_containing_pos): Adjust prototype.
14480
14481 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
14482 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
14483 (try_window_id, try_window_reusing_current_matrix)
14484 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
14485 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
14486
14487 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14488
14489 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
14490 gnuemacs).
14491 (HAVE_BOXES): Fix typo in comment.
14492 (push_menu_pane): Fix typo in comment.
14493
14494 * xdisp.c: (display_prop_string_p): Remove unused local declaration
14495 of `Qwhen'.
14496 (single_display_prop_string_p): Remove unused local declarations
14497 of `Qwhen' and `Qmargin'.
14498 (string_buffer_position): Remove unused variable `around'.
14499 (store_frame_title): Remove unused variable `width'.
14500
14501 * window.c: Don't define max.
14502 (coordinates_in_window): Remove unused variable `uy'.
14503
14504 * widget.c: Don't define max.
14505
14506 * process.c: Don't define max.
14507 (create_process): Remove unused variable `buffer'.
14508
14509 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14510
14511 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
14512
14513 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
14514
14515 * xfaces.c (Finternal_set_lisp_face_attribute)
14516 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
14517 frame is on a windowed display.
14518
14519 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14520
14521 * dispnew.c (sync_window_with_frame_matrix_rows):
14522 Fix handling of windows which aren't full-width, fix handling
14523 of marginal areas.
14524
14525 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
14526
14527 2001-10-23 Andreas Schwab <schwab@suse.de>
14528
14529 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
14530 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
14531
14532 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14533
14534 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
14535 REAL_END. Notice if cursor gets overwritten.
14536 (notice_overwritten_cursor): Take X positions as parameters.
14537 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14538 around call to x_draw_glyphs.
14539
14540 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14541
14542 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
14543 instead of C) and usage.
14544
14545 * editfns.c (char-to-string): Fix argument names (use CHAR instead
14546 of C) and usage.
14547
14548 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
14549 `left', `max_width' and `max_height'.
14550
14551 2001-10-23 Gerd Moellmann <gerd@gnu.org>
14552
14553 * xdisp.c (display_line): For a tab continued to the next line,
14554 set row's ends_in_middle_of_char_p.
14555
14556 2001-10-22 Gerd Moellmann <gerd@gnu.org>
14557
14558 * xdisp.c (display_line): Fix computation of continuation lines
14559 width for TABs.
14560
14561 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14562
14563 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
14564 `Qlaplace'.
14565
14566 * fileio.c: Remove unused code.
14567
14568 2001-10-22 Miles Bader <miles@gnu.org>
14569
14570 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
14571 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
14572 Remove `DOC_STRINGS_IN_COMMENTS' cases.
14573
14574 2001-10-21 Jason Rumney <jasonr@gnu.org>
14575
14576 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
14577
14578 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
14579
14580 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
14581 (Finsert_string): Avoid the multi-line string literals warning.
14582
14583 2001-10-22 Miles Bader <miles@gnu.org>
14584
14585 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
14586 (Fdocumentation): Don't use it.
14587 (syms_of_doc): Don't initialize it.
14588
14589 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
14590 * print.c (Fwith_output_to_temp_buffer): Likewise.
14591 * window.c (Fsave_window_excursion): Likewise.
14592 * editfns.c (Fsave_excursion, Fsave_current_buffer)
14593 (Fsave_restriction): Likewise.
14594 * eval.c (Frun_hooks, Frun_hook_with_args)
14595 (Frun_hook_with_args_until_failure)
14596 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
14597 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
14598 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
14599 (Funwind_protect, Fcondition_case): Likewise.
14600 * coding.c (Ffind_operation_coding_system): Likewise.
14601 * keyboard.c (Ftrack_mouse): Likewise.
14602
14603 2001-10-21 Miles Bader <miles@gnu.org>
14604
14605 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
14606 (Fmake_hash_table): Add usage: string to doc string.
14607 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
14608 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
14609 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
14610 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
14611 (Fml_prefix_argument_loop): Likewise.
14612
14613 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14614
14615 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
14616
14617 * sysdep.c (init_sys_modes): Change doc-string comments to `new
14618 style' [w/`doc:' keyword].
14619
14620 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
14621 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
14622 comments to `new style' [w/`doc:' keyword].
14623
14624 2001-10-21 Jason Rumney <jasonr@gnu.org>
14625
14626 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
14627
14628 * w32term.c (remember_mouse_glyph): New function.
14629 (w32_mouse_position): Use it.
14630 (note_mouse_movement): If the mouse moved off the glyph, remember
14631 its new position.
14632
14633 * w32term.h (struct w32_output): Correct spelling of x_compatible.
14634 (w32_display_info): Add mouse_face_overlay.
14635
14636 * w32term.c (notice_overwritten_cursor): Renamed from
14637 note_overwritten_text_cursor. Rewritten to take glyph widths into
14638 account.
14639 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
14640 (fast_find_string_pos): New function.
14641 (fast_find_position): Return the correct vpos. Add parameter
14642 STOP. In the final row, stop before glyphs having STOP as object.
14643 Don't consider glyphs that are not from a buffer.
14644 (fast_find_position) [0]: Add a presumably more correct version
14645 for after 21.1.
14646 (expose_window_tree, expose_frame): Don't compute intersections here.
14647 (expose_window): Do it here instead.
14648 (expose_window_tree, expose_window, expose_line): Return 1 when
14649 overwriting mouse-face.
14650 (expose_window): If W is the window currently being updated, mark
14651 the frame garbaged.
14652 (expose_frame): If mouse-face was overwritten, redo it.
14653 (x_use_underline_position_properties): New variable.
14654 (syms_of_xterm): DEFVAR_BOOL it.
14655 (x_draw_glyph_string): Add comment to use it in future.
14656 (x_draw_glyph_string): Restore clipping after drawing box.
14657 Fix a computation of the underline position.
14658 (w32_get_glyph_string_clip_rect): Minor cleanup.
14659 (x_fill_stretch_glyph_string): Remove an assertion.
14660 (x_produce_glyphs): Don't convert multibyte characters
14661 to unibyte characters in unibyte buffers.
14662 (cursor_in_mouse_face_p): New function.
14663 (x_draw_stretch_glyph_string): Use it to choose a different GC
14664 when drawing a cursor within highlighted text. Don't draw
14665 background again if it has already been drawn.
14666 (x_draw_glyph_string_box): Don't draw a full-width
14667 box just because the glyph row's full_width_p flag is set.
14668 (x_draw_glyphs): Fix computation of rightmost x for
14669 full-width rows.
14670 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
14671 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
14672 change bottom shadow accordingly. Some cleanup.
14673 (x_update_window_end): Handle overwritten mouse face
14674 also for tool bar windows.
14675 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
14676 DRAW is DRAW_IMAGE_RAISED.
14677 (clear_mouse_face): Return 1 if text with mouse face was
14678 actually redrawn. Make the function static.
14679 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
14680 optimize away highlighting if we pass over that same overlay again.
14681 (note_mouse_highlight): Call mouse_face_overlay_overlaps
14682 to detect a case where we have to highlight a different region
14683 despite not having left the currently highlighted region.
14684 Set mouse_face_overlay in the x_display_info. Avoid changing the
14685 mouse pointer shape when show_mouse_face has already done it, or
14686 there is no need. Handle mouse-face and help-echo in strings.
14687 (glyph_rect): New function.
14688 (w32_mouse_position): Use it to raise the threshold for mouse
14689 movement event generation.
14690 (w32_initialize_display_info): Initialize the x_display_info's
14691 mouse_face_overlay.
14692 (w32_set_vertical_scroll_bar): Don't clear a zero height
14693 or width area.
14694 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
14695 a widget to zero height.
14696
14697 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
14698 Protect unibyte strings created by replacing their multibyte
14699 equivalents in menu_items.
14700 (w32_menu_show): Don't overwrite an item's name with its key
14701 description in case the description is a multibyte string.
14702 (single_submenu): Some cleanup.
14703
14704 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
14705 (postprocess_image): New function.
14706 (lookup_image): Call it for all image types except PostScript.
14707 (x_kill_gs_process): Call postprocess_image.
14708 (tiff_error_handler, tiff_warning_handler): New functions.
14709 (tiff_load): Install them as handlers.
14710 (x_kill_gs_process): Recognize if someone has cleared the image
14711 cache under us.
14712 (valid_image_p): Protect better against invalid image
14713 specifications. Previous code could signal an error.
14714 (Fx_hide_tip, Fshow_tip): Doc fix.
14715 (Fv_max_tooltip_size): New variable.
14716 (syns_of_xfns): DEFVAR_LISP it.
14717 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
14718 window buffer to *tip* right after creating the frame. Set frame's
14719 window_width. Use a maximum tooltip size specified by
14720 Vx_max_tooltip_size, if that has valid contents.
14721 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
14722 Make sure the tooltip is completely visible.
14723 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
14724 (Fx_create_frame): Adjust the frame's height for presence
14725 of the tool bar before calling x_figure_window_size.
14726 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
14727 when the window gets smaller.
14728 (x_set_foreground_color): Set frame's cursor_pixel.
14729 (x_set_foreground_color, x_set_background_color): Cleaned up.
14730 (x_set_font): Handle case of x_new_fontset returning the same name
14731 as before, although there was a change in fontsets.
14732
14733 2001-10-21 Miles Bader <miles@gnu.org>
14734
14735 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
14736 (Flogxor): Add usage: string to doc string.
14737 * charset.c (Fstring): Likewise.
14738 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
14739 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
14740
14741 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14742
14743 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
14744
14745 * alloc.c: Reindent DEFUNs with doc: keywords.
14746
14747 * abbrev.c (Finsert_abbrev_table_description): Reindent.
14748
14749 * frame.c: Change doc-string comments to `new style' [w/`doc:'
14750 keyword].
14751
14752 See ChangeLog.9 for earlier changes.
14753
14754 ;; Local Variables:
14755 ;; coding: iso-2022-7bit
14756 ;; End:
14757
14758 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
14759 Copying and distribution of this file, with or without modification,
14760 are permitted provided the copyright notice and this notice are preserved.
14761
14762 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4