]> code.delx.au - gnu-emacs/blob - src/ChangeLog
From Ulf Jasper <ulf.jasper@web.de>:
[gnu-emacs] / src / ChangeLog
1 2004-10-22 Kenichi Handa <handa@m17n.org>
2
3 * editfns.c (Ftranslate_region_internal): New function.
4 (syms_of_editfns): Defsubr it.
5
6 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7
8 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
9
10 2004-10-21 K\e,Aa\e(Broly L\e$,1 q\e(Brentey <lorentey@elte.hu>
11
12 * xterm.h (x_output): New member `xic_base_fontname'.
13 (FRAME_XIC_BASE_FONTNAME): New macro.
14 (xic_free_xfontset): Declare.
15
16 * xfns.c (xic_create_xfontset): Share fontsets between frames
17 based on base_fontname.
18 (xic_free_xfontset): New function.
19 (free_frame_xic): Use it.
20 (xic_set_xfontset): Ditto.
21
22 * xterm.c (xim_destroy_callback): Ditto.
23
24
25 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
26
27 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
28
29 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
30
31 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
32 XSync.
33
34 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
35 New variables and constant.
36 (main): Calculate heap_bss_diff. If we are dumping and the
37 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
38 and exec ourself again.
39 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
40 print a warning.
41
42 * lastfile.c: Make my_endbss and my_endbss_static available on all
43 platforms.
44
45 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
46 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
47
48 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
49
50 * data.c (Flocal_variable_if_set_p): Doc fix.
51
52 2004-10-19 Jason Rumney <jasonr@gnu.org>
53
54 * w32.c (init_environment): Set emacs_dir correctly when running
55 emacs from the build directory.
56
57 2004-10-19 Richard M. Stallman <rms@gnu.org>
58
59 * editfns.c (Fdelete_and_extract_region):
60 If region is empty, return null string.
61
62 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
63
64 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
65 and canon_width.
66 (xg_frame_cleared): Removed.
67
68 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose,
69 xg_find_top_left_in_fixed): Removed.
70 (xg_create_scroll_bar): Put an event box widget between
71 the scroll bar widget and the edit widget.
72 (xg_show_scroll_bar): Show the parent widget (the event box).
73 (xg_remove_scroll_bar): Destroy parent (the event box) also.
74 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
75 Move the parent (the event box) widget inside the fixed widget.
76 Move window clear to xterm.c.
77
78 * gtkutil.h (xg_frame_cleared): Removed.
79
80 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
81 (x_scroll_bar_create, XTset_vertical_scroll_bar): Remove
82 arguments left and width to xg_update_scrollbar_pos.
83 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
84
85 2004-10-19 Kenichi Handa <handa@m17n.org>
86
87 * xdisp.c (display_mode_element): Fix display of wide chars.
88
89 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
90
91 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
92 gdk_window_clear and move gdk_window_process_all_updates after
93 clear so events are sent to the X server in correct order.
94
95 2004-10-18 Kenichi Handa <handa@m17n.org>
96
97 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
98 comparing font names.
99 (fs_query_fontset): Use fast_string_match for comparing fontset names.
100 (list_fontsets): Likewise.
101
102 * search.c (fast_string_match_ignore_case): New function.
103
104 * lisp.h (fast_string_match_ignore_case): Extern it.
105
106 2004-10-17 Kim F. Storm <storm@cua.dk>
107
108 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
109 than bitmap if there is not left fringe.
110 (get_overlay_arrow_glyph_row): Also used on windows system.
111 (display_line): Display overlay string if no left fringe.
112
113 2004-10-16 Jason Rumney <jasonr@gnu.org>
114
115 * w32fns.c (w32_font_match): Encode font name being matched.
116
117 2004-10-16 Richard M. Stallman <rms@gnu.org>
118
119 * window.c (Fspecial_display_p): Doc fix.
120
121 2004-10-15 Stefan <monnier@iro.umontreal.ca>
122
123 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
124 Don't ignore menus, because where-is-internal already does it for us.
125
126 2004-10-15 Kim F. Storm <storm@cua.dk>
127
128 * xdisp.c (redisplay_window): Only update fringes and vertical
129 border on window frames.
130
131 2004-10-14 Andreas Schwab <schwab@suse.de>
132
133 * m/ia64.h (DATA_SEG_BITS): Don't define.
134
135 2004-10-14 Kim F. Storm <storm@cua.dk>
136
137 * xterm.h: Include Xutil.h after keysym.h to work around bug
138 in some X versions.
139
140 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
141
142 * fns.c (map_char_table): Add missing gcpros.
143
144 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
145
146 * keymap.c (get_keymap): An autoload form is not a keymap.
147
148 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
149
150 2004-10-13 Kim F. Storm <storm@cua.dk>
151
152 * callproc.c (Fcall_process): Simplify handling of display arg.
153 Resume `display_on_the_fly' once a coding system is determined.
154
155 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
156
157 2004-10-12 Kim F. Storm <storm@cua.dk>
158
159 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
160 caller, such as call-process, is not going to poll for input.
161 (calc_line_height_property): Handle case where it->object is nil.
162
163 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
164
165 2004-10-12 Kenichi Handa <handa@m17n.org>
166
167 * xdisp.c (get_next_display_element):
168 If unibyte_display_via_language_environment is zero, display 8-bit
169 chars in octal in unibyte buffer.
170
171 2004-10-12 Kim F. Storm <storm@cua.dk>
172
173 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
174 are no ordinary bindings.
175
176 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
177
178 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
179
180 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
181
182 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
183 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
184 (make_mac_frame): Add BLOCK_INPUT around the making of a
185 terminal frame.
186 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
187 * macgui.h (mktime): Use emacs_mktime.
188 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
189 Make a cancel file-open dialog be like C-g.
190 * mac.c (mktime): Use emacs_mktime.
191 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
192 (Fmac_paste_function): Add better error handling for carbon cut/paste.
193
194 2004-10-10 Kim F. Storm <storm@cua.dk>
195
196 * keyboard.c (timer_resume_idle): New function to resume idle
197 timer without resetting timers on the idle list.
198 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
199 (timer_start_idle, timer_stop_idle): Declare static.
200 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
201
202 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
203
204 2004-10-08 Steven Tamm <steventamm@mac.com>
205
206 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
207 * macterm.c (mac_check_for_quit_char): Remove warning for using
208 NULL where 0 should be used.
209 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
210 objc/malloc.h
211 * mac.c: Include time.h for Tiger compatibility.
212
213 2004-10-07 Kim F. Storm <storm@cua.dk>
214
215 * xdisp.c (redisplay_window): Fix flicker on vertical line between
216 windows. Update vertical line after drawing window fringes, but
217 only if actually drawing any bitmaps--or there is no fringe.
218
219 * xterm.c (x_update_window_end): Likewise.
220 * macterm.c (x_update_window_end): Likewise.
221 * w32term.c (x_update_window_end): Likewise.
222
223 * fringe.c (draw_window_fringes): Return value now indicates if
224 any fringe bitmaps were redrawn (or there are no fringes).
225
226 * dispextern.h (draw_window_fringes): Update prototype.
227
228 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
229
230 * macfns.c (mac_get_window_bounds): Add extern.
231 (x_real_positions): Use mac_get_window_bounds.
232
233 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
234 xmenu.c (YAILOM).
235
236 * macterm.c [!MAC_OSX]: Include Windows.h.
237 (front_emacs_window): Rename from mac_front_window. All uses
238 changed. Return the frontmost non-tooltip emacs window.
239 (mac_get_window_bounds): New function.
240 (x_calc_absolute_position): Use the difference of width and height
241 between the inner and outer window.
242 (x_set_offset): Specify window position by the coordinae of the
243 outer window. Adjust the position if the title bar is completely
244 outside the screen.
245 (app_is_suspended, app_sleep_time): Remove unused variables.
246 (do_app_resume, do_app_suspend): Remove their contents because
247 window-activate/deactivate events will do the job.
248 (do_zoom_window): Remove unused variables. Make compliant to the
249 standard way of zooming. Set f->left_pos and f->top_pos.
250 (XTread_socket): Don't use argument `expected'. Don't use
251 FrontWindow to determine the clicked window. Exclude unprocessed
252 mouseUp cases in the early stage. Add parentheses to fix operator
253 precedence.
254 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
255
256
257 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
258
259 * config.in: Regenerate.
260
261 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
262 HAVE_EXECSHIELD.
263
264 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
265
266 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
267 a row if Alt or Meta has been found for that row. Also stop scanning
268 for Keysyms for that row.
269
270 2004-10-04 Kim F. Storm <storm@cua.dk>
271
272 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
273 to list. Include overlay arrow bitmap in return value.
274
275 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
276 bars with fractional column width. If scroll bar separates two
277 windows, move it towards the window it belongs to. Only update
278 the padding area below the scroll bar widget when necessary,
279 i.e. when scroll bar widget is created, moved, or resized.
280
281 * xdisp.c (define_frame_cursor1): Do not change frame cursor
282 while tracking/dragging mouse.
283 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
284
285 * window.c (coordinates_in_window): Relax check for cursor
286 on vertial border between mode lines.
287 (Fset_window_fringes): Do not allow negative widths.
288 (Fset_window_scroll_bars): Likewise.
289
290 * .gdbinit (pp): Shorthand for p ARG + pr.
291 (ff): New command: flush frame updates (X only).
292
293 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
294
295 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
296
297 2004-09-30 Kenichi Handa <handa@m17n.org>
298
299 * process.c (send_process): Free composition data.
300
301 * fileio.c (Finsert_file_contents): Free composition data.
302
303 * coding.c (code_convert_region): Don't skip ASCIIs if there are
304 compositions to encode.
305 (encode_coding_string): Likewise. Free composition data.
306
307 2004-09-30 Florian Weimer <fw@deneb.enyo.de> (tiny change)
308
309 * coding.c (code_convert_region): Free composition data.
310
311 2004-09-29 Kim F. Storm <storm@cua.dk>
312
313 * fringe.c: Remove limit on number of bitmaps.
314 (fringe_bitmaps, fringe_faces): Change to pointers.
315 (max_fringe_bitmaps): New var.
316 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
317 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
318
319 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
320 (struct glyph_row): Reorder fringe_bitmap related fields.
321 (struct it): Likewise.
322
323 * w32term.c (fringe_bmp): Change to pointer.
324 (max_fringe_bmp): New var.
325 (w32_define_fringe_bitmap): Expand fringe_bmp.
326 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
327 (w32_destroy_fringe_bitmap): Likewise.
328
329 2004-09-29 Kim F. Storm <storm@cua.dk>
330
331 * fringe.c: Simplify last change.
332 (lookup_fringe_bitmap): New function.
333 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
334 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
335 Keep standard bitmaps in Vfringe_bitmaps.
336 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
337 (Fset_fringe_bitmap_face): Likewise.
338
339 * dispextern.h (lookup_fringe_bitmap): Add prototype.
340 (valid_fringe_bitmap_p): Remove prototype.
341
342 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
343
344 2004-09-29 Kim F. Storm <storm@cua.dk>
345
346 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
347 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
348
349 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
350
351 * fringe.c (Vfringe_bitmaps): New variable.
352 (syms_of_fringe): DEFVAR_LISP it.
353 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
354 Change arg to Lisp_Object and fail if not an integer.
355 (get_fringe_bitmap_name, resolve_fringe_bitmap)
356 (destroy_fringe_bitmap): New functions.
357 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
358 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
359 clear its fringe property.
360 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
361 Fdestroy_fringe_bitmap.
362 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
363 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
364 and set fringe property. Signal error if no free slots.
365 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
366 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
367
368 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
369 symbols with a fringe property.
370
371 2004-09-27 Kim F. Storm <storm@cua.dk>
372
373 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
374 Doc fix. Format may now be a symbol or alist, not a cons.
375
376 * fringe.c (update_window_fringes): Handle new formats of
377 indicate-buffer-boundaries (symbol or alist). No longer
378 allow a simple cons.
379 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
380
381 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
382
383 * config.in: Rebuild.
384
385 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
386
387 * config.in: Rebuild.
388
389 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
390
391 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
392
393 * xterm.c (x_term_init): Work around a bug in some X servers.
394
395 2004-09-18 Richard M. Stallman <rms@gnu.org>
396
397 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
398
399 * xdisp.c (try_window_reusing_current_matrix):
400 Handle the case where we reach the old displayed text,
401 out of sync with the old line boundary.
402
403 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
404
405 * fileio.c (Finsert_file_contents): Fix case of replacement in a
406 narrowed buffer.
407
408 2004-09-14 Kim F. Storm <storm@cua.dk>
409
410 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
411
412 * xfaces.c (Qface_no_inherit): New var.
413 (syms_of_xfaces): Intern and staticpro it.
414 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
415 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
416 Don't increment face_change_count when face has non-nil
417 face-no-inherit property.
418
419 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
420
421 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
422 (Fbyte_code): Remove dead code after `wrong_type_argument'.
423
424 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
425 before doing the mark_stack_check_gcpros since they're not on the stack.
426
427 2004-09-12 Kim F. Storm <storm@cua.dk>
428
429 * editfns.c (Fformat): Handle format strings with multiple text
430 properties. Reverse text property list from the format string,
431 so the positions are in increasing order.
432
433 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
434
435 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
436 x_uncatch_errors so that possible protocol errors are delivered.
437
438 2004-09-10 Eli Zaretskii <eliz@gnu.org>
439
440 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
441 blockinput.h.
442 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
443 charset.h, and coding.h
444 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
445 (term.o): Depend on window.h and keymap.h.
446 (abbrev.o): Depend on syntax.h.
447 (callint.o): Depend on keymap.h.
448 (casefiddle.o): Depend on charset.h and keymap.h.
449 (category.o): Depend on keymap.h.
450 (coding.o): Depend on dispextern.h.
451 (cmds.o): Depend on keyboard.h and keymap.h.
452 (dispnew.o): Depend on indent.h and intervals.h.
453 (doc.o): Depend on keymap.h.
454 (editfns.o): Depend on frame.h.
455 (emacs.o): Depend on dispextern.h.
456 (fileio.o): Don't depend on ccl.h.
457 (filelock.o): Depend on charset.h and coding.h.
458 (frame.o): Depend on w32term.h and macterm.h.
459 (insdel.o): Depend on region-cache.h.
460 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
461 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
462 (search.o): Depend on $(INTERVALS_SRC).
463 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
464 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
465 xterm.h, w32term.h, and macterm.h.
466 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
467 w32term.h, and macterm.h.
468 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
469 region-cache.h, xterm.h, w32term.h, and macterm.h.
470 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
471 (data.o): Depend on frame.h.
472 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
473 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
474 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
475 (intervals.o): Depend on keymap.h.
476
477 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
478 Add debugging print-out to termscript.
479
480 2004-09-09 Richard M. Stallman <rms@gnu.org>
481
482 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
483
484 2004-09-08 Richard M. Stallman <rms@gnu.org>
485
486 * window.c (Fset_window_buffer): Doc fix.
487
488 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
489
490 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
491
492 * minibuf.c (history_delete_duplicates): New variable.
493 (read_minibuf): Use it.
494 (syms_of_minibuf): Create the corresponding lisp variable.
495
496 2004-09-08 Kim F. Storm <storm@cua.dk>
497
498 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
499 overlay just before point.
500
501 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
502
503 * buffer.h (struct buffer): Add auto_save_file_format field.
504 * buffer.c (reset_buffer, init_buffer_once):
505 Handle auto_save_file_format field.
506 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
507 `buffer-auto-save-file-format'.
508 * fileio.c: Delete declaration for removed Vauto_save_file_format.
509 (build_annotations): Adapt to replacement of
510 `auto-save-file-format' with the new buffer-local variable
511 `buffer-auto-save-file-format'.
512 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
513
514 2004-09-07 Jason Rumney <jasonr@gnu.org>
515
516 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
517
518 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
519 Handle Unicode menu titles.
520
521 2004-09-07 Kim F. Storm <storm@cua.dk>
522
523 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
524 property from text property or overlay strings at point.
525
526 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
527
528 * xmenu.c (update_submenu_strings): YAILOM.
529 (set_frame_menubar): Make sure last_i is initialized.
530
531 2004-09-03 Jason Rumney <jasonr@gnu.org>
532
533 * w32menu.c (_widget_value): Add lname and lkey.
534 (digest_single_submenu): Set lname and lkey in widget_value
535 instead of name and key.
536 (update_submenu_strings): New function.
537 (set_frame_menubar): Remove call to inhibit_garbage_collection,
538 call update_submenu_strings.
539
540 * w32menu.c (globals_of_w32menu): Check for Unicode API.
541 (digest_single_submenu, w32_menu_show): Encode menu strings as
542 UTF-8 if Unicode API is available.
543 (utf8to16): New function.
544 (add_menu_item): Use it when calling Unicode API.
545
546 2004-09-03 Kim F. Storm <storm@cua.dk>
547
548 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
549 in overlay or text-property strings; set cursor on corresponding
550 glyph rather than at end of the string.
551
552 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
553
554 * macfns.c (x_real_positions): Save the current window port and
555 set a new one before obtaining the global coordinate.
556 Use FRAME_MAC_WINDOW.
557 (x_set_name, x_set_title): Encode title to UTF8.
558 Use SetWindowTitleWithCFString.
559 (Fx_server_version): Get correct OS version.
560
561 * macmenu.c (add_menu_item): Remove unused variable `i'.
562 Don't let separator items destroy refence constants of other menu items.
563
564 * macterm.c (x_update_end): Move SetPortWindowPort to inside
565 BLOCK_INPUT.
566 (x_set_offset): Use FRAME_MAC_WINDOW.
567
568 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
569 nontext_cursor if it is on a scroll bar.
570
571 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
572 Carbon support.
573 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
574 Use LIBS_CARBON.
575
576 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
577
578 * xfns.c (x_set_name_internal): New function. Check if we shall call
579 xfree before ENCODE_UTF_8.
580 (x_set_name, x_set_title): Call x_set_name_internal.
581
582 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
583
584 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
585 reload it.
586
587 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
588
589 * macmenu.c (_widget_value): Add lname and lkey.
590 (single_submenu): Set lname and lkey in widget_value
591 instead of name and key.
592 (update_submenu_strings): New function.
593 (set_frame_menubar): Remove call to inhibit_garbage_collection,
594 call update_submenu_strings.
595
596 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
597 instead of name and key.
598 (update_submenu_strings): New function.
599 (set_frame_menubar): Remove call to inhibit_garbage_collection,
600 call update_submenu_strings.
601
602 * gtkutil.h (_widget_value): Added lname and lkey.
603
604 2004-08-30 Steven Tamm <steventamm@mac.com>
605
606 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
607 by using different names for inner loop variables.
608
609 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
610
611 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
612 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
613
614 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
615 tool bar items is 0.
616
617 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
618
619 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
620 strings in menu items.
621 (single_submenu): Use ENCODE_MENU_STRING
622 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
623 button release isn't passed to event loop
624 (add_menu_item): Use SetMenuItemWithCFString
625
626 2004-08-26 Steven Tamm <steventamm@mac.com>
627
628 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
629 tool-bar/menu click
630 * macfns.c (Fx_file_dialog): Implemented using NavServices
631
632 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
633
634 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
635
636 * xfns.c (x_window_to_frame, x_any_window_to_frame)
637 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
638 (x_top_window_to_frame): Return 0 if wdesc is None.
639
640 2004-08-22 Richard M. Stallman <rms@gnu.org>
641
642 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
643 HAVE_TERMIOS]: If there's no char for this signal, drop through
644 and use system calls.
645
646 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
647
648 2004-08-20 Kim F. Storm <storm@cua.dk>
649
650 * process.c (wait_reading_process_output): Rename from
651 wait_reading_process_input. All uses changed.
652 (wait_reading_process_output_1): Rename from
653 wait_reading_process_input_1. All uses changed.
654
655 * dispnew.c (Fsleep_for): Remove obsolete code.
656
657 2004-08-20 Kenichi Handa <handa@m17n.org>
658
659 * syntax.c (skip_chars): Fix for unibyte case.
660
661 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
662
663 * syntax.c (char_quoted): Mixup byte/char pos.
664 (back_comment): Fixup globals in all cases.
665
666 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
667
668 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
669 passing it to gtk_window_set_title.
670
671 2004-08-19 Kim F. Storm <storm@cua.dk>
672
673 * process.c (wait_reading_process_input): Clean up.
674 Add wait_for_cell, wait_proc, and just_wait_proc args
675 to avoid overloading `read_kbd' and `do_display' args.
676 Change read_kbd arg to int. All callers changed.
677
678 * process.c (process_send_signal): Use CDISABLE.
679
680 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
681
682 2004-08-18 Kim F. Storm <storm@cua.dk>
683
684 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
685 forward to wait_reading_process_input via DO_DISPLAY arg.
686 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
687 object, only process output from that process; also inhibit
688 running timers if DO_DISPLAY==-2.
689
690 2004-08-17 Kim F. Storm <storm@cua.dk>
691
692 * process.c (process_send_signal): Fix last change--use
693 _POSIX_VDISABLE instead of CVDISABLE when available.
694
695 2004-08-16 Richard M. Stallman <rms@gnu.org>
696
697 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
698 Set VQUIT and VINTR chars to the standard ones if they are unset.
699 [AIX]: Don't do that here. And don't force VINTR to standard
700 when SIGNALS_VIA_CHARACTERS.
701
702 * process.c (process_send_signal)
703 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
704 Do nothing if the character is CVDISABLE.
705
706 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
707
708 * intervals.c (move_if_not_intangible):
709 Force POSITION to be between BEGV and ZV.
710
711 2004-08-14 John Paul Wallington <jpw@gnu.org>
712
713 * buffer.c (Frestore_buffer_modified_p): Doc fix.
714
715 * fileio.c (Fread_file_name): Doc fix.
716
717 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
718
719 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
720
721 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
722
723 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
724
725 * keyboard.c: Declare Qdisabled_command_function instead of
726 Qdisabled_command_hook.
727 (Fcommand_execute): Use Qdisabled_command_function instead of
728 Qdisabled_command_hook.
729 (syms_of_keyboard): Ditto.
730
731 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
732
733 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
734 (syms_of_keymap) <key-translation-map>: Doc fixes.
735
736 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
737
738 * window.c (window_list_1): YAILOM.
739
740 * fileio.c (make_temp_name): Handle multibyte prefixes.
741
742 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
743
744 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
745 Doc fix.
746
747 2004-08-03 Kenichi Handa <handa@m17n.org>
748
749 * coding.c (decode_coding_string): Adjust coding->consumed, and
750 etc. with shrinked_bytes.
751
752 2004-08-03 Kim F. Storm <storm@cua.dk>
753
754 * indent.c (compute_motion): Fix check for full width window
755 in non-window case. Do not count left truncation glyph on
756 window systems.
757
758 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
759
760 * data.c (Finteractive_form): Doc fix.
761
762 2004-08-02 Kim F. Storm <storm@cua.dk>
763
764 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
765 properly accounting for continuation glyph on non-window systems.
766 (Fcompute_motion): Use actual window width if WIDTH is nil, and
767 actual window width/height if TOPOS is nil, properly accounting for
768 continuation glyphs on non-window systems, and optional header lines.
769 (vmotion): Let compute_motion calculate actual window width.
770
771 * window.c (window_scroll_line_based): Let compute_motion
772 calculate actual window width.
773
774 2004-08-02 Kim F. Storm <storm@cua.dk>
775
776 * process.c (read_process_output): Use whole read buffer.
777 Don't trigger adaptive read buffering on errors.
778
779 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
780
781 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
782
783 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
784
785 * callint.c (Fcall_interactively): Doc fix.
786
787 2004-07-30 Richard M. Stallman <rms@gnu.org>
788
789 * abbrev.c (Fexpand_abbrev): Undo previous change.
790
791 2004-07-30 Kim F. Storm <storm@cua.dk>
792
793 * editfns.c (Fformat): Allocate extra (dummy) element in info.
794
795 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
796
797 * eval.c (Fdefvar, Fdefconst): Doc fixes.
798
799 2004-07-27 Kim F. Storm <storm@cua.dk>
800
801 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
802 we have ensured that the glyph fits on the current line (or returned
803 MOVE_LINE_CONTINUED otherwise).
804
805 2004-07-26 Kim F. Storm <storm@cua.dk>
806
807 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
808 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
809 if target position is at end of display line but char is not a newline.
810
811 2004-07-25 Richard M. Stallman <rms@gnu.org>
812
813 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
814 instead of ON_VERTICAL_BORDER, when on scroll bar.
815 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
816
817 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
818
819 * window.c (Fcoordinates_in_window_p):
820 Take account of FRAME_INTERNAL_BORDER_WIDTH.
821
822 * alloc.c (check_cons_list): New function (contents commented out).
823
824 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
825
826 * xfaces.c (Fcolor_supported_p): Doc fix.
827
828 * frame.c (Fselect_frame, Fset_frame_selected_window)
829 (Fframe_visible_p, Fraise_frame): Doc fixes.
830
831 2004-07-24 Richard M. Stallman <rms@gnu.org>
832
833 * keyboard.h (not_single_kboard_state): Declared.
834
835 * fileio.c (Fwrite_region): Doc fix.
836
837 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
838
839 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
840 only when a real abbrev is present.
841
842 * xfns.c (x_icon_verify): New function.
843 (Fx_create_frame): Use it.
844
845 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
846
847 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
848
849 2004-07-21 Kim F. Storm <storm@cua.dk>
850
851 * window.h (struct glyph_matrix): New members nrows_scale_factor
852 and ncols_scale_factor.
853
854 * window.c (make_window): Initialize nrows_scale_factor and
855 ncols_scale_factor members.
856
857 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
858 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
859 (required_matrix_height): Apply nrows_scale_factor.
860 (required_matrix_width): Apply ncols_scale_factor.
861
862 * xdisp.c (display_line): Increment nrows_scale_factor and set
863 fonts_changed_p if past last allocated row.
864 (append_glyph, append_composite_glyph, produce_image_glyph)
865 (append_stretch_glyph): Increment ncols_scale_factor and set
866 fonts_changed_p if current area is full.
867
868 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
869
870 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
871
872 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
873
874 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
875 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
876 (Fset_window_start, Fscroll_up, Fscroll_down)
877 (Fother_window_for_scrolling, Fscroll_other_window)
878 (Fsave_window_excursion, Fset_window_vscroll)
879 (syms_of_window) <window-size-fixed>: Doc fixes.
880
881 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
882
883 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
884 ENCODE_SYSTEM for filenames.
885
886 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
887
888 * mac.c (sys_select): Block input around call to
889 ReceiveNextEvent to prevent breakage. Correctly handle
890 blocking on event queue only by calling ReceiveNextEvent
891 instead of select (since GUI events aren't on an fd).
892 (sys_read): Remove function
893 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
894
895 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
896
897 * mac.c (sys_select): Redo sys_select to use alarm-based
898 polling instead of 1 sec timeouts (like solaris).
899
900 * macterm.c (x_make_frame_visible): Comment in polling on
901 frame creation.
902
903 * keyboard.c: Undef SIGIO on Carbon
904
905 * atimer.c (alarm_signal_handler): Call alarm handlers after
906 scheduling.
907
908 * eval.c (Feval): Remove quit_char test
909
910 * process.c (wait_reading_process_input): Remove clearing
911 stdin for select call on process input.
912
913 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
914
915 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
916 capitalization error in docstring.
917
918 2004-07-17 Juanma Barranquero <lektu@terra.es>
919
920 * keyboard.c (not_single_kboard_state): Do nothing unless
921 MULTI_KBOARD is defined.
922
923 2004-07-17 Richard M. Stallman <rms@gnu.org>
924
925 * window.c (coordinates_in_window): Inside the window but outside
926 its box to the L or R, return ON_VERTICAL_BORDER.
927 (window_list_1): Rotate the list to start with WINDOW.
928
929 * print.c (print_preprocess): Test for print_depth at limit
930 before entering in being_printed.
931
932 * keyboard.c (not_single_kboard_state): New function.
933 (stuff_buffered_input): Now no-op only if no SIGTSTP.
934
935 * frame.c (Fdelete_frame): If we're in single_bboard_state on
936 this kboard, and we delete its last frame, go to any_kboard_state.
937
938 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
939
940 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
941
942 * w32fns.c (Fx_file_dialog): Encode strings in system coding
943 system before passing them to OS functions for display.
944
945 2004-07-15 David Kastrup <dak@gnu.org>
946
947 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
948 Apparently fixes an abort condition.
949
950 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
951
952 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
953 instead of a cons.
954
955 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
956
957 * keyboard.c (echo_dash): Do nothing if there already is a dash
958 at the end of the echo string.
959
960 2004-07-12 Kim F. Storm <storm@cua.dk>
961
962 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
963 if GC_MARK_STACK.
964
965 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
966
967 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
968
969 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
970 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
971 (Freplace_buffer_in_windows, Fset_window_buffer)
972 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
973 (syms_of_window): Expand docstring of `display-buffer-function'.
974
975 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
976
977 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
978 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
979 that time values of the type (HIGH . LOW) are considered obsolete.
980
981 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
982
983 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
984 docstring.
985
986 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
987
988 2004-07-06 John Paul Wallington <jpw@gnu.org>
989
990 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
991
992 * fns.c (Fclear_string): Signal an error if STRING is not a string.
993
994 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
995
996 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
997 instead of CGMainDisplayID (only in OSX 10.2 and later).
998
999 2004-07-04 John Paul Wallington <jpw@gnu.org>
1000
1001 * fileio.c (read_file_name_completion_ignore_case): New variable.
1002 (syms_of_fileio): Declare and initialise it.
1003 (Fread_file_name): Bind `completion-ignore-case' to respect it.
1004
1005 2004-07-03 Eli Zaretskii <eliz@gnu.org>
1006
1007 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
1008 for event.x and event.y.
1009
1010 2004-07-01 Kenichi Handa <handa@m17n.org>
1011
1012 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
1013 after getting a new string by pre-write-conversion.
1014
1015 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
1016
1017 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
1018 (x_calc_absolute_position): Remove unused var `child'.
1019
1020 * xfaces.c (x_supports_face_attributes_p)
1021 (Fdisplay_supports_face_attributes_p): YAILOM.
1022 (tty_supports_face_attributes_p): Remove unused var `i'.
1023
1024 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
1025 back_unibyte_ok.
1026
1027 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
1028
1029 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
1030
1031 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
1032
1033 2004-06-30 Andreas Schwab <schwab@suse.de>
1034
1035 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
1036 (Finit_image_library): Pass LIBRARIES through to
1037 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
1038 (lookup_image_type): Pass Qnil as second argument to
1039 Finit_image_library.
1040
1041 * lisp.h: Declare Finit_image_library.
1042
1043 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1044
1045 * macterm.c (do_window_activate, do_window_deactivate): Remove.
1046 (XTread_socket): Send mouse button events to the toolbox
1047 dispatcher even when the mouse is grabbed. Don't process window
1048 activate events for non-Emacs windows. Replace function calls to
1049 do_window_activate and do_window_deactivate with their contents.
1050 Reset mouse grabbing status when a window is deactivated.
1051
1052 2004-06-29 Steven Tamm <steventamm@mac.com>
1053
1054 * macterm.c (mac_get_emulated_btn)
1055 (mac_event_to_emacs_modifiers): Fix emulated mouse button
1056 support to correctly mask out modifiers.
1057
1058 2004-06-29 David Kastrup <dak@gnu.org>
1059
1060 * search.c (Fset_match_data): Allow buffer before end of list
1061 which can happen if set-match-data is using a pre-consed list.
1062
1063 2004-06-28 Steven Tamm <steventamm@mac.com>
1064
1065 * macterm.c (XTread_socket): Correctly set the frame position
1066 after the window is moved.
1067
1068 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1069
1070 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
1071 gpix and gmask just before return to avoid memory leak.
1072 (xg_get_image_for_pixmap): Add workaround for monochrome displays
1073 so insensitive and activated icons look ok.
1074
1075 2004-06-27 Jason Rumney <jasonr@gnu.org>
1076
1077 * w32fns.c (file_dialog_callback): Disable edit control if set
1078 to directories only on CDN_INITDONE message.
1079 (Fx_file_dialog): Default to directories only when prompt starts
1080 with "Dired".
1081
1082 2004-06-25 Kim F. Storm <storm@cua.dk>
1083
1084 * alloc.c (allocate_misc): Update total_free_markers.
1085 (free_misc): New function.
1086 (safe_alloca_unwind, free_marker): Use it.
1087
1088 * lisp.h (free_misc): Add prototype.
1089
1090 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
1091
1092 2004-06-24 Richard M. Stallman <rms@gnu.org>
1093
1094 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
1095 (syms_of_emacs): Lisp variables deleted.
1096
1097 2004-06-23 David Kastrup <dak@gnu.org>
1098
1099 * search.c (Freplace_match): Adjust the match-data more thoroughly
1100 when replacing strings in the buffer.
1101 (Fmatch_data): When INTEGERS is non-nil and the last match was in
1102 a buffer, add the buffer as last element to the match data.
1103 (Fset_match_data): If an additional element of the match-data is a
1104 buffer, restore it to last_thing_searched.
1105 (save_search_regs): Save last_thing_searched as part of the match data.
1106 (restore_match_data): Restore it again.
1107
1108 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
1109
1110 * keymap.c (Ftext_char_description): Doc fix.
1111 * doc.c (Fsnarf_documentation): Doc fix.
1112
1113 2004-06-22 Kim F. Storm <storm@cua.dk>
1114
1115 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
1116
1117 * lisp.h (struct Lisp_Save_Value): New member dogc.
1118 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
1119 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
1120 (SAFE_FREE_LISP): New macro.
1121
1122 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
1123 (make_save_value): Init new dogc member.
1124 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
1125
1126 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
1127 SAFE_FREE_LISP macros.
1128
1129 2004-06-22 Kim F. Storm <storm@cua.dk>
1130
1131 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
1132 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
1133 in that memory area are unknown to GC. Add comments.
1134
1135 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
1136
1137 2004-06-21 Kim F. Storm <storm@cua.dk>
1138
1139 * lisp.h (MAX_ALLOCA): Define here.
1140 (safe_alloca_unwind): Add prototype.
1141 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
1142
1143 * alloc.c (safe_alloca_unwind): New function.
1144
1145 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
1146
1147 * charset.c (Fstring): Use SAFE_ALLOCA.
1148
1149 * coding.c (MAX_ALLOCA): Remove define.
1150
1151 * data.c (MAX_ALLOCA): Remove define.
1152 (Faset): Use SAFE_ALLOCA.
1153
1154 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
1155
1156 * fns.c (string_make_multibyte, string_to_multibyte)
1157 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
1158 (MAX_ALLOCA): Remove define.
1159 (Fbase64_encode_region, Fbase64_encode_string)
1160 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
1161 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
1162 memory leak if encoding fails.
1163
1164 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
1165
1166 2004-06-21 Eli Zaretskii <eliz@gnu.org>
1167
1168 * print.c (Fwith_output_to_temp_buffer): Doc fix.
1169
1170 2004-06-20 Richard M. Stallman <rms@gnu.org>
1171
1172 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
1173
1174 * search.c (match_limit): Cleaner err msg when no match data available.
1175
1176 * window.c (syms_of_window): Doc fix.
1177
1178 * keyboard.c (command_loop_1): Handle values `only' and `identity'
1179 for Vtransient_mark_mode.
1180
1181 * buffer.c (syms_of_buffer): Doc fix.
1182
1183 2004-06-21 David Kastrup <dak@gnu.org>
1184
1185 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
1186 and unbinding of `case-fold-search' according to
1187 `completion-ignore-case' around calls of string-match and
1188 predicates, respectively. Should give satisfactory performance
1189 in all relevant cases.
1190
1191 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1192
1193 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
1194 clip_x/y_origin.
1195
1196 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
1197
1198 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
1199
1200 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
1201 on Mac OSX.
1202
1203 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
1204
1205 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
1206
1207 2004-06-16 Kim F. Storm <storm@cua.dk>
1208
1209 * dispextern.h (Vimage_types): Remove extern.
1210
1211 2004-06-16 Miles Bader <miles@gnu.org>
1212
1213 * image.c (lookup_image_type): Initialize image type if necessary.
1214
1215 2004-06-15 Kim F. Storm <storm@cua.dk>
1216
1217 * xdisp.c (try_cursor_movement): Exclude header line from scroll
1218 margin at top of window.
1219 (try_window_reusing_current_matrix): Calculate proper cursor position
1220 after scrolling up with non-zero scroll margin, as the old cursor
1221 position corresponds to value of PT before executing this command.
1222 (try_window_id): Consider scroll margin at bottom of window too;
1223 otherwise we fail to scroll when hl-line-mode is enabled.
1224
1225 * syntax.c (skip_chars): Only recognize [:class:] when it has the
1226 proper format and class is a lower-case word.
1227
1228 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1229
1230 * gtkutil.c (xg_get_image_for_pixmap): New function.
1231 (xg_get_gdk_pixmap_and_mask): Remove.
1232 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
1233 xg_get_gdk_pixmap_and_mask.
1234
1235 * xterm.h (struct x_display_info): Typo in comment fixed.
1236
1237 2004-06-14 Juanma Barranquero <lektu@terra.es>
1238
1239 * dispextern.h (Vimage_types): Make it conditional on
1240 HAVE_WINDOW_SYSTEM.
1241
1242 * image.c (Vimage_types): Move from xdisp.c.
1243 (Vimage_type_cache): New variable.
1244 (define_image_type): New argument indicating whether an image
1245 library was loaded; cache loaded status and return t on success,
1246 nil otherwise.
1247 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
1248 (w32_delayed_load): New function to load an image library from a
1249 list of possible filenames.
1250 (init_xpm_functions, init_png_functions, init_jpeg_functions)
1251 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
1252 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
1253 (Finit_image_library): New function, extracted from `init_image'.
1254 Try to initialize an image library on demand and cache whether we
1255 were successful or not.
1256 (syms_of_image): Initialize `Vimage_types' and
1257 `Vimage_type_cache'. Add recognized image types to Vimage_types.
1258 Export `init-image-library'.
1259 (init_image): Remove initialization of all image types, except xbm
1260 and pbm.
1261
1262 * xdisp.c (Vimage_types): Delete (moved to image.c).
1263
1264 2004-06-14 Andreas Schwab <schwab@suse.de>
1265
1266 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
1267 Avoid calling specbind when completion-regexp-list is empty.
1268
1269 2004-06-13 Richard M. Stallman <rms@gnu.org>
1270
1271 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1272 (re_wctype, re_iswctype, re_wctype_to_bit):
1273 Non-function definitions moved here from regex.c.
1274
1275 * regex.c (re_wctype, re_iswctype): Function defs longer static.
1276 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
1277 (re_wctype, re_iswctype, re_wctype_to_bit):
1278 Non-function definitions moved to regex.h.
1279
1280 * window.c (Fselect_window): Doc fix.
1281
1282 * syntax.c: Include regex.h.
1283 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
1284 If requested, make a list of classes, then check the scanned
1285 chars for membership in them.
1286 (in_classes): New function.
1287 Doc fix.
1288
1289 * keyboard.c (cmd_error): Don't call any_kboard_state
1290 if inside a recursive edit level.
1291
1292 2004-06-13 Lorentey K\e,Aa\e(Broly <lorentey@elte.hu>
1293
1294 * keyboard.c (command_loop): Call any_kboard_state before
1295 command_loop_2 when at top level.
1296
1297 2004-06-13 Andreas Schwab <schwab@suse.de>
1298
1299 * print.c (print_object): Always use %ld for printing EMACS_INT.
1300
1301 * keyboard.c (cancel_hourglass_unwind): Return a value.
1302 (modify_event_symbol): Always use %ld for printing EMACS_INT.
1303 (Fexecute_extended_command): Likewise.
1304
1305 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
1306 avoid clashes.
1307 (SYNTAX): Likewise.
1308 (SYNTAX_WITH_FLAGS): Likewise.
1309 (SYNTAX_MATCH): Likewise.
1310
1311 * syntax.c (char_quoted): Avoid warning about undefined operation.
1312 (find_defun_start): Likewise.
1313 (scan_lists): Likewise.
1314 (INC_FROM): Likewise.
1315 (scan_sexps_forward): Likewise.
1316
1317 * image.c: Include <ctype.h>.
1318
1319 * xfaces.c (face_attr_equal_p): Declare parameters.
1320
1321 2004-06-13 Kenichi Handa <handa@m17n.org>
1322
1323 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
1324
1325 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
1326
1327 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
1328
1329 2004-06-12 Kenichi Handa <handa@m17n.org>
1330
1331 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
1332 ccl_prog_stack_struct and update it.
1333 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
1334 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
1335 ccl->eof_ic on EOF.
1336 (ccl_debug_hook): New function.
1337 (struct ccl_prog_stack): New member eof_ic.
1338 (ccl_driver): Handle EOF in subrountine call correctly.
1339
1340 2004-06-11 Kenichi Handa <handa@m17n.org>
1341
1342 * coding.c (decode_coding_string): Check CODING_FINISH_INTERRUPT.
1343
1344 2004-06-11 Kim F. Storm <storm@cua.dk>
1345
1346 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
1347
1348 2004-06-11 Juanma Barranquero <lektu@terra.es>
1349
1350 * keyboard.c (Fposn_at_point): Doc fix.
1351
1352 2004-06-11 David Kastrup <dak@gnu.org>
1353
1354 * search.c (match_limit): Don't flag an error if match-data
1355 exceeding the allocated search_regs.num_regs gets requested, just
1356 return Qnil.
1357
1358 2004-06-08 Miles Bader <miles@gnu.org>
1359
1360 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
1361
1362 2004-06-07 Juanma Barranquero <lektu@terra.es>
1363
1364 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
1365 (Fcurrent_time_string, Fcurrent_time_zone)
1366 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
1367
1368 2004-06-07 Miles Bader <miles@gnu.org>
1369
1370 * xfaces.c (struct named_merge_point): New type.
1371 (push_named_merge_point): New function.
1372 (merge_named_face): New function.
1373 (merge_face_ref, face_at_buffer_position, face_at_string_position):
1374 Use `merge_named_face'.
1375 (merge_face_inheritance): Function removed.
1376 (merge_face_ref): Rename from `merge_face_vector_with_property'.
1377 Add new `err_msgs' and `named_merge_points' args. Return error
1378 status. Only print error messages if ERR_MSGS is true. Don't try to
1379 do :inherit attribute validation.
1380 (merge_face_heights): Handle `unspecified' in both directions.
1381 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
1382 Call `merge_face_ref' instead of `merge_face_inheritance'.
1383 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
1384 (compute_char_face, face_at_buffer_position)
1385 (face_at_string_position): Call `merge_face_ref' instead of
1386 `merge_face_vector_with_property'.
1387
1388 2004-06-07 Kenichi Handa <handa@m17n.org>
1389
1390 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
1391 the necessary places.
1392
1393 2004-06-07 Kim F. Storm <storm@cua.dk>
1394
1395 * process.c (Fdelete_process): Undo 2004-05-28 change.
1396 Instead, call status_notify also for network process.
1397 (status_message): Use process instead of status as arg.
1398 Give messages "deleted" or "connection broken by remote peer" for
1399 an exited network process.
1400 (status_notify): Change call to status_message.
1401 (read_process_output): Increase readmax to 4096. Do not increase
1402 buffer size for datagram channels (default is now large enough).
1403
1404 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
1405
1406 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
1407 problem due to newly defined variable.
1408
1409 2004-06-06 Miles Bader <miles@gnu.org>
1410
1411 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
1412 immediately if non-interactive or not initialized.
1413
1414 2004-06-05 Richard M. Stallman <rms@gnu.org>
1415
1416 * minibuf.c (Fcompleting_read): Doc fix.
1417
1418 2004-06-05 Andreas Schwab <schwab@suse.de>
1419
1420 * macfns.c (x_create_tip_frame): Fix declaration after statement.
1421
1422 2004-06-05 Juanma Barranquero <lektu@terra.es>
1423
1424 * keymap.c (Fdescribe_vector): Fix docstring.
1425 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
1426
1427 2004-06-05 Miles Bader <miles@gnu.org>
1428
1429 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
1430 attributes have different values than the default face.
1431
1432 2004-06-04 Eli Zaretskii <eliz@gnu.org>
1433
1434 * xfaces.c (x_supports_face_attributes_p): Make this function
1435 conditional on HAVE_WINDOW_SYSTEM.
1436 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
1437 Don't call x_supports_face_attributes_p if it was not compiled in.
1438
1439 2004-06-04 Miles Bader <miles@gnu.org>
1440
1441 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
1442 from Ftty_supports_face_attributes_p.
1443 (x_supports_face_attributes_p): New function.
1444 (Ftty_supports_face_attributes_p): Function deleted.
1445 (Fdisplay_supports_face_attributes_p): New function.
1446 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
1447 (face_attr_equal_p): New function.
1448 (lface_equal_p): Use it.
1449
1450 2004-06-03 Juanma Barranquero <lektu@terra.es>
1451
1452 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
1453 (Vw32_color_map): Fix typo in docstring.
1454 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
1455 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
1456 Make argument names match their use in docstring.
1457
1458 2004-06-02 Juanma Barranquero <lektu@terra.es>
1459
1460 Work around bugs/problems with MinGW builds of graphics libraries
1461 called from MSVC builds of Emacs.
1462
1463 * image.c (lookup_image): Make pointer to img static.
1464 (png_read_from_memory): Disable "global" optimization.
1465
1466 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
1467
1468 * eval.c (Fcondition_case): Fix usage. Simplify.
1469
1470 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
1471
1472 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1473
1474 * macfns.c: Don't include ccl.h.
1475 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
1476 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
1477 TextUtils.h.
1478 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
1479 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
1480 display height/width.
1481 (compute_tip_xy, Vx_max_tooltip_size): Declare.
1482 (unwind_create_tip_frame, compute_tip_xy): New functions.
1483 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
1484 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
1485 and last_show_tip_args.
1486
1487 * macgui.h [!MAC_OSX]: Include Gestalt.h.
1488 (Cursor, No_Cursor): New defines.
1489 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
1490 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
1491
1492 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
1493
1494 * macterm.c: Don't include Gestalt.h.
1495 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
1496 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
1497 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
1498 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
1499 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
1500 (construct_mouse_click, XTmouse_position)
1501 (x_scroll_bar_report_motion, x_calc_absolute_position)
1502 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
1503 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
1504 (note_mouse_movement): Clear the mouse face and reset the pointer
1505 shape when the pointer goes outside the frame without grabbing.
1506 (mac_front_window): New function.
1507 (mac_window_to_frame): New macro.
1508 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
1509 (do_window_activate, do_window_deactivate, do_app_resume)
1510 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
1511 (do_zoom_window, mac_do_receive_drag, XTread_socket)
1512 (mac_check_for_quit_char): Use mac_front_window and/or
1513 mac_window_to_frame.
1514 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
1515 scroll-bar click event.
1516 (mac_define_frame_cursor): Change the pointer shape.
1517 (x_free_frame_resources): Reset tip_window to NULL when it is disposed.
1518 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
1519 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
1520 (do_window_update): Don't do anything if the updated window is the
1521 tooltip window.
1522 (do_mouse_moved): Handle mouse movement events here (previously in
1523 XTread_socket). Clear the mouse face if
1524 dpyinfo->mouse_face_hidden is set.
1525 (do_os_event, do_events): Remove (now in XTread_socket).
1526 (XTread_socket): Immediately return if interrupt_input_blocked.
1527 Loop until all the events in the queue are processed.
1528 Rearrange codes for mouse grabbing. Add tooltip support. Include the
1529 contents of do_os_event and do_events. Remove mouse movement
1530 handling (now in do_mouse_moved). Add the case where
1531 Vmouse_highlight has an integer value.
1532 (NewMacWindow): Remove.
1533 (make_mac_frame): Do what NewMacWindow previously did. Don't do
1534 excess initializations.
1535 (make_mac_terminal_frame): Previous initializations in
1536 make_mac_frame are moved here.
1537 (mac_initialize_display_info):
1538 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
1539
1540 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
1541 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
1542
1543 2004-05-29 Richard M. Stallman <rms@gnu.org>
1544
1545 * lisp.h (truncate_undo_list): Update decl.
1546
1547 * alloc.c (undo_outer_limit): New variable.
1548 (syms_of_alloc): Defvar it.
1549 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
1550
1551 * undo.c (truncate_undo_list): New arg LIMITSIZE.
1552
1553 * alloc.c (lisp_align_malloc): Check for base == 0
1554 regardless of HAVE_POSIX_MEMALIGN.
1555 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
1556
1557 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1558
1559 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
1560 (marker_blocks_pending_free): Remove.
1561 (Fgarbage_collect): Sweep after cleaning up undo-lists.
1562 Mark the undo lists after claning them up.
1563 Don't free block in marker_blocks_pending_free.
1564 (mark_buffer): Don't mark undo_list.
1565 (gc_sweep): Sweep hash-tables and strings first.
1566 Do free marker blocks that are empty.
1567
1568 2004-05-28 Jim Blandy <jimb@redhat.com>
1569
1570 * regex.c (print_partial_compiled_pattern): Add missing 'break'
1571 after 'case wordend'. For symbeg and symend, print to stderr,
1572 like the other cases.
1573
1574 2004-05-28 Noah Friedman <friedman@splode.com>
1575
1576 * process.c (Fdelete_process): Do not call remove_process.
1577
1578 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
1579
1580 * alloc.c (struct backtrace): Remove.
1581 (Fgarbage_collect): Use the new mark_backtrace.
1582
1583 * eval.c (mark_backtrace): New function.
1584
1585 * minibuf.c (run_exit_minibuf_hook): New function.
1586 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
1587 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
1588
1589 2004-05-27 Kim F. Storm <storm@cua.dk>
1590
1591 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
1592 over display properties, e.g. images, that replace buffer text.
1593
1594 2004-05-25 Kim F. Storm <storm@cua.dk>
1595
1596 * alloc.c (marker_blocks_pending_free): New var.
1597 (gc_sweep): Store free marker blocks on that list.
1598 (Fgarbage_collect): Free them after undo-list cleanup.
1599
1600 * process.c (wait_reading_process_input): Check connect_wait_mask
1601 before actually accepting connection in case it has already been
1602 accepted due to recursion.
1603
1604 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu> (tiny change)
1605
1606 * coding.c (Fset_safe_terminal_coding_system_internal):
1607 Set suppress_error in safe_terminal_coding, not terminal_coding.
1608
1609 2004-05-22 Richard M. Stallman <rms@gnu.org>
1610
1611 * alloc.c (Fmake_string): Doc fix.
1612
1613 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
1614 and the alist pairs too.
1615
1616 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
1617
1618 * emacs.c (main): Update copyright year.
1619
1620 * fileio.c (Fread_file_name): Expand DIR if not absolute.
1621
1622 * insdel.c (del_range_2, replace_range): Don't write an anchor
1623 if the gap is empty.
1624
1625 * xdisp.c (try_scrolling): If scroll-up-aggressively or
1626 scroll-down-aggressively is small but positive, put point
1627 near the screen edge.
1628
1629 2004-05-22 Juanma Barranquero <lektu@terra.es>
1630
1631 * keymap.c (Fdefine_key): Doc fix.
1632
1633 2004-05-22 Kim F. Storm <storm@cua.dk>
1634
1635 * alloc.c (struct backtrace): Add debug_on_exit member.
1636 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
1637 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
1638 the removed cons cells.
1639 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
1640 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
1641 any cons cells pointing to unallocated stings.
1642 Do not lisp_free any marker blocks, as there may still be pointers
1643 to them from buffer undo lists at this stage of GC.
1644
1645 * keyboard.c (struct backtrace): Add debug_on_exit member.
1646 (Fcommand_execute): Clear it.
1647
1648 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
1649
1650 * intervals.c (lookup_char_property): Do not prematurely return nil.
1651
1652 2004-05-19 Jim Blandy <jimb@redhat.com>
1653
1654 Add support for new '\_<' and '\_>' regexp operators, matching the
1655 beginning and end of symbols.
1656
1657 * regex.c (enum syntaxcode): Add Ssymbol.
1658 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
1659 (re_opcode_t): New opcodes `symbeg' and `symend'.
1660 (print_partial_compiled_pattern): Print the new opcodes properly.
1661 (regex_compile): Parse the new operators.
1662 (analyse_first): Skip sym(beg|end) (they match only the empty string).
1663 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
1664 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
1665 (re_match_2_internal): Match symbeg and symend.
1666
1667 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
1668
1669 2004-05-19 Kim F. Storm <storm@cua.dk>
1670
1671 * .gdbinit (xsymbol): Fix last change.
1672
1673 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
1674
1675 * .gdbinit (xprintstr): New fun.
1676 (xstring, xprintsym): Use it.
1677
1678 * w32proc.c (create_child): Use INTMASK.
1679
1680 * alloc.c (Fgarbage_collect): Do all the marking before flushing
1681 unmarked elements of the undo list.
1682
1683 2004-05-18 David Ponce <david@dponce.com>
1684
1685 * print.c (print): Reset print_depth before to call print_object.
1686
1687 2004-05-18 Jason Rumney <jasonr@gnu.org>
1688
1689 * w32console.c: Prefix RIF functions with w32con_ to avoid
1690 namespace clash with functions in term.c and w32term.c.
1691
1692 * w32menu.c (add_menu_item, w32_menu_display_help)
1693 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
1694
1695 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
1696
1697 2004-05-18 Eli Zaretskii <eliz@gnu.org>
1698
1699 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
1700
1701 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
1702 with make_number.
1703 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
1704 with XINT.
1705
1706 2004-05-18 Kim F. Storm <storm@cua.dk>
1707
1708 * blockinput.h (INPUT_BLOCKED_P): New macros.
1709
1710 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
1711 (Ftop_level): Unblock input if blocked.
1712
1713 * buffer.h (GET_OVERLAYS_AT): New macro.
1714 * msdos.c (IT_note_mouse_highlight): Use it.
1715 * textprop.c (get_char_property_and_overlay): Use it.
1716 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
1717 * xfaces.c (face_at_buffer_position): Use it.
1718
1719 * print.c (print_object): Increase buf size.
1720
1721 2004-05-17 Jason Rumney <jasonr@gnu.org>
1722
1723 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
1724 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
1725 Lisp_Object using i member.
1726 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
1727 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
1728 consistently.
1729
1730 * w32proc.c (create_child): Use make_number instead of masking pid.
1731
1732 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
1733 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
1734 Use EQ to compare Lisp_Objects.
1735 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
1736
1737 * w32term.c (w32_num_mouse_buttons): Rename from
1738 Vw32_num_mouse_buttons and make it an int.
1739
1740 * w32.c (init_environment): Use it.
1741
1742 * w32fns.c (w32_wnd_proc): Likewise.
1743
1744 * w32proc.c (w32_pipe_read_delay): Rename from
1745 Vw32_pipe_read_delay and make it an int.
1746
1747 * w32.c (_sys_read_ahead): Use it.
1748
1749 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
1750
1751 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
1752
1753 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
1754 (key_event): Don't mix Lisp_Object and int.
1755
1756 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
1757
1758 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
1759 modifiers in language change event.
1760
1761 2004-05-17 Kim F. Storm <storm@cua.dk>
1762
1763 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
1764 Such objects may be freed markers which still exist on an undo list.
1765
1766 2004-05-16 Juanma Barranquero <lektu@terra.es>
1767
1768 * data.c (Fset_default): Make argument names match their use in
1769 docstring.
1770
1771 2004-05-15 Andreas Schwab <schwab@suse.de>
1772
1773 * emacs.c (gdb_array_mark_flag): Define.
1774 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
1775
1776 2004-05-15 Eli Zaretskii <eliz@gnu.org>
1777
1778 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
1779 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
1780 defined for the MS-DOS build.
1781
1782 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
1783
1784 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
1785
1786 2004-05-14 Kenichi Handa <handa@m17n.org>
1787
1788 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
1789
1790 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1791
1792 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
1793 section to frame.c section.
1794 (Fxw_display_color_p, Fx_file_dialog): Declare if
1795 HAVE_WINDOW_SYSTEM defined.
1796
1797 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
1798
1799 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
1800
1801 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
1802 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
1803 (XTread_socket): Fix int/Lisp_Object mixup.
1804 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
1805
1806 * macterm.h (struct frame, struct face, struct image)
1807 (display_x_get_resource, Fx_display_color_p)
1808 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
1809 Add prototypes.
1810
1811 2004-05-14 Kim F. Storm <storm@cua.dk>
1812
1813 * process.c (wait_reading_process_input): Make reentrant.
1814 Make Available and Connecting non-static. Save and restore value
1815 of waiting_for_user_input_p.
1816
1817 2004-05-13 Kim F. Storm <storm@cua.dk>
1818
1819 * keyboard.c (mark_kboards): Don't mark x and y members
1820 that are overloaded in selection request events.
1821
1822 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
1823
1824 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
1825
1826 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
1827
1828 * window.c (Fdisplay_buffer, Fsplit_window)
1829 (split-height-threshold): Doc fix.
1830
1831 2004-05-13 Juanma Barranquero <lektu@terra.es>
1832
1833 * xfaces.c (Ftty_supports_face_attributes_p)
1834 (Finternal_copy_lisp_face): Fix typo in docstring.
1835 (Finternal_get_lisp_face_attribute): Fix docstring.
1836
1837 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1838
1839 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
1840
1841 2004-05-11 Steven Tamm <steventamm@mac.com>
1842
1843 * macfns.c (Fx_create_frame): Default to using tool-bar by
1844 setting tool-bar-lines to 1 in default-frame-alist.
1845
1846 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1847
1848 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
1849 (xpm_get_color_table_v, xpm_make_color_table_h)
1850 (xpm_put_color_table_h, xpm_get_color_table_h)
1851 (xpm_str_to_color_key, xpm_load_image, xpm_load)
1852 (syms_of_image): Support XPM on Carbon Emacs. Does not
1853 depend on libXpm, but only supports XPM version 3 without extensions.
1854
1855 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1856
1857 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
1858 instead of FRAME_X_P
1859
1860 2004-05-11 Kim F. Storm <storm@cua.dk>
1861
1862 * process.c (read_process_output): Grow decoding_buf when needed;
1863 this could cause a crash in allocate_string and compact_small_strings.
1864
1865 2004-04-29 Jim Blandy <jimb@redhat.com>
1866
1867 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
1868 against proper opcode.
1869
1870 2004-05-10 Juanma Barranquero <lektu@terra.es>
1871
1872 * process.c (Fstart_process): Fix docstring.
1873
1874 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
1875 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
1876 (Fsplit_char, Fchar_charset): Make argument names match their use
1877 in docstring.
1878
1879 2004-05-10 Richard M. Stallman <rms@gnu.org>
1880
1881 * print.c (print_preprocess): Use being_printed, loop_count and
1882 halftail to detect overdeep nesting and cyclic cdr chains.
1883
1884 2004-05-10 Andreas Schwab <schwab@suse.de>
1885
1886 * lisp.h: Declare Fmake_symbolic_link.
1887
1888 * fileio.c (Frename_file): Remove extra argument in call to
1889 Fmake_symbolic_link.
1890
1891 2004-05-10 Kim F. Storm <storm@cua.dk>
1892
1893 * xdisp.c (calc_line_height_property): Use string position when
1894 object is a string.
1895
1896 2004-05-10 Kenichi Handa <handa@m17n.org>
1897
1898 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
1899 inhibit-modification-hooks to t temporarily before calling
1900 Ferase_buffer.
1901
1902 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
1903 inhibit-modification-hooks to t temporarily before calling
1904 Ferase_buffer.
1905
1906 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
1907 inhibit-modification-hooks to t temporarily before calling
1908 Ferase_buffer.
1909
1910 * fns.c (count_combining): Delete it.
1911 (concat): Don't check combining bytes.
1912
1913 2004-05-09 Jason Rumney <jasonr@gnu.org>
1914
1915 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
1916 (globals_of_w32fns): Set it.
1917
1918 2004-05-09 Piet van Oostrum <piet@cs.uu.nl> (tiny change)
1919
1920 * data.c (Fquo): Simplify.
1921
1922 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
1923
1924 * data.c (Fquo): If any argument is float, do the computation in
1925 floating point.
1926
1927 2004-05-08 Juanma Barranquero <lektu@terra.es>
1928
1929 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
1930 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
1931 Fix spelling of Emacs on docstring.
1932 (Fset_process_coding_system, Fprocess_coding_system)
1933 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
1934 Make argument names match their use in docstring.
1935 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
1936 Fix docstring.
1937
1938 * editfns.c (Finsert_buffer_substring): Make argument names match their
1939 use in docstring.
1940
1941 * syntax.c (Fmodify_syntax_entry): Fix docstring.
1942
1943 2004-05-07 Steven Tamm <steventamm@mac.com>
1944
1945 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
1946 around call to ReceiveEvent to avoid certain crashes.
1947
1948 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1949
1950 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
1951 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
1952 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
1953 Save/restore the current graphics port and device handle when
1954 drawing into an offscreen graphics world.
1955
1956 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
1957 (gif_load): Likewise.
1958
1959 2004-05-07 Juanma Barranquero <lektu@terra.es>
1960
1961 * window.c (Fset_window_buffer): Fix docstring.
1962
1963 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
1964
1965 * emacs.c (main) [VMS]: Fix var ref.
1966
1967 2004-05-06 Romain Francoise <romain@orebokech.com> (tiny change)
1968
1969 * data.c (Fsetq_default): Fix docstring.
1970
1971 2004-05-06 Jason Rumney <jasonr@gnu.org>
1972
1973 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
1974 to avoid name clash.
1975
1976 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1977
1978 * fileio.c (barf_or_query_if_file_exists): Use lstat.
1979 (Frename_file): Handle renaming of symlinks across file systems.
1980 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
1981
1982 2004-05-04 Kim F. Storm <storm@cua.dk>
1983
1984 * xdisp.c (Qtotal): New var.
1985 (syms_of_xdisp): Intern and staticpro it.
1986 (calc_line_height_property): New arg total. Set it if
1987 line-spacing property has format (total . VALUE).
1988 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
1989 Handle total line-spacing property.
1990
1991 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1992
1993 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
1994 "under" scroll bar when size/position changes.
1995
1996 2004-05-03 Jason Rumney <jasonr@gnu.org>
1997
1998 * makefile.nt: Remove.
1999
2000 2004-05-02 Eli Zaretskii <eliz@gnu.org>
2001
2002 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
2003 Avoid compiler warnings.
2004
2005 * Makefile.in (region-cache.o): Depend on config.h.
2006
2007 2004-05-02 Romain Francoise <romain@orebokech.com> (tiny change)
2008
2009 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
2010 with continuation lines, too.
2011
2012 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
2013
2014 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
2015
2016 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
2017
2018 * xdisp.c (calc_line_height_property): YAILOM (yet another
2019 int/Lisp_Object mixup).
2020
2021 2004-05-01 Eli Zaretskii <eliz@gnu.org>
2022
2023 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
2024 undo bad effect of pack(4) in some versions of system headers.
2025
2026 2004-05-01 Jason Rumney <jasonr@gnu.org>
2027
2028 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
2029
2030 2004-04-30 Kim F. Storm <storm@cua.dk>
2031
2032 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
2033 (syms_of_buffer) <cursor-type>: Doc fix.
2034
2035 * dispextern.h (struct it): Remove member use_default_face.
2036 Add members override_ascent, override_descent, override_boff.
2037
2038 * xdisp.c (init_iterator): Handle line-spacing float value.
2039 Initialize override_ascent member.
2040 (append_space_for_newline): Reset override_ascent.
2041 Remove use_default_face.
2042 (calc_line_height_property): New function to calculate value of
2043 line-height and line-spacing properties. Look at overlays, too.
2044 Set override_ascent, override_descent, override_boff members when
2045 using another face than the current face. Float values are now
2046 relative to the frame default font, by default; accept a cons
2047 of ratio and face name to specify value relative to a specific face.
2048 (x_produce_glyphs): Use calc_line_height_property.
2049 Use override_ascent etc. when set to handle different face heights.
2050 A negative line-spacing property value is interpreted as a total
2051 line height, rather than inter-line spacing.
2052 (note_mouse_highlight): Allocate room for 40 overlays initially.
2053
2054 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
2055
2056 * data.c (Fsubr_name): New fun.
2057 (syms_of_data): Defsubr it.
2058
2059 2004-04-29 Kim F. Storm <storm@cua.dk>
2060
2061 * xdisp.c (null_glyph_slice): New var.
2062 (append_glyph, append_composite_glyph, append_stretch_glyph):
2063 Use it to initialize glyph slice.
2064
2065 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
2066
2067 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
2068 (on_hot_spot_p): Make sure we always return a value.
2069 (Flookup_image_map): Remove unused var ix and iy.
2070 (note_mode_line_or_margin_highlight): Remove unused var `image'.
2071
2072 2004-04-27 Eli Zaretskii <eliz@gnu.org>
2073
2074 * msdos.c (init_environment): If one of the TMP... environment
2075 variables is set to a drive letter without a trailing slash,
2076 append a slash.
2077
2078 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
2079
2080 * editfns.c (lisp_time_argument): Provide externally.
2081
2082 * fileio.c (Fset_file_times): New function.
2083 (syms_of_fileio): Intern and staticpro it.
2084
2085 2004-04-27 Kim F. Storm <storm@cua.dk>
2086
2087 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
2088 header line strings.
2089
2090 * dispextern.h (struct it): New member use_default_face.
2091
2092 * xdisp.c (Qline_height): New variable.
2093 (syms_of_xdisp): Intern and staticpro it.
2094 (append_space_for_newline): Partially undo 2004-04-25 change;
2095 add default_face_p arg, and restore callers.
2096 Clear it->use_default_face after use.
2097 (x_produce_glyphs): Set default font for ascii char if
2098 it->use_default_font is set. Change line-spacing property to set
2099 just extra line spacing. Handle new line-height property.
2100
2101 2004-04-26 Andreas Schwab <schwab@suse.de>
2102
2103 * print.c (print_object): Print non-ascii characters in bool
2104 vector representation as octal escapes.
2105
2106 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
2107 * print.c (print_object): Use it instead of BITS_PER_CHAR for
2108 bool vectors.
2109 * lread.c (read1): Likewise.
2110 * alloc.c (Fmake_bool_vector): Likewise.
2111 * data.c (Faref, Faset): Likewise.
2112 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
2113 (mapcar1): Likewise.
2114
2115 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
2116
2117 * lread.c (init_lread): Fixing typo HAVE_CARBON test logic
2118
2119 2004-04-26 Miles Bader <miles@gnu.org>
2120
2121 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
2122
2123 2004-04-26 Juanma Barranquero <lektu@terra.es>
2124
2125 * buffer.c (Fpop_to_buffer): Fix docstring.
2126
2127 2004-04-26 Steven Tamm <steventamm@mac.com>
2128
2129 * lread.c (init_lread): Don't display missing lisp directory
2130 warnings with Carbon Emacs because self-contained bundled Emacs
2131 may be built without correct installation path.
2132
2133 2004-04-25 Kim F. Storm <storm@cua.dk>
2134
2135 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2136
2137 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
2138
2139 * xdisp.c (append_space_for_newline): Rename from append_space.
2140 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
2141 (x_produce_glyphs): Handle line-spacing property on newline char.
2142 If value is t, adjust ascent and descent to fit current row height.
2143 If value is an integer or float, set extra_line_spacing to integer
2144 value, or to float value x current line height.
2145
2146 2004-04-23 Kenichi Handa <handa@m17n.org>
2147
2148 * fontset.c (Finternal_char_font): If POSITION is nil, return
2149 font for displaying CH with the default face.
2150
2151 2004-04-23 Juanma Barranquero <lektu@terra.es>
2152
2153 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
2154
2155 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
2156
2157 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
2158 Don't make assumptions about the relative place of i and val.
2159 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
2160
2161 2004-04-21 Kim F. Storm <storm@cua.dk>
2162
2163 * dispextern.h (struct glyph_slice): New struct.
2164 (struct glyph): New member slice.
2165 (GLYPH_SLICE_EQUAL_P): New macro.
2166 (GLYPH_EQUAL_P): Use it.
2167 (struct glyph_string): New member slice.
2168 (struct it_slice): New struct.
2169 (struct it): New member slice, add member to stack too.
2170 New member constrain_row_ascent_descent_p.
2171 (image_ascent): Add prototype.
2172
2173 * dispnew.c (buffer_posn_from_coords): Return full image width
2174 and height even for image slices (posn is relative to full image).
2175 (marginal_area_string): Adjust x0,y0 for image slice.
2176
2177 * image.c (image_ascent): Add slice arg; calculate ascent for
2178 image slice (or full image).
2179
2180 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
2181 (syms_of_keyboard): Defsubr them.
2182
2183 * lisp.h (pos_visible_p): Fix prototype.
2184
2185 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2186 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2187 (x_draw_image_foreground, x_draw_image_relief)
2188 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2189 Draw sliced images.
2190
2191 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
2192 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2193 (x_draw_image_foreground, x_draw_image_relief)
2194 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
2195 Draw sliced images.
2196
2197 * w32term.h (image_ascent): Remove prototype.
2198
2199 * window.c (Fpos_visible_in_window_p): Return pixel position if
2200 PARTIALLY arg is non-nil. Simplify. Doc fix.
2201 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
2202 to return/set vscroll in pixels.
2203
2204 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
2205
2206 * xdisp.c (Qslice): New variable.
2207 (syms_of_xdisp): Intern and staticpro it.
2208 (pos_visible_p): Return pixel position in new x and y args.
2209 (init_iterator): Reset it->slice info.
2210 (handle_display_prop): Parse (slice ...) property.
2211 (push_it, pop_it): Save/restore slice info.
2212 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
2213 force repositioning of tall row if window is vscrolled, as that
2214 would reset vscroll.
2215 (append_space): Set it->constrain_row_ascent_descent_p to avoid
2216 increasing row height if row is non-empty.
2217 (fill_image_glyph_string): Copy slice info.
2218 (take_vertical_position_into_account): Simplify.
2219 (produce_image_glyph): Handle iterator slice info, setup glyph
2220 slice info. Do not force minimum line height.
2221 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
2222 do not increase height (ascent/descent) of non-empty row when
2223 adding normal character glyph; instead reduce glyph ascent/descent
2224 appropriately; if row is higher than current glyph, adjust glyph
2225 descent/ascent to reposition glyph within the existing row.
2226 Likewise, when char is newline, only set ascent/descent if row is
2227 currently empty.
2228 (note_mouse_highlight): Handle hotspots with sliced image.
2229
2230 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
2231 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
2232 (x_draw_image_foreground, x_draw_image_relief)
2233 (x_draw_image_foreground_1, x_draw_image_glyph_string):
2234 Draw sliced images.
2235
2236 * xterm.h (image_ascent): Remove prototype.
2237
2238 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
2239
2240 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
2241
2242 2004-04-20 John Paul Wallington <jpw@gnu.org>
2243
2244 * fns.c (Fassoc, Feql): Fix indentation.
2245
2246 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
2247
2248 2004-04-19 John Paul Wallington <jpw@gnu.org>
2249
2250 * fns.c (Feql): New function.
2251 (syms_of_fns): Defsubr it.
2252
2253 2004-04-18 Jason Rumney <jasonr@gnu.org>
2254
2255 * w32select.c (Fw32_set_clipboard_data): Get sequence number
2256 after closing the clipboard.
2257
2258 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
2259
2260 * buffer.c (Fbuffer_base_buffer): Doc fix.
2261
2262 2004-04-17 Kim F. Storm <storm@cua.dk>
2263
2264 * keymap.c (Fkey_description): Add optional PREFIX arg.
2265 Combine prefix with KEYS to make up the full key sequence to describe.
2266 Correlate meta_prefix_char and following (simple) key to describe
2267 as meta modifier. All callers changed.
2268 (describe_map): Rename arg `keys' to `prefix'. Remove local
2269 `elt_prefix' var. Use Fkey_description with prefix instead of
2270 elt_prefix combined with Fsingle_key_description.
2271 (describe_vector): Declare static. Replace arg `elt_prefix' with
2272 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
2273 if !KEYMAP_P. Use Fkey_description with prefix instead of
2274 Fsingle_key_description.
2275
2276 * keymap.h (Fkey_description): Fix prototype.
2277 (describe_vector): Remove prototype.
2278
2279 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
2280
2281 * image.c (PNG_BG_COLOR_SHIFT): Remove.
2282 (png_load): Fix calculation of transparent background color on X
2283 and W32 platforms.
2284
2285 2004-04-16 Juanma Barranquero <lektu@terra.es>
2286
2287 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
2288 not too large before computing how much to scroll.
2289
2290 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
2291
2292 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
2293
2294 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
2295
2296 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
2297 Add hyperlink to Elisp manual to the docstring.
2298
2299 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
2300
2301 * callint.c (fix_command): Use XDCR.
2302
2303 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
2304
2305 * window.c (Fget_lru_window): Doc fix.
2306
2307 2004-04-14 Kim F. Storm <storm@cua.dk>
2308
2309 * editfns.c (Fformat): Fix allocation size of precision array.
2310
2311 * dispnew.c (update_window): Only set changed_p if
2312 scrolling_window actually did scroll.
2313 (scrolling_window): Only return 1 if we actually did scroll.
2314
2315 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
2316 height to glyph height when cursor row is not fully visible.
2317 (make_cursor_line_fully_visible): Add FORCE_P arg to return
2318 failure in case row is higher than window. Callers changed.
2319 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
2320 Try to scroll partially visible, higher-than-window cursor row.
2321 (redisplay_window): Always try to scroll partially visible,
2322 higher-than-window cursor row - both initially and again with
2323 centering_position = 0.
2324 Clear desired matrix before retrying with centering_position = 0.
2325
2326 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
2327
2328 * syntax.c (scan_lists): Simplify backward string scan.
2329 Fix off-by-one boundary check for string and comment fences.
2330
2331 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
2332
2333 * sheap.c, unexcw.c: New files.
2334
2335 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
2336
2337 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
2338 base buffer has been killed. Correct the error message if the
2339 base buffer does not exist.
2340
2341 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
2342
2343 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
2344 Cygwin itself. Add support for Xaw3d scrollbars.
2345
2346 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
2347
2348 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
2349
2350 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
2351 before Cygwin unexec.
2352
2353 * Makefile.in: Link changes for Cygwin unexec() support.
2354
2355 2004-04-12 Andreas Schwab <schwab@suse.de>
2356
2357 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
2358
2359 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
2360
2361 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
2362 IGNORE argument equals NAME. Doc fix.
2363
2364 2004-04-11 Masatake YAMATO <jet@gyve.org>
2365
2366 * buffer.c (fix_start_end_in_overlays): Make overlays
2367 empty if they are backwards.
2368
2369 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
2370
2371 * xfaces.c (face_color_supported_p): Fix compilation without X11.
2372
2373 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
2374
2375 * doc.c (Fsnarf_documentation): Ignore new file name entries.
2376
2377 2004-04-06 Kim F. Storm <storm@cua.dk>
2378
2379 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2380 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
2381
2382 * w32term.c (w32_read_socket): Set mouse_face_hidden after
2383 clearing highlight.
2384
2385 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
2386
2387 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
2388 clearing highlight.
2389
2390 * indent.c (vmotion): Do not reserve one column for continuation
2391 marks on window frames.
2392
2393 2004-04-04 Eli Zaretskii <eliz@gnu.org>
2394
2395 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
2396 from GCC.
2397
2398 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
2399
2400 * .gdbinit-union: Remove.
2401
2402 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
2403 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
2404 ($nonvalbits): Remove.
2405 ($valmask): Set it by calling xreload to avoid redundancy.
2406
2407 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
2408 (gdb_emacs_intbits): Remove.
2409
2410 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2411
2412 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
2413
2414 2004-03-30 Kenichi Handa <handa@m17n.org>
2415
2416 * editfns.c (Fformat): Fix initialization of the array info.
2417
2418 2004-03-30 Kim F. Storm <storm@cua.dk>
2419
2420 * xterm.c (x_mouse_click_focus_ignore_position): New var.
2421 (syms_of_xterm): DEFVAR_BOOL it.
2422 (ignore_next_mouse_click_timeout): New var.
2423 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
2424 Use it to filter mouse clicks following focus event.
2425
2426 2004-03-29 David Ponce <david@dponce.com>
2427
2428 * callint.c (Fcall_interactively): Fix last change.
2429
2430 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
2431
2432 * eval.c (Fcommandp): Simplify.
2433
2434 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
2435 Extend to handle all kinds of functions.
2436
2437 * lisp.h (Finteractive_form): Declare.
2438
2439 * callint.c (Fcall_interactively): Use it.
2440
2441 2004-03-26 Kim F. Storm <storm@cua.dk>
2442
2443 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
2444 to catch errors in calc_pixel_width_or_height during redisplay.
2445
2446 2004-03-26 Masatake YAMATO <jet@gyve.org>
2447
2448 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
2449
2450 * lisp.h (fix_start_end_in_overlays): Likewise.
2451
2452 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
2453
2454 * editfns.c (Ftranspose_regions): Likewise.
2455
2456 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2457
2458 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
2459
2460 2004-03-19 Richard M. Stallman <rms@gnu.org>
2461
2462 * s/sol2-6.h: Delete previous change.
2463
2464 2004-03-19 Kim F. Storm <storm@cua.dk>
2465
2466 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
2467 to_charpos corresponds to newline in right fringe. Use local
2468 BUFFER_POS_REACHED_P macro.
2469
2470 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2471
2472 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
2473 to compile on non-window system.
2474
2475 2004-03-19 Kim F. Storm <storm@cua.dk>
2476
2477 * dispextern.h (calc_pixel_width_or_height): Add prototype.
2478
2479 * image.c (Qcenter): Move to xdisp.c.
2480
2481 * xdisp.c (Qcenter): Declare here.
2482 (syms_of_xdisp): Intern and staticpro it.
2483 (handle_single_display_prop): Allow space display property on all
2484 platforms.
2485 (display_mode_line): Set mode_line_p before displaying line.
2486 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
2487 handling. Remove complex cases for fringes and scroll-bars.
2488 Add left, right, and center alignment positions. Add text (area)
2489 width/height. Return width or height for image specs.
2490 (produce_stretch_glyph): Improve handling of :align-to. Is now
2491 relative to left of text area by default, but other base offsets
2492 can be specified -- also for text lines.
2493
2494 * term.c (produce_glyphs): Handle IT_STRETCH.
2495 (produce_stretch_glyph): New function to handle space width and
2496 align-to display properties on non-window systems.
2497
2498 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
2499
2500 * fileio.c (Fread_file_name): Set completion-ignore-case for
2501 case-insensitive systems.
2502
2503 2004-03-14 Masatake YAMATO <jet@gyve.org>
2504
2505 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
2506 when keymap and cursor are setup.
2507
2508 2004-03-14 Steven Tamm <steventamm@mac.com>
2509
2510 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
2511
2512 2004-03-14 Kim F. Storm <storm@cua.dk>
2513
2514 * dispextern.h (x_find_image_file): Add prototype.
2515
2516 * image.c (x_find_image_file): Make extern.
2517
2518 * xfns.c (x_find_image_file): Remove prototype.
2519
2520 2004-03-13 Eli Zaretskii <eliz@gnu.org>
2521
2522 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
2523
2524 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
2525
2526 2004-03-12 Richard M. Stallman <rms@gnu.org>
2527
2528 * fns.c (internal_equal): New arg PROPS controls comparing
2529 text properties. All callers changed.
2530 (Fequal_including_properties): New function.
2531 (syms_of_fns): defsubr it.
2532
2533 2004-03-12 Kim F. Storm <storm@cua.dk>
2534
2535 Fix image support on MAC. From YAMAMOTO Mitsuharu.
2536
2537 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
2538 (image_background, image_background_transparent): Fix prototypes.
2539
2540 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
2541
2542 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
2543 (x_query_font, x_find_ccl_program, x_set_window_size)
2544 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2545 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2546 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
2547
2548 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
2549 (x_query_font, x_find_ccl_program, x_set_window_size)
2550 (x_make_frame_visible, mac_initialize, XCreatePixmap)
2551 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
2552 (mac_draw_line_to_pixmap): Add prototypes.
2553
2554 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2555
2556 * macterm.c (XTread_socket): Fix mouse click on tool bar.
2557
2558 2004-03-11 Kim F. Storm <storm@cua.dk>
2559
2560 * dispextern.h: Move image related prototypes from xfns.c section
2561 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
2562 HAVE_X_WINDOWS.
2563
2564 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
2565 Move gtkutil.o to new GTK_OBJ list.
2566 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
2567 (GTK_OBJ) [USE_GTK]: New declaration.
2568 (obj): Add $(GTK_OBJ) to list.
2569
2570 2004-03-11 Steven Tamm <steventamm@mac.com>
2571
2572 * image.c [MAC_OSX]: Include sys/stat.h
2573
2574 * macfns.c (syms_of_macfns): Remove definitions of things now
2575 defined in image.c
2576
2577 2004-03-11 Kim F. Storm <storm@cua.dk>
2578
2579 The following changes consolidates the identical/similar image
2580 support code previously found in xfns.c, w32fns.c, and macfns.c
2581 into a new file image.c.
2582
2583 * makefile.w32-in (OBJ1): Add image.o.
2584 ($(BLD)/image.$(O)): Add dependencies.
2585
2586 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
2587 (image.o): Add dependencies.
2588
2589 * image.c: New file with consolidated image support code.
2590 (COLOR_TABLE_SUPPORT): New define to control whether
2591 color table support is available (X only).
2592 (Bitmap_Record): Common name for x_bitmap_record,
2593 w32_bitmap_record, and mac_bitmap_record.
2594 (XImagePtr): Common name for pointer to XImage or equivalent.
2595 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
2596 to XImagePtr on X+MAC, and to HDC on W32.
2597 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
2598 (NO_PIXMAP): Common name for "None" or equivalent.
2599 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
2600 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
2601 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
2602 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
2603 Define with suitable equivalents on W32 and MAC for code sharing.
2604 (XDrawLine): Define on MAC for code sharing.
2605 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
2606 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
2607 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2608 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2609 (x_reference_bitmap, x_create_bitmap_from_data)
2610 (x_create_bitmap_from_file, x_destroy_bitmap)
2611 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2612 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2613 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2614 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2615 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2616 (define_image_type, lookup_image_type, valid_image_p)
2617 (image_error, enum image_value_type, struct image_keyword)
2618 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2619 (make_image, free_image, prepare_image_for_display, image_ascent)
2620 (four_corners_best, image_background, image_background_transparent)
2621 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2622 (make_image_cache, free_image_cache, clear_image_cache)
2623 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2624 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2625 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2626 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2627 (init_image_func_pointer, image_load_quartz2d)
2628 (struct ct_color, init_color_table, free_color_table)
2629 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2630 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2631 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2632 (x_disable_image, x_build_heuristic_mask)
2633 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2634 (TIFF support, GIF support, Ghostscript support): Consolidate image
2635 code from xfns.c, w32fns.c, and macfns.c.
2636 (syms_of_image): Consolidate image related symbol setup here.
2637 (init_image): Consolidate image related initializations here.
2638
2639 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
2640 and init_image. Remove call to init_xfns.
2641
2642 * macterm.h (struct mac_bitmap_record): Add file member.
2643 Not currently used, but simplifies code sharing.
2644
2645 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2646 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2647 (x_reference_bitmap, x_create_bitmap_from_data)
2648 (x_create_bitmap_from_file, x_destroy_bitmap)
2649 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2650 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2651 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2652 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2653 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2654 (define_image_type, lookup_image_type, valid_image_p)
2655 (image_error, enum image_value_type, struct image_keyword)
2656 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2657 (make_image, free_image, prepare_image_for_display, image_ascent)
2658 (four_corners_best, image_background, image_background_transparent)
2659 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2660 (make_image_cache, free_image_cache, clear_image_cache)
2661 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2662 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2663 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2664 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
2665 (init_image_func_pointer, image_load_quartz2d)
2666 (struct ct_color, init_color_table, free_color_table)
2667 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2668 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2669 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2670 (x_disable_image, x_build_heuristic_mask)
2671 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2672 (TIFF support, GIF support, Ghostscript support): Merge with image
2673 code from xfns.c and macfns.c into image.c.
2674 (syms_of_xfns): Move image related symbols to image.c.
2675 (init_external_image_libraries, init_xfns): Remove; initialization
2676 moved to init_image in image.c.
2677
2678 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2679 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2680 (x_reference_bitmap, x_create_bitmap_from_data)
2681 (x_create_bitmap_from_file, x_destroy_bitmap)
2682 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2683 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2684 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2685 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2686 (define_image_type, lookup_image_type, valid_image_p)
2687 (image_error, enum image_value_type, struct image_keyword)
2688 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2689 (make_image, free_image, prepare_image_for_display, image_ascent)
2690 (four_corners_best, image_background, image_background_transparent)
2691 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2692 (make_image_cache, free_image_cache, clear_image_cache)
2693 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2694 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2695 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2696 (struct ct_color, init_color_table, free_color_table)
2697 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2698 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2699 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2700 (x_disable_image, x_build_heuristic_mask)
2701 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2702 (TIFF support, GIF support, Ghostscript support): Merge with image
2703 code from xfns.c and macfns.c into image.c.
2704 (syms_of_xfns): Move image related symbols to image.c.
2705 (init_external_image_libraries, init_xfns): Remove; initialization
2706 moved to init_image in image.c.
2707
2708 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
2709 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2710 (x_reference_bitmap, x_create_bitmap_from_data)
2711 (x_create_bitmap_from_file, x_destroy_bitmap)
2712 (x_destroy_all_bitmaps, x_create_bitmap_mask)
2713 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
2714 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
2715 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
2716 (define_image_type, lookup_image_type, valid_image_p)
2717 (image_error, enum image_value_type, struct image_keyword)
2718 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
2719 (make_image, free_image, prepare_image_for_display, image_ascent)
2720 (four_corners_best, image_background, image_background_transparent)
2721 (x_clear_image_1, x_clear_image, x_alloc_image_color)
2722 (make_image_cache, free_image_cache, clear_image_cache)
2723 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
2724 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
2725 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
2726 (struct ct_color, init_color_table, free_color_table)
2727 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
2728 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
2729 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
2730 (x_disable_image, x_build_heuristic_mask)
2731 (XBM support, XPM support, PBM support, PNG support, JPEG support)
2732 (TIFF support, GIF support, Ghostscript support): Merge with
2733 w32fns.c and macfns.c image code into image.c.
2734 (syms_of_xfns): Move image related symbols to image.c.
2735 (init_xfns): Remove; initialization moved to init_image in image.c.
2736
2737 * lisp.h (syms_of_image, init_image): Add protoypes.
2738 (init_xfns): Remove prototype.
2739
2740 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2741 (x_reference_bitmap, x_create_bitmap_from_data)
2742 (x_create_bitmap_from_file, x_destroy_bitmap)
2743 (x_create_bitmap_mask): Move prototypes from dispextern.h.
2744 (gamma_correct) [MAC_OS]: Add prototype.
2745
2746 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
2747 (x_reference_bitmap, x_create_bitmap_from_data)
2748 (x_create_bitmap_from_file, x_destroy_bitmap)
2749 (x_create_bitmap_mask): Move prototypes to dispextern.h.
2750
2751 2004-03-09 Kenichi Handa <handa@etlken2>
2752
2753 * coding.c (decode_coding_emacs_mule): Handle insufficent source
2754 correctly.
2755
2756 2004-03-04 Richard M. Stallman <rms@gnu.org>
2757
2758 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
2759
2760 * window.c (Fdisplay_buffer): Doc fix.
2761
2762 * buffer.c (Fpop_to_buffer): Doc fix.
2763
2764 2004-03-03 Kim F. Storm <storm@cua.dk>
2765
2766 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
2767
2768 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
2769
2770 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
2771
2772 2004-03-02 Richard M. Stallman <rms@gnu.org>
2773
2774 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
2775
2776 2004-03-02 Kenichi Handa <handa@m17n.org>
2777
2778 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
2779
2780 2004-03-02 Kim F. Storm <storm@cua.dk>
2781
2782 * window.h (struct window): New member overlay_arrow_bitmap.
2783
2784 * window.c (make_window): Initialize overlay_arrow_bitmap.
2785
2786 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
2787 implement and integrate multiple overlay arrows with redisplay.
2788 (syms_of_xdisp): DEFVAR_LISP and initialize it.
2789 (last_arrow_position, last_arrow_string): Replace by properties.
2790 (Qlast_arrow_position, Qlast_arrow_string)
2791 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
2792 (syms_of_xdisp): Intern and staticpro them.
2793 (overlay_arrow_string_or_property, update_overlay_arrows)
2794 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
2795 (overlay_arrow_at_row): New functions for multiple overlay arrows.
2796 (redisplay_internal): Use them instead of directly accessing
2797 Voverlay_arrow_position etc. for multiple overlay arrows.
2798 (mark_window_display_accurate): Use update_overlay_arrows.
2799 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
2800 (try_window_id): Use overlay_arrows_changed_p.
2801 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
2802 (display_line): Use overlay_arrow_at_row to check multiple
2803 overlay arrows, and get relevant overlay-arrow-string and
2804 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
2805 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
2806 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
2807
2808 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
2809 (update_window_fringes): Remove unused code.
2810
2811 2004-03-01 Jason Rumney <jasonr@gnu.org>
2812
2813 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
2814
2815 2004-03-01 Juanma Barranquero <lektu@terra.es>
2816
2817 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
2818
2819 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
2820
2821 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2822
2823 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
2824 how many colors can be displayed.
2825
2826 2004-03-01 Kenichi Handa <handa@m17n.org>
2827
2828 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
2829 correctly.
2830
2831 2004-02-28 Kim F. Storm <storm@cua.dk>
2832
2833 * dispnew.c (update_window): Update header line also if there are
2834 no other changes in window (move code after set_cursor label).
2835
2836 * lisp.h (mark_window_display_accurate): Remove prototype.
2837
2838 * window.c (window_loop, Fforce_window_update): Force mode line
2839 updates by setting prevent_redisplay_optimizations_p and
2840 update_mode_lines.
2841
2842 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2843
2844 * xfns.c (x_window): Fix indentation.
2845
2846 * xterm.c (x_calc_absolute_position): Call x_real_positions
2847 to get WM window sizes and use those to calculate position.
2848 (x_set_offset): Remove code commented out.
2849
2850 2004-02-28 Miles Bader <miles@gnu.org>
2851
2852 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
2853
2854 2004-02-28 Kim F. Storm <storm@cua.dk>
2855
2856 * keyboard.c (kbd_buffer_store_event_hold): New function to store
2857 an event into kbd fifo, but with special handling of quit event;
2858 a quit event is saved for later, and further events are discarded
2859 until the saved quit event has been processed.
2860 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
2861 (gen_help_event): Store help event in kbd fifo.
2862 (NREAD_INPUT_EVENTS): Remove.
2863 (read_avail_input): Adapt to new read_socket_hook interface.
2864 Remove allocation and initialization of local input_event buffer,
2865 as read_socket_hook stores events directly in fifo. Allocate and
2866 initialize local hold_quit event to handle postponed quit event
2867 (and store it if set by kbd_buffer_store_event_hold).
2868
2869 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
2870 (gen_help_event): Fix prototype.
2871
2872 * macterm.c (XTread_socket): Remove bufp_r and
2873 numcharsp args. Add hold_quit arg.
2874 Rework to use just one, local, inev input_event. Store inev
2875 directly in fifo using kbd_buffer_store_event_hold.
2876
2877 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
2878 (read_input_waiting): Adapt to new read_socket_hook interface.
2879 Remove allocation and initialization of local input_event buffer,
2880 as read_socket_hook stores events directly in fifo. Allocate and
2881 initialize local hold_quit event to handle postponed quit event
2882 (and store it if set by kbd_buffer_store_event_hold).
2883
2884 * term.c (read_socket_hook): Fix arg list.
2885
2886 * termhooks.h (read_socket_hook): Fix prototype.
2887
2888 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
2889 numcharsp args. Add hold_quit arg.
2890 Rework to use just one, local, inev input_event. Store inev
2891 directly in fifo using kbd_buffer_store_event_hold.
2892
2893 * w32inevt.h (w32_console_mouse_position): Fix prototype.
2894
2895 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
2896 Add hold_quit arg. Rework to use just one, local, inev
2897 input_event. Store inev directly in fifo using
2898 kbd_buffer_store_event_hold. Update count in one place.
2899 Postpone call to gen_help_event until inev is stored; use new
2900 local do_help for this.
2901 Remove local emacs_event in handing of ButtonPress event; just use
2902 inev instead (so no reason to copy it later).
2903
2904 * xsmfns.c (x_session_check_input): Remove numchars arg.
2905
2906 * xterm.c (x_focus_changed, x_detect_focus_change):
2907 Remove numchars arg. Always store event into bufp arg.
2908 Return nothing. Callers changed accordingly.
2909 (glyph_rect): Simplify.
2910 (STORE_KEYSYM_FOR_DEBUG): New macro.
2911 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
2912 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
2913 (current_hold_quit) [USE_GTK]: Add.
2914 (event_handler_gdk): Adapt to new handle_one_xevent.
2915 (handle_one_xevent): Remove bufp_r and numcharsp args.
2916 Add hold_quit arg. Rework to use just one, local, inev
2917 input_event. Store inev directly in fifo using
2918 kbd_buffer_store_event_hold. Update count in one place.
2919 Postpone call to gen_help_event until inev is stored; use new
2920 local do_help for this.
2921 Simplify handling of keysyms (consolidate common code). Fix bug
2922 where count was updated with nchars instead of nbytes.
2923 Remove local emacs_event in handing of ButtonPress event; just use
2924 inev instead (so no reason to copy it later).
2925 Remove `out' label. Rename label `ret' to `done'; add various
2926 `goto done' to clarify code flow in deeply nested blocks.
2927 (x_dispatch_event): Simplify as handle_one_xevent now calls
2928 kbd_buffer_store_event itself.
2929 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
2930 arg. Call handle_one_xevent with new arglist. Store event from
2931 x_session_check_input in fifo.
2932 [USE_GTK]: Setup current_hold_quit.
2933 Decrement handling_signal before unblocking input.
2934 (x_initialize) [USE_GTK]: Initialize current_count.
2935
2936 * xterm.h (x_session_check_input): Fix prototype.
2937
2938 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2939
2940 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
2941
2942 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
2943 macgui.h).
2944
2945 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
2946
2947 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
2948 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
2949 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
2950 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
2951 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
2952 (Bitmap): Remove typedef.
2953 (Pixmap): Change int to GWorldPtr.
2954
2955 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2956
2957 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
2958 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
2959 New #define to extract 16-bit depth color components from unsigned
2960 long representation.
2961 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
2962 colors used for masks.
2963 (struct mac_display_info): Add color_p. Remove n_cbits.
2964
2965 * macfns.c: Include sys/types.h and sys/stat.h.
2966 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
2967 Include QuickTime/QuickTime.h.
2968 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
2969 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
2970 functions defined in macterm.c.
2971 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
2972 (ZPixmap): New #define for compatibility with xfns.c.
2973 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
2974 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
2975 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
2976 New functions.
2977 (four_corners_best, x_create_x_image_and_pixmap)
2978 (x_destroy_x_image, unwind_create_frame, x_disable_image)
2979 (x_edge_detection, init_color_table, colors_in_color_table)
2980 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
2981 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
2982 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
2983 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
2984 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
2985 long mixup.
2986 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
2987 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
2988 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
2989 (x_set_cursor_type, Fxw_color_values, valid_image_p)
2990 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
2991 (x_alloc_image_color, clear_image_cache, lookup_image)
2992 (x_find_image_file, xbm_read_bitmap_file_data)
2993 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
2994 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
2995 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
2996 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
2997 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
2998 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
2999 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
3000 #if 0.
3001 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
3002 #if 0. Free white_relief.gc and black_relief.gc.
3003 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
3004 New functions (from xfns.c).
3005 (Fx_create_frame): Record unwind_create_frame.
3006 (Fxw_display_color_p): Use dpyinfo->color_p.
3007 (Fx_display_grayscale_p, Fx_display_planes): Don't use
3008 dpyinfo->n_cbits.
3009 (Fx_display_color_cells): Use dpyinfo->n_planes;
3010 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
3011 (Qheuristic, cross_disabled_images, emboss_matrix)
3012 (laplace_matrix): New variables (from xfns.c).
3013 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
3014 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
3015 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
3016 (image_background_transparent): New function (from xfns.c).
3017 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3018 (image_load_quicktime): Add declaration.
3019 [MAC_OSX] (image_load_quartz2d): Likewise.
3020 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
3021 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
3022 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
3023 (xbm_load_image_from_file, x_laplace_read_row)
3024 (x_laplace_write_row, pbm_read_file): Remove functions.
3025 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
3026 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
3027 (colors_in_color_table): Sync with xfns.c (although not used).
3028 (lookup_rgb_color): Don't lookup color table. Just do gamma
3029 correction.
3030 (COLOR_INTENSITY): New #define (from xfns.c).
3031 (x_disable_image): New function (from xfns.c).
3032 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3033 (x_build_heuristic_mask): Sync with xfns.c.
3034 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3035 (HAVE_PBM): Remove #ifdef.
3036 (pbm_load): Sync with xfns.c. Set img->width and img->height
3037 before IMAGE_BACKGROUND.
3038 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
3039 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
3040 Don't enclose with #if HAVE_PNG.
3041 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
3042 symbol _CGImageCreateWithPNGDataProvider is defined.
3043 Otherwise use image_load_quicktime.
3044 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
3045 [HAVE_PNG] (png_load): Sync with xfns.c.
3046 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
3047 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
3048 HAVE_JPEG.
3049 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
3050 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
3051 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
3052 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
3053 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
3054 (tiff_image_p, tiff_load): Don't enclose declarations with #if
3055 HAVE_TIFF.
3056 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
3057 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
3058 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
3059 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
3060 New functions (from xfns.c).
3061 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
3062 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
3063 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
3064 Don't enclose with #if HAVE_GIF.
3065 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
3066 animated gif. Otherwise use image_load_quicktime.
3067 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
3068 gif_DrawText to avoid conflict with QuickdrawText.h.
3069 [HAVE_GIF] (gif_load): Sync with xfns.c.
3070 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
3071 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
3072 Ghostscript is not supported yet).
3073 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
3074 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
3075 cross_disabled_images (from xfns.c). Remove #if 0 for supported
3076 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3077 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
3078 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
3079 HAVE_PNG. Call EnterMovies to support animated gifs.
3080 Call init_image_func_pointer to bind a symbol
3081 _CGImageCreateWithPNGDataProvider if it is defined.
3082
3083 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
3084 (x_draw_bar_cursor): Sync declaration with xterm.c.
3085 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
3086 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
3087 graphics).
3088 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
3089 (mac_draw_line_to_pixmap, XCreatePixmap)
3090 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
3091 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
3092 New functions.
3093 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
3094 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3095 Cast bits to char *.
3096 (reflect_byte): New function (from w32fns.c).
3097 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
3098 due to byte alignment.
3099 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
3100 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
3101 (XSetForeground): Remove static (now used in macfns.c).
3102 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
3103 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
3104 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
3105 (x_draw_glyph_string_box, x_draw_image_foreground)
3106 (x_draw_image_foreground_1, x_draw_image_glyph_string)
3107 (x_draw_stretch_glyph_string, x_draw_glyph_string)
3108 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
3109 Sync with xterm.c.
3110 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
3111 than the xterm.c version when a strictly horizontal or vertical
3112 line is drawn.
3113 (XTset_terminal_window): Add static.
3114 (x_make_frame_visible): Add UNBLOCK_INPUT.
3115 (x_free_frame_resources): New funcion (from xterm.c).
3116 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
3117 occurs in tool bar area.
3118 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
3119 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
3120 Initialize image cache.
3121 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
3122 Enclose unused functions with #if 0.
3123 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
3124 (decode_mac_font_name): New function to apply code conversions
3125 from a mac font name to an XLFD font name according to its script code.
3126 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
3127 font name to a mac font name according to REGISTRY and ENCODING fields.
3128 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
3129 whose name starts with `.'.
3130 (init_font_name_table): Use decode_mac_font_name. Add both
3131 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
3132 of a font is smJapanese.
3133 (mac_do_list_fonts): New function to list fonts that match a given
3134 pattern.
3135 (x_list_fonts, XLoadQueryFont): Use it.
3136 (XLoadQueryFont): Set rbearing field for each variable width
3137 character to avoid needless redraw.
3138 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
3139
3140 2004-02-26 Kim F. Storm <storm@cua.dk>
3141
3142 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
3143 as read_socket_hook handler on X aborts if buffer is too small
3144 and W32 handler doesn't always check buffer limit.
3145
3146 * xdisp.c (handle_single_display_prop): Handle left-fringe and
3147 right-fringe similar to a display margin image. Specifically,
3148 the characters having the fringe prop are no longer shown, and
3149 we use IT_IMAGE/next_element_from_image with image_id = -1 to
3150 do this. Set fringe bitmap face_id in it->face_id.
3151 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
3152 still realize it->face (i.e. the fringe bitmap face).
3153
3154 2004-02-25 Miles Bader <miles@gnu.org>
3155
3156 * xdisp.c (check_it): Check string/string_pos consistency.
3157 (init_iterator): Initialize string-related fields properly.
3158
3159 2004-02-11 Miles Bader <miles@gnu.org>
3160
3161 * xdisp.c (produce_image_glyph): Force negative descents to zero.
3162
3163 2004-02-10 Miles Bader <miles@gnu.org>
3164
3165 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
3166 BLOCK_INPUT can be nested, so it doesn't make much sense.
3167
3168 2004-02-24 Michael Mauger <mmaug@yahoo.com>
3169
3170 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
3171 (xbm_read_bitmap_data): Use unsigned char for image data.
3172
3173 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
3174
3175 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
3176
3177 2004-02-22 Jason Rumney <jasonr@gnu.org>
3178
3179 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
3180 correctly over other bitmaps.
3181
3182 2004-02-21 Eli Zaretskii <eliz@gnu.org>
3183
3184 * emacs.c (USAGE1): Split into two halves.
3185 (USAGE2): Second half of the old USAGE1.
3186 (USAGE3): Rename from USAGE2.
3187 (USAGE4): Rename from USAGE3.
3188
3189 2004-02-21 Juri Linkov <juri@jurta.org>
3190
3191 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
3192 Fix --multibyte. Move --help, --version to USAGE2. Add alias
3193 --file. Fix -f, -l. Sort options. Untabify.
3194 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
3195
3196 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
3197
3198 * category.c (Fdefine_category, Fcategory_docstring)
3199 (Fget_unused_category, Fset_category_table)
3200 (Fcategory_set_mnemonics): Doc fixes.
3201
3202 2004-02-20 Kim F. Storm <storm@cua.dk>
3203
3204 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
3205 The following changes are relative to the 2004-01-21 revision.
3206 (NREAD_INPUT_EVENTS): Define as max number of input events to read
3207 in one call to read_socket_hook. Value is 8.
3208 (read_avail_input): Separate and rework handling of read_socket_hook
3209 and non-read_socket_hook cases. Use smaller input_event buffer
3210 in read_socket_hook case, and repeat if full buffer is read.
3211 Use new local variable 'discard' to skip input after C-g.
3212 In non-read_socket_hook case, just use a single input_event, and
3213 call kbd_buffer_store_event on the fly for each character.
3214
3215 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
3216
3217 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
3218 Remove unused `gu' alternative.
3219
3220 2004-02-19 Andreas Schwab <schwab@suse.de>
3221
3222 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
3223 warning.
3224
3225 2004-02-18 Kim F. Storm <storm@cua.dk>
3226
3227 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
3228 Fix last change.
3229
3230 2004-02-17 Kim F. Storm <storm@cua.dk>
3231
3232 * xdisp.c (fast_find_position): Fix return value of new version;
3233 it was inverted compared to the 21.1 version.
3234 (get_window_cursor_type): Don't look at glyph if NULL.
3235 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
3236
3237 * keyboard.c: Rework previous change; it didn't consider that the
3238 buf array was allocated on the stack.
3239 (prev_read): Remove variable.
3240 (read_avail_input_buf): New static event buffer array.
3241 (in_read_avail_input): New static variable to handle re-entrancy.
3242 (read_avail_input): Change buf to pinter to read_avail_input_buf.
3243 Use in_read_avail_input to handle re-entrance; when re-entered,
3244 fully initialize and use tmp_buf array instead of read_avail_input_buf.
3245 Do not initialize read_avail_input_buf in full here; instead assume it
3246 is always cleared on entry. To ensure that, we clear (just) the
3247 entries that were used before we return.
3248 (init_keyboard): Initialize read_avail_input_buf here.
3249
3250 2004-02-16 Jesper Harder <harder@ifa.au.dk> (tiny change)
3251
3252 * cmds.c (Fend_of_line): Doc fix.
3253
3254 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
3255
3256 * keyboard.c (prev_read): New static variable.
3257 (read_avail_input): Use it to zero out only those slots in buf[]
3258 that were used last time we were called.
3259
3260 2004-02-16 Eli Zaretskii <eliz@gnu.org>
3261
3262 * Makefile.in (obj): Move fringe.o from here...
3263 (XOBJ, MAC_OBJ): ...to here.
3264
3265 2004-02-16 Stephen Eglen <stephen@gnu.org>
3266
3267 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
3268
3269 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
3270
3271 * data.c (Fbyteorder):
3272 * fringe.c (Fdefine_fringe_bitmap):
3273 * xdisp.c (handle_single_display_prop):
3274 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
3275
3276 2004-02-16 Jason Rumney <jasonr@gnu.org>
3277
3278 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
3279
3280 2004-02-15 Steven Tamm <steventamm@mac.com>
3281
3282 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
3283 controlling emulation of a three button mouse with option and
3284 command keys.
3285 (Qreverse, mac_get_enumlated_btn): Handle the emulation
3286 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
3287
3288 2004-02-15 Kim F. Storm <storm@cua.dk>
3289
3290 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
3291
3292 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
3293 Perform byte-swapping.
3294
3295 2004-02-14 Kim F. Storm <storm@cua.dk>
3296
3297 * dispextern.h (struct draw_fringe_bitmap_params): Change member
3298 bits from char to short to facilitate wider bitmaps.
3299 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
3300 member.
3301
3302 * fringe.c (struct fringe_bitmap): Change member bits from char to
3303 short to facilitate 16 bits wide bitmaps. Modify all standard
3304 bitmaps accordingly.
3305 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
3306 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
3307 (draw_fringe_bitmap): Ditto.
3308 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
3309 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
3310 handle up to 16 bits wide bitmaps.
3311 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
3312 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
3313
3314 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
3315 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
3316 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
3317
3318 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
3319 so it is no longer necessary to expand them here.
3320
3321 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
3322
3323 2004-02-12 Kim F. Storm <storm@cua.dk>
3324
3325 * window.c (Fwindow_fringes): Doc fix.
3326
3327 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3328
3329 * xselect.c (x_get_foreign_selection): Add new optional parameter
3330 time_stamp.
3331 (Fx_get_selection_internal): Ditto, pass time_stamp to
3332 x_get_foreign_selection.
3333
3334 * data.c (Fbyteorder): New function.
3335
3336 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3337
3338 * atimer.c: Move include stdio.h to same place as in other files.
3339
3340 * region-cache.c: Ditto.
3341
3342 * sysdep.c: Ditto.
3343
3344 * xfaces.c: Ditto.
3345
3346 2004-02-09 Sam Steingold <sds@gnu.org>
3347
3348 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
3349
3350 2004-02-09 Kim F. Storm <storm@cua.dk>
3351
3352 * fringe.c: New file. Move original fringe related declarations
3353 and code from dispextern.h and xdisp.c here.
3354 Rework code to support user defined fringe bitmaps, redefining
3355 standard bitmaps, ability to overlay user defined bitmap with
3356 overlay arrow bitmap, and add faces to bitmaps.
3357 (Voverflow_newline_into_fringe): Declare here.
3358 (enum fringe_bitmap_align): New enum.
3359 (..._bits): All bitmaps are now defined without bitswapping; that
3360 is now done in init_fringe_once (if necessary).
3361 (standard_bitmaps): New array with specifications for the
3362 standard fringe bitmaps.
3363 (fringe_faces): New array.
3364 (valid_fringe_bitmap_id_p): New function.
3365 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
3366 (draw_fringe_bitmap): New function which draws fringe bitmap,
3367 possibly overlaying bitmap with cursor in right fringe or the
3368 overlay arrow in the left fringe.
3369 (update_window_fringes): Do not handle overlay arrow here.
3370 Compare and copy fringe bitmap faces.
3371 (init_fringe_bitmap): New function.
3372 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
3373 define and destroy user defined fringe bitmaps.
3374 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
3375 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
3376 (syms_of_fringe): New function. Defsubr new DEFUNs.
3377 DEFVAR_LISP Voverflow_newline_into_fringe.
3378 (init_fringe_once, init_fringe): New functions.
3379 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
3380
3381 * Makefile.in (obj): Add fringe.o.
3382 (fringe.o): New dependencies.
3383
3384 * dispextern.h (FRINGE_ID_BITS): New definition for number of
3385 bits allocated to hold a fringe number. Increase number of bits
3386 from 4 to 8 to allow user defined fringe bitmaps.
3387 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
3388 left_user_fringe_face_id, right_user_fringe_bitmap,
3389 right_user_fringe_face_id.
3390 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
3391 Move to new file fringe.c.
3392 (MAX_FRINGE_BITMAPS): Define here.
3393 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
3394 and overlay_p. Change member which to int.
3395 (struct redisplay_interface): New members define_fringe_bitmap
3396 and destroy_fringe_bitmap.
3397 (valid_fringe_bitmap_id_p): Add prototype.
3398 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
3399
3400 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
3401 arrows.
3402 (update_frame): Do flush_display if force_flush_display_p to
3403 ensure display (specifically fringes) are updated in a timely
3404 manner when resizing the frame by dragging the mouse.
3405 (update_window_line): Update row if overlay arrow changed.
3406 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
3407 or overlay arrow changed.
3408
3409 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
3410 syms_of_fringe, and init_fringe.
3411
3412 * frame.h (struct frame): New member force_flush_display_p.
3413
3414 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
3415 Add prototypes.
3416
3417 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
3418 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
3419 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
3420 Use cursor color for displaying cursor in fringe.
3421 (x_redisplay_interface): Add null handlers for
3422 define_fringe_bitmap and destroy_fringe_bitmap functions.
3423
3424 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
3425 xterm.c to handle overlayed fringe bitmaps and to use cursor color
3426 for displaying cursor in fringe.
3427 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
3428 specific functions to define and destroy fringe bitmaps in fringe_bmp.
3429 (w32_redisplay_interface): Add them to redisplay_interface.
3430 (w32_term_init): Call w32_init_fringe instead of explicitly
3431 defining fringe bitmaps in fringe_bmp array.
3432 (x_delete_display): Call w32_reset_fringes instead of explicitly
3433 destroying fringe bitmaps in fringe_bmp array.
3434
3435 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
3436 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
3437 (continued_bits, continuation_bits, ov_bits, first_line_bits)
3438 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
3439 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
3440 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
3441 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
3442 Move fringe handling vars and code to new file fringe.c.
3443 (handle_display_prop): Handle left-fringe and right-fringe
3444 display properties; store user fringe bitmaps in iterator.
3445 (move_it_in_display_line_to): Handle cursor in fringe at eob.
3446 (clear_garbaged_frames): Set force_flush_display_p if resized.
3447 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
3448 (display_line): Handle cursor in fringe at eob.
3449 (display_line): Set row user fringe bitmaps from iterator.
3450
3451 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
3452 Use cursor color for displaying cursor in fringe.
3453 (x_redisplay_interface): Add null handlers for
3454 define_fringe_bitmap and destroy_fringe_bitmap functions.
3455
3456 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3457
3458 * macfns.c (Fx_change_window_property): Make doc string and
3459 parameters same as for X version.
3460
3461 * w32fns.c (Fx_change_window_property): Ditto.
3462
3463 2004-02-07 Kim F. Storm <storm@cua.dk>
3464
3465 * xdisp.c (hscroll_window_tree): Position cursor near to right
3466 margin in hscrolled window when jumping to end of line (rather
3467 than centering cursor).
3468
3469 * process.c (wait_reading_process_input): Don't do adaptive read
3470 buffering if waiting for a specific process.
3471
3472 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
3473
3474 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
3475 (Fread_minibuffer, Feval_minibuffer)
3476 (Fread_string, Fread_no_blanks_input)
3477 (Fcompleting_read): Doc fixes.
3478 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
3479 completion-regexp-list. Define Qcase_fold_search and staticpro it.
3480 (read_minibuf): Fix initial comment.
3481 (Ftry_completion, Fall_completions, Ftest_completion): Bind
3482 case-fold-search to the value of completion-ignore-case when
3483 checking completion-regexp-list.
3484 (Fdisplay_completion_list): Make it handle arguments that are
3485 symbols. Doc fix.
3486
3487 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3488
3489 * xterm.h: Add declaration of free_frame_menubar.
3490
3491 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
3492 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
3493 (Fx_change_window_property): Add declaration of parameters type and
3494 format. Remove unused variable cons.
3495
3496 * xselect.c: Include stdio,h.
3497
3498 2004-02-05 Kenichi Handa <handa@m17n.org>
3499
3500 * fns.c (Fset_char_table_range): Fix previous change.
3501
3502 * buffer.c (Fset_buffer_multibyte): Fix docstring.
3503
3504 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
3505
3506 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
3507
3508 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
3509
3510 * keymap.c (Vmouse_events): Rename from Vmenu_events.
3511 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
3512
3513 2004-02-04 Kenichi Handa <handa@m17n.org>
3514
3515 * fns.c (Fset_char_table_range): Handle charsets ascii,
3516 eight-bit-control, and eight-bit-graphic correctly.
3517
3518 2004-02-03 Jason Rumney <jasonr@gnu.org>
3519
3520 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
3521
3522 * w32fns.c (x_to_w32_font): Likewise.
3523
3524 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3525
3526 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
3527 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
3528
3529 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
3530 ClientMessages.
3531
3532 * xselect.c: Include termhooks.h and X11/Xproto.h
3533 (x_check_property_data, x_fill_property_data)
3534 (x_property_data_to_lisp, mouse_position_for_drop)
3535 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
3536 (Fx_send_client_event): Move here from xfns.c.
3537 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
3538
3539 * xfns.c (x-send-client-message): Move to xselect.c
3540 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
3541 OUTER_P.
3542 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
3543 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
3544 if vector_ret_p is true.
3545 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
3546
3547 2004-02-02 Eli Zaretskii <eliz@gnu.org>
3548
3549 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
3550 basename of FILE relative to it, not FILE itself.
3551
3552 2004-02-02 Kenichi Handa <handa@m17n.org>
3553
3554 * coding.c (coding_restore_composition): Check invalid
3555 composition data more rigidly.
3556
3557 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
3558
3559 * fileio.c (Fread_file_name_internal): Correctly handle the case
3560 where insert-default-directory is nil.
3561 (Fread_file_name): Always return an empty string if the user exits
3562 with an empty minibuffer. Adapt the docstring accordingly.
3563 (syms_of_fileio): Adapt the docstring of insert-default-directory
3564 to the change in Fread_file_name.
3565
3566 2004-01-29 Eli Zaretskii <eliz@gnu.org>
3567
3568 * alloca.c [!alloca]: Fix the prototype for xfree.
3569
3570 2004-01-29 Kenichi Handa <handa@m17n.org>
3571
3572 * fns.c (string_char_to_byte): Optimize for ASCII only string.
3573 (string_byte_to_char): Likewise.
3574
3575 2004-01-28 Peter Runestig <peter@runestig.com>
3576
3577 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
3578
3579 2004-01-27 Steven Tamm <steventamm@mac.com>
3580
3581 * unexmacosx.c (unexec_copy): Do not copy more than was
3582 requested to prevent overwriting during unexec.
3583
3584 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3585
3586 * process.c (sigchld_handler): Add comment about not calling malloc.
3587
3588 * process.h: Add extern to synch_process_termsig.
3589
3590 2004-01-27 Steven Tamm <steventamm@mac.com>
3591
3592 * macterm.c (make_mac_frame, make_mac_terminal_frame):
3593 Move setting of scroll bars from make_mac_frame to
3594 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
3595
3596 2004-01-26 Richard M. Stallman <rms@gnu.org>
3597
3598 * search.c (Freplace_match): Handle nonexistent
3599 back-references properly.
3600
3601 2004-01-03 Richard M. Stallman <rms@gnu.org>
3602
3603 * window.c (decode_any_window): New function.
3604 (Fwindow_height, Fwindow_width, Fwindow_edges)
3605 (Fwindow_pixel_edges, Fwindow_inside_edges)
3606 (Fwindow_inside_pixel_edges): Use decode_any_window.
3607
3608 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3609
3610 * process.h: synch_process_termsig new variable.
3611
3612 * callproc.c: Define synch_process_termsig.
3613 (Fcall_process): Initiate synch_process_termsig to zero and
3614 check if non-zero and get signal name after subprocess has ended.
3615
3616 * process.c (sigchld_handler): Set synch_process_termsig
3617 if terminated by a signal. synch_process_death setting removed.
3618
3619 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
3620
3621 2004-01-26 Andreas Schwab <schwab@suse.de>
3622
3623 * print.c (print_preprocess): Declare size as EMACS_INT to not
3624 lose bits.
3625 (print_object): Likewise.
3626 * alloc.c (Fpurecopy): Likewise.
3627
3628 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
3629
3630 * window.c (Fwindow_minibuffer_p): Doc fix.
3631
3632 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
3633
3634 * editfns.c (Fformat): Make both passes accept the same set of flags.
3635
3636 2004-01-23 Kenichi Handa <handa@m17n.org>
3637
3638 * fns.c (Fmd5): If OBJECT is a buffer different from the current
3639 one, set buffer to OBJECT temporarily.
3640
3641 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3642
3643 * keyboard.c (kbd_buffer_gcpro): Remove.
3644 (kbd_buffer_store_event, clear_event, Fdiscard_input)
3645 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
3646 Don't initialize and/or maintain the variable any more. It was made
3647 redundant by my commit of 2003-06-15.
3648
3649 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
3650
3651 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3652
3653 * lisp.h: Add undef DECL_ALIGN.
3654
3655 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
3656
3657 * process.c (wait_reading_process_input) [SYNC_INPUT]:
3658 Check interrupt_input_pending explicitly.
3659
3660 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
3661
3662 * keyboard.c (handle_async_input): New fun,
3663 extracted from input_available_signal.
3664 (input_available_signal, reinvoke_input_signal): Use it.
3665
3666 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
3667
3668 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
3669
3670 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
3671 manipulation macros for when tags are in the lower bits.
3672 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
3673 (DECL_ALIGN): New macro.
3674 (DEFUN): Use it.
3675
3676 * lisp.h [ENABLE_CHECKING]: Don't force union type.
3677
3678 * s/darwin.h (__attribute__): Remove outdated workaround.
3679
3680 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
3681
3682 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
3683 Don't check range of malloc address.
3684 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
3685
3686 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
3687
3688 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
3689
3690 2004-01-19 Kenichi Handa <handa@m17n.org>
3691
3692 * fontset.c (fontset_font_pattern): Fix previous change.
3693
3694 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
3695
3696 * xdisp.c (Voverflow_newline_into_fringe)
3697 (move_it_in_display_line_to, redisplay_internal)
3698 (update_window_fringes, redisplay_window, display_line, window):
3699 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
3700 that it compiles without a window-system.
3701 * dispnew.c (direct_output_for_insert, update_window): Likewise.
3702
3703 2004-01-16 Kim F. Storm <storm@cua.dk>
3704
3705 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
3706
3707 * buffer.c (init_buffer_once): Set buffer_defaults and
3708 buffer_local_flags for indicate_buffer_boundaries.
3709 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
3710 default- variable for it.
3711
3712 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
3713 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
3714 New members exact_window_width_line_p and cursor_in_fringe_p for
3715 overflowing newlines into right fringe.
3716 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
3717 and indicate_bottom_line_p for buffer boundaries and scrolling.
3718 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
3719 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
3720 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
3721 and HOLLOW_SQUARE_BITMAP.
3722 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
3723 Add prototypes.
3724
3725 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
3726 instead of related indicator fields.
3727 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
3728 (direct_output_for_insert): Handle exact width lines like
3729 contined lines. Call update_window_fringes.
3730 (update_window): Call update_window_fringes.
3731 (scrolling_window): Don't skip desired rows with changed bitmaps.
3732 Check if fringe bitmaps changes when assigning scrolled rows.
3733
3734 * xdisp.c (Voverflow_newline_into_fringe): New variable.
3735 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
3736 (move_it_in_display_line_to): Overflow newline into fringe for
3737 rows that are exactly as wide as the window.
3738 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
3739 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
3740 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
3741 (fringe_bitmaps): Add new bitmaps.
3742 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
3743 Select proper bitmap for cursor in fringe when appropriate.
3744 Handle alignment of bitmap to top or bottom of row.
3745 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
3746 done by update_window_fringes.
3747 (update_window_fringes, draw_window_fringes): New functions.
3748 (redisplay_internal): Call update_window_fringes in case only
3749 cursor row is updated.
3750 (redisplay_window): Call update_window_fringes.
3751 Explicitly call draw_window_fringes if redisplay was done using
3752 the current matrix or the overlay arrow is in the window.
3753 (try_window_reusing_current_matrix): Mark scrolled rows for
3754 fringe update (to update buffer-boundaries / scrolling icons).
3755 (find_last_unchanged_at_beg_row): Handle exact width lines line
3756 continued lines.
3757 (display_line): Overflow newline into fringe for rows that are
3758 exactly as wide as the window. Don't append space for newline
3759 in this case.
3760 (notice_overwritten_cursor): Explicitly clear cursor bitmap
3761 in fringe as if it had been overwritten.
3762 (erase_phys_cursor): Erase cursor bitmap in fringe.
3763 (syms_of_xdisp): Mark show-trailing-whitespace and
3764 void-text-area-pointer as user options.
3765 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
3766
3767 * xterm.c (x_update_window_end): Call draw_window_fringes.
3768 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3769 in row instead of actually drawing fringe bitmaps.
3770 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3771 (x_draw_window_cursor): Draw cursor in fringe.
3772
3773 * w32term.c (x_update_window_end): Call draw_window_fringes.
3774 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3775 in row instead of actually drawing fringe bitmaps.
3776 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3777 (w32_draw_window_cursor): Draw cursor in fringe.
3778
3779 * macterm.c (x_update_window_end): Call draw_window_fringes.
3780 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
3781 in row instead of actually drawing fringe bitmaps.
3782 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
3783 (mac_draw_window_cursor): Draw cursor in fringe.
3784
3785 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3786
3787 * xterm.c (handle_one_xevent): Don't handle characters that are part
3788 of an old style (XLookupString) compose sequence.
3789
3790 2004-01-15 Kenichi Handa <handa@m17n.org>
3791
3792 * search.c (Freplace_match): Use make_multibyte_string or
3793 make_unibyte_string according to the buffer multibyteness.
3794
3795 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
3796
3797 * alloc.c (struct interval_block, struct string_block)
3798 (struct symbol_block, struct marker_block, live_string_p)
3799 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
3800 Better preserve alignment for objects in blocks.
3801 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
3802
3803 * lread.c (defvar_per_buffer): Remove dead declaration.
3804
3805 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
3806 space size.
3807
3808 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3809
3810 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
3811 if a key press should pop down. Only pop down if a key is pressed
3812 outside the menu/dialog.
3813 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
3814 popup_get_selection.
3815 (create_and_show_dialog): Pass 1 for down_on_keypress to
3816 popup_get_selection.
3817
3818 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3819
3820 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
3821 BLOCK/UNBLOCK_INPUT.
3822
3823 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3824
3825 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
3826 specified.
3827
3828 2004-01-08 Kenichi Handa <handa@m17n.org>
3829
3830 * editfns.c (Fformat): Fix '&' to '&&'.
3831
3832 2004-01-08 Andreas Schwab <schwab@suse.de>
3833
3834 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
3835 size if PSEUDOVECTOR_FLAG is set.
3836
3837 2004-01-07 Kenichi Handa <handa@m17n.org>
3838
3839 * charset.c (Fdeclare_equiv_charset): Fix docstring.
3840
3841 * fontset.c (fontset_ref_via_base): Fix previous change.
3842
3843 2004-01-07 Kim F. Storm <storm@cua.dk>
3844
3845 * process.c (read_process_output): Only activate adaptive
3846 buffering if we read less than 256 bytes at a time.
3847
3848 2004-01-06 Kim F. Storm <storm@cua.dk>
3849
3850 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
3851 object and image object. Return glyph width and height.
3852 (mode_line_string, marginal_area_string): Ditto.
3853
3854 * dispextern.h (buffer_posn_from_coords, mode_line_string)
3855 (marginal_area_string): Fix prototypes.
3856
3857 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
3858 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
3859 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
3860
3861 * keyboard.c (make_lispy_position): Use modified mode_line_string,
3862 buffer_posn_from_coords, and marginal_area_string functions to
3863 include both string object and image object in the lispy position.
3864 Also add actual glyph width and height to position.
3865 (read_key_sequence): Use real buffer position from mouse
3866 event to find keymap property even when click is in marginal area.
3867
3868 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
3869 mode_line_string and marginal_area_string functions to handle
3870 both string object and image object properties.
3871
3872 2004-01-06 Andreas Schwab <schwab@suse.de>
3873
3874 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
3875 character.
3876
3877 2004-01-02 Andreas Schwab <schwab@suse.de>
3878
3879 * macterm.c (emacs_options, x_initialized, same_x_server):
3880 Remove unused (and duplicated) definitions.
3881
3882 2004-01-02 Kim F. Storm <storm@cua.dk>
3883
3884 * process.h (struct Lisp_Process): New members for adaptive read
3885 buffering: adaptive_read_buffering, read_output_delay, and
3886 read_output_skip.
3887
3888 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
3889 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
3890 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
3891 (process_output_delay_count, process_output_skip): New vars.
3892 (Vprocess_adaptive_read_buffering): New variable.
3893 (make_process): Initialize adaptive read buffering members.
3894 (Fstart_process): Set adaptive_read_buffering member.
3895 (deactivate_process): Cleanup adaptive read buffering.
3896 (wait_reading_process_input): Temporarily omit delayed
3897 subprocesses from the set of file descriptors to read from;
3898 adjust the select timeout if we skipped any subprocesses.
3899 (read_process_output): Increase adaptive read buffering delay if
3900 we read less than a full buffer; reduce delay when we read a
3901 full buffer.
3902 (send_process): Simplify using local Lisp_Process var.
3903 Reset adaptive read buffering delay after write.
3904 (init_process): Initialize process_output_delay_count and
3905 process_output_skip.
3906 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
3907
3908 2004-01-01 Jason Rumney <jasonr@gnu.org>
3909
3910 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
3911
3912 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
3913
3914 * print.c (Ferror_message_string): Add hyperlink in the docstring
3915 to the definition of `signal' in the Elisp manual.
3916 * eval.c (Fsignal): Ditto.
3917
3918 2003-12-29 James Clark <jjc@jclark.com> (tiny change)
3919
3920 * fns.c (internal_equal): Return t for two NaN arguments.
3921
3922 2003-12-29 Richard M. Stallman <rms@gnu.org>
3923
3924 * data.c (store_symval_forwarding): Handle setting
3925 default-fill-column, etc., by changing the value in
3926 buffers that use the default.
3927
3928 * minibuf.c (Fset_minibuffer_window): Doc fix.
3929
3930 * fileio.c (choose_write_coding_system): Ignore auto_saving
3931 if using the visited file for auto saves.
3932 (Fwrite_region): Don't update SAVE_MODIFF
3933 if auto-saving in visited file.
3934
3935 2003-12-29 Kenichi Handa <handa@m17n.org>
3936
3937 * dispextern.h (face_font_available_p): Extern it.
3938
3939 * fontset.c (Voverriding_fontspec_alist): New variable.
3940 (lookup_overriding_fontspec): New function.
3941 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
3942 (fontset_font_pattern): Likewise.
3943 (regulalize_fontname): New function.
3944 (Fset_fontset_font): Call regulalize_fontname.
3945 (Fset_overriding_fontspec_internal): New function.
3946 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
3947 Defsubr Sset_overriding_fontspec_internal.
3948
3949 * xfaces.c (face_font_available_p): New function.
3950
3951 2003-12-28 Richard M. Stallman <rms@gnu.org>
3952
3953 * buffer.c (Fother_buffer): Don't crash if BUF is nil
3954 or if its name is nil.
3955
3956 * buffer.c (Fkill_buffer): Don't delete auto-save file
3957 if it's the same as the visited file.
3958
3959 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
3960
3961 * coding.c (Fcheck_coding_system): Doc fix.
3962
3963 2003-12-28 Kim F. Storm <storm@cua.dk>
3964
3965 * Makefile.in (eval.o): Depend on dispextern.h.
3966
3967 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
3968 image glyph using image's ascent.
3969 (mode_line_string): Return image glyph as object clicked on.
3970 Adjust y0 for image glyph using image's ascent.
3971
3972 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
3973 (struct glyph): New members, ascent and descent. Used to save
3974 this glyph's ascent and descent, instead of having.
3975 (struct glyph): Declare member face_id using FACE_ID_BITS.
3976 (find_hot_spot): Add prototype.
3977
3978 * keyboard.c (Qimage): Remove extern (now in lisp.h).
3979 (QCmap): Declare extern.
3980 (make_lispy_position): When position is inside image hot-spot,
3981 use hot-spot element's id as posn element.
3982
3983 * lisp.h (IMAGEP): New macro to test for image object type.
3984 (Qimage): Declare extern.
3985
3986 * macfns.c (Qimage): Remove extern (now in lisp.h).
3987 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3988
3989 * macterm.c (Qface, Qmouse_face): Remove unused externs.
3990
3991 * w32fns.c (Qimage): Remove extern (now in lisp.h).
3992 (valid_image_p, parse_image_spec): Use IMAGEP macro.
3993
3994 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
3995
3996 * w32term.c (Qface, Qmouse_face): Remove unused externs.
3997
3998 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
3999 pointer types.
4000 (Qrelative_width, Qalign_to): Remove unused variables.
4001 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
4002 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
4003 image maps.
4004 (x_y_to_hpos_vpos): Return glyph relative coordinates through
4005 new dx and dy args.
4006 Remove buffer_only_p arg (always 0). Simplify code accordingly.
4007 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
4008 than row's ascent and height, to get sensible height on tall rows.
4009 (build_desired_tool_bar_string): Remove Qimage extern.
4010 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
4011 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
4012 image glyph is alone on the last line.
4013 (append_glyph, append_composite_glyph, produce_image_glyph)
4014 (append_stretch_glyph): Set glyph's ascent and descent.
4015 (on_hot_spot_p): New function to check if position is inside an
4016 rectangular, circular, or polygon-shaped image hot-spot,
4017 (find_hot_spot): New function to search for image hot-spot.
4018 (Flookup_image_map): New defun to search for image hot-spot.
4019 (define_frame_cursor1): New aux function to determine frame pointer.
4020 (note_mode_line_or_margin_highlight, note_mouse_highlight):
4021 Handle `pointer' text property and :pointer image property to
4022 control frame pointer shape. Detect image hot-spots for pointer
4023 and help_echo properties. Use define_frame_cursor1.
4024 (note_mouse_highlight): Use Vvoid_text_area_pointer.
4025 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
4026 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
4027
4028 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
4029
4030 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
4031 (Qimage): Remove extern (now in lisp.h).
4032 (valid_image_p, parse_image_spec): Use IMAGEP macro.
4033
4034 * xmenu.c (show_help_event): Remove unused code.
4035
4036 * xterm.c (Qface, Qmouse_face): Remove unused externs.
4037 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
4038 row's ascent and descent, to get a sensible height on tall rows.
4039
4040 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
4041
4042 * minibuf.c (Fcompleting_read): Undo previous change.
4043
4044 2003-12-25 Lars Hansen <larsh@math.ku.dk>
4045
4046 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
4047 Arguments GCPRO'ed in call to file name handler.
4048
4049 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
4050
4051 * termcap.c (tgetst1): Scan for "%pN"; if all
4052 N are continuous in [1,9], remove all "%pN".
4053
4054 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4055
4056 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
4057
4058 * xfaces.c (lface_fully_specified_p): Take into account that
4059 MAC OS always have unspecified stipple.
4060
4061 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4062
4063 * tparam.c (tparam1): Add handling for `%pN', which
4064 means use param N for the next substitution.
4065
4066 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
4067
4068 * xfaces.c (Fcolor_gray_p): Fix omission bug:
4069 In case `frame' is nil, consult the selected frame.
4070 (Fcolor_supported_p): Likewise.
4071
4072 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
4073
4074 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
4075 Doc fixes.
4076
4077 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
4078 and an integer. Adapt the introductory comment accordingly.
4079 (Fread_from_minibuffer): Delete code moved into read_minibuf.
4080 Doc fix.
4081 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
4082 read_minibuf.
4083 (Fcompleting_read): Delete code moved into read_minibuf.
4084 (Ftest_completion): Make it handle obarrays and hash tables correctly.
4085
4086 2003-12-03 Kenichi Handa <handa@m17n.org>
4087
4088 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
4089 encoding sequence.
4090
4091 2003-12-01 Kenichi Handa <handa@m17n.org>
4092
4093 * composite.c (syms_of_composite): Don't make the compostion hash
4094 table week.
4095
4096 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
4097
4098 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
4099 * textprop.c (Fget_char_property_and_overlay): New function.
4100 (syms_of_textprop): Defsubr it.
4101
4102 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4103
4104 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
4105 to compile on terminal configuration.
4106
4107 * fileio.c (Fread_file_name): Check use_file_dialog also before
4108 calling Fx_file_dialog.
4109
4110 * fns.c: use_file_dialog: New variable.
4111 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
4112
4113 2003-11-29 Kim F. Storm <storm@cua.dk>
4114
4115 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
4116 (syms_of_msdos): Don't intern and staticpro them.
4117
4118 2003-11-27 Kim F. Storm <storm@cua.dk>
4119
4120 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
4121 coordinates relative to glyph at posn. If glyph is an image,
4122 return that as object at posn. Callers changed.
4123 (mode_line_string, marginal_area_string): Calculate and return
4124 pixel coordinates relative to glyph. Callers changed.
4125
4126 * dispextern.h (buffer_posn_from_coords, mode_line_string)
4127 (marginal_area_string): Fix prototypes.
4128 (window_box_left_offset, window_box_right_offset): Add prototypes.
4129
4130 * frame.h (get_specified_cursor_type, get_window_cursor_type):
4131 Remove prototypes.
4132
4133 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
4134
4135 * keyboard.c (make_lispy_position): Add x and y coordinates
4136 relative to the current glyph as 7th element of position.
4137 If glyph is an image, return it in the object element.
4138 (read_key_sequence): Skip checks for keymap property in cases
4139 where POSN_STRING is not a string (e.g. an image).
4140
4141 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
4142 (Vshow_text_cursor_in_void): New variable.
4143 (glyph_to_pixel_coords): Don't use negative hpos.
4144 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
4145 (append_stretch_glyph): Change ascent arg to be actual value
4146 in pixels rather than ratio to height. Callers changed.
4147 (calc_pixel_width_or_height): New aux function, implementing
4148 pixel based artihmetic for glyph widths and heights.
4149 (produce_stretch_glyph): Use calc_pixel_width_or_height for
4150 :width, :height, :align-to, and :ascent, thus allowing these to
4151 be specified in pixels as well as multiples of characters.
4152 Don't produce stretch glyphs with zero width or height.
4153 (get_specified_cursor_type): Declare static.
4154 (get_window_cursor_type): Declare static. Add glyph arg to be
4155 able to know when cursor is on an image; always substitute
4156 hollow-box cursor for filled-box cursor on images, to avoid
4157 negative images and flicker when blinking the cursor.
4158 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
4159 (note_mode_line_or_margin_highlight): Use non-text cursor rather
4160 than vertical scroll-bar cursor in display margins.
4161 (note_mouse_highlight): Use non-text cursor rather than text
4162 cursor in fringes and over images in the text area.
4163 Use non-text cursor when mouse pointer is outside editable text,
4164 i.e. in the void after end-of-line or end-of-buffer; this was
4165 already done for W32, but is now standard for all systems --
4166 user can toggle show-text-cursor-in-void to get old behaviour.
4167 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
4168 Vdisplay_pixels_per_inch.
4169
4170 2003-11-25 Andreas Schwab <schwab@suse.de>
4171
4172 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
4173 EMACS_INT to not lose bits.
4174 (Ffillarray): Don't set bits beyond the size of a bool vector.
4175
4176 2003-11-25 Kim F. Storm <storm@cua.dk>
4177
4178 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
4179 define this defun on systems that cannot use stderr as lvalue.
4180
4181 2003-11-24 Gerd Moellmann <gerd@gnu.org>
4182
4183 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
4184 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
4185 ld's default is incompatible with unexec.
4186
4187 2003-11-23 Kim F. Storm <storm@cua.dk>
4188
4189 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
4190 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
4191 (Fforce_window_update): New defun.
4192 (syms_of_window): Defsubr it.
4193 (Fset_window_margins, Fset_window_fringes): Doc fix.
4194
4195 * print.c (Fredirect_debugging_output): New defun.
4196 (syms_of_print): Defsubr it.
4197
4198 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
4199
4200 * fns.c (Fset_char_table_parent): Doc fix.
4201
4202 2003-11-22 Kim F. Storm <storm@cua.dk>
4203
4204 * dispnew.c (buffer_posn_from_coords): Return actual row/column
4205 for glyph clicked on, rather than (unused) pixel positions.
4206 (mode_line_string, marginal_area_string): Change X and Y args to
4207 pointers for returning actual row/column for glyph clicked on.
4208 Simplify and optimize loops.
4209
4210 * dispextern.h (mode_line_string, marginal_area_string):
4211 Update prototypes.
4212
4213 * keyboard.c (make_lispy_position): New function for generating
4214 mouse click positions from frame and pixel coordinates.
4215 Enhanced to return buffer position and actual row/column for
4216 events outside the text area using updated mode_line_string and
4217 marginal_area_string functions.
4218 Return left-fringe and right-fringe clicks as such, rather than
4219 clicks in text area.
4220 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
4221 pixel_to_glyph_coords, as we never use the results.
4222 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
4223 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
4224 Eliminate unused code in WHEEL_EVENT handling.
4225 (make_lispy_movement): Use make_lispy_position.
4226
4227 * window.c (coordinates_in_window): Remove redundant tests.
4228 Fix returned X pixel value for left-margin.
4229
4230 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
4231 mode_line_string and marginal_area_string parameters.
4232
4233 2003-11-22 Lars Hansen <larsh@math.ku.dk>
4234
4235 * w32.c (struct the_group, getgrgid): Add.
4236 * mac.c (struct my_group, getgrgid): Add.
4237
4238 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4239
4240 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
4241
4242 2003-11-21 Lars Hansen <larsh@math.ku.dk>
4243
4244 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
4245 include in call to file name handler. Optionally translate numeric
4246 UID and GID to strings. Update docstring.
4247 (directory_files_internal): Add parameter ID-FORMAT.
4248 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
4249 include in call to file name handler and call to
4250 directory_files_internal. Update Docstring.
4251 (Fdirectory_files): Add dummy parameter in call to
4252 directory_files_internal.
4253 * lisp.h (Qinteger): Add.
4254 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
4255 (Ffile_attributes): Add parameter.
4256 * data.c (Qinteger): Export.
4257
4258 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
4259
4260 * fns.c (Freverse, Fnreverse): Doc fixes.
4261
4262 2003-11-19 Kim F. Storm <storm@cua.dk>
4263
4264 * xdisp.c (init_iterator): Initialize it->start to position
4265 before reseating (in case start position is invisible).
4266 (init_to_row_start): Set it->start to row-start.
4267 (redisplay_window): Accept optional_new_start if start position
4268 is invisible (in which case IT_CHARPOS overshoots PT).
4269 (display_line): Setup row->start from it->start (rather than
4270 it->current which is wrong if first char on line is invisible).
4271 When done, reseat it->start to it->current (= start of next row).
4272 (expose_area): Fix exposure of text area when first char (e.g. TAB)
4273 is only partially visible.
4274
4275 * dispextern.h (struct it): New member start.
4276
4277 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
4278
4279 * alloc.c (make_float, Fcons): Clear the markbit at init time.
4280 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
4281 of block_index outside of the macro call.
4282 (Fgarbage_collect): Remove null code.
4283
4284 * m/amdx86-64.h: Don't redefine XPNTR.
4285
4286 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
4287 of VALMASK.
4288
4289 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
4290 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
4291 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
4292
4293 * lisp.h (VALMASK): Only define for non-union type.
4294 (MARKBIT): Remove.
4295 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
4296 (XTYPE): Define unconditionally.
4297 (XSETTYPE): Remove one more remnant.
4298 (EQ): Define differently for the union and non-union cases.
4299 (INTMASK): New bit mask.
4300 (struct Lisp_Marker): Move down to prepare for upcoming patch.
4301 (GC_EQ): Delegate to EQ.
4302
4303 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
4304
4305 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4306
4307 * xterm.c (x_window_to_scroll_bar): Move check of display to
4308 where window_id is compared.
4309
4310 2003-11-17 Kim F. Storm <storm@cua.dk>
4311
4312 * dispextern.h (struct it): New member first_vpos.
4313
4314 * xdisp.c (start_display): Set it->first_vpos.
4315 (try_window_id): Use first_vpos to start display in first _text_
4316 line if no reusable lines at start of window with header line.
4317
4318 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4319
4320 * w32fns.c (XPutPixel):
4321 * w32bdf.c (w32_init_bdf_font):
4322 * sunfns.c (sel_read):
4323 * process.c (Fmake_network_process):
4324 * frame.c (store_frame_param):
4325 * fontset.c (Fset_fontset_font):
4326 * emacs.c (shut_down_emacs):
4327 * ccl.c (ccl_driver): Remove period at end of error message.
4328
4329 * config.in: Regenerate.
4330
4331 * xfns.c (x_window_to_frame, x_any_window_to_frame)
4332 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
4333 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
4334 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
4335 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
4336
4337 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
4338
4339 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
4340 (XTmouse_position, handle_one_xevent): Pass Display* to
4341 x_window_to_scroll_bar.
4342 (x_window_to_scroll_bar): Take a Display* argument.
4343 Check that display for frame is equal to Display* argument.
4344 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
4345 x_display_info_for_display instead. Use Display in xev instead
4346 of GDK_DISPLAY.
4347 (x_dispatch_event): Call x_display_info_for_display.
4348 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
4349 (x_connection_closed): Call xg_display_close for GTK.
4350 (x_term_init): Call xg_display_open for additional displays.
4351 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
4352 for GTK.
4353
4354 * xmenu.c (single_menu_item, mouse_position_for_popup)
4355 (x_activate_menubar): Formatting adjustments.
4356
4357 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
4358 adjustments.
4359
4360 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
4361 (xg_display_close, xg_create_default_cursor)
4362 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
4363 handling.
4364 (xg_left_ptr_cursor): Remove.
4365 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
4366 cursor here.
4367 (xg_win_to_widget): Take Display* argument, call
4368 gdk_xid_table_lookup_for_display.
4369 (xg_create_frame_widgets, xg_get_file_name, create_menus)
4370 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
4371 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
4372 in FRAME_X_DISPLAY_INFO.
4373 (xg_get_scroll_id_for_window): Take Display* argument.
4374 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
4375 (xg_initialize): Remove xg_left_ptr_cursor.
4376
4377 * gtkutil.h: xg_get_scroll_id_for_window, xg_win_to_widget takes
4378 Display* argument also. Declare xg_display_open,
4379 xg_display_close, xg_create_default_cursor.
4380
4381 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4382
4383 * xterm.c (x_detect_focus_change): Do not change focus frame for
4384 Enter/LeaveNotify if the current focus frame has explicit focus.
4385
4386 2003-11-14 Kim F. Storm <storm@cua.dk>
4387
4388 * dispnew.c (update_text_area): Fix redisplay error when hscroll
4389 is active and first glyph is only partially visible.
4390
4391 2003-11-13 Kenichi Handa <handa@m17n.org>
4392
4393 * xdisp.c (select_frame_for_redisplay): New function.
4394 (redisplay_internal): Record also selected_frame for
4395 unwind_redisplay. Call select_frame_for_redisplay before
4396 redrawing each frame.
4397 (unwind_redisplay): Argument changed to a cons.
4398
4399 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
4400
4401 * fns.c (Fstring_to_multibyte): Doc fix.
4402
4403 2003-11-11 Kenichi Handa <handa@m17n.org>
4404
4405 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
4406
4407 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4408
4409 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
4410 program specified positions.
4411
4412 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4413
4414 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
4415
4416 2003-11-08 Kenichi Handa <handa@m17n.org>
4417
4418 * Makefile.in (lisp): Add kannada.el.
4419 (shortlisp): Likewise.
4420
4421 2003-11-07 Kenichi Handa <handa@m17n.org>
4422
4423 * coding.c (coding_allocate_composition_data):
4424 Reset coding->composing to COMPOSITION_NO.
4425 (coding_restore_composition): Detect invalid composition data.
4426 Give Fstring and Fvector a Lispy integer, not C int.
4427
4428 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
4429
4430 * floatfns.c (Flogb): Don't use VALMASK.
4431
4432 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
4433 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
4434
4435 * lisp.h (XINT): Move the cast to clarify what is going on.
4436 (GCTYPEMASK, XSETTYPE): Remove.
4437 (XGCTYPE): Make it an alias of XTYPE.
4438
4439 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4440
4441 * xterm.c (x_term_init): Fix formatting.
4442
4443 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4444
4445 * gtkutil.h: Declare xg_have_tear_offs, remove xg_keep_popup
4446 and xg_did_tearoff.
4447
4448 * gtkutil.c: Remove variable xg_did_tearoff.
4449 (xg_have_tear_offs): New function.
4450 (tearoff_remove): Just decrease xg_detached_menus.
4451 (tearoff_activate): Increase xg_detached_menus and call
4452 tearoff_remove when tearoff is removed.
4453 (xg_keep_popup): Remove function.
4454 (create_menus): Give add_tearoff_p as argument to recursive
4455 call to create_menus.
4456 (xg_create_widget): Use variables instead of multiple
4457 strcmp. Tell create_menus to create tear off only for
4458 menu bar menus.
4459 (xg_update_menubar): Change title for a detached menu also.
4460 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
4461 of deep_p.
4462 (xg_initialize): Initialize xg_detached_menus, remove
4463 initialization of xg_did_tearoff.
4464
4465 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
4466 xg_have_tear_offs returns non-zero.
4467 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
4468 call to xg_keep_popup.
4469
4470 2003-11-01 Andrew Choi <akochoi@shaw.ca>
4471
4472 * macterm.c (XTread_socket): Handle menubar selection and grow
4473 window only for mouseDown events.
4474
4475 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4476
4477 * xterm.c (x_term_init): For GTK part, increase x_initialized
4478 to check for more than one display. Use error instead of return 0.
4479
4480 2003-10-31 Andrew Choi <akochoi@shaw.ca>
4481
4482 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
4483 (copy_dysymtab): Call it.
4484
4485 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
4486
4487 * eval.c (Fdefvaralias): Doc fix.
4488
4489 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
4490
4491 * data.c (Fsetplist): Doc fix.
4492
4493 2003-10-14 Lute Kamstra <lute@gnu.org>
4494
4495 * window.c (Fset_window_fringes): Clarify docstring.
4496
4497 2003-10-14 Kim F. Storm <storm@cua.dk>
4498
4499 * window.c (Fset_window_margins): Simplify arg checking.
4500
4501 2003-10-13 Richard M. Stallman <rms@gnu.org>
4502
4503 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
4504 (print_partial_compiled_pattern): Replace assert with a printout.
4505 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
4506
4507 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
4508
4509 * window.c (Fset_window_margins): Allow only integers as args.
4510 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
4511 Doc fixes.
4512
4513 2003-10-13 Lute Kamstra <lute@gnu.org>
4514
4515 * window.c (Fset_window_fringes): Elaborate docstring.
4516
4517 2003-10-12 Andrew Choi <akochoi@shaw.ca>
4518
4519 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
4520
4521 * s/darwin.h (GC_MARK_STACK): Define.
4522
4523 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4524
4525 * window.c (shrink_windows): New function.
4526 (size_window): Call shrink_windows to calculate window sizes when
4527 shrinking frame with more than one window.
4528
4529 2003-10-12 Kim F. Storm <storm@cua.dk>
4530
4531 * xdisp.c (compute_fringe_widths): Doc fix.
4532
4533 2003-10-08 Kenichi Handa <handa@m17n.org>
4534
4535 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
4536
4537 2003-10-07 Kenichi Handa <handa@m17n.org>
4538
4539 * coding.c (Qcoding_system_define_form): New variable.
4540 (syms_of_coding): Intern and staticpro it.
4541 (Fcheck_coding_system): Try to autoload the definition of
4542 CODING-SYSTEM.
4543
4544 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
4545
4546 * fns.c (Frequire): Doc fix.
4547
4548 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4549
4550 * xfns.c (Fx_send_client_event): New function as a base for
4551 manipulating extended window manager hints.
4552 (Fx_send_client_event): Remove unused variable s.
4553
4554 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
4555 that function is removed.
4556
4557 * xterm.c (x_set_offset): Use move_offset_left/top instead of
4558 x/y_pixels_outer_diff.
4559 (x_check_expected_move): Calculate move_offset_left/top.
4560
4561 * xterm.h (struct x_output): New members: move_offset_top/left.
4562
4563 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
4564 call x_set_offset directly.
4565
4566 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
4567
4568 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
4569
4570 * xterm.c (x_delete_display): Free font names and font_encoder
4571 in dpyinfo->font_table.
4572
4573 * xfns.c (Fx_close_connection): Only call XFreeFont here.
4574 Move xfree of font names to x_delete_display.
4575
4576 * xterm.h (struct x_display_info): New member, wm_type.
4577 (struct x_output): New members, expected_top/left and
4578 check_expected_move.
4579
4580 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
4581 is received.
4582 (handle_one_xevent): Rename x_check_expected_move from
4583 x_check_fullscreen_move.
4584 (x_set_offset): Only add WM decoration sizes to modified_top/left
4585 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
4586 (x_check_expected_move): Rename from x_check_fullscreen_move.
4587 Removed fullscreen specific code. Use check_expected_move,
4588 expected_left/top instead. Also, set wm_type.
4589 (x_term_init): Initialize wm_type to unknown.
4590
4591 * frame.c (x_fullscreen_move): Remove addition of WM decoration
4592 sizes to move_x/y.
4593
4594 2003-10-03 Kenichi Handa <handa@m17n.org>
4595
4596 * macterm.c (x_load_font): Clear all members of FONTP before start
4597 filling them.
4598
4599 2003-10-02 Kenichi Handa <handa@m17n.org>
4600
4601 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
4602 before calling find_ccl_program_func. Call find_ccl_program_func
4603 only when fontp->font_encoder is not NULL.
4604
4605 * xterm.c (x_load_font): Clear all members of FONTP before start
4606 filling them.
4607
4608 2003-10-03 John Paul Wallington <jpw@gnu.org>
4609
4610 * keymap.c (map_keymap): Don't abort when binding is a vector.
4611
4612 2003-10-02 Jason Rumney <jasonr@gnu.org>
4613
4614 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
4615 Sync dependencies with Makefile.in.
4616 (alloca.o): Remove.
4617
4618 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
4619 filling them.
4620
4621 * w32bdf.c (w32_load_bdf_font): Likewise.
4622
4623 2003-09-30 Richard M. Stallman <rms@gnu.org>
4624
4625 * term.c (set_tty_color_mode): Calculate current_mode_spec
4626 regardless of value of VAL.
4627
4628 * intervals.c (graft_intervals_into_buffer):
4629 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
4630 Handle over_used when splitting UNDER.
4631
4632 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4633
4634 * regex.c (regex_compile): Free the stack when returning from function.
4635
4636 2003-09-28 Kenichi Handa <handa@m17n.org>
4637
4638 * fontset.c (Finternal_char_font): Change return value to
4639 cons (FONT-NAME . GLYPH-CODE).
4640
4641 2003-09-28 Eli Zaretskii <eliz@gnu.org>
4642
4643 * term.c (tty_setup_colors): Treat any negative argument as -1.
4644
4645 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
4646
4647 * process.c (send_process): Delete unused temp_buf.
4648
4649 2003-09-26 Dave Love <fx@gnu.org>
4650
4651 * xterm.c (x_bitmap_mask): Declare.
4652
4653 2003-09-25 Dave Love <fx@gnu.org>
4654
4655 * Makefile.in (fns.o): Depend on md5.h.
4656
4657 2003-09-25 Kim F. Storm <storm@cua.dk>
4658
4659 * window.c (set_window_buffer): Fix redisplay problems when
4660 switching between buffers with different display margin widths.
4661
4662 2003-09-23 Kim F. Storm <storm@cua.dk>
4663
4664 * process.c (set_socket_option): Fix :bindtodevice option.
4665 (Fset_network_process_option): Update process contact list when
4666 setting option succeeds.
4667 (Fmake_network_process): Doc fix.
4668
4669 2003-09-23 Dave Love <fx@gnu.org>
4670
4671 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
4672
4673 2003-09-22 Eli Zaretskii <eliz@gnu.org>
4674
4675 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
4676 color mode is an integer number (it could be -1).
4677
4678 2003-09-22 Richard M. Stallman <rms@gnu.org>
4679
4680 * intervals.c (graft_intervals_into_buffer): Correct the main loop
4681 in the case where OVER is longer than UNDER.
4682
4683 2003-09-22 Masatake YAMATO <jet@gyve.org>
4684
4685 * window.c (Fset_window_scroll_bars): Validate the value of
4686 `vertical_type'.
4687
4688 2003-09-21 Kim F. Storm <storm@cua.dk>
4689
4690 * frame.c (Vdefault_frame_scroll_bars): New variable.
4691 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
4692 (syms_of_frame): DEFVAR_LISP it, and initialize according to
4693 window-system default scroll bar position.
4694
4695 * window.c (Fwindow_scroll_bars): Doc fix.
4696
4697 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4698
4699 * xterm.c (x_set_offset): Take window manager decorations into account.
4700
4701 2003-09-19 Richard M. Stallman <rms@gnu.org>
4702
4703 * atimer.h: Don't include lisp.h.
4704 (P_): Define it here (as well as elsewhere).
4705
4706 * print.c (Fprin1_to_string): Move the PRINTPREPARE
4707 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
4708
4709 * data.c (Fvariable_binding_locus): New function.
4710 (syms_of_data): defsubr it.
4711 (Flocal_variable_p): Delete duplicate call to indirect_variable.
4712
4713 2003-09-18 Dave Love <fx@gnu.org>
4714
4715 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
4716
4717 * process.c (Fnetwork_interface_info): Fix type error.
4718 (Fnetwork_interface_list): Doc fix.
4719 (read_process_output, read_process_output): Delete unused var.
4720
4721 2003-09-17 Kim F. Storm <storm@cua.dk>
4722
4723 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
4724 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
4725 (Fnetwork_interface_info): Check that ifreq struct has required
4726 fields before accessing them; this requires that those fields are
4727 defined as macros, which may be too restrictive on some platforms,
4728 but it is better than failing on other platforms.
4729 (syms_of_process): Only defsubr above fns when included.
4730
4731 2003-09-17 Dave Love <fx@gnu.org>
4732
4733 * unexalpha.c: Don't include varargs.h.
4734
4735 2003-09-17 Kim F. Storm <storm@cua.dk>
4736
4737 * process.c (Fset_process_sentinel): Add sentinel to childp plist
4738 for network process.
4739 (socket_options): Add `:' prefix to option names. Add optbit field.
4740 (set_socket_option): Remove no_error arg and special handling of s < 0.
4741 Return 1<<optbit for known option, 0 for unknown.
4742 Do not interpret 0 as false for boolean option (only nil).
4743 Pass failed option and value to report_file_error.
4744 (Fset_network_process_options): Replace by Fset_network_process_option.
4745 (Fset_network_process_option): New function to set just one option.
4746 (Fmake_network_process): Allow :coding arg to be a cons.
4747 Allow :server arg to be an integer specifying backlog size.
4748 Remove :options arg, and allow options to be specified directly
4749 as :KEY, VALUE pairs. Parse these options before binding socket.
4750 As before, :reuseaddr t is default for a server process, but this
4751 can now be disabled by specifying :reuseaddr nil.
4752 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
4753 (init_process): Availability of network options is now checked with
4754 simpler syntax (featurep 'make-network-process :OPTION); use loop to
4755 setup features.
4756 (syms_of_process): Fix defsubr's for the replaced functions.
4757
4758 2003-09-16 Dave Love <fx@gnu.org>
4759
4760 * Makefile.in: Depend on coding.h.
4761
4762 2003-09-14 Kim F. Storm <storm@cua.dk>
4763
4764 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
4765 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
4766 (syms_of_process): Defsubr them.
4767
4768 * config.in: Regenerate.
4769
4770 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
4771
4772 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
4773 * m/news-r6.h (XUNMARK): Remove.
4774 * m/mips.h (XUNMARK): Remove.
4775 * m/mips-siemens.h (XUNMARK): Remove.
4776 * m/iris4d.h (XUNMARK): Remove.
4777 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
4778
4779 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
4780
4781 * lisp.h (VALBITS): Don't remove 1 for the markbit.
4782 (union Lisp_Object): Use unsigned int for types. Remove markbit.
4783 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
4784 (XTYPE): Use unsigned right-shift.
4785 (XMARKBIT, XMARK, XUNMARK): Remove.
4786
4787 * alloc.c (init_intervals, init_symbol, init_marker):
4788 Don't preallocate anything.
4789 (Fgarbage_collect, mark_object): Ignore the markbit.
4790
4791 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
4792
4793 2003-09-08 Lute Kamstra <lute@gnu.org>
4794
4795 * xdisp.c (pint2hrstr): New function.
4796 (decode_mode_spec): Add `%i' and `%I' specs.
4797 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
4798 for `mode-line-format'.
4799
4800 2003-09-07 Andreas Schwab <schwab@suse.de>
4801
4802 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
4803 avoid warning.
4804
4805 2003-09-07 Eli Zaretskii <eliz@gnu.org>
4806
4807 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
4808
4809 2003-09-03 Kim F. Storm <storm@cua.dk>
4810
4811 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
4812 change (superseded by 2002-08-30 change); the default blink-off
4813 cursor is now again "no cursor".
4814
4815 2003-09-01 Jason Rumney <jasonr@gnu.org>
4816
4817 * makefile.w32-in (alloca.o): Remove.
4818 (coding.o): Depend on intervals.h
4819 (emacs.o, bytecode.o): Depend on window.h
4820
4821 2003-09-01 Dave Love <fx@gnu.org>
4822
4823 * Makefile.in (alloca.o): Remove commands.
4824 (coding.o): Depend on intervals.h composite.h window.h.
4825 (emacs.o): Depend on window.h keyboard.h keymap.h.
4826 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
4827 (bytecode.o): Depend on window.h.
4828
4829 2003-08-31 Jason Rumney <jasonr@gnu.org>
4830
4831 * w32term.c (w32_per_char_metric): Allow cached metrics to be
4832 returned even when font_type is unknown.
4833
4834 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
4835
4836 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4837
4838 * xterm.c (x_term_init): Initialize new fields in x_display_info.
4839
4840 * xterm.h (struct x_display_info): Add red/green/blue_bits and
4841 *_offset.
4842
4843 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
4844 calculate pixel value.
4845
4846 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
4847
4848 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
4849 Don't tell redisplay display is accurate when it's actually been
4850 paused for pending input.
4851
4852 2003-08-29 Richard M. Stallman <rms@gnu.org>
4853
4854 * dispnew.c (adjust_glyph_matrix): Call window_box
4855 whenever W is nonzero.
4856
4857 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
4858 (Fkill_local_variable, Fmake_variable_frame_local)
4859 (Flocal_variable_p, Flocal_variable_if_set_p):
4860 Use indirect_variable to trace thru variable aliases.
4861
4862 * config.in: Updated.
4863
4864 * callint.c (Fcall_interactively): Save and restore
4865 Vthis_command, Vthis_original_command, real_this_command,
4866 and current_kboard->Vlast_command.
4867
4868 * abbrev.c (Fexpand_abbrev): Insert before deleting.
4869
4870 2003-08-29 Gerd Moellmann <gerd@gnu.org>
4871
4872 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
4873
4874 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
4875
4876 * coding.c (decode_coding_iso2022): Initialize local variable c2.
4877 (decode_coding_sjis_big5): Likewise.
4878
4879 2003-08-27 Jason Rumney <jasonr@gnu.org>
4880
4881 * w32.c (sys_pipe): Protect against file descriptor overflow.
4882
4883 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
4884
4885 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
4886
4887 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
4888
4889 * xfns.c (Vgtk_version_string): New variable.
4890 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
4891
4892 2003-08-24 Eli Zaretskii <eliz@gnu.org>
4893
4894 * term.c (term_init): Remove `const' from buffer_size's declaration.
4895
4896 * Makefile.in (msdos.o): Depend on intervals.h.
4897
4898 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
4899
4900 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4901
4902 * xterm.h (struct x_display_info): New fields: client_leader_window
4903 and Xatom_wm_client_leader.
4904
4905 * xterm.c (x_initialize): Move call to x_session_initialize to ...
4906 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
4907
4908 * xsmfns.c (create_client_leader_window): New function.
4909 (x_session_initialize): Call create_client_leader_window, take
4910 dpyinfo as argument.
4911
4912 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
4913
4914 * Makefile.in (xsmfns.o): Add more depenedencies.
4915
4916 2003-08-21 Dave Love <fx@gnu.org>
4917
4918 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
4919
4920 2003-08-21 Kenichi Handa <handa@m17n.org>
4921
4922 * term.c (term_init): Fix previous change; don't rely on the
4923 length of `buffer' if TERMINFO is defined.
4924
4925 2003-08-20 Dave Love <fx@gnu.org>
4926
4927 * atimer.h: Include lisp.h.
4928
4929 * lisp.h (EMACS_LISP_H): New.
4930 (popup_activated_flag): Don't declare.
4931
4932 * alloca.c: Some merging with gnulib. Change logic and doc
4933 concerning (x)malloc/(x)free -- no longer Emacs-specific.
4934 [DO_BLOCK_INPUT]: Don't include lisp.h.
4935 (xmalloc, xfree): Declare.
4936 (malloc): Don't declare.
4937
4938 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
4939 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
4940 atimer.h, blockinput.h.
4941
4942 * alloc.c (lisp_align_malloc): Change type of `aligned'.
4943
4944 * alloca.s: Removed.
4945
4946 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4947
4948 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
4949 use -lncurses.
4950
4951 * term.c (term_init): Use a buffer of size 4096 for tgetent since
4952 FreeBSD returns something longer than 2044. Abort if the end of
4953 the buffer is overwritten.
4954
4955 2003-08-19 Miles Bader <miles@gnu.org>
4956
4957 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
4958
4959 2003-08-19 Gerd Moellmann <gerd@gnu.org>
4960
4961 * alloc.c (lisp_align_malloc): Check for memory full when
4962 allocating ablocks, which also avoids freeing a pointer into an
4963 ablocks structure.
4964
4965 * puresize.h (BASE_PURESIZE): Increase to 1100000.
4966
4967 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
4968
4969 2003-08-16 Richard M. Stallman <rms@gnu.org>
4970
4971 * editfns.c (Fencode_time): Doc fix.
4972
4973 2003-08-16 David Ponce <david@dponce.com>
4974
4975 * fileio.c (Fwrite_region): Fix conditional expression to issue
4976 the right message.
4977
4978 2003-08-16 Juri Linkov <juri@jurta.org> (tiny change)
4979
4980 * syntax.c (Fforward_word): Argument changed to optional.
4981 Set default value to 1.
4982
4983 2003-08-15 Kenichi Handa <handa@m17n.org>
4984
4985 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
4986 what autoscaled.
4987 (best_matching_font): Once we find a better scalable font, set
4988 non_scalable_has_exact_height_p to 1.
4989 (try_font_list): Call try_alternative_families to try any family
4990 with the given registry.
4991
4992 2003-08-09 Andreas Schwab <schwab@suse.de>
4993
4994 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
4995
4996 * print.c (print_string): Fix printing of multibyte string with
4997 nontrivial printcharfun.
4998
4999 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5000
5001 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
5002
5003 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
5004
5005 2003-07-31 Kenichi Handa <handa@m17n.org>
5006
5007 * process.c (read_process_output): Return the actually read bytes
5008 instead of the result of decoding.
5009
5010 2003-07-31 Kenichi Handa <handa@m17n.org>
5011
5012 * xterm.h (struct x_bitmap_record): New member have_mask.
5013
5014 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
5015 to 0.
5016 (x_create_bitmap_from_file): Likewise.
5017 (x_destroy_bitmap): Check have_mask member before freeing a mask.
5018 (x_destroy_all_bitmaps): Likewise.
5019 (x_create_bitmap_mask): Set have_mask member to 1.
5020
5021 2003-07-30 Richard M. Stallman <rms@gnu.org>
5022
5023 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
5024
5025 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5026
5027 * gtkutil.c (xg_mark_data): Update calls to mark_object.
5028
5029 2003-07-29 Richard M. Stallman <rms@gnu.org>
5030
5031 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
5032 Conditionalize XIM code on HAVE_XIM.
5033
5034 * fns.c (Fclear_string): New function.
5035 (syms_of_fns): defsubr it.
5036
5037 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp> (tiny change)
5038
5039 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
5040
5041 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
5042
5043 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
5044
5045 * buffer.c (delete_all_overlays): New function.
5046 * buffer.h (delete_all_overlays): Declare.
5047 * coding.c (run_pre_post_conversion_on_str):
5048 * print.c (temp_output_buffer_setup):
5049 * fileio.c (Finsert_file_contents):
5050 * minibuf.c (get_minibuffer): Use it.
5051
5052 2003-07-22 Andrew Choi <akochoi@shaw.ca>
5053
5054 * unexmacosx.c (unexec_regions_sort_compare):
5055 (unexec_regions_merge): New functions. Sort and merge unexec
5056 regions before dumping them.
5057
5058 2003-07-22 Dave Love <fx@gnu.org>
5059
5060 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
5061
5062 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
5063
5064 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
5065 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
5066 MARKBIT as the gcmarkbit for strings.
5067
5068 2003-07-21 Richard M. Stallman <rms@gnu.org>
5069
5070 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
5071
5072 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
5073 (syms_of_fns): Corresponding change.
5074
5075 * alloc.c (syms_of_alloc): Doc fixes.
5076
5077 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
5078
5079 * s/netbsd.h: Use -Wl syntax.
5080
5081 2003-07-17 Richard M. Stallman <rms@gnu.org>
5082
5083 * xterm.c (xim_initialize): Redo 6/24 change.
5084
5085 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
5086
5087 * buffer.c (copy_overlays): Use EMACS_INT for positions.
5088 (Fswitch_to_buffer): Don't signal an error when switching to the same
5089 buffer in a dedicated window.
5090
5091 * alloc.c: Use bitmaps for cons, as was done for floats.
5092 (init_float, init_cons): Let the normal code allocate the first block.
5093 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
5094 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
5095 New macros.
5096 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
5097 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
5098 (live_cons_p): Check the pointer is not past the `conses' array.
5099 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
5100 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
5101 (survives_gc_p): Use CONS_MARKED_P and simplify.
5102 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
5103
5104 2003-07-13 Paul Eggert <eggert@twinsun.com>
5105
5106 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
5107 puts it into BSS instead, at least on Solaris 8 and 9.
5108 This is a valid optimization, and it may occur on other platforms,
5109 so Emacs should not assume that initializing a static variable to
5110 zero puts it into data.
5111 * alloc.c (pure, staticvec):
5112 Initialize these arrays to nonzero, so that they're not
5113 put into BSS by that optimization.
5114
5115 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
5116
5117 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
5118 (lisp_align_malloc): Use posix_memalign is available.
5119 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
5120 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
5121 for consistency. Update users.
5122
5123 2003-07-13 Richard M. Stallman <rms@gnu.org>
5124
5125 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
5126
5127 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
5128
5129 * xterm.c (x_bitmap_icon,x_wm_set_icon_pixmap): Modify to add mask,
5130 and use the Gtk+ function gtk_window_icon_from_file if available.
5131
5132 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
5133 handle mask of bitmaps.
5134 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
5135 mask property.
5136 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
5137
5138 * xterm.h (xg_set_icon): New function.
5139
5140 2003-07-12 Paul Eggert <eggert@twinsun.com>
5141
5142 * unexelf.c (unexec): Consider a section to precede the .bss
5143 section if its addresses overlap that of .bss.
5144
5145 2003-07-12 Richard M. Stallman <rms@gnu.org>
5146
5147 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
5148
5149 * config.in (HAVE_CRTIN): Add #undef.
5150 (INLINE): Really inline only if OPTIMIZE is defined.
5151
5152 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
5153 END_FILES_1.
5154 (START_FILES_1, END_FILES_1): New macros (conditional).
5155 (LD_SWITCH_SYSTEM_TEMACS): Define.
5156
5157 * s/openbsd.h: Don't include bsd4-3.h.
5158 (TERMINFO): Define.
5159 (LIBS_TERMCAP): Define.
5160 (LD_SWITCH_SYSTEM): Define (two definitions).
5161
5162 * xfns.c: Include libpng/png.h instead of png.h.
5163
5164 2003-07-11 Andreas Schwab <schwab@suse.de>
5165
5166 * buffer.c (modify_overlay): Update prototype.
5167 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
5168 Likewise.
5169
5170 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5171
5172 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
5173 (struct interval): Move to intervals.h.
5174 (struct Lisp_Marker): Use EMACS_INT for position info.
5175 (forward_point): Remove prototype of defunct function.
5176 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
5177 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
5178 (syms_of_textprop, set_text_properties): Remove prototypes that are
5179 already in intervals.h.
5180
5181 * intervals.h (struct interval): Move from lisp.h.
5182 Use EMACS_INT for position and size info.
5183
5184 * coding.c: Include intervals.h for Fset_text_properties.
5185
5186 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5187 position and length information.
5188
5189 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5190
5191 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
5192 position and length information.
5193
5194 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
5195
5196 Change overlays_after and overlays_before so the overlays themselves
5197 are linked into lists, rather than using cons cells. After all each
5198 Lisp_Misc already occupies 5 words, so we can add a `next' field to
5199 Lisp_Overlay for free and save up one cons cell per overlay (not
5200 to mention one indirection when traversing the list of overlay).
5201
5202 * lisp.h (struct Lisp_Overlay): New field `next'.
5203
5204 * buffer.h (struct buffer): Change overlays_before and overlays_after
5205 from Lisp lists of overlays to pointers to overlays.
5206
5207 * buffer.c (overlay_strings, recenter_overlay_lists):
5208 Fix typo in eassert in last commit.
5209 (unchain_overlay): New function.
5210 (add_overlay_mod_hooklist): Use AREF.
5211 (copy_overlays, reset_buffer, overlays_at, overlays_in)
5212 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
5213 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
5214 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
5215 (report_overlay_modification, evaporate_overlays, init_buffer_once):
5216 Adjust to new type of overlays_(before|after).
5217
5218 * alloc.c (mark_object): Mark the new `next' field of overlays.
5219 (mark_buffer): Manually mark the overlays_(after|before) fields.
5220
5221 * coding.c (run_pre_post_conversion_on_str):
5222 * editfns.c (overlays_around):
5223 * xdisp.c (load_overlay_strings):
5224 * fileio.c (Finsert_file_contents):
5225 * indent.c (current_column):
5226 * insdel.c (signal_before_change, signal_after_change):
5227 * intervals.c (set_point_both):
5228 * print.c (temp_output_buffer_setup): Use new type for
5229 overlays_(before|after).
5230
5231 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
5232
5233 * buffer.c (report_overlay_modification): Don't run hooks while
5234 traversing the list of overlays.
5235
5236 * buffer.h (struct buffer): Use an int for overlay_center.
5237 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5238 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5239
5240 * buffer.c (reset_buffer, recenter_overlay_lists)
5241 (adjust_overlays_for_insert, adjust_overlays_for_delete)
5242 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
5243 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
5244 (overlays_at, evaporate_overlays, recenter_overlay_lists)
5245 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
5246
5247 * xdisp.c (fast_find_position): Remove unused var.
5248
5249 * cmds.c (Qexpand_abbrev): New sym.
5250 (syms_of_cmds): Initialize it.
5251 (internal_self_insert): Use it to call expand-abbrev.
5252
5253 2003-07-09 Kim F. Storm <storm@cua.dk>
5254
5255 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
5256 was configured with --without-xim.
5257 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
5258
5259 2003-07-07 Richard M. Stallman <rms@gnu.org>
5260
5261 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
5262
5263 * alloc.c (Fgarbage_collect): Doc fix.
5264
5265 2003-07-07 Nozomu Ando <nand@mac.com> (tiny change)
5266
5267 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
5268
5269 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5270
5271 * minibuf.c (read_minibuf): UNGCPRO before returning.
5272 (Ftry_completion, Fall_completions): Doc fix.
5273
5274 * alloc.c (live_float_p): Check that p is not past the `floats' array,
5275 now that `floats' is not the last element of the struct any more.
5276
5277 2003-07-06 Jason Rumney <jasonr@gnu.org>
5278
5279 * w32term.h (ClipboardSequence_Proc): New type.
5280
5281 * w32fns.c (clipboard_sequence_fn): New variable.
5282 (globals_of_w32fns): Initialize it.
5283
5284 * w32select.c (last_clipboard_sequence_number): New variable.
5285 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
5286 number if possible.
5287
5288 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
5289
5290 * m/amdx86-64.h (MARKBIT):
5291 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
5292 MARKBIT and ARRAY_MARK_FLAG any more.
5293
5294 * m/hp800.h (XSETMARKBIT):
5295 * m/sr2k.h (XSETMARKBIT):
5296 * lisp.h (XSETMARKBIT): Remove unused macro.
5297
5298 * lisp.h (mark_object): Change prototype.
5299
5300 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
5301 (last_marked): Change accordingly.
5302 (mark_interval, mark_maybe_object, mark_maybe_pointer)
5303 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
5304 (mark_buffer): Update calls to mark_object.
5305
5306 * bytecode.c (mark_byte_stack):
5307 * fns.c (sweep_weak_table):
5308 * keyboard.c (mark_kboards): Update calls to mark_object.
5309
5310 2003-07-06 Jason Rumney <jasonr@gnu.org>
5311
5312 * alloc.c (struct ablock): Only include padding when there is some.
5313
5314 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
5315
5316 * alloc.c (ALIGN): Add casts to simplify usage.
5317 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
5318 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
5319 (struct ablock, struct ablocks): New types.
5320 (free_ablock): New global var.
5321 (lisp_align_malloc, lisp_align_free): New functions.
5322 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
5323 (struct float_block): Reorder and add gcmarkbits.
5324 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
5325 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
5326 (init_float, make_float): Use lisp_align_malloc.
5327 (free_float, live_float_p): Don't use `type' any more.
5328 (make_float): Use FLOAT_UNMARK to access to mark bit.
5329 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
5330 Use FLOAT_MARKED_P to access the mark bit.
5331 (pure_alloc): Simplify use of ALIGN.
5332 (mark_object): Use FLOAT_MARK to access the mark bit.
5333 (gc_sweep): Use new macros to access the float's mark bit.
5334 (init_alloc_once): Init free_ablock.
5335
5336 * lisp.h (struct Lisp_Float): Remove unused field `type'.
5337
5338 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
5339
5340 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
5341 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
5342 (allocate_buffer): Move.
5343 (string_bytes): Don't mask markbit of `size_byte'.
5344 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5345 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
5346 Use the `size' field of buffers (rather than the `name' field) for
5347 the mark bit, as is done for all other vectorlike objects.
5348 Use the new macros to access the mark bit of vectorlike objects.
5349
5350 2003-06-26 Richard M. Stallman <rms@gnu.org>
5351
5352 * puresize.h (BASE_PURESIZE): Increment base size.
5353
5354 * xdisp.c (fast_find_position): Enable Gerd's new definition.
5355
5356 * xterm.c (xim_initialize): Undo previous change.
5357
5358 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
5359
5360 * alloc.c (survives_gc_p): Simplify.
5361
5362 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
5363
5364 * window.c (Fset_window_dedicated_p): Simplify.
5365 (display_buffer_1): Don't raise the win from which minibuf was entered.
5366 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
5367 (Fminibuffer_selected_window): Simplify.
5368
5369 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
5370
5371 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
5372 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
5373
5374 * insdel.c (check_markers, adjust_markers_for_delete)
5375 (adjust_markers_for_insert, adjust_markers_for_replace)
5376 (prepare_to_modify_buffer, RESTORE_VALUE):
5377 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
5378 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
5379 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
5380 * alloc.c (Fmake_marker, free_marker, gc_sweep):
5381 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
5382 * editfns.c (save_excursion_restore, transpose_markers):
5383 * window.c (delete_window):
5384 * xdisp.c (message_dolog): Update for new types.
5385
5386 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5387
5388 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
5389 (realize_default_face): Use default_face_done_p for the force_p
5390 argument to set_lface_from_font_name. Set default_face_done_p to one.
5391
5392 * frame.c (make_frame): Initialize default_face_done_p.
5393
5394 * frame.h (struct frame): Add default_face_done_p.
5395
5396 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
5397 will be defined.
5398
5399 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
5400
5401 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
5402 Initialize the new field `gcmarkbit'.
5403 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
5404 (mark_interval_tree): Don't mark the tree separately from the nodes.
5405 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
5406 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
5407 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
5408
5409 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
5410 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
5411 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
5412 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
5413 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
5414
5415 2003-06-24 Dave Love <fx@gnu.org>
5416
5417 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
5418
5419 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
5420 from gnulib.
5421
5422 2003-06-21 Richard M. Stallman <rms@gnu.org>
5423
5424 * fileio.c (Fwrite_region): Alternate messages
5425 for append and partial write.
5426
5427 * keyboard.c (read_key_sequence): When converting upcase fn key to
5428 downcase, update fkey and keytran so `backspace' gets translated.
5429
5430 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
5431
5432 * process.c (wait_reading_process_input): Don't signal SIGIO
5433 in batch mode.
5434
5435 2003-06-17 Kenichi Handa <handa@m17n.org>
5436
5437 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
5438 composite.h.
5439
5440 * xselect.c: Don't include charset.h, coding.h, composite.h.
5441 (Qforeign_selection): New variable.
5442 (syms_of_xselect): Intern and static it.
5443 (selection_data_to_lisp_data): Return a unibyte string made from
5444 data with `foreign-selection' text property.
5445
5446 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
5447
5448 * termhooks.h (EVENT_INIT): New macro.
5449
5450 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
5451
5452 * alloc.c (mark_kboards): Move to keyboard.c.
5453
5454 * keyboard.c (record_asynch_buffer_change, read_avail_input):
5455 * xterm.c (x_dispatch_event):
5456 * xmenu.c (find_and_call_menu_selection):
5457 * xdisp.c (handle_tool_bar_click):
5458 * w32menu.c (menubar_selection_callback):
5459 * sysdep.c (kbd_input_ast, read_input_waiting):
5460 * msdos.c (dos_rawgetc):
5461 * macterm.c (mac_check_for_quit_char):
5462 * macmenu.c (menubar_selection_callback):
5463 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
5464 data to kbd_buffer_store_event.
5465
5466 2003-06-15 Kim F. Storm <storm@cua.dk>
5467
5468 * xdisp.c (x_fix_overlapping_area): Always use area relative X
5469 to fix redisplay problem with tall characters (such as \e,AC\e(B).
5470
5471 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
5472
5473 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
5474
5475 2003-06-12 Kenichi Handa <handa@m17n.org>
5476
5477 * fileio.c (Fwrite_region): Save and restore restriction.
5478
5479 2003-06-12 Dave Love <fx@gnu.org>
5480
5481 * alloca.c (alloca): Declare arg as size_t.
5482
5483 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
5484 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
5485
5486 2003-06-11 Dave Love <fx@gnu.org>
5487
5488 * search.c (shrink_regexp_cache): Use xrealloc.
5489 (syms_of_search): Use xmalloc.
5490
5491 2003-06-10 Kim F. Storm <storm@cua.dk>
5492
5493 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
5494 Adjust phys_cursor.x to be relative to window box, rather than
5495 text area before checking -- to ensure cursor is redrawn when
5496 exposing window.
5497 Note: This also fixes a similar (older) bug if display margins
5498 are present.
5499
5500 2003-06-06 Kenichi Handa <handa@m17n.org>
5501
5502 * coding.c (encoding_buffer_size): If coding->type is
5503 coding_type_ccl, double magnification on CRLF encoding.
5504
5505 2003-06-06 Jason Rumney <jasonr@gnu.org>
5506
5507 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
5508 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
5509
5510 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
5511 Mac too.
5512
5513 2003-06-05 Dave Love <fx@gnu.org>
5514
5515 * strftime.c: Merge changes from gnulib.
5516
5517 * mktime.c (__mktime_internal): Merge changes from gnulib
5518 involving year 69 and dst2.
5519
5520 Changes to merge with gnulib version and be consistent with the
5521 autoconf test:
5522
5523 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
5524 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
5525 [HAVE_LOCALE_H]: Include locale.h.
5526 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
5527
5528 2003-06-05 Kim F. Storm <storm@cua.dk>
5529
5530 * window.c (coordinates_in_window): Convert X and Y to window
5531 relative coordinates inside mode-line and header-line parts.
5532 Convert X and Y to margin area relative coordinates inside left
5533 and right display margin parts.
5534
5535 2003-06-05 Jason Rumney <jasonr@gnu.org>
5536
5537 * w32fns.c (add_system_logical_colors_to_map): New function.
5538 (Fx_open_connection): Use it.
5539
5540 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
5541
5542 * process.c (allocate_pty): Revert part of the previous patch.
5543 (Faccept_process_output): Simplify.
5544
5545 2003-06-04 Jason Rumney <jasonr@gnu.org>
5546
5547 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
5548
5549 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
5550 (lispy_mouse_wheel_names): Remove.
5551 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
5552 Always define drag_and_drop_syms.
5553
5554 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
5555 WHEEL_EVENT events.
5556
5557 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
5558
5559 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
5560
5561 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
5562
5563 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5564
5565 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
5566 menu item label.
5567
5568 2003-06-03 Richard M. Stallman <rms@gnu.org>
5569
5570 * window.c (Fwindow_edges): Doc fix.
5571 (Fwindow_pixel_edges, Fwindow_inside_edges)
5572 (Fwindow_inside_pixel_edges): New functions.
5573 (syms_of_window): defsubr them.
5574
5575 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
5576 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
5577
5578 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
5579
5580 * dispnew.c (Fsit_for): Don't lie about the number of args.
5581
5582 2003-06-02 Dave Love <fx@gnu.org>
5583
5584 * callproc.c: Use HAVE_FCNTL_H, not USG5.
5585 (syms_of_callproc) <process-environment>: Doc fix.
5586
5587 * doc.c: Use HAVE_FCNTL_H, not USG5.
5588
5589 * xfaces.c (font_rescale_ratio): Fix for K&R.
5590
5591 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
5592
5593 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
5594
5595 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
5596
5597 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
5598 (xg_create_frame_widgets): Use ENCODE_UTF_8.
5599
5600 * xterm.c (Qutf_8): Move to coding.c
5601
5602 * xmenu.c (ENCODE_MENU_STRING): New.
5603 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
5604 Use it.
5605
5606 * coding.h (ENCODE_UTF_8): New.
5607 (Qutf_8): Declare.
5608
5609 * coding.c (Qutf_8): New.
5610 (syms_of_coding): Intern it.
5611
5612 * fns.c: Doc fixes.
5613
5614 2003-06-02 Kenichi Handa <handa@m17n.org>
5615
5616 * buffer.c (Fset_buffer_multibyte): Fix previous change.
5617
5618 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
5619
5620 * lread.c (openp): Make sure STR is a string.
5621
5622 2003-06-01 David Ponce <david@dponce.com>
5623
5624 * termhooks.h (enum event_kind): Added new WHEEL_EVENT event.
5625 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
5626
5627 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
5628 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
5629 (discard_mouse_events): Discard WHEEL_EVENT events too.
5630 (lispy_wheel_names, wheel_syms): New.
5631 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
5632 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX
5633 defined.
5634 (make_lispy_event): Add WHEEL_EVENT handler.
5635
5636 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
5637 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5638 WHEEL_EVENT events.
5639
5640 2003-05-31 John Paul Wallington <jpw@gnu.org>
5641
5642 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
5643 timer are in lisp/emacs-lisp.
5644
5645 2003-05-31 Kenichi Handa <handa@m17n.org>
5646
5647 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
5648 region when a buffer is changed to unibyte.
5649
5650 * charset.h (VALID_LEADING_CODE_P): New macro.
5651 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
5652
5653 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
5654 is nonzero, accept multibyte form of eight-bit-control chars.
5655 (decode_composition_emacs_mule): Likewise.
5656 (decode_coding_emacs_mule): Likewise.
5657 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
5658 multibyte form of eight-bit-control chars.
5659
5660 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
5661 (Finsert_file_contents): If coding-system-for-read is bound to
5662 Qauto_save_coding, use the coding system emacs-mule with special
5663 setting for recovering a file.
5664 (choose_write_coding_system): On auto saving, use the coding
5665 system emacs-mule with special setting for auto saving.
5666 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
5667
5668 2003-05-30 Kenichi Handa <handa@m17n.org>
5669
5670 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
5671 properly before calling ccl_driver.
5672
5673 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
5674
5675 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is
5676 nonzero.
5677 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
5678 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
5679
5680 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
5681
5682 * xfaces.c (realize_default_face): Do not abort if lface is
5683 non-existent - reverts change from 2003-05-19.
5684
5685 2003-05-29 Kenichi Handa <handa@m17n.org>
5686
5687 * coding.c (decode_coding_iso2022): Pay attention to the byte
5688 sequence of CTEXT extended segment, and retain those bytes as is.
5689
5690 2003-05-28 Kenichi Handa <handa@m17n.org>
5691
5692 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjusted for the name change
5693 of CODING_REPLACEMENT_CHARACTER.
5694 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
5695 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
5696 check this flag on encoding.
5697 (encode_coding_sjis_big5): Check
5698 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
5699 (Fset_terminal_coding_system_internal): Set
5700 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
5701 instead of setting CODING_FLAG_ISO_SAFE flag in
5702 terminal_coding.flags.
5703
5704 * coding.h (CODING_REPLACEMENT_CHARACTER): Renamed from
5705 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
5706 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
5707
5708 2003-05-28 Richard M. Stallman <rms@gnu.org>
5709
5710 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
5711
5712 * eval.c (unbind_to): Move init of this_binding to separate statement.
5713
5714 2003-05-28 Kim F. Storm <storm@cua.dk>
5715
5716 * xdisp.c (expose_window): Fix error in calculation of
5717 window relative coordinates of area to redisplay.
5718
5719 2003-05-27 Jason Rumney <jasonr@gnu.org>
5720
5721 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
5722
5723 2003-05-27 David Ponce <david@dponce.com>
5724
5725 Handle W32 mouse wheel events as mouse click events, like in X.
5726
5727 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
5728 MOUSE_WHEEL_EVENT anymore.
5729
5730 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
5731 Scrolling down/up the mouse wheel is respectively mapped to mouse
5732 button 4 and 5.
5733 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
5734 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
5735 WM_MOUSEWHEEL events.
5736
5737 2003-05-27 Andreas Schwab <schwab@suse.de>
5738
5739 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
5740
5741 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
5742 partially visible line.
5743
5744 * alloc.c (Fgarbage_collect): Fix last change.
5745
5746 2003-05-26 John Paul Wallington <jpw@gnu.org>
5747
5748 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
5749
5750 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
5751
5752 * window.c (Fset_window_buffer): Add type of `keep_margins'.
5753 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
5754
5755 * window.h (window_box_text_cols): Declare.
5756
5757 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
5758 (x_draw_vertical_border): Remove unused var `f'.
5759
5760 * xfaces.c (build_scalable_font_name): Remove `unused var
5761 pixel_size' warning.
5762
5763 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
5764
5765 * unexelf.c (unexec): Remove `unused var n' warning.
5766
5767 * strftime.c (my_strftime_localtime_r): Remove `defined but
5768 unused' warning.
5769
5770 * process.c (allocate_pty): Remove `unused var stb' and
5771 `cp might be used uninitialized' warnings.
5772
5773 * dispnew.c (mode_line_string): Remove unused var `f'.
5774
5775 * coding.c (find_safe_codings): Remove unused var `i'.
5776
5777 * bytecode.c (Fbyte_code): Remove `unused val' warning.
5778
5779 * buffer.c (Fkill_buffer): Remove unused var `list'.
5780
5781 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
5782
5783 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5784
5785 * frame.c (make_frame): Condition want_fullscreen with
5786 HAVE_WINDOW_SYSTEM.
5787
5788 2003-05-25 Juanma Barranquero <lektu@terra.es>
5789
5790 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
5791 (Fwindow_scroll_bars): Fix typo in docstring.
5792
5793 2003-05-24 Kim F. Storm <storm@cua.dk>
5794
5795 The following changes serve several purposes:
5796
5797 1) Swap the position of fringes and display margins in windows, i.e.
5798 the fringes are now displayed between the margins and the text area
5799 (by default).
5800
5801 2) Allow fringe and scroll bar parameters to be set per-buffer and
5802 per-window (like display margins). Such settings are now stored
5803 in window configurations, preserved when frames are resized, and
5804 copied when windows are split vertically or horizontally.
5805 Several bugs related to display margins have been fixed.
5806
5807 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
5808
5809 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
5810 rather than FRAME_WIDTH (FRAME_FONT (f)).
5811
5812 5) Introduce a consistent naming of variables, members and macros
5813 depending on whether their value is measured in pixels or in
5814 canonical columns/lines. Pixel dimensions are named *_width and
5815 *_height, while canonical columns/lines are named *_cols and
5816 *_lines. Pixel positions are named *_x and *_y, while column/line
5817 positions are named *_col and *_line.
5818
5819 6) Consolidate more of the X, W32, and MAC gui code by moving
5820 common data into struct frame, and generalize it for the non-gui
5821 case by using suitable defaults.
5822
5823 7) Cleanup and consolidate the macros controlling frame and window
5824 layout into frame.h and window.h, and generalize the use of the
5825 various window_box_* functions (enhanced to handle the new fringe
5826 position and the per-window fringe and scroll bar settings).
5827
5828 * frame.h (struct frame): Rename members height to text_lines,
5829 width to text_cols, window_height to total_lines, window_width to
5830 total_cols, new_height to new_text_lines, new_width to
5831 new_text_cols. All uses changed.
5832 (struct frame): New members which consolidate common members of
5833 x_output, w32_output, and mac_output structures: left_pos,
5834 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
5835 win_gravity, size_hint_flags, border_width, internal_border_width,
5836 line_height, fringe_cols, left_fringe_width, right_fringe_width,
5837 want_fullscreen. All uses changed.
5838 (struct frame): New member column_width contaning the canonical
5839 column width, analogue to line_height. All uses changed.
5840 (struct frame): Rename members scroll_bar_pixel_width to
5841 config_scroll_bar_width, and scroll_bar_cols to
5842 config_scroll_bar_cols. All uses changed.
5843 (struct frame): New member scroll_bar_actual_width which
5844 consolidates and renames the vertical_scroll_bar_extra member of
5845 x_output, w32_output, and mac_output structures. All uses changed.
5846 (FRAME_PIXEL_HEIGHT): Renamed from PIXEL_HEIGHT and moved
5847 from x/w32/macterm.h files. All uses changed. Also change code
5848 which referred to f->output_data...->pixel_height.
5849 (FRAME_PIXEL_WIDTH): Renamed from PIXEL_WIDTH and moved
5850 from x/w32/macterm.h files. All uses changed. Also change code
5851 which referred to f->output_data...->pixel_width.
5852 (FRAME_LINES): Renamed from FRAME_HEIGHT. All uses changed.
5853 Also change code which referred to f->height.
5854 (FRAME_COLS): Renamed from FRAME_WIDTH. All uses changed.
5855 Also change code which referred to f->width.
5856 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
5857 to update new_text_lines and new_text_cols members directly.
5858 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Renamed from
5859 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
5860 (FRAME_CONFIG_SCROLL_BAR_COLS): Renamed from
5861 FRAME_SCROLL_BAR_COLS. All uses changed.
5862 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
5863 Renamed from FRAME_LEFT_SCROLL_BAR_WIDTH and
5864 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
5865 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
5866 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
5867 (FRAME_TOTAL_COLS): Renamed from FRAME_WINDOW_WIDTH.
5868 (SET_FRAME_COLS): Renamed from SET_FRAME_WIDTH.
5869 (FRAME_TOTAL_COLS_ARG): Renamed from FRAME_WINDOW_WIDTH_ARG.
5870 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
5871 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
5872 (FRAME_LINE_HEIGHT): Renamed from CANON_Y_UNIT. Unconditionally
5873 return line_height member (it now has proper value also for
5874 non-window frames).
5875 (FRAME_COLUMN_WIDTH): Renamed from CANON_X_UNIT. Unconditionally
5876 return new column_width member (rather than the default font width).
5877 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
5878 (FRAME_RIGHT_FRINGE_WIDTH): Renamed from FRAME_X_... and moved
5879 from x/w32/macterm.h files. Unconditionally return corresponding
5880 member of frame structure (they now have proper values also for
5881 non-window frames).
5882 (FRAME_TOTAL_FRINGE_WIDTH): Renamed from FRAME_FRINGE_WIDTH.
5883 Calculate return value from left and right widths.
5884 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
5885 internal_border_width member (has proper value for non-window frame).
5886 (FRAME_PIXEL_X_FROM_CANON_X): Renamed from PIXEL_X_FROM_CANON_X.
5887 (FRAME_PIXEL_Y_FROM_CANON_Y): Renamed from PIXEL_Y_FROM_CANON_Y.
5888 (FRAME_CANON_X_FROM_PIXEL_X): Renamed from CANON_X_FROM_PIXEL_X.
5889 (FRAME_CANON_Y_FROM_PIXEL_Y): Renamed from CANON_Y_FROM_PIXEL_Y.
5890 (FRAME_LINE_TO_PIXEL_Y): Renamed from CHAR_TO_PIXEL_ROW,
5891 consolidated from xterm.h, macterm.h, and w32term.h.
5892 (FRAME_COL_TO_PIXEL_X): Renamed from CHAR_TO_PIXEL_COL,
5893 consolidated from xterm.h, macterm.h, and w32term.h.
5894 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Renamed from
5895 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
5896 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Renamed from
5897 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
5898 (FRAME_PIXEL_Y_TO_LINE): Renamed from PIXEL_TO_CHAR_ROW
5899 consolidated from x/mac/w32term.h.
5900 (FRAME_PIXEL_X_TO_COL): Renamed from PIXEL_TO_CHAR_COL
5901 consolidated from x/mac/w32term.h.
5902 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Renamed from
5903 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
5904 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Renamed from
5905 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
5906
5907 * window.h (struct window): Rename members left to left_col,
5908 top to top_line, height to total_lines, width to total_cols,
5909 left_margin_width to left_margin_cols, right_margin_width to
5910 right_margin_cols, orig_height to orig_total_lines, orig_top to
5911 orig_top_line. All uses changed.
5912 (struct window): New members left_fringe_width, right_fringe_width,
5913 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
5914 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
5915 New macros primarily used to simplify other macros.
5916 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
5917 referred to XINT (w->width).
5918 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
5919 referred to XINT (w->height).
5920 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
5921 referred to XINT (w->width) * canon_x_unit.
5922 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
5923 referred to XINT (w->height) * canon_y_unit.
5924 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
5925 referred to XINT (w->left).
5926 (WINDOW_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_EDGE. Change
5927 all uses and code that referred to XINT (w->left) + XINT (w->width).
5928 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
5929 referred to XINT (w->top).
5930 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
5931 referred to XINT (w->top) + XINT (w->height).
5932 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
5933 referred to XINT (w->left) * canon_x_unit.
5934 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
5935 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
5936 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
5937 referred to XINT (w->top) * canon_y_unit.
5938 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
5939 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
5940 (WINDOW_LEFTMOST_P): New macro.
5941 (WINDOW_BOX_LEFT_EDGE_COL): Renamed from WINDOW_LEFT_MARGIN.
5942 All uses changed.
5943 (WINDOW_BOX_RIGHT_EDGE_COL): Renamed from WINDOW_RIGHT_MARGIN.
5944 All uses changed.
5945 (WINDOW_BOX_LEFT_EDGE_X): Renamed from
5946 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
5947 Do not exclude left fringe width.
5948 (WINDOW_BOX_RIGHT_EDGE_X): Renamed from
5949 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
5950 Do not exclude fringe widths.
5951 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
5952 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
5953 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
5954 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
5955 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
5956 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
5957 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
5958 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
5959 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
5960 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
5961 New macros. Change code which referenced corresponding
5962 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
5963 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
5964 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
5965 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
5966 allow per-window scroll-bar settings.
5967 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
5968 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
5969 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
5970 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
5971 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
5972 FRAME_SCROLL_BAR_WIDTH.
5973 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
5974 (WINDOW_SCROLL_BAR_AREA_X): New macros.
5975 (WINDOW_HEADER_LINE_HEIGHT): Renamed from
5976 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
5977 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Renamed from
5978 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
5979 (WINDOW_BOX_TEXT_HEIGHT): Renamed from
5980 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
5981 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
5982 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
5983 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Moved here from dispextern.h.
5984 (WINDOW_LEFT_MARGIN_WIDTH): Renamed from
5985 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5986 (WINDOW_RIGHT_MARGIN_WIDTH): Renamed from
5987 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
5988 (window_from_coordinates): Update prototype.
5989 (Fset_window_buffer): Update EXFUN.
5990 (set_window_buffer): Update prototype.
5991
5992 * dispextern.h (struct glyph_matrix): Rename members window_left_x
5993 to window_left_col, window_top_y to window_top_line. All uses
5994 changed.
5995 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
5996 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
5997 internal_border_width is now set to 0 for non-window frames.
5998 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
5999 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
6000 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
6001 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
6002 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
6003 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
6004 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
6005 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
6006 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
6007 Move to window.h and renamed [see window.h changes].
6008 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
6009 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
6010 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
6011 Use WINDOW_TOTAL_LINES.
6012 (frame_update_line_height): Remove prototype.
6013
6014 * buffer.h (struct buffer): Rename members measured in columns:
6015 left_margin_width to left_margin_cols, right_margin_width to
6016 right_margin_cols. All uses changed.
6017 New members left_fringe_width, right_fringe_width,
6018 fringes_outside_margins for per-buffer fringe settings.
6019 New members scroll_bar_width and vertical_scroll_bar_type for
6020 per-buffer scroll bar settings.
6021
6022 * buffer.c (init_buffer_once): Set buffer_defaults and
6023 buffer_local_flags for new buffer-local variables
6024 left_fringe_width, right_fringe_width, fringes_outside_margins,
6025 scroll_bar_width, and vertical_scroll_bar_type.
6026 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
6027 default-* variables for them.
6028
6029 * dispnew.c: Make (many) trivial substitutions for renamed and
6030 new macros in dispextern.h, frame.h and window.h.
6031 (mode_line_string): No need to adjust width for mode lines, as it
6032 is already adjusted by the caller.
6033 (marginal_area_string): Handle fringes inside/outside margins.
6034
6035 * frame.c: Make (many) trivial substitutions for renamed and
6036 new macros in dispextern.h, frame.h and window.h.
6037 (make_frame): Initialize left_fringe_width, right_fringe_width,
6038 fringe_cols, scroll_bar_actual_width, border_width,
6039 internal_border_width, column_width, line_height, x_pixels_diff,
6040 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
6041 members with values suitable for a non-window frames.
6042
6043 * gtkutil.c: Make (many) trivial substitutions for renamed and
6044 new macros in dispextern.h, frame.h and window.h.
6045
6046 * indent.c: Make (few) trivial substitutions for renamed and
6047 new macros in dispextern.h, frame.h and window.h.
6048
6049 * keyboard.c: Make (many) trivial substitutions for renamed and
6050 new macros in dispextern.h, frame.h and window.h.
6051 (make_lispy_event): Use window positions returned from
6052 window_from_coordinates when constructing the lisp event for
6053 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
6054 (incorrect) values locally.
6055 (make_lispy_movement): Use window positions returned from
6056 window_from_coordinates when constructing the lisp event, rather
6057 than calculating (incorrect) values locally.
6058
6059 * scroll.c: Make (some) trivial substitutions for renamed and
6060 new macros in dispextern.h, frame.h and window.h.
6061
6062 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
6063 scroll-bars.
6064
6065 * sysdep.c: Make (few) trivial substitutions for renamed and
6066 new macros in dispextern.h, frame.h and window.h.
6067
6068 * term.c: Make (some) trivial substitutions for renamed and
6069 new macros in dispextern.h, frame.h and window.h.
6070
6071 * widget.c: Make (few) trivial substitutions for renamed and
6072 new macros in dispextern.h, frame.h and window.h.
6073
6074 * window.c: Make (many) trivial substitutions for renamed and
6075 new macros in dispextern.h, frame.h and window.h.
6076 (make_window): Initialize new members
6077 left_margin_cols, right_margin_cols, left_fringe_width,
6078 right_fringe_width, fringes_outside_margins, scroll_bar_width,
6079 and vertical_scroll_bar_type.
6080 (coordinates_in_window): Adapted to new fringe/margin positions
6081 and per-window fringes and scroll-bars.
6082 Fix bug related to incorrectly adjusting coordinates by
6083 frame's internal_border_width (the effect normally negible since
6084 the internal_border_width is typically 0 or 1 pixel, but very
6085 noticeable for an internal_border_width of e.g. 25 pixels).
6086 Upon successful return (other than ON_NOTHING), the coordinates
6087 are now always properly converted to window relative for the
6088 given display element.
6089 (window_from_coordinates): Add new parameters wx and wy to
6090 return the window relative x and y position in the returned
6091 window and part. A null arg means, don't return the position.
6092 All callers changed.
6093 (adjust_window_margins): New function which may reduce the width
6094 of the display margins if a window's text area is too small after
6095 resizing or splitting windows.
6096 (size_window): Fix bug that did not account for display margin
6097 widths when checking the minimum width of a window; use
6098 adjust_window_margins.
6099 (set_window_buffer): Call Fset_window_fringes and
6100 Fset_window_scroll_bars to setup per-window elements.
6101 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
6102 existing display margin, fringe widths, and scroll bar settings
6103 (e.g. after splitting a window or resizing the frame).
6104 All callers changed.
6105 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
6106 (Fsplit_window): Duplicate original window's display margin,
6107 fringe, and scroll-bar settings; then call Fset_window_buffer with
6108 KEEP_MARGINS non-nil. This fixes a bug which caused a split
6109 window to only preserve the display margins in one of the windows.
6110 When splitting horizontally, call adjust_window_margins on both
6111 windows to ensure that the text area of the new windows is non too
6112 narrow. This fixes a bug which could cause Emacs to trap if the
6113 width of the split window was less than the width of the display
6114 margins.
6115 (window_box_text_cols): Renamed from window_internal_width.
6116 All uses changed. Adapt to per-window fringes and scroll bars.
6117 Fix bug that caused vertical separator to be subtracted also on
6118 window frames. Fix another bug that did not reduce the returned
6119 value by the columns used for display margins.
6120 (window_scroll_line_based): Fix bug related to scrolling too much
6121 when display margins are present (implicitly fixed by the fix to
6122 window_box_text_cols).
6123 (scroll_left, scroll_right): Fix bug related to scrolling too far
6124 by default when display margins are present (implicitly fixed by
6125 the fix to window_box_text_cols).
6126 (struct saved_window): Rename members left to left_col, top to
6127 top_line, width to total_cols, height to total_lines, orig_top to
6128 orig_top_line, orig_height to orig_total_lines. All uses changed.
6129 New members left_margin_cols, right_margin_cols,
6130 left_fringe_width, right_fringe_width, fringes_outside_margins,
6131 scroll_bar_width, and vertical_scroll_bar_type for saving
6132 per-window display elements.
6133 (Fset_window_configuration): Restore display margins, fringes,
6134 and scroll bar settings. This fixes a bug which caused display
6135 margins to be discarded when saving and restoring a window
6136 configuration.
6137 (save_window_save): Save display margins, fringes, and scroll bar
6138 settings. This fixes a bug which caused display margins to be
6139 discarded when saving and restoring a window configuration.
6140 (Fset_window_margins): Do nothing if display margins are not
6141 really changed. Otherwise, call adjust_window_margins to ensure
6142 the text area doesn't get too narrow. This fixes a bug which
6143 could cause Emacs to trap if setting display margins wider than
6144 the width of the window.
6145 (Fset_window_fringes): New defun to allow user to specifically set
6146 this window's fringe widths and position vs. display margins.
6147 (Fwindow_fringes): New defun to return window's actual fringe
6148 settings.
6149 (Fset_window_scroll_bars): New defun to allow user to specifically
6150 set this window's scroll bar width and position.
6151 (Fwindow_scroll_bars): New defun to return window's actual scroll
6152 bar settings.
6153 (compare_window_configurations): Also compare display margins,
6154 fringes, and scroll bar settings.
6155 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
6156
6157 * xdisp.c: Make (many) trivial substitutions for renamed and
6158 new macros in dispextern.h, frame.h and window.h.
6159 (window_box_width): Adapt to per-window fringes and scroll bars,
6160 and new fringe vs. display margin position. Note that returned
6161 value is no longer guaranteed to be a whole multiple of the frame
6162 column width, since per-window fringes may now be any width.
6163 (window_box_left_offset): New function like window_box_left, but
6164 value is relative to left border of window (rather than frame).
6165 (window_box_right_offset): New function like window_box_right,
6166 but value is relative to left border of window.
6167 (window_box_left): Adapt to per-window fringes and scroll bars,
6168 and new fringe vs. display margin position. Simplify by using
6169 WINDOW_LEFT_EDGE_X and window_box_left_offset.
6170 (window_box): Allow null args for unnecessary return values;
6171 change/simplify relevant callers.
6172 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
6173 and new fringe vs. display margin position.
6174 Use window_box_left_offset and window_box_right_offset
6175 (get_glyph_string_clip_rect): Adapt to per-window fringes and
6176 scroll bars, and new fringe vs. display margin position.
6177 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
6178 (draw_fringe_bitmap): Rework to handle per-window fringes and new
6179 fringe vs. display margin position.
6180 (hscroll_window_tree): Use window_box_width instead of window_box.
6181 (redisplay_window): Adapt to per-window scroll bars.
6182 (draw_glyphs): Rework to handle per-window fringes and scroll
6183 bars, and new fringe vs. display margin position.
6184 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
6185 (x_clear_end_of_line): Adapt to per-window fringes and scroll
6186 bars, and new fringe vs. display margin position. Fix bug which
6187 increased total width of full_width rows by width of scroll bars
6188 although window's total width already includes that.
6189 (x_fix_overlapping_area): Simplify using window_box_left_offset.
6190 (expose_area): Simplify using window_box_left_offset.
6191 (x_draw_vertical_border): Handle per-window scroll bar settings,
6192 mixing windows with left, right and no scroll bars.
6193
6194 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
6195 where it's used in x_list_fonts (for clarity).
6196 (frame_update_line_height): Remove unused function; functionality
6197 is now done directly when setting the default font in x_set_font.
6198
6199 * xfns.c: Make (many) trivial substitutions for renamed and
6200 new macros in dispextern.h, frame.h and window.h.
6201
6202 * xmenu.c: Make (some) trivial substitutions for renamed and
6203 new macros in dispextern.h, frame.h and window.h.
6204
6205 * xterm.h (struct x_output): Move members left_pos, top_pos,
6206 border_width, pixel_height, pixel_width, line_height,
6207 internal_border_width, vertical_scroll_bar_extra,
6208 left_fringe_width, right_fringe_width, fringe_cols,
6209 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6210 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6211 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6212 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6213 (PIXEL_WIDTH, PIXEL_HEIGHT)
6214 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6215 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6216 frame.h and renamed [see frame.h changes].
6217 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6218 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6219 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6220 and renamed [see frame.h changes].
6221
6222 * xterm.c: Make (several) trivial substitutions for renamed and
6223 new macros in dispextern.h, frame.h and window.h.
6224 (x_draw_glyph_string_box): Adapt to per-window fringes and
6225 scroll-bars.
6226 (scroll_run): Adapt to new fringe position.
6227 (glyph_rect): Use window coordinates returned from
6228 window_from_coordinates rather than frame_to_window_pixel_xy.
6229 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6230 scroll-bars.
6231 (handle_one_xevent): Simplify a USE_GTK conditional.
6232 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6233 (fringes are now inside margins, i.e. always in the clipping area).
6234 All callers changed.
6235 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6236 directly, then call compute_fringe_widths. Don't call
6237 frame_update_line_height.
6238
6239 * w32term.h (struct w32_output): Move members left_pos, top_pos,
6240 border_width, pixel_height, pixel_width, line_height,
6241 internal_border_width, vertical_scroll_bar_extra,
6242 left_fringe_width, right_fringe_width, fringe_cols,
6243 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6244 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
6245 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6246 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6247 (PIXEL_WIDTH, PIXEL_HEIGHT)
6248 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6249 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6250 frame.h and renamed [see frame.h changes].
6251 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6252 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6253 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6254 and renamed [see frame.h changes].
6255
6256 * w32term.c: Make (several) trivial substitutions for renamed and
6257 new macros in dispextern.h, frame.h and window.h.
6258 (x_draw_glyph_string_box): Adapt to per-window fringes and
6259 scroll-bars.
6260 (glyph_rect): Use window coordinates returned from
6261 window_from_coordinates rather than frame_to_window_pixel_xy.
6262 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6263 scroll-bars.
6264 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
6265 (fringes are now inside margins, i.e. always in the clipping area).
6266 All callers changed.
6267 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6268 directly, then call compute_fringe_widths. Don't call
6269 frame_update_line_height.
6270
6271 * w32console.c: Make (few) trivial substitutions for renamed and
6272 new macros in dispextern.h, frame.h and window.h.
6273
6274 * w32fns.c: Make (many) trivial substitutions for renamed and
6275 new macros in dispextern.h, frame.h and window.h.
6276
6277 * w32menu.c: Make (few) trivial substitutions for renamed and
6278 new macros in dispextern.h, frame.h and window.h.
6279
6280 * macterm.h (struct mac_output): Move members left_pos, top_pos,
6281 border_width, pixel_height, pixel_width, line_height,
6282 internal_border_width, vertical_scroll_bar_extra,
6283 left_fringe_width, right_fringe_width, fringe_cols,
6284 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
6285 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
6286 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
6287 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
6288 (PIXEL_WIDTH, PIXEL_HEIGHT)
6289 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
6290 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Moved to
6291 frame.h and renamed [see frame.h changes].
6292 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
6293 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
6294 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Moved to frame.h
6295 and renamed [see frame.h changes].
6296
6297 * macterm.c: Make (several) trivial substitutions for renamed and
6298 new macros in dispextern.h, frame.h and window.h.
6299 (x_draw_glyph_string_box): Adapt to per-window fringes and
6300 scroll-bars.
6301 (glyph_rect): Use window coordinates returned from
6302 window_from_coordinates rather than frame_to_window_pixel_xy.
6303 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
6304 scroll-bars.
6305 (x_clip_to_row): Remove superfluous whole_line_p arg and code
6306 (fringes are now inside margins, i.e. always in the clipping area).
6307 All callers changed.
6308 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
6309 directly, then call compute_fringe_widths. Don't call
6310 frame_update_line_height.
6311
6312 * macfns.c: Make (several) trivial substitutions for renamed and
6313 new macros in dispextern.h, frame.h and window.h.
6314 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
6315
6316 * macmenu.c: Make (few) trivial substitutions for renamed and
6317 new macros in dispextern.h, frame.h and window.h.
6318
6319 * msdos.h (struct x_output): Remove members left_pos, top_pos,
6320 and line_height, and use corresponding new members in struct
6321 frame. All uses changed.
6322 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
6323 superseeded by corresponding macros in frame.h.
6324
6325 * msdos.c: Make (several) trivial substitutions for renamed and
6326 new macros in dispextern.h, frame.h and window.h.
6327 (IT_note_mouse_highlight): Use updated window coordinates returned
6328 by window_from_coordinates, rather than adjusting them locally.
6329 (internal_terminal_init): No need to initialize line_height here;
6330 it now defaults to 1.
6331
6332 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
6333
6334 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
6335 dropping `down' events.
6336
6337 2003-05-24 Andreas Schwab <schwab@suse.de>
6338
6339 * coding.c (find_safe_codings): Fix last change.
6340
6341 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
6342
6343 * xfns.c (x_window): Fix typo from 2003-05-21 change.
6344
6345 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
6346
6347 * xdisp.c (display_mode_element): Increase max depth.
6348 Simplify the error handling code. Use a different error string
6349 for the case where we hit the depth limit.
6350
6351 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
6352
6353 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
6354
6355 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
6356
6357 * intervals.c (get_local_map): Don't get char-property of previous
6358 point any more: get_pos_property already does it and better.
6359
6360 2003-05-21 Dave Love <fx@gnu.org>
6361
6362 [Merged from unicode branch.]
6363
6364 * xfns.c (x_window, x_window): Use use_xim.
6365
6366 * xterm.c (use_xim): Initialize.
6367 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
6368 (x_term_init): Maybe set use_xim.
6369
6370 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
6371
6372 2003-05-21 Jason Rumney <jasonr@gnu.org>
6373
6374 * unexw32.c (_start): Remove _fmode initialization.
6375
6376 * emacs.c (main) [WINDOWSNT]: Move it here.
6377
6378 2003-05-20 Dave Love <fx@gnu.org>
6379
6380 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
6381
6382 2003-05-19 Richard M. Stallman <rms@gnu.org>
6383
6384 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
6385 as value for QCfont attribute.
6386 (realize_default_face): lface should already exist; crash if not.
6387 Specify 0 for FORCE_P when calling set_lface_from_font_name.
6388
6389 * frame.c (Fignore_event): Doc fix.
6390
6391 2003-05-19 Kenichi Handa <handa@m17n.org>
6392
6393 * coding.c (decode_coding_string): Handle post-read-conversion
6394 even if the coding doesn't require decoding.
6395
6396 2003-05-18 Richard M. Stallman <rms@gnu.org>
6397
6398 * callproc.c (Fcall_process_region): Doc fix.
6399
6400 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6401
6402 * lread.c (Fload): Print a message if package is obsolete.
6403
6404 * window.c (Fselect_window): Add optional `norecord' arg.
6405 (select_window_1): Fold into Fselect_window.
6406 (select_window_norecord): New function.
6407 (temp_output_buffer_show): Use it. Preserve current buffer.
6408
6409 * window.h (Fselect_window): Update declaration.
6410
6411 * window.c (delete_window, Fother_window, Fset_window_configuration):
6412 * minibuf.c (read_minibuf):
6413 * macterm.c (x_new_focus_frame):
6414 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
6415 * callint.c (Fcall_interactively):
6416 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
6417
6418 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
6419
6420 2003-05-17 David Kastrup <dak@gnu.org>
6421
6422 * process.c (read_process_output): Back out change from 2003-03-09.
6423
6424 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
6425
6426 * editfns.c (get_pos_property): Don't assume that `object' = nil.
6427
6428 * textprop.c (text_property_stickiness): New arg `buffer'.
6429
6430 * intervals.h (text_property_stickiness): New arg `buffer'.
6431 (get_pos_property): Declare.
6432
6433 * intervals.c (get_local_map): Use get_pos_property, to obey
6434 stickiness and empty overlays.
6435 (create_root_interval, graft_intervals_into_buffer): Use BEG.
6436 (merge_properties, intervals_equal, merge_properties_sticky):
6437 Use XCAR, XCDR.
6438 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
6439
6440 2003-05-17 Richard M. Stallman <rms@gnu.org>
6441
6442 * minibuf.c (read_minibuf): If buffer is empty, record the default
6443 in the history.
6444 (Fminibuffer_complete_word): When deleting the overlap, take account
6445 of its real position.
6446
6447 * fns.c (map_char_table): Fix previous change.
6448
6449 * syntax.c (find_defun_start):
6450 When open_paren_in_column_0_is_defun_start,
6451 return beginning of buffer.
6452
6453 * lisp.h (map_char_table): Declare added arg.
6454
6455 * fns.c (map_char_table): New arg TABLE gets the master table.
6456 All calls changed.
6457 Process default and inheritance, resorting to Faref if necessary.
6458
6459 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
6460 (Faccessible_keymaps): Pass new arg to map_char_table.
6461
6462 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
6463
6464 * casetab.c (set_case_table): Pass new arg to map_char_table.
6465
6466 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
6467
6468 * lisp.h (specbinding_func): New typedef.
6469 (struct specbinding): Use specbinding_func, to put the `volatile'
6470 in the right place.
6471
6472 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
6473 to avoid GCC warning.
6474
6475 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org> (tiny change)
6476
6477 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
6478
6479 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
6480
6481 * keyboard.c (apply_modifiers): Don't fill the other cache.
6482
6483 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
6484
6485 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
6486
6487 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
6488 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
6489 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
6490 (Fset_window_configuration, Fcurrent_window_configuration)
6491 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
6492 (Fpos_visible_in_window_p, mark_window_cursors_off)
6493 (window_internal_height, window_internal_width, Frecenter)
6494 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
6495 (replace_buffer_in_all_windows, init_window_once, init_window)
6496 (syms_of_window, keys_of_window): Move from lisp.h.
6497 * lisp.h: Move window.c declarations to window.h.
6498
6499 * bytecode.c: Include window.h.
6500 * emacs.c: Include window.h.
6501
6502 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
6503 (keyremap): Add `parent' field.
6504 (keyremap_step): Use it. Remove `parent' argument.
6505 (read_key_sequence): Setup and use the new `parent' field.
6506
6507 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
6508
6509 * keyboard.c (adjust_point_for_property): Ensure termination.
6510
6511 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
6512
6513 * keyboard.c (follow_key): Remove dead variable `did_meta'.
6514 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
6515 duplicated handling of function-key-map and key-translation-map
6516 in read_key_sequence.
6517 (read_key_sequence): Use them.
6518
6519 * keyboard.c (adjust_point_for_property): Try harder to move point
6520 to the non-sticky end of an invisible property.
6521
6522 * xdisp.c (single_display_prop_intangible_p): Make `space' display
6523 property intangible as well.
6524
6525 2003-05-10 Andreas Schwab <schwab@suse.de>
6526
6527 * xmenu.c (single_menu_item): Change last parameter to void* to
6528 avoid warning.
6529
6530 2003-05-09 Richard M. Stallman <rms@gnu.org>
6531
6532 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
6533 Bind Qinhibit_modification_hooks to t so there will be no GC.
6534 Rename local `tem' to `save_deactivate_mark'.
6535
6536 * eval.c (specpdl_ptr): Declare volatile.
6537 (unbind_to): Copy the whole binding and decrement specpdl_ptr
6538 before doing the work of unbinding it.
6539
6540 * lisp.h (struct specbinding): Declare elements volatile.
6541 (specpdl_ptr): Declare volatile.
6542
6543 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
6544
6545 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
6546 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
6547
6548 2003-05-08 Dave Love <fx@gnu.org>
6549
6550 * coding.c (Vlast_coding_system_used): Doc fix.
6551
6552 2003-05-07 Jason Rumney <jasonr@gnu.org>
6553
6554 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
6555 when system does not support them.
6556
6557 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
6558
6559 * fileio.c (Qwrite_region_annotate_functions): New var.
6560 (build_annotations): Use it to process the global part of the hook.
6561 (syms_of_fileio): Init and staticpro it.
6562
6563 * keyboard.c (safe_run_hooks_error): Display a message instead of
6564 silently ignoring the error.
6565
6566 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
6567
6568 * keyboard.c (input_available_signal): Mark static.
6569 (menu_bar_items): Use map_keymap.
6570 (menu_bar_one_keymap): Remove.
6571 (menu_bar_item): Adjust arglist (for use in map_keymap).
6572 Properly hide a second binding when not both are keymaps.
6573
6574 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
6575 (single_keymap_panes): Use it and map_keymap.
6576 (single_menu_item): Use skp as well.
6577
6578 * keymap.h (map_keymap_function_t): New type.
6579 (map_keymap): Declare.
6580
6581 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
6582 (map_keymap_call, Fmap_keymap): New functions.
6583 (syms_of_keymap): Defsubr map-keymap.
6584
6585 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6586
6587 * gtkutil.c (create_dialog, make_widget_for_menu_item)
6588 (make_menu_item, create_menus, xg_update_menu_item): Don't call
6589 ..._with_mnemonic functions for menu items.
6590
6591 2003-05-01 Kenichi Handa <handa@m17n.org>
6592
6593 * coding.c (coding_system_accept_latin_extra_p): Delete this
6594 function.
6595 (find_safe_codings): Pay attention to
6596 the property tranlsation-table-for-encode of each codings.
6597 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
6598
6599 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
6600
6601 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
6602
6603 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
6604
6605 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
6606
6607 * lisp.h (CHECK): Wrap args in parenthesis.
6608 (specbind): Fix doc: symbol = Qnil is not supported any more.
6609
6610 * bytecode.c (Fbyte_code) <unwind-protect>:
6611 Use Fprogn rather than 0 and Qnil.
6612
6613 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
6614 `double', and `triple' modifiers as well.
6615
6616 2003-04-30 Richard M. Stallman <rms@gnu.org>
6617
6618 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
6619
6620 * alloc.c (abort_on_gc): New variable.
6621 (Fgarbage_collect): Abort if abort_on_gc is set.
6622
6623 * lisp.h (abort_on_gc): Add decl.
6624
6625 * eval.c (Fsignal): Clear abort_on_gc.
6626
6627 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
6628 Reinit FORMAT_START and END before second scan.
6629
6630 * xdisp.c (move_it_vertically_backward): Do the final big else
6631 even if nlines is 0.
6632
6633 * xdisp.c (redisplay_internal): Finish the per-frame loop
6634 even if redisplay is suspended by input.
6635
6636 2003-04-24 Andrew Choi <akochoi@shaw.ca>
6637
6638 * macterm.c (x_list_fonts): Return all fonts that match if
6639 maxnames = -1.
6640
6641 2003-04-25 Kenichi Handa <handa@m17n.org>
6642
6643 * syntax.c (skip_chars): Fix previous change.
6644
6645 2003-04-24 Kenichi Handa <handa@m17n.org>
6646
6647 * syntax.c (skip_chars): Make the code faster by using the common
6648 technique of *p, *stop, and *endp.
6649
6650 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6651
6652 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
6653 tool_bar_items so GTK tool bar expose callback does not access items
6654 being updated.
6655
6656 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
6657
6658 * eval.c (Fapply): Undo last change and add a comment about why.
6659
6660 2003-04-18 Miles Bader <miles@gnu.org>
6661
6662 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
6663 pickier PARSE_MULTIBYTE_SEQ.
6664
6665 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
6666
6667 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
6668 Use XCDR, XCAR, CONSP.
6669 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
6670 (Fapply): Remove unnecessary GCPRO.
6671
6672 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
6673
6674 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
6675
6676 * buffer.h: Don't hardcode BEG==1.
6677
6678 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
6679
6680 2003-04-16 Richard M. Stallman <rms@gnu.org>
6681
6682 * xdisp.c (try_window, try_window_reusing_current_matrix):
6683 When at end of window, set window_end_pos to Z-ZV.
6684
6685 * buffer.c (Foverlay_recenter): Doc fix.
6686
6687 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
6688
6689 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
6690
6691 2003-04-14 Andrew Choi <akochoi@shaw.ca>
6692
6693 * macterm.c (mac_check_for_quit_char): Don't check more often than
6694 once a second.
6695
6696 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
6697
6698 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
6699 specially, so that they can't hide an implicit switch-frame event.
6700 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
6701 (head_table): Use switch-frame as event_kind for select-window.
6702 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
6703
6704 * editfns.c (Fformat): Lisp_Object/int mixup.
6705 (format2): Remove unused var numargs.
6706
6707 2003-04-11 Kenichi Handa <handa@m17n.org>
6708
6709 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
6710 (Qafter_insert_file_set_coding): New variable.
6711 (syms_of_fileio): Initialize and staticpro it. Delete declaration
6712 for after-insert-file-adjust-coding-function.
6713 (Finsert_file_contents): Call Qafter_insert_file_set_coding
6714 instead of Vafter_insert_file_adjust_coding_function.
6715
6716 2003-04-11 Kenichi Handa <handa@m17n.org>
6717
6718 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
6719
6720 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
6721 string. Callers changed.
6722
6723 2003-04-10 Kenichi Handa <handa@m17n.org>
6724
6725 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
6726 (syms_of_fileio): Declare it as a lisp variable.
6727 (Finsert_file_contents):
6728 Call Vafter_insert_file_adjust_coding_function before calling
6729 decode-format.
6730
6731 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6732
6733 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
6734 get GtkAdjustment as widget now is a GtkRange.
6735
6736 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
6737 GtkRange to avoid memory leak.
6738
6739 2003-04-09 Kenichi Handa <handa@m17n.org>
6740
6741 * xfaces.c (Vface_font_rescale_alist): New variable.
6742 (struct font_name): New member rescale_ratio.
6743 (font_rescale_ratio): New function.
6744 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
6745 (better_font_p): On comparing point sized, pay attention to
6746 recale_ratio member of fonts.
6747 (build_scalable_font_name): Reflect font->rescale_ratio in the
6748 font name.
6749 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
6750
6751 * lread.c (read1): Before calling index, check if the 2nd
6752 arguemnt is in ASCII range.
6753
6754 2003-04-08 Richard M. Stallman <rms@gnu.org>
6755
6756 * fileio.c (Ffile_symlink_p): Doc fix.
6757
6758 * editfns.c (Fformat): Translate positions of text properties
6759 in the format string to apply them to the result.
6760
6761 * fileio.c (Finsert_file_contents): Doc fix.
6762 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
6763
6764 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
6765
6766 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
6767
6768 2003-04-08 Steven Tamm <steventamm@mac.com>
6769
6770 * mac.c (init_mac_osx_environment): Switch libexec and bin so
6771 that self-contained application finds libexec files.
6772
6773 2003-04-08 Kenichi Handa <handa@m17n.org>
6774
6775 * coding.c (code_convert_region_unwind):
6776 Set Vlast_coding_system_used to the argument.
6777 (code_convert_region): If post-read-conversion function changed
6778 the value of last-coding-sytem, keep the new value in
6779 coding->symbol so that it won't be overridden.
6780 (run_pre_post_conversion_on_str): Likewise.
6781 (coding_system_accept_latin_extra_p): New function.
6782 (find_safe_codings): Pay attention to characters registered in
6783 latin-extra-code-table.
6784
6785 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
6786
6787 * Makefile.in (md5.o): Add missing dependency info.
6788
6789 2003-04-06 Richard M. Stallman <rms@gnu.org>
6790
6791 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
6792
6793 * marker.c (verify_bytepos): New function.
6794
6795 * intervals.c (set_intervals_multibyte_1): When becoming
6796 multibyte, adjust right and left child sizes to a whole set of
6797 characters. If an interval gets zero total-length, delete it.
6798 If an interval consists of just its children, delete one of them.
6799
6800 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
6801 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
6802
6803 * alloc.c: (VALIDATE_LISP_STORAGE): Macro deleted.
6804 All calls deleted.
6805 (lisp_malloc): Do the work here directly.
6806
6807 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
6808
6809 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
6810 char tables.
6811
6812 2003-04-04 Kenichi Handa <handa@m17n.org>
6813
6814 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
6815 destructively change "%S" to "%s".
6816
6817 2003-04-03 Miles Bader <miles@gnu.org>
6818
6819 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
6820 always set.
6821
6822 2003-04-01 Dave Love <fx@gnu.org>
6823
6824 * xfns.c (xpm_lookup_color): Grok "opaque".
6825
6826 2003-03-31 Andrew Choi <akochoi@shaw.ca>
6827
6828 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
6829 parent window ID.
6830
6831 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
6832
6833 * macterm.h (struct mac_output): Define x_pixels_diff and
6834 y_pixels_diff.
6835
6836 2003-03-31 Juanma Barranquero <lektu@terra.es>
6837
6838 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
6839 blockinput.h and files included from it.
6840
6841 2003-03-31 Kim F. Storm <storm@cua.dk>
6842
6843 The following changes consolidates the common code related to
6844 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
6845 files into frame.c.
6846
6847 * frame.c: Include blockinput.h.
6848 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
6849 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
6850 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
6851 related vars here.
6852 (struct frame_parm_table, frame_parms): New table for describing
6853 frame parameters and their associated Q-variable.
6854 The order of the parameters corresponds to the sequence of the
6855 frame_parm_handlers table in redisplay_interface.
6856 (x_fullscreen_move, x_set_frame_parameters)
6857 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
6858 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
6859 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6860 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
6861 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
6862 Generic functions for processing of frame parameters.
6863 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
6864 (display_x_get_resource, x_get_resource_string): Functions for
6865 generic access to X resources.
6866 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6867 (x_default_parameter, Fx_parse_geometry): Functions for generic
6868 access to frame parameters.
6869 (x_figure_window_size): Generic calculation of frame size.
6870 Fixed to add space needed for tool bar. Also setup size_hint_flags.
6871 (syms_of_frame): Intern and staticpro frame parameter variables.
6872 Defvar_lisp Vx_resource_class and Vx_resource_name here.
6873 Defsubr Sx_get_resource and Sx_parse_geometry.
6874
6875 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
6876 parameter related vars defined in frame.c.
6877 (EMACS_CLASS): Define here.
6878 (enum FULLSCREEN_*): Define here.
6879 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
6880 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
6881 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
6882 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
6883 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
6884 (x_set_visibility, x_set_autoraise, x_set_autolower)
6885 (x_set_unsplittable, x_set_vertical_scroll_bars)
6886 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
6887 (x_figure_window_size): Add prototypes.
6888
6889 * dispextern.h (frame_parm_handler): New typedef.
6890 (struct redisplay_interface): New member frame_parm_handlers.
6891 (enum resource_types): Move declaration here.
6892 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
6893 (x_default_parameter): Add prototypes.
6894
6895 * window.c: Remove extern decl for frame parameter vars.
6896 (change_window_heights): New generic function;
6897 replaces x_change_window_heights. All users changed.
6898
6899 * window.h (change_window_heights): Add prototype.
6900
6901 * xfaces.c: Remove extern decl for frame parameter vars.
6902
6903 * xterm.h (EMACS_CLASS): Remove. Use generic define.
6904 (struct w32_display_info): Fix type of xrdb member.
6905 (enum FULLSCREEN_*): Remove.
6906 Remove prototypes for generic functions (in frame.h).
6907
6908 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6909 parameters now defined in frame.h and frame.c.
6910 (Vx_resource_name): Remove. Use generic var.
6911 (enum x_frame_parms): Remove (bogus, unused enum).
6912 (check_x_display_info): Make non-static (for frame.c).
6913 (struct x_frame_parm_table, x_frame_parms): Remove.
6914 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6915 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6916 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6917 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6918 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6919 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6920 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6921 Remove. Use generic functions instead.
6922 (enum resource_types): Remove.
6923 (x_set_scroll_bar_default_width): New global function (for frame.c).
6924 (Fx_create_frame): Depend on x_figure_window_size to add space for
6925 toolbar and setup size_hint_flags.
6926 (x_frame_parm_handlers): New table for redisplay_interface.
6927 (syms_of_xfns): Don't intern/staticpro removed vars.
6928
6929 * xterm.c: Remove unnecessary extern declarations.
6930 (x_fullscreen_adjust): Remove. Use generic instead.
6931 (x_redisplay_interface): Add x_frame_parm_handlers member.
6932
6933 * w32gui.h (XrmDatabase): New (dummy) typedef.
6934
6935 * w32term.h (EMACS_CLASS): Remove. Use generic define.
6936 (struct w32_display_info): Fix type of xrdb member.
6937 (enum FULLSCREEN_*): Remove.
6938 (x_fullscreen_adjust): Remove prototype.
6939
6940 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6941 parameters now defined in frame.h and frame.c.
6942 (Vx_resource_name): Remove. Use generic var.
6943 (enum x_frame_parms): Remove (bogus, unused enum).
6944 (check_x_display_info): Make non-static (for frame.c).
6945 (struct x_frame_parm_table, x_frame_parms): Remove.
6946 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6947 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6948 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6949 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6950 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6951 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6952 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6953 Remove. Use generic functions instead.
6954 (enum resource_types): Remove.
6955 (x_set_scroll_bar_default_width): New global function (for frame.c).
6956 (Fx_create_frame): Depend on x_figure_window_size to add space for
6957 toolbar and setup size_hint_flags.
6958 (w32_frame_parm_handlers): New table for redisplay_interface.
6959 (syms_of_w32fns): Don't intern/staticpro removed vars.
6960
6961 * w32term.c: Remove unnecessary extern declarations.
6962 (x_fullscreen_adjust): Remove. Use generic instead.
6963 (x_redisplay_interface): Add w32_frame_parm_handlers member.
6964
6965 * w32reg.c (x_get_string_resource): Use XrmDatabase.
6966
6967 * macgui.h (XrmDatabase): New (dummy) typedef.
6968
6969 * macterm.h (EMACS_CLASS): Remove.
6970 (struct mac_display_info): Add xrdb member.
6971 (struct mac_output): Add want_fullscreen member.
6972
6973 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
6974 parameters now defined in frame.h and frame.c.
6975 (Vx_resource_name): Remove. Use generic var.
6976 (check_x_display_info): Make non-static (for frame.c).
6977 (struct x_frame_parm_table, x_frame_parms): Remove.
6978 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
6979 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
6980 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
6981 (x_change_window_heights, x_set_autoraise, x_set_autolower)
6982 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
6983 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
6984 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
6985 Remove. Use generic functions instead.
6986 (enum resource_types): Remove.
6987 (x_set_scroll_bar_default_width): New global function (for frame.c).
6988 (mac_frame_parm_handlers): New table for redisplay_interface.
6989 (syms_of_macfns): Don't intern/staticpro removed vars.
6990
6991 * macterm.c: Remove unnecessary extern declarations.
6992 (x_redisplay_interface): Add mac_frame_parm_handlers member.
6993
6994 * Makefile.in (frame.o): Add dependency on blockinput.h and files
6995 included from it (atimer.h and systime.h).
6996
6997 2003-03-30 Andreas Schwab <schwab@suse.de>
6998
6999 * xdisp.c (x_insert_glyphs): Fix swapped width and height
7000 parameters for shift_glyphs_for_insert.
7001
7002 * macterm.c (x_redisplay_interface): Add missing entry for
7003 draw_vertical_window_border.
7004
7005 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
7006
7007 * fileio.c (Fexpand_file_name): In the no-handler case, after
7008 expanding, look again for a handler and invoke it. This is needed
7009 for filenames like "/foo/../user@host:/bar/../baz" -- the first
7010 expansion produces "/user@host:/bar/../baz" which needs to be
7011 expanded again for the finame result "/user@host:/baz".
7012
7013 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7014
7015 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
7016 of area to be redrawn for better performance.
7017
7018 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
7019
7020 * xterm.c (take_vertical_position_into_account): Remove.
7021 (xt_action_hook): Call set_vertical_scroll_bar if needed.
7022 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
7023 (xm_scroll_callback, x_create_toolkit_scroll_bar)
7024 (x_set_toolkit_scroll_bar_thumb): Simplify.
7025 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
7026 (XTread_socket): Remove unused var.
7027 (x_make_frame_invisible): Replace goto with else.
7028
7029 * xdisp.c (set_vertical_scroll_bar): New fun.
7030 (redisplay_window): Use it.
7031
7032 2003-03-26 Richard M. Stallman <rms@gnu.org>
7033
7034 * xdisp.c (update_tool_bar): Recompute tool bar if
7035 update_mode_lines is set. Set w->update_mode_line
7036 only if the tool bar contents actually change.
7037 (update_menu_bar): Undo previous change.
7038
7039 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7040
7041 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
7042 (xg_frame_set_char_size): Calculate scroll bar width before frame
7043 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
7044 (xg_separator_p): Check for all documented separator types.
7045 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
7046 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
7047
7048 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
7049 so tool bar gets updated.
7050
7051 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
7052
7053 * data.c (store_symval_forwarding): Re-instate part of the code
7054 that was deleted with too much enthusiasm.
7055
7056 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
7057
7058 * data.c (store_symval_forwarding): Delete special read-only
7059 hack for type == -1, since we now use ->constant instead.
7060 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
7061
7062 * buffer.c (overlays_in): Declare static.
7063 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
7064 `constant' field rather than the variable's `type' field.
7065
7066 2003-03-24 Andrew Choi <akochoi@shaw.ca>
7067
7068 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
7069
7070 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
7071
7072 * fns.c [MAC_OSX]: Do not redefine vector.
7073
7074 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
7075
7076 * macgui.h: Remove definition of No_Cursor.
7077
7078 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
7079
7080 * xdisp.c: Define No_Cursor.
7081 (x_write_glyphs, notice_overwritten_cursor)
7082 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
7083 (note_mouse_highlight): Remove Mac-specific code.
7084 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
7085
7086 2003-03-24 John Paul Wallington <jpw@gnu.org>
7087
7088 * xdisp.c (redisplay_window): If mini window's buffer is not
7089 empty, then redisplay it like other windows.
7090
7091 2003-03-23 Kim F. Storm <storm@cua.dk>
7092
7093 * w32term.c (w32_draw_window_cursor): Fix last change.
7094
7095 2003-03-23 Kenichi Handa <handa@m17n.org>
7096
7097 * alloc.c (make_string_from_bytes, make_specified_string):
7098 Add `const' for the arg CONTENTS.
7099
7100 * lisp.h (make_string_from_bytes, make_specified_string):
7101 Prototypes adjusted.
7102
7103 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7104
7105 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
7106
7107 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
7108 (XG_SB_RANGE): New define.
7109
7110 * gtkutil.c (xg_fixed_handle_expose): New function.
7111 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
7112 expose events.
7113 (xg_update_scrollbar_pos): Take two more arguments, left and width
7114 of scroll bar including borders.
7115 Clear left and right part outside scroll bar separately as some
7116 themes have bars that are not an even number of pixels.
7117 Don't set reallocate_redraws, don't call
7118 gdk_window_process_all_updates.
7119 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
7120 so no need to change it. Calculate size and value with XG_SB_RANGE.
7121
7122 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
7123 Pass left and width of scroll bar including borders to
7124 xg_update_scrollbar_pos.
7125
7126 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
7127
7128 * Makefile.in: Make sure space precedes end-of-line backslashes.
7129
7130 2003-03-22 Kim F. Storm <storm@cua.dk>
7131
7132 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
7133 Add generic versions here. Remove system specific versions
7134 defined elsewhere.
7135
7136 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
7137 Add prototypes.
7138
7139 * xterm.h (STORE_NATIVE_RECT): New macro.
7140
7141 2003-03-21 Kim F. Storm <storm@cua.dk>
7142
7143 * xdisp.c (get_glyph_string_clip_rect):
7144 Use FRAME_INTERNAL_BORDER_WIDTH.
7145
7146 * dispextern.h (struct redisplay_interface): Add active_p
7147 argument to draw_window_cursor member. All uses changed.
7148
7149 2003-03-21 Kim F. Storm <storm@cua.dk>
7150
7151 The following changes consolidate code related to writing and
7152 inserting glyphs, exposing frame, the tool bar, the mouse face,
7153 the output cursor, and help echo from xterm.c, w32term.c and
7154 macterm.c into xdisp.c. It also generalizes the use of the
7155 window_part enum instead of using numeric values throughout.
7156
7157 * xdisp.c: Consolidate gui-independent code here.
7158 Include keymap.h.
7159 (Qhelp_echo): Import.
7160 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
7161 (help_echo_string, help_echo_window, help_echo_object)
7162 (previous_help_echo_string, help_echo_pos): Declare here.
7163 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
7164 (estimate_mode_line_height): Define here. Handle windowing
7165 systems directly (without using estimate_mode_line_height_hook).
7166 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
7167 (update_window_cursor, update_cursor_in_window_tree)
7168 (fast_find_position, fast_find_string_pos)
7169 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
7170 (expose_area, expose_line, expose_overlaps, expose_window)
7171 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
7172 declared static as they are only used locally in xdisp.c.
7173 (draw_glyphs): Rename from x_draw_glyphs and make static.
7174 (tool_bar_item_info, notice_overwritten_cursor): Make static.
7175 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7176 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
7177 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
7178 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7179 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
7180 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
7181 (note_mouse_highlight, x_clear_window_mouse_face)
7182 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
7183 (x_intersect_rectangles): New generic functions for use by xdisp.c
7184 and GUI front-ends.
7185 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
7186 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
7187
7188 * dispextern.h (Display_Info): Generic typedef for *_display_info.
7189 (NativeRectangle): Generic typedef for rectangle type.
7190 (enum window_part): Move here from window.c.
7191 (struct redisplay_interface): New members flush_display_optional,
7192 define_frame_cursor, clear_frame_area, draw_window_cursor,
7193 draw_vertical_window_border, shift_glyphs_for_insert.
7194 Rename member clear_mouse_face to clear_window_mouse_face.
7195 (estimate_mode_line_height_hook): Remove hook.
7196 (auto_raise_tool_bar_buttons_p): Don't declare extern.
7197 (tool_bar_item_info): Remove prototype.
7198 (help_echo_string, help_echo_window, help_echo_object)
7199 (previous_help_echo_string, help_echo_pos)
7200 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
7201 (x_stretch_cursor_p, output_cursor): Declare extern.
7202 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
7203 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
7204 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
7205 (display_and_set_cursor, set_output_cursor, x_cursor_to)
7206 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
7207 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
7208 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
7209 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
7210 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
7211 Add prototypes.
7212 (mode_line_string, marginal_area_string): Fix prototypes.
7213
7214 * window.c (enum window_part): Move to dispextern.h.
7215 (coordinates_in_window): Use enum window_part member names
7216 instead of numbers to describe return value.
7217 (struct check_window_data): Change part member to window_part.
7218 (check_window_containing): Return window_part unaltered.
7219 (window_from_coordinates): Change part arg from int to enum
7220 window_part. Allow part arg to be null. All users changed.
7221
7222 * window.h (window_from_coordinates): Fix prototype.
7223
7224 * term.c (estimate_mode_line_height): Move to xdisp.c.
7225
7226 * keyboard.c (make_lispy_event): Use enum window_part.
7227
7228 * dispnew.c (mode_line_string, marginal_area_string): Use enum
7229 window_part instead of int in arg list. Users changed.
7230
7231 * xterm.h (No_Cursor): Declare as None for X.
7232 (struct mac_output): Replace member cross_cursor by hand_cursor.
7233
7234 * xterm.c: Remove consolidated defines and code.
7235 (BETWEEN): Remove unused macro.
7236 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
7237 (x_define_frame_cursor, x_clear_frame_area)
7238 (x_draw_window_cursor): New X-specific functions for RIF.
7239 (x_redisplay_interface): Add new members.
7240
7241 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
7242
7243 * w32term.h (struct w32_output): Remove cross_cursor member.
7244
7245 * w32term.c: Remove consolidated defines and code.
7246 (BETWEEN): Remove unused macro.
7247 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
7248 (w32_define_frame_cursor, w32_clear_frame_area)
7249 (w32_draw_window_cursor): New W32-specific functions for RIF.
7250 (w32_redisplay_interface): Add new members.
7251
7252 * w32gui.h (No_Cursor): Define as 0 for W32.
7253 (XRectangle): Add X compatible rectangle type.
7254 (NativeRectangle): Declare as RECT for W32.
7255 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7256
7257 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
7258
7259 * w32console.c: Remove consolidated defines and code.
7260
7261 * msdos.h (Display_Info): Add generic typedef.
7262
7263 * msdos.c: Remove consolidated defines and code.
7264 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
7265
7266 * macterm.h (struct mac_output): Replace member cross_cursor by
7267 hand_cursor.
7268 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
7269
7270 * macterm.c: Remove consolidated defines and code.
7271 (BETWEEN): Remove unused macro.
7272 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
7273 (mac_define_frame_cursor, mac_clear_frame_area)
7274 (mac_draw_window_cursor): New Mac-specific functions for RIF.
7275 (x_redisplay_interface): Add new members.
7276
7277 * macgui.h (No_Cursor): Define as 0 for Mac.
7278 (XRectangle): Add X compatible rectangle type.
7279 (NativeRectangle): Declare as Rect for Mac.
7280 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
7281
7282 * macfns.c (x_set_mouse_color): Setup hand_cursor.
7283 (x_set_cursor_color): Use x_display_and_set_cursor.
7284
7285 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
7286 included from it. Add dependency on keymap.h.
7287
7288 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
7289
7290 2003-03-21 Kenichi Handa <handa@m17n.org>
7291
7292 * fileio.c (Fexpand_file_name): Fix previous change.
7293
7294 2003-03-19 Kenichi Handa <handa@m17n.org>
7295
7296 * fileio.c (Ffile_name_directory): Reconstruct file name by
7297 make_specified_string.
7298 (Ffile_name_nondirectory, Ffile_name_as_directory)
7299 (Fdirectory_file_name, Fexpand_file_name)
7300 (Fsubstitute_in_file_name): Likewise.
7301 (Fread_file_name): Compare decoded homedir with DIR and
7302 DEFAULT_FILENAME.
7303
7304 * alloc.c (make_specified_string): If NCHARS is negative, count
7305 the number of characters.
7306
7307 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7308
7309 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
7310 all widgets.
7311
7312 * gtkutil.h: Removed xg_ignore_next_thumb.
7313
7314 2003-03-18 Kenichi Handa <handa@m17n.org>
7315
7316 * coding.c (Vchar_coding_system_table): Remove this variable.
7317 (Vcoding_system_safe_chars): New variable.
7318 (intersection): Remove this function.
7319 (find_safe_codings): Don't use Vchar_coding_system_table, but try
7320 all codings in SAFE_CODINGS.
7321 (Ffind_coding_systems_region_internal): Adjust for the change of
7322 find_safe_codings. Get generic coding systems from
7323 Vcoding_system_safe_chars.
7324 (Fdefine_coding_system_internal): New function.
7325 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
7326 Initialize and staticpro Vcoding_system_safe_chars.
7327
7328 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7329
7330 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
7331 equal old values before updating.
7332
7333 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
7334
7335 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
7336
7337 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7338
7339 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
7340 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
7341 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
7342 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
7343 (xg_create_scroll_bar): Pass bar to button event callback.
7344 (xg_find_top_left_in_fixed): New function.
7345 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
7346 whole scroll bar area. Get old position with
7347 xg_find_top_left_in_fixed, calculate and only clear needed areas.
7348 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
7349 dragging is in progress. Calculate whole as for Motif.
7350 Remove code that saved last values. Call gtk_range functions to
7351 set scroll bar sizes.
7352
7353 * gtkutil.h: Removed xg_ignore_next_thumb.
7354
7355 2003-03-17 Juanma Barranquero <lektu@terra.es>
7356
7357 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
7358 and files included from it.
7359
7360 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
7361
7362 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
7363 multiple occurrences of the same keymap under different prefixes.
7364 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
7365
7366 2003-03-16 Jason Rumney <jasonr@gnu.org>
7367
7368 * w32gui.h: Use HDC for Display.
7369
7370 * w32term.c (w32_encode_char): Prevent double-byte chars from
7371 crashing Emacs.
7372
7373 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
7374 as binary.
7375
7376 2003-03-16 Juanma Barranquero <lektu@terra.es>
7377
7378 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
7379
7380 2003-03-16 Kim F. Storm <storm@cua.dk>
7381
7382 The following changes consolidate some of the gui-independent
7383 parts of the processing and drawing of "glyph strings" from
7384 xterm.c, w32term.c, and macterm.c into xdisp.c.
7385
7386 * dispextern.h (struct glyph): Reduce face_id member from 22 to
7387 21 bits (this reduces number of faces from 4M to 2M).
7388 Replace W32 specific w32_font_type member (2 bits) by generic
7389 font_type member (3 bits) for portability.
7390 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
7391 (enum draw_glyphs_face): Define here.
7392 (struct glyph_string): Define here. Merge W32 and X versions.
7393 (struct redisplay_interface): New members per_char_metric,
7394 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
7395 (VCENTER_BASELINE_OFFSET): Define here.
7396 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
7397 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
7398
7399 * xdisp.c: Consolidate gui-independent "glyph string" code here.
7400 (dump_glyph_string): Moved here.
7401 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
7402 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
7403 (fill_composite_glyph_string, fill_glyph_string)
7404 (fill_image_glyph_string, fill_stretch_glyph_string)
7405 (left_overwritten, left_overwriting, right_overwritten)
7406 (right_overwriting, get_char_face_and_encoding)
7407 (set_glyph_string_background_width, compute_overhangs_and_x)
7408 (append_glyph, append_composite_glyph, produce_image_glyph)
7409 (take_vertical_position_into_account, append_stretch_glyph)
7410 (produce_stretch_glyph): New generic functions (based on X version).
7411 Call platform specific functions through rif.
7412 (INIT_GLYPH_STRING): New macro, hides W32 details.
7413 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
7414 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
7415 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
7416 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
7417 (notice_overwritten_cursor):
7418 Generic functions exported to platform modules. Users changed.
7419
7420 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
7421 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
7422 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
7423 New macros for consolidated code.
7424
7425 * xterm.c: Remove consolidated defines and code.
7426 (x_per_char_metric, x_encode_char)
7427 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
7428 (x_redisplay_interface): Add new members.
7429
7430 * w32gui.h (Display): Add dummy typedef for consolidation.
7431 (XChar2b): Define alias for wchar_t for consolidation.
7432 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7433
7434 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
7435 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
7436 New macros for consolidation.
7437
7438 * w32term.c: Remove consolidated defines and code.
7439 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
7440 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
7441 (w32_per_char_metric): Change font_type arg to int for RIF.
7442 (w32_encode_char): Return int according to RIF requirements.
7443 (w32_compute_glyph_string_overhangs): Adapt to RIF.
7444 (w32_get_glyph_overhangs): New function for RIF. Uses generic
7445 x_get_glyph_overhangs.
7446 (w32_redisplay_interface): Add new members.
7447
7448 * macgui.h (XChar2b): Move typedef here for consolidation.
7449 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
7450
7451 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
7452 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
7453 consolidation.
7454
7455 * macterm.c: Remove consolidated defines and code.
7456 (mac_per_char_metric): New function for RIF.
7457 (mac_encode_char): Adapt to new RIF requirements.
7458 (mac_compute_glyph_string_overhangs): Adapt for RIF.
7459 (x_redisplay_interface): Add new members.
7460
7461 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
7462
7463 * keymap.c (Vmenu_events): New var.
7464 (syms_of_keymap): Initialize it.
7465 (where_is_internal): Check more carefully what is a menu event.
7466
7467 2003-03-14 Richard M. Stallman <rms@gnu.org>
7468
7469 * lread.c (read1): After #!, exit loop on eof.
7470
7471 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7472
7473 * gtkutil.h: Add declaration for xg_frame_cleared.
7474
7475 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
7476
7477 * gtkutil.c (struct xg_last_sb_pos): New structure.
7478 (handle_fixed_child): New function.
7479 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
7480 and force a redraw on them.
7481 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
7482 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
7483 so we can avoid unneeded redraws.
7484 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
7485 and force a redraw on the scroll bar.
7486 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
7487 if xg_last_sb_pos shows the positions are up to date.
7488 (xg_frame_cleared): New function.
7489
7490 2003-03-13 Kenichi Handa <handa@m17n.org>
7491
7492 * coding.c (Fdetect_coding_region): Fix docstring.
7493 (Fdetect_coding_string): Fix docstring.
7494
7495 2003-03-13 Andreas Schwab <schwab@suse.de>
7496
7497 * gtkutil.c: Add prototype for create_menus.
7498
7499 * data.c (long_to_cons): Fix type of top.
7500
7501 * xselect.c (selection_data_to_lisp_data): Use int instead of
7502 long for an integer of size 4.
7503
7504 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
7505 (xg_tool_bar_help_callback): Likewise.
7506
7507 2003-03-12 Andreas Schwab <schwab@suse.de>
7508
7509 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
7510
7511 2003-03-12 Kim F. Storm <storm@cua.dk>
7512
7513 The following changes consolidate the fringe handling from
7514 xterm.c, w32term.c, and macterm.c into xdisp.c.
7515
7516 * xdisp.c: Consolidate fringe handling code here.
7517 (left_bits, right_bits, continued_bits, continuation_bits)
7518 (ov_bits, zv_bits): Define fringe bitmaps.
7519 (fringe_bitmaps): New array holding fringe bitmaps.
7520 (draw_fringe_bitmap): Draw a specific bitmap; call display
7521 specific drawing routine via rif->draw_fringe_bitmap.
7522 (draw_row_fringe_bitmaps): Generic replacement for
7523 x_draw_row_fringe_bitmaps; all callers changed.
7524 (compute_fringe_widths): Generic replacement for
7525 x_compute_fringe_widths; all callers changed.
7526
7527 * dispextern.h (enum fringe_bitmap_type): Define here.
7528 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
7529 (fringe_bitmaps): Declare extern.
7530 (struct redisplay_interface): New member draw_fringe_bitmap.
7531 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
7532
7533 * xterm.c: Remove generic fringe code.
7534 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7535 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7536
7537 * w32term.c: Remove generic fringe code.
7538 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
7539 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
7540
7541 * macterm.c: Remove generic fringe code.
7542 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
7543 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
7544
7545 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
7546
7547 * print.c (Fprin1_to_string): Return unibyte string if possible.
7548
7549 2003-03-09 David Kastrup <dak@gnu.org>
7550
7551 * process.c (read_process_output): We have allocated enough space
7552 for readmax and carryover, so actually use the alloted space.
7553
7554 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7555
7556 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
7557 toolkit scrollbar click.
7558
7559 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
7560 for USE_GTK.
7561 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
7562 also.
7563 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
7564 scrollbar and control is pressed, call x_scroll_bar_handle_click.
7565
7566 * gtkutil.h: Declare xg_get_scroll_id_for_window.
7567
7568 * gtkutil.c (xg_get_scroll_id_for_window): New function.
7569 (xg_tool_bar_item_expose_callback): New function.
7570 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
7571 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
7572 on the tool bar widget.
7573 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
7574 to expose on the tool bar item widgets.
7575
7576 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7577
7578 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
7579 struct image* when deciding to update (struct image* may have been
7580 deleted from the image cache).
7581
7582 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
7583 the event isn't for a frame (i.e. for dialogs).
7584
7585 2003-03-07 Kenichi Handa <handa@m17n.org>
7586
7587 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
7588 composition components reaches the limit, terminate composing.
7589 (COMPOSITION_OK): New macro.
7590 (detect_coding_iso2022): Use it if an escape sequence for
7591 composition is found.
7592 (coding_restore_composition): Adjust the number of composition
7593 components if it is not sane.
7594
7595 2003-03-06 Juanma Barranquero <lektu@terra.es>
7596
7597 * w32term.h (struct w32_display_info): Add xrdb member to support
7598 passing resources via -xrm on Windows.
7599
7600 * w32term.c (w32_make_rdb): New function.
7601 (w32_term_init): Use it to initialize xrdb member of w32_display_info
7602 struct. Delete leftover code.
7603
7604 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
7605 for resources passed on the command line.
7606
7607 * w32reg.c (w32_get_rdb_resource): New function.
7608 (x_get_string_resource): Use it, so resources passed with -xrm
7609 supercede the ones in the registry.
7610
7611 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7612
7613 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
7614 instead of x_top_window_to_frame.
7615
7616 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7617
7618 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
7619 when restarting Emacs.
7620
7621 2003-03-03 Richard M. Stallman <rms@gnu.org>
7622
7623 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
7624 to run kill-buffer-query-functions.
7625 (Qkill_buffer_query_functions): New var.
7626 (syms_of_buffer): Init and staticpro it.
7627
7628 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7629
7630 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
7631
7632 2003-02-25 Kim F. Storm <storm@cua.dk>
7633
7634 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
7635 If centering point failed to make whole line visible and vscroll
7636 is non-zero, disable vscroll and try centering point again.
7637
7638 * lread.c (read1): Accept `single space' syntax like (? x).
7639
7640 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7641
7642 * keyboard.c (cancel_hourglass_unwind): Surround with
7643 #ifdef HAVE_X_WINDOWS
7644
7645 2003-02-25 Kenichi Handa <handa@m17n.org>
7646
7647 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
7648 process only when "subprocesses" is defined.
7649
7650 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
7651
7652 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
7653
7654 2003-02-24 Juanma Barranquero <lektu@terra.es>
7655
7656 * callint.c (fix_command): Declare as static void and move before
7657 Fcall_interactively.
7658
7659 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
7660 (syms_of_xdisp): Don't initialize Qwhen.
7661
7662 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7663
7664 * keyboard.c (cancel_hourglass_unwind): New function.
7665 (command_loop_1): Cancel hourglass with unwind-protect.
7666
7667 2003-02-23 Richard M. Stallman <rms@gnu.org>
7668
7669 * callint.c (fix_command): New subroutine, from Fcall_interactively.
7670 Detect (when ... (region-beginning)) etc.
7671 (Fcall_interactively): Call fix_command.
7672 (Qif, Qwhen): New variables.
7673 (syms_of_callint): Init and staticpro them.
7674
7675 * regex.c (print_partial_compiled_pattern): Output to stderr.
7676
7677 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7678
7679 * dired.c (directory_files_internal): Don't expand directory.
7680 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
7681 instead. From Lars Hansen <larsh@math.ku.dk>.
7682
7683 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
7684
7685 * fns.c (string_to_multibyte): Remove unused var i.
7686 (Flanginfo): Fix int/Lisp_Object mixup.
7687 (void_call2): New fun.
7688 (Fmap_char_table): Use it in place of call2.
7689
7690 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
7691
7692 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
7693
7694 * keymap.c (copy_keymap_1): Make it static.
7695
7696 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
7697
7698 2003-02-22 David Ponce <david@dponce.com>
7699
7700 * lread.c (Fload): Don't check STRING_MULTIBYTE.
7701
7702 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7703
7704 * process.h: Removed subtty field from struct Lisp_Process.
7705
7706 * process.c (create_process): Remove setting of subtty.
7707 (emacs_get_tty_pgrp): New function.
7708 (Fprocess_running_child_p, process_send_signal):
7709 Call emacs_get_tty_pgrp instead of ioctl.
7710 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
7711
7712 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
7713
7714 * keymap.c (Fdefine_key): Doc fix.
7715
7716 2003-02-21 Juanma Barranquero <lektu@terra.es>
7717
7718 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
7719
7720 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
7721 POLLING_PROBLEM_IN_SELECT.
7722
7723 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
7724 Delete #undef of POLLING_PROBLEM_IN_SELECT.
7725
7726 * s/hpux10-20.h: New file.
7727
7728 * process.c (wait_reading_process_input):
7729 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
7730
7731 2003-02-20 Kenichi Handa <handa@m17n.org>
7732
7733 * fontset.c (check_fontset_name): If NAME is nil, return the
7734 default fontset.
7735 (override_font_info): New function.
7736 (Fset_fontset_font): Document that NAME nil means the default fontset.
7737 (Ffontset_info): If FONTSET is not the default fontset, merge
7738 FONTSET onto the copy of the default fontset, and work on that
7739 copy. Document that NAME nil means the default fontset.
7740 (Ffontset_font): Document that NAME nil means the default fontset.
7741
7742 * process.c (setup_process_coding_systems): If the process's
7743 in/out descriptor is -1, do nothing.
7744
7745 2003-02-19 Andreas Schwab <schwab@suse.de>
7746
7747 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
7748 Add prototypes.
7749
7750 2003-02-19 Kenichi Handa <handa@m17n.org>
7751
7752 * xfaces.c (try_alternative_families): Try all scalable fonts if
7753 Vscalable_fonts_allowed is not Qt.
7754
7755 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7756
7757 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
7758
7759 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7760
7761 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
7762 names.
7763
7764 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
7765 (sorted_font_list): Move allocation of struct font_name to
7766 x_face_list_fonts.
7767 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
7768 (Fx_list_fonts): Set maxnames to -1 to get all font names.
7769
7770 2003-02-18 Kim F. Storm <storm@cua.dk>
7771
7772 * lread.c (read1): Fix last change.
7773 "`" is not always special. Allow "?" after a character constant.
7774
7775 2003-02-18 Andrew Choi <akochoi@shaw.ca>
7776
7777 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
7778
7779 2003-02-18 Andreas Schwab <schwab@suse.de>
7780
7781 * window.c (window_scroll_pixel_based): Move outside a
7782 multi-glyph character before setting new window start.
7783
7784 * xdisp.c (in_display_vector_p): New function.
7785 * dispextern.h (in_display_vector_p): Declare.
7786
7787 2003-02-18 Kim F. Storm <storm@cua.dk>
7788
7789 * lread.c (read1): Fix and relax read syntax.
7790 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
7791 Only recognize "," after dotted-pair dot if inside backquote.
7792 Never include "`" or "," (inside backquote) in a symbol.
7793 Allow dotted-pair dot after a character constant.
7794 Allow "`" and "," (inside backquote) after a character constant.
7795
7796 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7797
7798 * gtkutil.c (xg_tool_bar_expose_callback): New function.
7799 (xg_create_tool_bar): Force style of tool bar to be horizontal with
7800 icons. Set name of tool bar to emacs-toolbar.
7801 (update_frame_tool_bar): Connect expose event to
7802 xg_tool_bar_expose_callback.
7803
7804 2003-02-17 Richard M. Stallman <rms@gnu.org>
7805
7806 * keyboard.c (this_command_key_count_reset): New variable.
7807 Initiatize to 0 where this_command_key_count is set.
7808 (read_char): Save and restore this_command_key_count_reset
7809 around input method code.
7810 (read_char): If this_command_key_count_reset, echo reread commands.
7811 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
7812
7813 2003-02-17 Kenichi Handa <handa@m17n.org>
7814
7815 * fns.c (string_to_multibyte): Always return a multibyte string.
7816
7817 2003-02-16 Jason Rumney <jasonr@gnu.org>
7818
7819 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
7820 Negative max_fonts parameter means list all.
7821
7822 2003-02-14 Dave Love <fx@gnu.org>
7823
7824 * fns.c (Flanginfo): Doc fix.
7825
7826 2003-02-13 Kim F. Storm <storm@cua.dk>
7827
7828 * lread.c (read_escape): Interpret \s as a SPACE character, except
7829 for \s-X in a character constant which still is the super modifier.
7830 (read1): Signal an `invalid read syntax' error if a character
7831 constant is immediately followed by a digit or symbol character.
7832
7833 * search.c (Fmatch_data): Doc fix. Explicitly state that
7834 match-data is undefined if last search failed.
7835
7836 * keymap.c (Fcommand_remapping): Renamed from Fremap_command.
7837 All uses changed.
7838
7839 2003-02-12 Juanma Barranquero <lektu@terra.es>
7840
7841 * eval.c (Fdefmacro): Fix typo.
7842
7843 2003-02-12 Kim F. Storm <storm@cua.dk>
7844
7845 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
7846 macro is a string, convert meta modifiers in string when copying
7847 the string into a vector.
7848
7849 2003-02-11 Kim F. Storm <storm@cua.dk>
7850
7851 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
7852
7853 2003-02-11 Kenichi Handa <handa@m17n.org>
7854
7855 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
7856
7857 2003-02-10 Kim F. Storm <storm@cua.dk>
7858
7859 * process.c: Doc fixes.
7860 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
7861
7862 2003-02-10 Kenichi Handa <handa@m17n.org>
7863
7864 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
7865
7866 * process.c (QCfilter_multibyte): New variable.
7867 (setup_process_coding_systems): New function.
7868 (Fset_process_buffer, Fset_process_filter):
7869 Call setup_process_coding_systems.
7870 (Fstart_process): Initialize the member `filter_multibyte' of
7871 struct Lisp_Process.
7872 (create_process): Call setup_process_coding_systems.
7873 (Fmake_network_process): New keyward `:filter-multibyte'.
7874 Initialize the member `filter_multibyte' of struct Lisp_Process.
7875 Call setup_process_coding_systems.
7876 (server_accept_connection): Call setup_process_coding_systems.
7877 (read_process_output): If the process has a filter, decide the
7878 multibyteness of a string to given to the filter by
7879 `filter_multibyte' member of the process. If the process doesn't
7880 have a filter and the result of conversion is unibyte, use
7881 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
7882 multibyte form.
7883 (Fset_process_coding_system): Call setup_process_coding_systems.
7884 (Fset_process_filter_multibyte): New function.
7885 (Fprocess_filter_multibyte_p): New function.
7886 (syms_of_process): Intern and staticpro QCfilter_multibyte.
7887 Defsubr Sset_process_filter_multibyte and
7888 Sprocess_filter_multibyte_p.
7889
7890 * process.h (struct Lisp_Process): New member filter_multibyte.
7891
7892 * lisp.h (setup_process_coding_systems): Add prototype.
7893
7894 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
7895 process, update coding systems for the process.
7896
7897 2003-02-09 Kenichi Handa <handa@m17n.org>
7898
7899 * fns.c (string_to_multibyte): New function.
7900 (Fstring_to_multibyte): New function.
7901 (syms_of_fns): Defsubr it.
7902
7903 2003-02-08 Andreas Schwab <schwab@suse.de>
7904
7905 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
7906 instead of the substitution.
7907
7908 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7909
7910 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
7911
7912 * xmenu.c (menu_position_func): Adjust menu popup position so that
7913 the menu is fully visible.
7914
7915 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7916
7917 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
7918 (x_make_frame_invisible, x_wm_set_icon_position):
7919 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
7920
7921 * xfns.c (x_set_name, x_set_title): Ditto.
7922
7923 2003-02-04 Richard M. Stallman <rms@gnu.org>
7924
7925 * keyboard.c (echo_now): Update before_command_echo_length.
7926 (Freset_this_command_lengths): Reset this_command_key_count etc.
7927 immediately rather than arranging to do it later.
7928 (before_command_key_count_1, before_command_echo_length_1)
7929 (before_command_restore_flag): Vars deleted.
7930 (add_command_key): Don't handle before_command_restore_flag.
7931 (read_char, record_menu_key): Don't update before_command_key_count or
7932 before_command_echo_length.
7933 (read_char): Don't handle before_command_restore_flag.
7934
7935 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
7936 in direct-output clauses if it wouldn't be called in the ordinary case.
7937
7938 2003-02-04 Kim F. Storm <storm@cua.dk>
7939
7940 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
7941
7942 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7943
7944 * gtkutil.c (remove_from_container): Copying list is not needed.
7945 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
7946 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
7947 on list returned from gtk_container_get_children to avoid memory leak.
7948
7949 2003-02-01 Jason Rumney <jasonr@gnu.org>
7950
7951 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
7952 local malloc.
7953 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
7954 definitions in xpm.h.
7955 (init_xpm_functions): New function.
7956 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
7957 (init_external_image_libraries): Try to load libXpm.dll.
7958
7959 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
7960 timestamp.
7961
7962 2003-01-31 Dave Love <fx@gnu.org>
7963
7964 * syntax.c (Fskip_chars_forward)
7965 (open-paren-in-column-0-is-defun-start): Doc fix.
7966
7967 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
7968
7969 * fileio.c: Support // at start of name for Cygwin (just added proper
7970 preprocessor tests).
7971
7972 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
7973
7974 * Makefile.in: Use @EXEEXT@ for Cygwin.
7975
7976 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
7977
7978 * s/cygwin.h: Added for Cygwin port.
7979
7980 2003-01-31 Juanma Barranquero <lektu@terra.es>
7981
7982 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
7983 when including gif_lib.h.
7984 (init_gif_functions, init_tiff_functions): New functions.
7985 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
7986 Windows. Disable color table lookups. Call library functions
7987 through pointers determined at runtime.
7988 (init_external_image_libraries): Try to load libungif.dll and
7989 libtiff.dll.
7990
7991 2003-01-31 Kenichi Handa <handa@m17n.org>
7992
7993 * xdisp.c (SKIP_GLYPHS): New macro.
7994 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
7995
7996 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7997
7998 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
7999
8000 2003-01-30 Dave Love <fx@gnu.org>
8001
8002 * alloc.c (Vgc_elapsed, gcs_done): New variables.
8003 (Fgarbage_collect): Use them.
8004 (init_alloc, syms_of_alloc): Set them up.
8005
8006 2003-01-30 Juanma Barranquero <lektu@terra.es>
8007
8008 * w32fns.c (init_external_image_libraries): Add missing operator.
8009
8010 2003-01-29 Jason Rumney <jasonr@gnu.org>
8011
8012 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
8013 an alternative name for jpeg.dll.
8014
8015 2003-01-29 Kenichi Handa <handa@m17n.org>
8016
8017 * xdisp.c (set_cursor_from_row): Pay attention to string display
8018 properties.
8019
8020 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
8021
8022 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
8023 <escape>.
8024 (keycode_to_xkeysym_table): Reformat and add more comments.
8025 (XTread_socket): Drop special case for backspace.
8026
8027 2003-01-28 Andrew Choi <akochoi@shaw.ca>
8028
8029 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
8030 values in old-style RGB specs.
8031
8032 2003-01-27 Juanma Barranquero <lektu@terra.es>
8033
8034 * w32fns.c (init_external_image_libraries): Try alternate names for the
8035 jpeg dll.
8036
8037 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8038
8039 * gtkutil.c (create_dialog, xg_separator_p)
8040 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
8041 before calling strcmp or strlen.
8042
8043 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8044
8045 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
8046 and handle image load failure.
8047
8048 2003-01-26 Jason Rumney <jasonr@gnu.org>
8049
8050 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
8051 New functions.
8052 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
8053 Disable color table lookups. Call jpeg library functions
8054 through pointers determined at runtime.
8055 (init_external_image_libraries): Try to load jpeg.dll.
8056
8057 2003-01-25 Richard M. Stallman <rms@gnu.org>
8058
8059 * lisp.h: Declare format2 instead of format1.
8060
8061 * fileio.c (barf_or_query_if_file_exists):
8062 Call format2 instead of format1.
8063
8064 * editfns.c (format2): New function, replaces format1
8065 but takes exactly two Lisp Objects as format args.
8066
8067 * buffer.c (Fkill_buffer): Call format2 instead of format1.
8068
8069 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8070
8071 * xterm.h: Change to return value of x_dispatch_event to int.
8072
8073 * xterm.c (x_filter_event): New function.
8074 (event_handler_gdk, XTread_socket): Call x_filter_event.
8075 (x_dispatch_event): Change to return value of finish.
8076 (event_handler_gdk): Use return value from x_dispatch_event.
8077
8078 * xfns.c (x_window): Call create_frame_xic for GTK version to
8079 initialize input methods.
8080
8081 * gtkutil.h: Add (void) prototypes.
8082
8083 * gtkutil.c (create_menus): Remove code that puts the help menu to
8084 the right.
8085
8086 2003-01-25 Jason Rumney <jasonr@gnu.org>
8087
8088 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
8089 [HAVE_PNG]: Sync with xfns.c version.
8090 (png_load): Adjust colors for Windows. Use Windows
8091 bitmaps. Disable color table lookups.
8092 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
8093 (init_png_functions): New function.
8094 (png_read_from_memory, png_load): Call png library functions
8095 through pointers determined at runtime.
8096 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
8097 (init_external_image_libraries): New function.
8098 (init_xfns): Call it.
8099
8100 2003-01-24 Andreas Schwab <schwab@suse.de>
8101
8102 * minibuf.c (Fminibuffer_message): Verify type of parameter.
8103
8104 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8105
8106 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
8107 of static initializer.
8108
8109 2003-01-24 Dave Love <fx@gnu.org>
8110
8111 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
8112 architectures.
8113
8114 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
8115 Use __alignof__.
8116
8117 2003-01-24 Kenichi Handa <handa@m17n.org>
8118
8119 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
8120 It it is nonzero, don't pretend that an invisible area doesn't exist.
8121 (command_loop_1): Call adjust_point_for_property with proper
8122 second arg.
8123
8124 2003-01-22 Jason Rumney <jasonr@gnu.org>
8125
8126 Sync changes with xterm.c and xfns.c.
8127
8128 * w32term.c (x_draw_glyph_string_foreground)
8129 (x_draw_composite_glyph_string_foreground): Implement overstriking.
8130
8131 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
8132 phys_cursor's hpos is overwritten. This is still not completely
8133 correct, as it doesn't really make sense to use hpos at all to
8134 get the cursor glyph (as that is relative to the width of the
8135 characters on the line, which may have changed during the update).
8136
8137 * w32term.c (notice_overwritten_cursor): Handle the special case
8138 of the cursor being in the first blank non-text line at the
8139 end of a window.
8140
8141 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
8142 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
8143 Compute from the x position returned by x_draw_glyphs.
8144
8145 (x_display_and_set_cursor): Don't set phys_cursor_width here,
8146 except for NO_CURSOR and system caret, to make phys_cursor_width
8147 contain what its name suggests.
8148 (notice_overwritten_cursor): Consider the cursor image erased if
8149 the output area intersects the cursor image in y-direction.
8150
8151 * w32term.c (note_mode_line_or_margin_highlight): Rename from
8152 note_mode_line_highlight and extend.
8153
8154 * w32term.c (last_window): New variable.
8155 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
8156 (note_mouse_movement): Remove reimplemented code in #if 0.
8157
8158 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
8159 not update_mode_lines, and always set it to 1.
8160
8161 2003-01-21 Jason Rumney <jasonr@gnu.org>
8162
8163 * w32fns.c (IDC_HAND): Define it if system headers don't.
8164
8165 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8166
8167 * w32term.h (struct w32_output): New member hand_cursor.
8168 (WM_EMACS_SETCURSOR): New message definition.
8169
8170 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
8171 function w32_define_cursor.
8172 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
8173 position, change member name output_data.x to output_data.w32 and
8174 add function w32_define_cursor.
8175 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
8176 and change member name output_data.x to output_data.w32.
8177 (w32_initialize_display_info):
8178 Setup dpyinfo->vertical_scroll_bar_cursor.
8179
8180 * w32fns.c (Vx_hand_shape): New variable.
8181 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
8182 WM_EMACS_SETCURSOR.
8183 (x-create-frame): Setup Cursor types.
8184
8185 2003-01-21 David Ponce <david@dponce.com>
8186
8187 * w32term.c (w32_encode_char): For DIM=1 charset, set
8188 ccl->reg[2] to -1 before calling ccl_driver. (Sync. with xterm.c
8189 x_encode_char change by Kenichi Handa <handa@m17n.org> on
8190 2002-09-30.)
8191 (w32_draw_relief_rect): Declare all args.
8192 (w32_define_cursor): New.
8193
8194 * w32fns.c (w32_load_cursor): New function.
8195 (w32_init_class): Use it.
8196 (x_put_x_image): Declare all args.
8197
8198 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8199
8200 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
8201
8202 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8203
8204 * gtkutil.c: Must include stdio.h before termhooks.h
8205
8206 2003-01-21 Dave Love <fx@gnu.org>
8207
8208 * alloc.c (Fgc_status): Print zombie list.
8209 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8210 Fix assignment of zombies.
8211 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
8212 Don't take car of non-cons.
8213
8214 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8215
8216 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8217
8218 2003-01-20 David Ponce <david@dponce.com>
8219
8220 * w32menu.c (digest_single_submenu): Declare all args.
8221
8222 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
8223 changes in xmenu.c:
8224
8225 (parse_single_submenu): Use individual keymap's prompt
8226 string as pane name, if there is one.
8227 (set_frame_menubar): Save menu_items_n_panes from each call to
8228 parse_single_submenu and use it when calling digest_single_submenu.
8229
8230 2003-01-20 Steven Tamm <steventamm@mac.com>
8231
8232 * macterm.c (XTread_socket): Checks for valid, visible window
8233 before sending a scroll-wheel event.
8234
8235 2003-01-20 Richard M. Stallman <rms@gnu.org>
8236
8237 * xdisp.c (redisplay_window): If mini window's buffer is not
8238 a minibuffer, then redisplay it like other windows.
8239
8240 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8241
8242 * gtkutil.c (xg_create_frame_widgets): Check if there is an
8243 external tool bar before setting tool bar height.
8244
8245 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8246
8247 * xterm.c (handle_one_xevent): Surround popup_activated
8248 with #ifdef:s for non-toolkit version.
8249
8250 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
8251 (gtkutil.o): New file.
8252 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
8253 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
8254
8255 * gtkutil.c: New file for GTK version.
8256
8257 * gtkutil.h: New file for GTK version.
8258
8259 * xterm.h: Add xt_or_gtk_widget.
8260 Include gtk files for USE_GTK.
8261 (struct x_output): Add toolbar_height.
8262 (struct x_output): Add GTK widgets and Gdk size_hints.
8263 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
8264 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
8265 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
8266
8267 * xterm.c: Include gtkutil.h for USE_GTK.
8268 Declare extern void free_frame_menubar for USE_GTK.
8269 (note_mouse_highlight): Check popup_activated for USE_GTK.
8270 (xt_action_hook): Don't compile if USE_GTK.
8271 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
8272 (xg_scroll_callback): New function.
8273 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
8274 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
8275 for USE_GTK.
8276 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
8277 xg_show_scroll_bar for USE_GTK.
8278 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
8279 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
8280 (event_handler_gdk): New function for USE_GTK.
8281 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
8282 (handle_one_xevent): Make sure widget is mapped before
8283 calling x_real_positions for USE_GTK.
8284 (XTread_socket): Add GTK event loop for USE_GTK.
8285 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
8286 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
8287 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
8288 (x_iconify_frame): Add code for USE_GTK.
8289 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
8290 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
8291 is in gtkutil.c.
8292 (x_term_init): Add initialization for GTK.
8293 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
8294
8295 * xmenu.c: Include gtkutil.h for USE_GTK.
8296 (Fx_popup_menu): Use current position if x and y is NIL.
8297 (single_menu_item, single_menu_item, Fx_popup_dialog):
8298 Check for USE_GTK.
8299 (popup_widget_loop): New function for USE_GTK.
8300 (x_activate_menubar): Add code for USE_GTK.
8301 (popup_activate_callback, popup_deactivate_callback)
8302 (menu_highlight_callback, menubar_selection_callback):
8303 Add USE_GTK versions.
8304 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
8305 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
8306 (free_frame_menubar): Only compile if not USE_GTK. GTK version
8307 is in gtkutil.c.
8308 (popup_selection_callback): New version for USE_GTK.
8309 (create_and_show_popup_menu): New fuction, one USE_GTK version and
8310 one USE_X_TOOLKIT version.
8311 (xmenu_show): Call create_and_show_popup_menu.
8312 (dialog_selection_callback): New version for USE_GTK.
8313 (create_and_show_dialog): New fuction, one USE_GTK version and
8314 one USE_X_TOOLKIT version.
8315 (xdialog_show): Call create_and_show_dialog.
8316
8317 * xfns.c: Include gtkutil for USE_GTK.
8318 (x_window_to_frame, x_any_window_to_frame)
8319 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8320 (x_top_window_to_frame): Add code for USE_GTK.
8321 (x_set_background_color): Call xg_set_background_color for GTK.
8322 (x_set_menu_bar_lines): Check for USE_GTK.
8323 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
8324 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
8325 (x_window): Call xg_create_frame_widgets for USE_GTK.
8326 (Fx_create_frame): Check for USE_GTK
8327 (Fx_file_dialog): New implementation for USE_GTK.
8328
8329 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
8330 (update_menu_bar): Add check for USE_GTK.
8331 (update_tool_bar): Add check for USE_GTK and external tool bar.
8332 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
8333 (redisplay_internal): Add check for USE_GTK and popup_activated.
8334 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
8335 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
8336 (display_menu_bar): Add check for USE_GTK
8337
8338 * lisp.h: Declare Vx_resource_name extern.
8339
8340 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
8341 for USE_GTK.
8342 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
8343
8344 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
8345 (FRAME_EXTERNAL_TOOL_BAR): New macro.
8346 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
8347
8348 * fileio.c (Fread_file_name): Add check for USE_GTK.
8349
8350 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
8351 Add check for USE_GTK.
8352
8353 * config.in: Added HAVE_GTK
8354
8355 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
8356
8357 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
8358
8359 * charset.h (Funibyte_char_to_multibyte): Export.
8360
8361 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8362
8363 * xmenu.c (mouse_position_for_popup): New function.
8364 (Fx_popup_menu): Call mouse_position_for_popup for X and
8365 mouse_position_hook for others.
8366
8367 2003-01-17 Kim F. Storm <storm@cua.dk>
8368
8369 * editfns.c (Finsert): Mention `string-make-multibyte' and
8370 `string-as-multibyte' in doc string.
8371
8372 2003-01-17 Kenichi Handa <handa@m17n.org>
8373
8374 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
8375
8376 * editfns.c (Fformat): Convert an unibyte char argument that is
8377 formatted by "%c" to multibyte if the total result must be a
8378 multibyte string.
8379
8380 2003-01-16 Kim F. Storm <storm@cua.dk>
8381
8382 * process.c (set-process-filter): Document unibyte/multibyte-ness
8383 of string argument.
8384
8385 2003-01-16 Kenichi Handa <handa@m17n.org>
8386
8387 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
8388
8389 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
8390 (re_search_2): Likewise.
8391
8392 2003-01-15 Kenichi Handa <handa@m17n.org>
8393
8394 * xdisp.c (message_dolog): Fix bug of the case that *Message*
8395 buffer is unibyte.
8396
8397 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
8398
8399 * fns.c (Fsubstring): Clarify doc string.
8400
8401 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
8402 (Fprevious_char_property_change)
8403 (Fnext_single_char_property_change)
8404 (Fprevious_single_char_property_change, Fnext_property_change)
8405 (Fnext_single_property_change, Fprevious_property_change)
8406 (Fprevious_single_property_change, Fadd_text_properties)
8407 (Fput_text_property, Fset_text_properties)
8408 (Fremove_text_properties, Fremove_list_of_text_properties)
8409 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
8410
8411 2003-01-14 Kim F. Storm <storm@cua.dk>
8412
8413 * process.h (struct Lisp_Process): New member plist replaces old
8414 member private_vars. All uses changed.
8415
8416 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
8417 (QCplist): Rename from QCvars. Change all uses.
8418 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
8419 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
8420 (syms_of_process): Intern, staticpro, defsubr these.
8421 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
8422
8423 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
8424
8425 * m/delta.h: Remove (obsolete).
8426
8427 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
8428
8429 * fileio.c (Fdelete_directory, Fdelete_file): Document the
8430 behaviour in front of symlinks.
8431 (Fdelete_file): Raise an error on directories.
8432
8433 2003-01-13 Dave Love <fx@gnu.org>
8434
8435 * fns.c (Freverse): Use QUIT.
8436
8437 2003-01-13 Richard M. Stallman <rms@gnu.org>
8438
8439 * minibuf.c (minibuffer_completion_contents):
8440 Error if point is inside prompt.
8441
8442 * keyboard.c (command_loop_1): Don't redisplay directly
8443 if there's a post-command-hook.
8444
8445 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
8446 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
8447
8448 2003-01-12 Kim F. Storm <storm@cua.dk>
8449
8450 * process.h (struct Lisp_Process): New member private_vars.
8451
8452 * process.c (QCvars): New variable.
8453 (syms_of_process): Intern and staticpro it.
8454 (Fset_process_contact): Removed function.
8455 (Fprocess_variable, Fset_process_variable): New functions.
8456 (syms_of_process): Defsubr them.
8457 (Fstart_process): Initialize private_vars plist to nil.
8458 (Fmake_network_process): New arg :vars to setup the private
8459 variables for new network process.
8460 (server_accept_connection): Copy server's private variables to
8461 client process.
8462
8463 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
8464 crashes). Code rewritten and simplified. Now directly aligns the
8465 pointer and recalculates pure_bytes_used, rather than aligning the
8466 size and adjusting the pointer.
8467
8468 2003-01-11 Kim F. Storm <storm@cua.dk>
8469
8470 * process.c (Fset_process_contact): New function.
8471 (syms_of_process): defsubr it.
8472 (make-network-process): Update doc.
8473
8474 2003-01-10 Andreas Schwab <schwab@suse.de>
8475
8476 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
8477 Reported by Berthold Gunreben <b.gunreben@web.de>.
8478
8479 2003-01-10 Dave Love <fx@gnu.org>
8480
8481 * composite.c (syms_of_composite): Make composition_hash_table weak.
8482
8483 2003-01-09 Kim F. Storm <storm@cua.dk>
8484
8485 * process.c (Fmake_network_process): Convert new port number
8486 to host byte order for `:service t' case. From Mario Lang.
8487
8488 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8489
8490 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
8491 instead of XtAppProcessEvent.
8492
8493 * xterm.c (handle_one_xevent): New function.
8494 (x_dispatch_event): New function.
8495 (XTread_socket): Call handle_one_xevent.
8496
8497 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
8498
8499 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
8500 call XQueryPointer to get coordinates.
8501 (popup_get_selection): Do not set popup_activated_flag to zero,
8502 let popup_deactivate_callback do that. Needed for Motif.
8503 Call x_dispatch_event instead of XtDispatchEvent.
8504 (xmenu_show): Calculate root coordinate from frame top/left position.
8505
8506 2003-01-08 Kim F. Storm <storm@cua.dk>
8507
8508 * process.c (server_accept_connection): Fix recording of new
8509 connection's local address in :local property of contact info.
8510 (Fmake_network_process): Record local network address for new
8511 client processes in :local property of contact info.
8512 (format-network-address): Add arg OMIT-PORT. Change callers.
8513
8514 2003-01-07 Dave Love <fx@gnu.org>
8515
8516 * Makefile.in (fns.o): Depend on coding.h.
8517
8518 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
8519
8520 * minibuf.c (Fread_variable): Doc fix.
8521
8522 * eval.c (Fuser_variable_p): Doc change. For custom variables,
8523 use the same test as for custom-variable-p.
8524
8525 2003-01-05 Richard M. Stallman <rms@gnu.org>
8526
8527 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
8528 Count LAST_LINE_MISFIT in scroll margin for end of window.
8529 Move label too_near_end before setting SCROLL_MARGIN_POS.
8530 Set LAST_LINE_MISFIT before jumping there.
8531
8532 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
8533 scroll_conservatively case. If scrolling that much doesn't change
8534 STARTP, move it down one line.
8535
8536 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
8537 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
8538
8539 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
8540 selected frame.
8541
8542 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
8543 (syms_of_keymap): staticpro them.
8544 (Fapropos_internal): Initialize them and clear them out.
8545 Don't GCPRO them.
8546
8547 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
8548 Doc fixes.
8549
8550 * lisp.h: New misc type Lisp_Save_Value.
8551 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
8552 (XSAVE_VALUE): New macro.
8553 (struct Lisp_Save_Value): New data type.
8554 (union Lisp_Misc): Add u_save_value alternative.
8555 (make_save_value): Declared.
8556
8557 * alloc.c (make_save_value): New function.
8558
8559 * xterm.c (x_catch_errors): Save dpy using make_save_value.
8560 (x_catch_errors_unwind): Call XSync.
8561
8562 2003-01-01 Richard M. Stallman <rms@gnu.org>
8563
8564 * window.c (window_scroll_pixel_based): Partially undo last change.
8565
8566 * keyboard.c (command_loop_1): Call adjust_point_for_property
8567 in direct action cases for Qforward_char and Qbackward_char.
8568 Set already_adjusted so it won't be done twice.
8569
8570 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk> (tiny change)
8571
8572 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
8573 type definition of size_t.
8574
8575 2003-01-02 Steven Tamm <steventamm@mac.com>
8576
8577 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
8578 distinguish Carbon GUI builds from X11 builds on darwin.
8579
8580 2002-12-30 Steven Tamm <steventamm@mac.com>
8581
8582 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
8583 to default to t.
8584
8585 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
8586
8587 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
8588
8589 2002-12-28 Steven Tamm <steventamm@mac.com>
8590
8591 * Makefile.in (macosx-bundle): Fixes to Mac OS X/Carbon port to
8592 allow building in a different directory than source. Uses some
8593 GNU Make extensions, but there is no other make on Mac OS X.
8594
8595 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
8596
8597 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
8598 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
8599 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
8600 (Fstring_to_number): Mention the returned value in the doc strings.
8601
8602 2002-12-23 Richard M. Stallman <rms@gnu.org>
8603
8604 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
8605 <scroll-down-aggressively>: Doc fix.
8606
8607 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
8608 string as pane name, if there is one.
8609 (set_frame_menubar): Save menu_items_n_panes from each call to
8610 parse_single_submenu and use it when calling digest_single_submenu.
8611
8612 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
8613 Don't try to make last line fully visible if it is past end of window.
8614
8615 2002-12-22 Steven Tamm <steventamm@mac.com>
8616
8617 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
8618 (mac_menu_show): Add support for hierarchical popup menus.
8619 (add_menu_item): Remove indentation support.
8620 (fill_submenu, fill_menu): Create hierarchical menus
8621 instead of using indentation.
8622
8623 2002-12-22 Richard M. Stallman <rms@gnu.org>
8624
8625 * xdisp.c (try_cursor_movement): Don't call try_window here.
8626 (redisplay_window): Never redisplay minibuffer when inactive.
8627
8628 * window.c (select_window_1): Undo 9/21 change.
8629
8630 2002-12-22 Steven Tamm <steventamm@mac.com>
8631
8632 * macterm.c (XTread_socket): Call KeyTranslate for control and
8633 meta to deal correctly shifted non-alpha characters, like C-S-5
8634 being treated like C-%. Does not look for shift key to deal
8635 with masking off control-key with mac-reverse-ctrl-meta.
8636
8637 2002-12-21 Richard M. Stallman <rms@gnu.org>
8638
8639 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
8640 If it is non-nil, run timers. Use an unwind-protect to requeue
8641 the events that were read ahead.
8642 (popup_get_selection_unwind): New subroutine.
8643 (popup_get_selection_queue): File-scope variable now holds that queue.
8644 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
8645 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
8646 Use an unwind-protect to pop down the dialog box.
8647 (xdialog_show_unwind): New subroutine implements that.
8648
8649 * xdisp.c (row_containing_pos): Change exit test using last_y.
8650 (try_window_id): Abort if row_containing_pos returns null.
8651
8652 * lread.c (load_error_handler): New function.
8653 (Fload): Handle errors in Fsubstitute_in_file_name.
8654 Don't expect Fsignal to return.
8655
8656 * eval.c: Errors and throws work right with interrupt blocking.
8657 (struct catchtag): New elt interrupt_input_blocked.
8658 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
8659 (internal_catch, Fcondition_case, internal_condition_case)
8660 (internal_condition_case_1, internal_condition_case_2): Save it.
8661 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
8662
8663 * editfns.c (Fformat): Add parens.
8664
8665 * dired.c (file_name_completion): Fix that change.
8666 Delete special quit-handling code; just use QUIT.
8667
8668 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com> (tiny change)
8669
8670 * dired.c (file_name_completion): Close directory on error
8671 just as in directory_files_internal.
8672
8673 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
8674
8675 * window.c (Fset_window_configuration): Set old_point to correct
8676 value when new_current_buffer == current_buffer.
8677
8678 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
8679
8680 Revisited my earlier fix for the following entry in etc/PROBLEMS:
8681 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
8682 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
8683
8684 These changes were in part based upon suggestions made by Peter
8685 'Luna' Runestig [peter@runestig.com].
8686
8687 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token,
8688 g_b_init_get_token_information, g_b_init_lookup_account_sid,
8689 g_b_init_get_sid_identifier_authority ): Add several static
8690 global variables.
8691
8692 * w32.c (globals_of_w32): New function. Used to initialize those
8693 global variables that must always be initialized on startup even
8694 when the global variable initialized is non zero. Its primary
8695 purpose at this time is to set the global variables
8696 g_b_init_is_windows_9x, g_b_init_open_process_token,
8697 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
8698 g_b_init_get_sid_identifier_authority to 0 on startup.
8699 Called from main.
8700
8701 * w32.c (is_windows_9x): Perform initialization only if
8702 g_b_init_is_windows_9x is equal to 0. On initialization set
8703 g_b_init_is_windows_9x equal to 1.
8704
8705 * w32.c (open_process_token): Perform initialization only if
8706 g_b_init_open_process_token is equal to 0. On initialization set
8707 g_b_init_open_process_token equal to 1.
8708
8709 * w32.c (get_token_information): Perform initialization only if
8710 g_b_init_get_token_information is equal to 0. On initialization
8711 set g_b_init_get_token_information equal to 1.
8712
8713 * w32.c (lookup_account_sid): Perform initialization only if
8714 g_b_init_lookup_account_sid is equal to 0. On initialization
8715 set g_b_init_lookup_account_sid equal to 1.
8716
8717 * w32.c (get_sid_identifier_authority): Perform initialization
8718 only if g_b_init_get_sid_identifier_authority is equal to 0.
8719 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
8720
8721 * w32fns.c (globals_of_w32fns): New function. Used to initialize
8722 those global variables that must always be initialized on startup
8723 even when the global variable initialized is non zero.
8724 Its primary purpose at this time is to initialize the global variable
8725 track_mouse_event_fn.
8726
8727 * w32fns.c (w32_wnd_proc): Remove initialization of
8728 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
8729
8730 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
8731
8732 * w32menu.c (globals_of_w32menu): New function. Used to
8733 initialize those global variables that must always be initialized
8734 on startup even when the global variable initialized is non zero.
8735 Its primary purpose at this time is to initialize the global
8736 variables get_menu_item_info and set_menu_item_info.
8737
8738 * w32menu.c (initialize_frame_menubar): Remove initialization of
8739 get_menu_item_info and set_menu_item_info.
8740
8741 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
8742
8743 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
8744 Declare them.
8745
8746 * emacs.c (main): Call globals_of_w32 prior to calling
8747 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
8748 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
8749 is defined.
8750
8751 * w32term.c (x_update_window_begin): Fix Windows API error
8752 detected by BoundsChecker. Test to determine if
8753 w32_system_caret_hwnd is NULL prior to attempting to use
8754 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
8755
8756 * w32term.c (x_update_window_end): Fix Windows API error
8757 detected by BoundsChecker. Test to determine if
8758 w32_system_caret_hwnd is NULL prior to attempting to use
8759 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
8760
8761 2002-12-17 Kenichi Handa <handa@m17n.org>
8762
8763 * coding.c (coding_system_require_warning): New variable.
8764 (syms_of_coding): DEFVAR it.
8765
8766 * coding.h (coding_system_require_warning): Extern it.
8767
8768 * fileio.c (choose_write_coding_system): Even if
8769 Vcoding_system_for_write is non-nil, if
8770 coding_system_require_warning is nonzero, call
8771 Vselect_safe_coding_system_function.
8772
8773 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
8774
8775 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
8776 (lisp): Add font-core.
8777
8778 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
8779
8780 * textprop.c (text_read_only): New arg `propval'.
8781 (get_char_property_and_overlay): Remove unused var `next_overlay'.
8782 (verify_interval_modification): Use text_read_only's new arg.
8783
8784 2002-12-13 Kenichi Handa <handa@m17n.org>
8785
8786 * coding.c (Funencodable_char_position): Set pend correctly.
8787
8788 2002-12-12 Jason Rumney <jasonr@gnu.org>
8789
8790 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
8791 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
8792 Be more careful about when help_events are generated.
8793
8794 2002-12-12 Steven Tamm <steventamm@mac.com>
8795
8796 * macterm.c (mac_check_for_quit_char): Correctly set the
8797 modifiers of the event to 0.
8798 * mac.c (sys_select): Duplicate rfds before calling select to
8799 ensure that rfds survive the while loop.
8800
8801 2002-12-11 Kim F. Storm <storm@cua.dk>
8802
8803 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
8804 row_containing_pos returned NULL.
8805
8806 2002-12-10 Steven Tamm <steventamm@mac.com>
8807
8808 * mac.c (sys_read): Fix sys_read to not call select if IO is
8809 non-blocking.
8810 (sys_select): Fix sys_select to not use a timeout larger than
8811 the one given.
8812
8813 2002-12-10 Juanma Barranquero <lektu@terra.es>
8814
8815 * editfns.c (Fformat): Use alloca, not _alloca.
8816
8817 2002-12-09 Richard M. Stallman <rms@gnu.org>
8818
8819 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
8820 as the last thing.
8821
8822 2002-12-09 Dave Love <fx@gnu.org>
8823
8824 * s/sol2-8.h: Removed. (Not necessary.)
8825
8826 2002-12-09 Matthew Swift <swift@alum.mit.edu>
8827
8828 * editfns.c (Fformat): Handle precision in string conversion
8829 specifiers like libc functions do (ie, print at most that many
8830 characters).
8831
8832 2002-12-08 Richard M. Stallman <rms@gnu.org>
8833
8834 * xdisp.c (row_containing_pos): Check more carefully
8835 whether charpos is really in the row before returning it.
8836
8837 2002-12-07 Steven Tamm <steventamm@mac.com>
8838
8839 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
8840
8841 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
8842 each stack frame. This may change as it could be time consuming.
8843
8844 * macterm.c (mac_check_for_quit_char, quit_char_comp)
8845 (init_quit_char_handler, mac_determine_quit_char_modifiers)
8846 (mac_initialize): Add code to check for pressing of quit_char
8847 in the OS event queue.
8848
8849 * mac.c (sys_select): Call mac_check_for_quit_char every second
8850 while blocking on select.
8851
8852 * mac.c (sys_read): Use sys_select to test for input first
8853 before calling read, to allow C-g to break.
8854
8855 2002-12-07 Richard M. Stallman <rms@gnu.org>
8856
8857 * minibuf.c (Fcompleting_read): Doc fix.
8858
8859 * lread.c (syms_of_lread) <load-history>: Doc fix.
8860
8861 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
8862
8863 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
8864 autoload.
8865
8866 * data.c (Fdefalias): Record in load-history redefining an autoload.
8867
8868 * alloca.c: Undo ifdef change accidentally made on 12-04.
8869
8870 2002-12-06 Francesco Potorti` <pot@gnu.org>
8871
8872 * xfns.c (png_load): Avoid double gamma correction for PNG images.
8873
8874 2002-12-04 Richard M. Stallman <rms@gnu.org>
8875
8876 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
8877
8878 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
8879
8880 * alloca.c: Don't use #error.
8881
8882 2002-12-03 Dave Love <fx@gnu.org>
8883
8884 * buffer.c (Qucs_set_table_for_input): New.
8885 (Fget_buffer_create): Use it.
8886 (Qset_buffer_major_mode_hook): Deleted.
8887 (Fset_buffer_major_mode): Revert previous change.
8888 (init_buffer_once): Intern ucs-set-table-for-input.
8889 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
8890 Add &Qucs_set_table_for_input.
8891
8892 2002-12-03 Andreas Schwab <schwab@suse.de>
8893
8894 * callint.c (Fcall_interactively): Use next_event only if less
8895 than key_count.
8896
8897 2002-12-02 Andrew Choi <akochoi@shaw.ca>
8898
8899 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
8900 names to 255 characters.
8901
8902 * macterm.c (XTread_socket): If all frames have been collapsed,
8903 expand the first one before handling drag-and-drop events.
8904
8905 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
8906 which is detected by autoconf.
8907
8908 2002-12-01 Steven Tamm <steventamm@mac.com>
8909
8910 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
8911 offset in two hints table to allow prebinding to be redone and
8912 allow the executable to be stripped.
8913
8914 2002-11-29 Dave Love <fx@gnu.org>
8915
8916 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
8917 already provided.
8918
8919 2002-11-29 Richard M. Stallman <rms@gnu.org>
8920
8921 * xdisp.c (start_display): Check more intelligently for
8922 whether the line is continued.
8923 (move_it_vertically_backward): Clear it->continuation_lines_width.
8924
8925 2002-11-28 Dave Love <fx@gnu.org>
8926
8927 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
8928 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
8929
8930 2002-11-27 Steven Tamm <steventamm@mac.com>
8931
8932 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
8933 more descriptive error output from lread.c:Fload upon most require
8934 cycles during boostrapping.
8935
8936 2002-11-27 Jason Rumney <jasonr@gnu.org>
8937
8938 * fileio.c (Finsert_file_contents): Give a more appropriate error
8939 for files bigger than 2Gb when off_t is 32 bit.
8940
8941 * dired.c (Ffile_attributes): Don't return negative file sizes for
8942 files bigger than 2Gb when off_t is 32 bit.
8943
8944 2002-11-27 Dave Love <fx@gnu.org>
8945
8946 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8947
8948 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
8949 Test GETPGRP_VOID instead.
8950 [BSD_TERMIOS]: Remove definitions (never used).
8951
8952 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
8953 Don't define.
8954 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
8955
8956 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
8957
8958 2002-11-25 Jason Rumney <jasonr@gnu.org>
8959
8960 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
8961 supported.
8962
8963 2002-11-25 Dave Love <fx@gnu.org>
8964
8965 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
8966
8967 * Makefile.in (TEMACS_LDFLAGS): Update last change.
8968
8969 2002-11-25 Andreas Schwab <schwab@suse.de>
8970
8971 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
8972
8973 2002-11-24 Steven Tamm <steventamm@mac.com>
8974
8975 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
8976 determine the size of pointers alloced in unexed space instead
8977 of using possibly invalid emacs_zone pointers. This fixes the
8978 binary incompatibility problems caused by updates to libSystem.B.
8979
8980 2002-11-24 Richard M. Stallman <rms@gnu.org>
8981
8982 * search.c (Fstring_match): Doc fix.
8983
8984 * callint.c (Fcall_interactively): If a command fails because
8985 `*' detects a read-only buffer, but RECORD_FLAG is set,
8986 record it anyway if the args don't actually do tty input.
8987
8988 2002-11-22 Dave Love <fx@gnu.org>
8989
8990 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
8991
8992 * keyboard.c (interrupt_signal): Provide forward declaration.
8993 (kbd_buffer_store_event): Don't declare interrupt_signal.
8994
8995 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
8996
8997 2002-11-21 Richard M. Stallman <rms@gnu.org>
8998
8999 * eval.c (interactive_p): Skip any number of bytecode
9000 and special form frames, in any order.
9001
9002 2002-11-20 Jason Rumney <jasonr@gnu.org>
9003
9004 * w32fns.c (convert_mono_to_color_image): New function.
9005 (xbm_load, xbm_load_image): Use it when foreground or background
9006 is explicitly set.
9007
9008 2002-11-19 Dave Love <fx@gnu.org>
9009
9010 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
9011
9012 2002-11-18 Jason Rumney <jasonr@gnu.org>
9013
9014 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
9015 (XPutPixel): Swap blue and red.
9016 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
9017 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
9018 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
9019 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
9020
9021 2002-11-18 Dave Love <fx@gnu.org>
9022
9023 * m/orion105.h (HAVE_ALLOCA): Don't define.
9024
9025 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
9026
9027 * m/intel386.h: Don't include alloca.h or define alloca.
9028
9029 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
9030 malloc, realloc, calloc.
9031
9032 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
9033 (bcmp): Don't define.
9034
9035 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
9036
9037 * m/amdahl.h: Don't define LIB_STANDARD.
9038
9039 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
9040
9041 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
9042
9043 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
9044 Don't include alloca.h.
9045
9046 * s/aix3-2.h (HAVE_FSYNC): Don't define.
9047
9048 * regex.c (_GNU_SOURCE): Don't define.
9049
9050 * process.c (_GNU_SOURCE): Don't define.
9051
9052 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
9053
9054 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
9055
9056 * s/sol2-8.h: Include sol2-6.h.
9057
9058 2002-11-18 Miles Bader <miles@gnu.org>
9059
9060 * dispextern.h (struct face): Add `overstrike' field.
9061 * xterm.c (x_draw_glyph_string_foreground)
9062 (x_draw_composite_glyph_string_foreground): Implement overstriking.
9063 * xfaces.c (load_face_font): Set `face->overstrike' based on
9064 result from choose_face_font.
9065 (best_matching_font, choose_face_font): Add `needs_overstrike'
9066 argument, and use it to return whether overstriking is desirable
9067 for this face/font combo.
9068 (set_font_frame_param: Pass new argument to choose_face_font.
9069
9070 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9071
9072 This change is my fix for the following entry in etc/PROBLEMS:
9073 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
9074 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
9075
9076 * w32.c: Added wrapper functions around the win32 API functions
9077 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
9078 GetSidIdentifierAuthority. These wrapper functions serve two
9079 purposes:
9080 1. They ensure that the wrapped function can never be called
9081 when Emacs is running on an operating system on which they are
9082 not supported (Microsoft Windows 95 / 98 / ME).
9083 2. They call the wrapped functions via function pointers rather
9084 than calling them directly. This avoids taking advantage of the
9085 undocumented fact that although these functions are not supported
9086 in the 9x branch of Microsoft Windows, the functions do exist in
9087 the version of advapi32.dll that is found in the 9x branch of
9088 Microsoft Windows.
9089
9090 * w32.c (init_user_info): Replace the calls to the win32 API
9091 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
9092 and GetSidIdentifierAuthority with calls to the newly added
9093 wrapper functions.
9094
9095 * w32.h: Added extern declarations for the following functions:
9096 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
9097 syms_of_w32menu, and void syms_of_fontset.
9098
9099 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
9100 function pointer track_mouse_event_fn in the handler for the
9101 WM_SETFOCUS message.
9102
9103 * w32menu.c (initialize_frame_menubar): Add code to
9104 reinitialize the function pointers set_menu_item_info and
9105 get_menu_item_info.
9106
9107 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
9108
9109 * sound.c: Added a partial implementation of play-sound-internal
9110 for Microsoft Windows. Added various #ifdef / #else / #endif
9111 code blocks to separate the code that will compile under
9112 Microsoft Windows from the code that is specific to Gnu/Linux.
9113 Moved several blocks of code around to make this separation of code
9114 into Windows compatible and Gnu/Linux compatible code blocks easier.
9115
9116 * makefile.w32-in: Include sound.c and link with WinMM.lib.
9117
9118 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
9119 added support for play-sound-internal under Windows would be
9120 included in the build of Emacs.
9121
9122 2002-11-16 Jason Rumney <jasonr@gnu.org>
9123
9124 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
9125
9126 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
9127
9128 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
9129
9130 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
9131 (adjust_point_for_property): Move out of display and invisible even if
9132 we were already inside before (in case a property was added while
9133 we weren't looking). Be more careful when handling invisible props.
9134 Skip invisible text as if it really wasn't there at all.
9135
9136 2002-11-15 Jason Rumney <jasonr@gnu.org>
9137
9138 * w32term.c (x_draw_image_foreground)
9139 (w32_draw_image_foreground_1): Use standard copy and invert
9140 operations to draw images.
9141
9142 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
9143 depth of 1.
9144 (xbm_read_bitmap_data): Invert bits as xbm is read in.
9145 (XPutPixel): Don't invert bits here.
9146
9147 2002-11-15 Jason Rumney <jasonr@gnu.org>
9148
9149 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
9150 (w32_draw_image_foreground_1): Handle image masks.
9151 (x_draw_image_glyph_string): Don't BitBlt transparently.
9152
9153 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
9154 (x_from_xcolors): Adjust RGB values for W32.
9155 (image_background, image_background_transparent)
9156 (postprocess_image, x_to_xcolors, x_disable_image)
9157 (x_build_heuristic_mask): Adapt for W32 and enable.
9158 (x_create_x_image_and_pixmap): Mark images with palettes as such.
9159 (xbm_load): Remove unused variable.
9160
9161 2002-11-14 Richard M. Stallman <rms@gnu.org>
9162
9163 * buffer.c (syms_of_buffer): Doc fix.
9164
9165 2002-11-14 Dave Love <fx@gnu.org>
9166
9167 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
9168
9169 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
9170 * xmenu.c (unuse_menu_items, digest_single_submenu):
9171 * xfns.c (x_put_x_image):
9172 * xdisp.c (message2_nolog, set_message):
9173 * undo.c (record_point):
9174 * terminfo.c (tparam):
9175 * syntax.c (scan_sexps_forward):
9176 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
9177 * composite.c (update_compositions):
9178 * cm.c (calccost, cmgoto):
9179 * charset.c (c_string_width): Declare all args (per C99).
9180
9181 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
9182
9183 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
9184 Don't declare.
9185
9186 * emacs.c (main) [!VMS]: Avoid third arg.
9187
9188 * fns.c (Fcopy_sequence): Doc fix.
9189 (Fmap_char_table): Cast `call2'.
9190
9191 2002-11-14 Francesco Potorti` <pot@gnu.org>
9192
9193 * s/sol2-8.h: New file.
9194
9195 2002-11-14 Kim F. Storm <storm@cua.dk>
9196
9197 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
9198 dependency on `risky-local-variable' and the :propertize form.
9199
9200 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
9201
9202 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
9203
9204 * syntax.c (scan_sexps_forward): Undo last patch.
9205 Use a more obvious fix: check eob before updating the syntax table.
9206
9207 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
9208
9209 * syntax.c (scan_sexps_forward): Update syntax table before reading
9210 a char rather than after so we don't update the table past eob.
9211
9212 2002-11-09 Dave Love <fx@gnu.org>
9213
9214 * buffer.c (Fset_buffer_major_mode): Fix last change.
9215
9216 * regex.c (regexec): Fix pmatch declaration.
9217
9218 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
9219
9220 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
9221 to self-inserting characters.
9222 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
9223
9224 * coding.c (Vtranslation_table_for_input): New.
9225 (syms_of_coding): DEFVAR it.
9226
9227 2002-11-08 Juanma Barranquero <lektu@terra.es>
9228
9229 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
9230 window.
9231
9232 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
9233
9234 * process.c (Fformat_network_address): Remove unused locals p,
9235 cp, and i.
9236
9237 2002-11-06 Dave Love <fx@gnu.org>
9238
9239 * buffer.c (Qset_buffer_major_mode_hook): New.
9240 (Fset_buffer_major_mode): Use it.
9241
9242 2002-11-06 Richard M. Stallman <rms@gnu.org>
9243
9244 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
9245 and stop_polling.
9246
9247 * process.c (wait_reading_process_input):
9248 Test POLLING_PROBLEM_IN_SELECT, not hpux.
9249 Avoid initialization for auto Lisp_Object var.
9250
9251 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
9252
9253 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
9254
9255 2002-11-05 Richard M. Stallman <rms@gnu.org>
9256
9257 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
9258
9259 * callint.c (Fcall_interactively): New local filter_specs.
9260 (Fcall_interactively): Check for progn as well as let.
9261 Add a gcpro.
9262 (Qprogn): New variable.
9263 (syms_of_callint): Staticpro and init Qprogn.
9264
9265 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
9266
9267 * lread.c (Feval_buffer): Doc fix.
9268
9269 2002-11-04 Dave Love <fx@gnu.org>
9270
9271 * keyboard.c (read_char): Always translate iff
9272 Vkeyboard_translate_table is a char table and c is valid.
9273
9274 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
9275 and fix C types.
9276
9277 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
9278
9279 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
9280
9281 * editfns.c (get_pos_property): Don't hardcode Qfield.
9282
9283 * keyboard.c (adjust_point_for_property): Handle `display' prop on
9284 overlays. Also handle `invisible' prop.
9285
9286 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
9287
9288 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
9289 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
9290
9291 2002-11-01 Andreas Schwab <schwab@suse.de>
9292
9293 * editfns.c (Fmessage): Revert last change to properly handle %%.
9294
9295 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
9296
9297 * xmenu.c (unuse_menu_items): New fun.
9298 (menu_items_inuse): New var.
9299 (syms_of_xmenu): Initialize it.
9300 (init_menu_items): Use it to detect re-entrance.
9301 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
9302 (Fx_popup_menu): Remove spurious XSETFRAME.
9303
9304 * editfns.c (find_field): Make an exception for nil fields.
9305
9306 2002-11-01 Dave Love <fx@gnu.org>
9307
9308 * m/gec63.h: Deleted.
9309
9310 2002-10-31 Dave Love <fx@gnu.org>
9311
9312 * xterm.c (XTread_socket): Fix last change.
9313 (xaw_scroll_callback): Cast call_data to long to avoid warning.
9314
9315 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
9316
9317 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
9318
9319 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
9320
9321 * editfns.c (overlays_around, get_pos_property): New funs.
9322 (find_field): Use them.
9323 Also be careful not to modify POS before its last use.
9324 (Fmessage): Don't Fformat if there's nothing to format.
9325
9326 2002-10-30 Dave Love <fx@gnu.org>
9327
9328 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
9329 [HAVE_PTY_H]; Include pty.h.
9330
9331 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
9332
9333 * xterm.c (Qeql): Declare.
9334 (Vx_keysym_table): New.
9335 (syms_of_xterm): Initialize it.
9336 (XTread_socket): Use it. Deal with ASCII keysyms.
9337 (XSetIMValues) [HAVE_X11R6]: Prototype.
9338
9339 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
9340 (lispy_kana_keys): Comment out.
9341 (make_lispy_event) [XK_kana_A]: Comment out.
9342 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
9343 Fix sprintf call.
9344
9345 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
9346 regexp.h change).
9347 (TERMINFO, LIBS_TERMCAP): Define.
9348
9349 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
9350 (bcmp): Define conditional on HAVE_BCMP.
9351 (NO_SIOCTL_H): Don't define.
9352 (TIOCSIGSEND): Don't make conditional on IRIX6.
9353
9354 * s/sol2-5.h: Don't include strings.h.
9355 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
9356
9357 * s/irix6-0.h (IRIX6): Don't define.
9358 (bcopy, bcmp, bzero): Don't undef.
9359
9360 * s/irix6-5.h: Don't include strings.h.
9361 (IRIX6): Don't define.
9362 (bcopy, bcmp, bzero): Don't undef.
9363
9364 * syntax.c (Fforward_comment): Doc fix.
9365
9366 2002-10-29 Kim F. Storm <storm@cua.dk>
9367
9368 * process.c (Fsignal_process): Allow PROCESS to be specified by
9369 name in addition to pid (as integer or string).
9370
9371 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
9372
9373 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
9374 environments.
9375
9376 2002-10-27 Kim F. Storm <storm@cua.dk>
9377
9378 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9379
9380 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
9381
9382 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
9383
9384 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
9385
9386 2002-10-26 Richard M. Stallman <rms@gnu.org>
9387
9388 * editfns.c (Fformat): Detect invalid format letters for floats.
9389
9390 2002-10-25 Kenichi Handa <handa@m17n.org>
9391
9392 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
9393 (x_set_title): Likewise.
9394
9395 2002-10-25 Juanma Barranquero <lektu@terra.es>
9396
9397 * macgui.h:
9398 * w32gui.h: Remove definition of XColor.
9399
9400 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
9401
9402 2002-10-24 Kim F. Storm <storm@cua.dk>
9403
9404 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
9405 Callers changed (supply dummy arg).
9406
9407 * lisp.h (get_window_cursor_type): Update prototype.
9408
9409 * w32term.c (x_display_and_set_cursor): Get active_cursor from
9410 get_window_cursor_type to track system caret.
9411
9412 2002-10-24 Kim F. Storm <storm@cua.dk>
9413
9414 * process.c (Fformat_network_address): New function.
9415 (syms_of_process): Defsubr it.
9416 (list_processes_1): Use it to format :local/:remote address if
9417 service/host is not set; before Emacs would crash in that case.
9418 (Fmake_network_process): Don't use Ffind_operation_coding_system
9419 to setup coding system if host or service is not set.
9420
9421 2002-10-23 Juanma Barranquero <lektu@terra.es>
9422
9423 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
9424
9425 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
9426 COLORREF.
9427
9428 * macgui.h:
9429 * w32gui.h: Add definition of XColor.
9430
9431 * macfns.c:
9432 * w32fns.c:
9433 * xfaces.c: Remove definition of XColor.
9434
9435 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
9436
9437 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
9438
9439 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
9440 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
9441 window if it is dedicated.
9442 (Fshrink_window): Add preserve_before as was done for enlarge_window.
9443 (Vspecial_display_function): Update docstring.
9444
9445 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
9446 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
9447 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
9448
9449 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
9450
9451 * casefiddle.c (casify_region): Don't treat a prefix char as part
9452 of a word when at the beginning.
9453
9454 2002-10-17 Juanma Barranquero <lektu@terra.es>
9455
9456 * lread.c (syms_of_lread): Fix typos.
9457
9458 2002-10-17 Dave Love <fx@gnu.org>
9459
9460 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
9461
9462 2002-10-16 Richard M. Stallman <rms@gnu.org>
9463
9464 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
9465
9466 2002-10-14 Juanma Barranquero <lektu@terra.es>
9467
9468 * w16select.c (syms_of_win16select): Fix docstring for
9469 `selection-coding-system'.
9470
9471 * w32select.c (syms_of_w32select): Likewise.
9472
9473 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
9474
9475 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
9476 a backslash-quoted char.
9477 (scan_lists, scan_sexps_forward): Pacify the compiler.
9478
9479 2002-10-13 Richard M. Stallman <rms@gnu.org>
9480
9481 * window.c (window_scroll): Set immediate_quit.
9482
9483 * print.c (print): When backquote form is the car of a list,
9484 output in old style. Use old_backquote_output to output all
9485 comma forms inside it in old style too.
9486
9487 * buffer.h (struct buffer): Move `undo_list' down below `name'.
9488
9489 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
9490
9491 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
9492 batch mode).
9493
9494 * lread.c (Fload): Doc fix (load-suffixes).
9495
9496 2002-10-10 Steven Tamm <steventamm@mac.com>
9497
9498 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
9499 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
9500 Also switch the default to Qnil from Qt.
9501
9502 2002-10-08 Kenichi Handa <handa@m17n.org>
9503
9504 * coding.c (code_convert_region): When we need more GAP for
9505 conversion, pay attention to the case that coding->produced is not
9506 greater than coding->consumed.
9507
9508 2002-10-07 Richard M. Stallman <rms@gnu.org>
9509
9510 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
9511
9512 2002-10-06 Andrew Choi <akochoi@shaw.ca>
9513
9514 * macmenu.c (mac_menu_show): Add j to count menu items; match
9515 menu_item_selection to it to find selected item.
9516
9517 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9518
9519 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
9520 cases. The correct fix is to pass ReparentNotify to Xt.
9521 The shell widget interprets ConfigureNotify differently depending
9522 on if it has been reparented or not.
9523
9524 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
9525
9526 * editfns.c (Fformat_time_string): Doc fix.
9527
9528 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
9529
9530 * fns.c (Flength): Doc fix.
9531
9532 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
9533
9534 * keyboard.c (keyremap): New struct.
9535 (read_key_sequence): Use it: globally replace keytran_foo with
9536 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
9537 keytran_next and fkey_next to just `next'.
9538
9539 2002-10-04 Steven Tamm <steventamm@mac.com>
9540
9541 * macterm.c (keycode_to_xkeysym_table): Change return to be
9542 treated like an X keysym.
9543
9544 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9545
9546 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
9547 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
9548 This is to also handle x/y changes that occur because of a resize.
9549
9550 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
9551
9552 * frame.c (Vdelete_frame_functions): New variable.
9553 (syms_of_frame): Initialize and defvar it.
9554 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
9555 it when frame's `tooltip' parameter is non-nil.
9556
9557 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
9558
9559 * w32fns.c (x_create_tip_frame): Likewise.
9560
9561 * macfns.c (x_create_tip_frame): Likewise.
9562
9563 2002-09-30 Kenichi Handa <handa@m17n.org>
9564
9565 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
9566 -1 before calling ccl_driver.
9567
9568 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
9569 Only when it is non-nil, handle composition sequence.
9570 (setup_coding_system) <0>: Don't force composition handling.
9571
9572 * Makefile.in (lisp, shortlisp): Add utf-16.elc
9573
9574 2002-09-29 Richard M. Stallman <rms@gnu.org>
9575
9576 * search.c (Freplace_match): Adjust match data for the substitution
9577 just made in the buffer.
9578
9579 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
9580 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
9581
9582 2002-09-27 Richard M. Stallman <rms@gnu.org>
9583
9584 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
9585 (read_char): Use them. Do all exits thru the end of the function.
9586
9587 2002-09-27 Kenichi Handa <handa@etl.go.jp>
9588
9589 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
9590 is nil.
9591
9592 2002-09-26 Richard M. Stallman <rms@gnu.org>
9593
9594 * regex.h (__restrict_arr): Don't define if already defined.
9595
9596 * coding.c (run_pre_post_conversion_on_str):
9597 Save and restore Vdeactivate_mark.
9598
9599 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
9600
9601 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
9602
9603 2002-09-26 Kenichi Handa <handa@etl.go.jp>
9604
9605 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
9606 nonzero, try face's family at first. Otherwise try FAMILY at first.
9607 (choose_face_font): If C is a single byte char or latin-1, call
9608 try_font_list with PREFER_FACE_FAMILY 1.
9609
9610 2002-09-21 Richard M. Stallman <rms@gnu.org>
9611
9612 * window.c (select_window_1): Don't select frame.
9613 Set frame's selected window only when frame itself is selected.
9614 (Fselect_window): Doc fix.
9615
9616 2002-09-18 Kim F. Storm <storm@cua.dk>
9617
9618 * process.c (make-network-process): Doc fix (there is no
9619 network-server-log-function hook).
9620
9621 2002-09-18 Richard M. Stallman <rms@gnu.org>
9622
9623 * print.c (print): Clear out the unused parts of Vprint_number_table.
9624 (syms_of_print): Doc fix for `print-number-table'.
9625
9626 * unexelf.c (unexec): Undo previous change.
9627
9628 2002-09-17 Andreas Schwab <schwab@suse.de>
9629
9630 * m/alpha.h [LINUX]: Don't define DATA_START.
9631
9632 2002-09-16 Dave Love <fx@gnu.org>
9633
9634 * unexelf.c (unexec): Deal with .got, reinstating change from
9635 25-08-1999.
9636
9637 2002-09-13 Richard M. Stallman <rms@gnu.org>
9638
9639 * s/sol2-6.h (UNEXEC): Comment out definition.
9640
9641 * unexsol.c (unexec): Don't downcase first letter of error msg.
9642
9643 * xfaces.c (Fcolor_supported_p): Just one arg is required.
9644
9645 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
9646
9647 * unexsol.c: Include buffer.h, charset.h, coding.h.
9648
9649 2002-09-11 Richard M. Stallman <rms@gnu.org>
9650
9651 * unexsol.c: Don't use report_file_error; do it by hand
9652 using dlerror.
9653
9654 * process.c (wait_reading_process_input, both versions):
9655 Before calling turn_on_atimers, call stop_polling.
9656
9657 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
9658
9659 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
9660 we go to too_near_end, call clear_glyph_matrix.
9661 (redisplay_window): After make_cursor_line_fully_visible,
9662 call clear_glyph_matrix and bypass `goto done'.
9663
9664 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
9665 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
9666
9667 2002-09-10 Richard M. Stallman <rms@gnu.org>
9668
9669 * fileio.c (Fdo_auto_save): Catch error making directory.
9670 Only call push_message if we need to.
9671 At the same time, make an unwind-protect to pop it.
9672 Rename local message_p to old_message_p.
9673 (do_auto_save_make_dir, do_auto_save_eh): New functions.
9674 (do_auto_save_unwind): Don't call pop_message.
9675
9676 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
9677
9678 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
9679
9680 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
9681
9682 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
9683
9684 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
9685
9686 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
9687 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
9688 (re_match_2_internal): Be more careful with infinite loops.
9689
9690 2002-09-10 Kim F. Storm <storm@cua.dk>
9691
9692 * macros.c (end_kbd_macro): New function.
9693 (Fend_kbd_macro): Use it.
9694
9695 * macros.h (end_kbd_macro): Declare extern.
9696
9697 * keyboard.c (Fdiscard_input): If defining keyboard macro,
9698 end and save it instead of discarding it.
9699
9700 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
9701
9702 * s/sol2-6.h: Fix typo. Add comment.
9703
9704 2002-09-09 Richard M. Stallman <rms@gnu.org>
9705
9706 * regex.c (regnum_t): Use signed int, not unsigned int.
9707
9708 * s/sol2-6.h: New file.
9709
9710 * s/sol2-5.h (UNEXEC): Definition deleted.
9711
9712 2002-09-08 Kim F. Storm <storm@cua.dk>
9713
9714 * macros.c (executing_macro_index): Change type to EMACS_INT.
9715 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
9716
9717 * macros.h (executing_macro_index): Change type to EMACS_INT.
9718
9719 2002-09-06 Richard M. Stallman <rms@gnu.org>
9720
9721 * casetab.c (set_case_table): Make canon table point to eqv table.
9722
9723 2002-09-06 Juanma Barranquero <lektu@terra.es>
9724
9725 * coding.c (syms_of_coding): Fix spacing.
9726
9727 * composite.c (Fcompose_region_internal)
9728 (Fcompose_string_internal): Likewise.
9729
9730 * data.c (Flsh): Likewise.
9731
9732 * fontset.c (Fset_fontset_font): Likewise.
9733
9734 * macfns.c (Fx_server_max_request_size): Likewise.
9735
9736 * w16select.c (syms_of_win16select): Likewise.
9737
9738 * w32select.c (syms_of_w32select): Likewise.
9739
9740 * xselect.c (syms_of_xselect): Likewise.
9741
9742 2002-09-05 Richard M. Stallman <rms@gnu.org>
9743
9744 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
9745 call EXTEND_RANGE_TABLE and return a proper value.
9746 (set_image_of_range): Don't call set_image_of_range_1
9747 if no TRANSLATE or if range includes all of Latin-1.
9748 Only call it for the Latin-1 part of the range.
9749 For other cases, make two separate ranges,
9750 one for the original specified characters and one for
9751 their case-conversions.
9752
9753 2002-09-04 Richard M. Stallman <rms@gnu.org>
9754
9755 * s/sol2-5.h (UNEXEC): Use unexsol.o.
9756
9757 * window.c (displayed_window_lines): Correct for one-off bug
9758 in HEIGHT on non-window displays.
9759
9760 * regex.c (set_image_of_range_1): New function.
9761 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
9762 Return a value to indicate running out of memory.
9763 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
9764 (extend_range_table_work_area): New subroutine.
9765 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
9766 Different calling conventions, and used from set_image_of_range{,_1}.
9767 (IMMEDIATE_QUIT_CHECK): Definitions moved.
9768
9769 2002-09-04 Juanma Barranquero <lektu@terra.es>
9770
9771 * makefile.w32-in: All dependencies updated.
9772
9773 2002-09-01 Richard M. Stallman <rms@gnu.org>
9774
9775 * unexsol.c: New file.
9776
9777 * xfns.c (Qbox): Declare external, don't define.
9778
9779 * xdisp.c (redisplay_window) <force-start case>:
9780 If point is on semi-visible last line, reposition
9781 it at previous line.
9782
9783 * alloc.c (display_malloc_warning): Use display-warning.
9784 (malloc_warning_1): Function deleted.
9785
9786 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
9787
9788 * lread.c (read1): Handle #! by skipping the line.
9789
9790 2002-08-31 Richard M. Stallman <rms@gnu.org>
9791
9792 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
9793 Don't include LDFLAGS.
9794 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
9795
9796 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
9797
9798 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
9799 member of x_display_info unless we compile for some window system.
9800
9801 2002-08-31 Kim F. Storm <storm@cua.dk>
9802
9803 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
9804 (get_window_cursor_type): Don't use them.
9805 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
9806
9807 2002-08-30 Kenichi Handa <handa@etl.go.jp>
9808
9809 * xdisp.c (get_next_display_element): Fix previous change.
9810
9811 2002-08-30 Andrew Choi <akochoi@shaw.ca>
9812
9813 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
9814 (expose_window): Use it to fix the display of overlapping
9815 rows (merge code from xterm.c).
9816
9817 * macfns.c (Qbox): Add extern declaration.
9818
9819 2002-08-30 Juanma Barranquero <lektu@terra.es>
9820
9821 * w32fns.c (Qbox): Make extern.
9822 (syms_of_w32fns): Remove initialization of Qbox.
9823
9824 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
9825
9826 * xfns.c (Fx_open_connection): Fix error message.
9827
9828 2002-08-30 Kim F. Storm <storm@cua.dk>
9829
9830 The following changes consolidates the handling of the cursor
9831 type in xdisp.c, moving duplicate code and functionality from
9832 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
9833
9834 * frame.h (enum text_cursor_kinds): Consolidated here.
9835 Added DEFAULT_CURSOR value.
9836 (struct frame) <desired_cursor, cursor_width>
9837 <blink_off_cursor, blink_off_cursor_width>: New fields.
9838 Consolidated from output_x, output_w32 and output_mac structs.
9839 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9840 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
9841
9842 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
9843 Variables consolidated here.
9844 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
9845 (Vcursor_in_non_selected_windows): Renamed from
9846 cursor_in_non_selected_windows and changed to Lisp_Object.
9847 (syms_of_xdisp): Define and staticpro new and moved variables.
9848 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
9849 consolidated here. Recognize Qhollow setting.
9850 (set_frame_cursor_types): New function to set frame cursor types
9851 based on the frame parameters.
9852 (get_window_cursor_type): New function to calculate new cursor
9853 type and width for the specified window. Based on duplicated
9854 code consolidated here.
9855 Enhancements: cursor-in-non-selected-windows may be a cursor type,
9856 check buffer-local alternate-cursor-type and blink-cursor-alist
9857 before using built-in blink off methods.
9858
9859 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
9860
9861 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
9862 (get_specified_cursor_type, get_window_cursor_type)
9863 (set_frame_cursor_types): Added prototypes.
9864
9865 * macfns.c (x_specified_cursor_type): Removed.
9866 (x_set_cursor_type): Use set_frame_cursor_types.
9867 (Qbar, Qbox): Removed.
9868 (syms_of_macfns): Don't intern or staticpro them.
9869
9870 * macterm.c (x_specified_cursor_type): Remove prototype.
9871 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9872 (x_display_and_set_cursor): Use get_window_cursor_type.
9873 Remove unused local variables cursor_non_selected, active_cursor.
9874 Redraw cursor if hbar cursor width changes.
9875 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
9876
9877 * macterm.h (enum text_cursor_kinds): Removed.
9878 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
9879 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9880 (FRAME_DESIRED_CURSOR): Macro removed.
9881
9882 * w32fns.c (Vblink_cursor_alist): Removed.
9883 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9884 (syms_of_w32fns): Don't intern, staticpro, or define them.
9885 (x_specified_cursor_type): Removed.
9886 (x_set_cursor_type): Use set_frame_cursor_types.
9887
9888 * w32term.c (x_specified_cursor_type): Remove prototype.
9889 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9890 (x_display_and_set_cursor): Use get_window_cursor_type.
9891 Remove unused local variables cursor_off_state.
9892 Redraw cursor if hbar cursor width changes.
9893 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
9894
9895 * w32term.h (enum text_cursor_kinds): Removed.
9896 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
9897 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9898 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9899 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9900 (struct w32_display_info) <x_highlight_frame>: Renamed member from
9901 w32_highlight_frame.
9902
9903 * xfns.c (Vblink_cursor_alist): Removed.
9904 (Qbar, Qhbar, Qbox, Qhollow): Removed.
9905 (syms_of_xfns): Don't intern, staticpro, or define them.
9906 (x_specified_cursor_type): Removed.
9907 (x_set_cursor_type): Use set_frame_cursor_types.
9908
9909 * xterm.c (x_specified_cursor_type): Remove prototype.
9910 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
9911 (x_display_and_set_cursor): Use get_window_cursor_type.
9912 Remove unused local variables cursor_off_state.
9913 Redraw cursor if hbar cursor width changes.
9914
9915 * xterm.h (enum text_cursor_kinds): Removed.
9916 (struct output_x) <current_cursor, desired_cursor, cursor_width>
9917 <blink_off_cursor, blink_off_cursor_width>: Members removed.
9918 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
9919 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
9920 (x_specified_cursor_type): Remove prototype.
9921
9922 2002-08-28 Richard M. Stallman <rms@gnu.org>
9923
9924 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9925 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9926 (Vblink_cursor_alist): New variable.
9927 (syms_of_w32fns): Initialize and defvar it.
9928 (x_specified_cursor_type): Recognize Qbox for filled box.
9929 Exceptions are hollow boxes.
9930 (Qbox, Qhollow): New variables.
9931 (syms_of_w32fns): Initialize and staticpro them.
9932
9933 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9934 New macros.
9935 (struct w32_output): New fields blink_off_cursor,
9936 blink_off_cursor_width.
9937 (FRAME_CURSOR_WIDTH): New macro.
9938
9939 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9940 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9941
9942 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
9943 for bar cursor.
9944
9945 * w32term.c (expose_overlaps): New function.
9946 (expose_window): Use it to fix the display of overlapping rows.
9947
9948 2002-08-28 Simon Josefsson <jas@extundo.com>
9949
9950 * xfns.c (Fx_open_connection): Improve help when X connection
9951 fails, xhost is insecure and xauth is better.
9952
9953 2002-08-28 Juanma Barranquero <lektu@terra.es>
9954
9955 * makefile.w32-in: Add missing dependencies on w32term.h and
9956 composite.h.
9957
9958 * emacs.c (USAGE1): Add missing newline.
9959
9960 2002-08-27 Andrew Choi <akochoi@shaw.ca>
9961
9962 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
9963
9964 2002-08-27 Richard M. Stallman <rms@gnu.org>
9965
9966 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
9967 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
9968 (Vblink_cursor_alist): New variable.
9969 (syms_of_xfns): Initialize and defvar it.
9970 (x_specified_cursor_type): Recognize Qbox for filled box.
9971 Exceptions are hollow boxes.
9972 (Qbox, Qhollow): New variables.
9973 (syms_of_xfns): Initialize and staticpro them.
9974
9975 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
9976 New macros.
9977 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
9978
9979 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
9980 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
9981
9982 * emacs.c (main): Handle --script.
9983 (USAGE1): Mention --script.
9984 (standard_args): Define sort order for --script.
9985
9986 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
9987
9988 * xdisp.c (redisplay_updating_p): Variable removed.
9989 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
9990 New variables.
9991 (init_iterator): Don't free realized faces if
9992 inhibit_free_realized_faces is set.
9993 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
9994 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
9995 initialize Qinhibit_free_realized_faces.
9996
9997 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
9998 when iterator is adding glyphs to a glyph matrix.
9999
10000 2002-08-27 Kenichi Handa <handa@etl.go.jp>
10001
10002 * xdisp.c (get_next_display_element): In unibyte case, don't use
10003 octal form for such eight-bit characters that can be converted to
10004 multibyte char.
10005
10006 2002-08-26 Kim F. Storm <storm@cua.dk>
10007
10008 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize foreground
10009 and background colors. From Joe Buehler (tiny change).
10010
10011 2002-08-26 Miles Bader <miles@gnu.org>
10012
10013 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
10014
10015 2002-08-25 Andrew Choi <akochoi@shaw.ca>
10016
10017 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
10018 defined instead of MAC_OSX.
10019
10020 * s/darwin.h (select): Define select to sys_select only if
10021 HAVE_CARBON is defined.
10022 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
10023 (DONT_REOPEN_PTY): #def it.
10024
10025 * macterm.c (XTread_socket): Remove code to call
10026 SendEventToEventTarget for keys with command modifiers when
10027 mac_command_key_is_meta is nil.
10028
10029 2002-08-24 Andreas Schwab <schwab@suse.de>
10030
10031 * eval.c (Fdefvar): Fix last change.
10032
10033 2002-08-23 Richard M. Stallman <rms@gnu.org>
10034
10035 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
10036 Record variables in load history as (defvar . VAR).
10037 (Fdefvar): Don't record in load history if no initial value.
10038 (Qdefvar): New variable.
10039 (syms_of_eval): Init and staticpro it.
10040
10041 * lread.c (syms_of_lread): Doc fix.
10042 (build_load_history): Use Fmember to see if a definition
10043 is already in the Vload_history element.
10044
10045 * process.c (Fstart_process): Remove /: from program name.
10046
10047 * emacs.c (decode_env_path): Don't add /: if file name handler
10048 has a `safe-magic' property.
10049
10050 * callproc.c (Fcall_process): Remove /: from program name.
10051
10052 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
10053
10054 * regex.c (PATFETCH): Remove the translating fetch.
10055 (PATFETCH_RAW): Rename to PATFETCH.
10056 (set_image_of_range): New fun.
10057 (SET_RANGE_TABLE_WORK_AREA): Use it.
10058 (regex_compile): Don't translate the pattern chars so eagerly.
10059 Only do it when inserting an `exactn' bytecode or when handling
10060 a char-range.
10061 (mutually_exclusive_p): Avoid empty statement.
10062
10063 2002-08-22 Kim F. Storm <storm@cua.dk>
10064
10065 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
10066 end up on a partially visible line; this reverts a specific part
10067 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
10068 display error which has been reported several times now.
10069 However it introduces the problem that changes was supposed to fix.
10070 See my comments in the source if you want to debug this further.
10071
10072 2002-08-20 Kenichi Handa <handa@etl.go.jp>
10073
10074 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
10075
10076 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
10077
10078 * msdos.c (croak): Add `void' to definition.
10079
10080 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
10081 Don't define them, they are defined in msdos.c.
10082
10083 * mem-limits.h [MSDOS]: Declare etext.
10084
10085 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
10086 `const' since CORRECT_DIR_SEPS modifies its target.
10087
10088 2002-08-19 Kim F. Storm <storm@cua.dk>
10089
10090 * keyboard.c (Fclear_this_command_keys): Add optional arg
10091 KEEP-RECORD to avoid clearing lossage when we just want to clear
10092 the current key sequence (kmacro needs this).
10093
10094 2002-08-19 Kenichi Handa <handa@localhost>
10095
10096 * composite.c (run_composition_function): Call FUNC if it is fboundp.
10097
10098 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
10099 cons, return Qnil.
10100
10101 2002-08-17 Richard M. Stallman <rms@gnu.org>
10102
10103 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
10104
10105 * sysdep.c [!VMS]: Include sys/files.h.
10106
10107 * editfns.c (save_restriction_restore): Defend from unchained marker.
10108
10109 * buffer.c (overlays_at): Handle extending vec uniformly.
10110 (overlays_in): Handle extending vec from length 0 as in overlays_at.
10111
10112 2002-08-15 Andrew Choi <akochoi@shaw.ca>
10113
10114 * mac.c (init_mac_osx_environment): New function.
10115
10116 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
10117
10118 2002-08-14 Kim F. Storm <storm@cua.dk>
10119
10120 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
10121 executing macro before appending to it (when used from Lisp).
10122 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
10123 which is called prior to each iteration of macro (for kmacro.el).
10124 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
10125
10126 * lisp.h (Fexecute_kbd_macro): Update prototype.
10127
10128 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
10129
10130 2002-08-14 Kenichi Handa <handa@etl.go.jp>
10131
10132 * xselect.c (QUTF8_STRING): New variable.
10133 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
10134 (x_atom_to_symbol): Likewise.
10135 (x_get_local_selection): New argument local_request. If it is
10136 nonzero, call handler_fn with the second arg nil.
10137 (x_handle_selection_request): Call x_get_local_selection with
10138 local_request 0.
10139 (lisp_data_to_selection_data): Don't encode the string here.
10140 (Fx_get_selection_internal): Call x_get_local_selection with
10141 local_request 1.
10142 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
10143
10144 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
10145
10146 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
10147
10148 2002-08-13 Richard M. Stallman <rms@gnu.org>
10149
10150 * minibuf.c (Fminibufferp): New function.
10151 (syms_of_minibuf): Defsubr it.
10152 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
10153
10154 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
10155
10156 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
10157
10158 2002-08-12 Richard M. Stallman <rms@gnu.org>
10159
10160 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
10161 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
10162 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
10163 already.
10164
10165 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
10166
10167 2002-08-11 Andrew Choi <akochoi@shaw.ca>
10168
10169 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
10170 (Vmac_pass_command_to_system): New variable.
10171 (Vmac_pass_control_to_system): New variable.
10172 (do_mouse_moved): Check wp with is_emacs_window.
10173 (XTread_socket): Check window_ptr with is_emacs_window.
10174 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
10175 events back to Mac Toolbox for processing, depending on values of
10176 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
10177 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
10178 Vmac_pass_control_to_system.
10179
10180 2002-08-10 Kenichi Handa <handa@etl.go.jp>
10181
10182 * coding.c (unencodable_char_position): New function.
10183 (Funencodable_char_position): New function.
10184 (syms_of_coding): Defsubr Funencodable_char_position.
10185
10186 2002-08-10 Andrew Choi <akochoi@shaw.ca>
10187
10188 * mac.c (sys_select) [MAC_OSX]: New function.
10189
10190 * macterm.c (MakeMeTheFrontProcess): New function.
10191 (mac_initialize): Call MakeMeTheFrontProcess.
10192
10193 * s/darwin.h: Define select to sys_select.
10194
10195 2002-08-09 Richard M. Stallman <rms@gnu.org>
10196
10197 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
10198
10199 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
10200
10201 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
10202 end of the buffer.
10203
10204 2002-08-08 Ken Raeburn <raeburn@mit.edu>
10205
10206 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
10207
10208 * puresize.h (BASE_PURESIZE): Increase to 910000.
10209
10210 2002-08-08 Kenichi Handa <handa@etl.go.jp>
10211
10212 * coding.c (Ffind_operation_coding_system): For write-region, if
10213 VISIT is a filename, make it the target.
10214
10215 2002-08-07 Richard M. Stallman <rms@gnu.org>
10216
10217 * alloc.c (mark_object): Detect long lists for debugging.
10218 (mark_object_loop_halt): New variable.
10219
10220 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
10221
10222 * data.c (Fmake_variable_frame_local): Doc fix.
10223
10224 2002-08-01 David Ponce <david@dponce.com>
10225
10226 * w32menu.c (local_heap, local_alloc, local_free): New macros.
10227 (malloc_widget_value, free_widget_value)
10228 (w32_free_submenu_strings): Use them.
10229
10230 (push_submenu_start, push_submenu_end, push_left_right_boundary)
10231 (push_menu_pane, push_menu_item, single_keymap_panes)
10232 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
10233 (single_submenu, set_frame_menubar)
10234 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
10235
10236 (Fx_popup_menu): Don't show pop up menu until preceding one is
10237 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
10238
10239 * w32menu.c: Changes adapted from xmenu.c
10240 (set_frame_menubar): First parse all submenus,
10241 then make widget_value trees from them.
10242 Don't allocate any widget_value objects
10243 until we are done with the parsing.
10244 (parse_single_submenu): New function.
10245 (digest_single_submenu): New function.
10246 (single_submenu): Function deleted, replaced by those two.
10247
10248 2002-08-04 Andrew Choi <akochoi@shaw.ca>
10249
10250 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
10251 returns a valid window pointer before proceeding for keyDown and
10252 autoKey events.
10253
10254 2002-08-03 Andrew Choi <akochoi@shaw.ca>
10255
10256 * macterm.c (USE_CARBON_EVENTS): New macro.
10257 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
10258 (x_iconify_frame): Call CollapseWindow.
10259 (Vmac_reverse_ctrl_meta): New variable.
10260 (Vmac_wheel_button_is_mouse_2): New variable.
10261 (init_mac_drag_n_drop): New function.
10262 (mac_do_receive_drag): New function.
10263 (mac_handle_service_event): New function.
10264 (init_service_handler): New function.
10265 (mac_to_emacs_modifiers): New function.
10266 (mac_event_to_emacs_modifiers): New function.
10267 (mac_get_mouse_btn): New function.
10268 (mac_convert_event_ref): New function.
10269 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
10270 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
10271 mac_get_mouse_btn.
10272 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
10273
10274 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
10275 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
10276 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
10277 TOOL_BAR_EVENT for MAC_OS as well.
10278 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
10279 as for WINDOWS_NT.
10280 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
10281
10282 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
10283
10284 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
10285
10286 * xdisp.c (forward_to_next_line_start): Fix a condition that
10287 lead to a newline being skipped.
10288
10289 2002-08-02 Andrew Choi <akochoi@shaw.ca>
10290
10291 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
10292
10293 2002-08-01 Richard M. Stallman <rms@gnu.org>
10294
10295 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
10296
10297 2002-07-31 Andrew Choi <akochoi@shaw.ca>
10298
10299 * macfns.c: #undef init_process before #define-ing it.
10300
10301 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
10302 HAVE_CARBON is defined.
10303
10304 2002-07-31 Richard M. Stallman <rms@gnu.org>
10305
10306 * xmenu.c (set_frame_menubar): First parse all submenus,
10307 then make widget_value trees from them.
10308 Don't allocate any widget_value objects
10309 until we are done with the parsing.
10310 (parse_single_submenu): New function.
10311 (digest_single_submenu): New function.
10312 (single_submenu): Function deleted, replaced by those two.
10313
10314 2002-07-30 Juanma Barranquero <lektu@terra.es>
10315
10316 * w32proc.c (syms_of_ntproc): Fix docstring of
10317 `w32-get-true-file-attributes'.
10318
10319 2002-07-28 Richard M. Stallman <rms@gnu.org>
10320
10321 * s/hpux8.h (HPUX8): Define this before including hpux.h.
10322 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
10323
10324 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
10325
10326 * keyboard.c (make_lispy_event):
10327 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
10328 Explicitly clear up_modifier in event->modifiers.
10329
10330 2002-07-27 Richard M. Stallman <rms@gnu.org>
10331
10332 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
10333
10334 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
10335 for bar cursor.
10336
10337 2002-07-26 Kenichi Handa <handa@etl.go.jp>
10338
10339 * coding.c (detect_coding_iso2022): While checking a byte sequence
10340 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
10341 it in the normal loop.
10342
10343 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
10344
10345 * xterm.c (expose_overlaps): New function.
10346 (expose_window): Use it to fix the display of overlapping rows.
10347
10348 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
10349
10350 2002-07-23 Ken Raeburn <raeburn@gnu.org>
10351
10352 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
10353 since it only depends on XUINT.
10354
10355 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
10356 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
10357 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
10358 Macros deleted.
10359
10360 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
10361 its value over other approaches.
10362 * sysdep.c (start_of_data): Don't define the function if a macro
10363 form has been defined.
10364
10365 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
10366
10367 * xdisp.c (redisplay_updating_p): New variable.
10368 (init_iterator): Don't free realized faces when
10369 redisplay_updating_p is set.
10370 (redisplay_internal): Set redisplay_updating_p while updating
10371 the display.
10372
10373 2002-07-23 Richard M. Stallman <rms@gnu.org>
10374
10375 * editfns.c (Fmessage): Treat "" like nil.
10376
10377 2002-07-23 Kenichi Handa <handa@etl.go.jp>
10378
10379 * xdisp.c (face_before_or_after_it_pos):
10380 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
10381
10382 2002-07-22 Juanma Barranquero <lektu@terra.es>
10383
10384 * callproc.c (init_callproc) [DOS_NT]:
10385 Initialize Vshared_game_score_directory to nil.
10386 (syms_of_callproc) [DOS_NT]: Likewise.
10387
10388 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
10389
10390 * xdisp.c (display_line): Replace an abort with xassert.
10391
10392 2002-07-21 Richard M. Stallman <rms@gnu.org>
10393
10394 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
10395 and END_UNCHANGED when setting buffer_unchanged_p.
10396 Use current_matrix_up_to_date_p to decide whether to use
10397 try_cursor_movement.
10398
10399 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
10400
10401 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
10402
10403 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
10404 Set to nil if dir does not exist.
10405 (syms_of_callproc): Init unconditionally and simply.
10406
10407 * buffer.c (Fbuffer_list): Doc fix.
10408
10409 2002-07-21 Ken Raeburn <raeburn@gnu.org>
10410
10411 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
10412
10413 * buffer.c (mmap_realloc): When shrinking, make sure number of
10414 pages to unmap is rounded towards zero.
10415
10416 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
10417 (XSETINT): Deleted.
10418
10419 * m/att3b.h (XINT): Don't define.
10420 (VALBITS, VALMASK, XTYPE): Deleted.
10421 (DATA_SEG_BITS): Define.
10422 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
10423 ARRAY_MARK_FLAG): Deleted.
10424 (DATA_SEG_BITS): Define.
10425 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
10426 (DATA_SEG_BITS): Define.
10427
10428 2002-07-20 Richard M. Stallman <rms@gnu.org>
10429
10430 * print.c (print_error_message): New args CONTEXT and CALLER.
10431 Calls changed.
10432
10433 * lisp.h (print_error_message): Declare new args.
10434
10435 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
10436 and CONTEXT to print_error_message, don't print them here.
10437 For a Quit, don't use Vsignaling_function.
10438 Call message_log_maybe_newline.
10439
10440 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
10441
10442 2002-07-20 Kim F. Storm <storm@cua.dk>
10443
10444 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
10445
10446 2002-07-19 Ken Raeburn <raeburn@gnu.org>
10447
10448 * bytecode.c (struct byte_stack): Pointers into byte string now
10449 point to const.
10450 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
10451 const.
10452 * charset.h (BCOPY_SHORT): Source pointer now points to const.
10453 * coding.c (encode_eol, detect_coding, detect_eol):
10454 (decode_coding, encode_coding, detect_coding_system):
10455 Source strings now treated as const.
10456 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
10457 modify Lisp string contents.
10458 * coding.h (decode_coding, encode_coding, detect_coding,
10459 detect_eol): Declarations updated.
10460 * composite.c (compose_chars_in_text): Treat Lisp string contents
10461 as const.
10462 * dispnew.c (safe_bcopy): Source pointer now points to const.
10463 * lisp.h (STRING_COPYIN): New macro.
10464 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
10465 (internal_with_output_to_temp_buffer): Declarations updated.
10466 * print.c (temp_output_buffer_setup):
10467 (internal_with_output_to_temp_buffer): Buffer name argument is now
10468 pointer to const.
10469 * sound.c (struct sound_device): Function pointer field "write"
10470 buffer argument now points to const.
10471 (vox_write): Buffer argument points to const.
10472 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
10473 contents as const.
10474 * sysdep.c (emacs_write): Buffer pointer now const.
10475 * term.c (encode_terminal_code): Buffer pointer now const.
10476 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
10477 (x_face_list_fonts, x_update_menu_appearance):
10478 (hash_string_case_insensitive): Treat Lisp string contents as const.
10479
10480 2002-07-19 Juanma Barranquero <lektu@terra.es>
10481
10482 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
10483
10484 * fileio.c (syms_of_fileio): Likewise.
10485 (Ffile_name_as_directory): Fix argument name in docstring.
10486 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
10487
10488 2002-07-18 Richard M. Stallman <rms@gnu.org>
10489
10490 * data.c (Fdefalias): Doc fix.
10491
10492 2002-07-17 Dave Love <fx@gnu.org>
10493
10494 * intervals.h (text_property_stickiness): Use P_.
10495
10496 * ccl.c: Remove `emacs' conditionals.
10497 (ccl_backtrace_table): Fix size spec.
10498 (ccl_driver): Fix type errors.
10499
10500 2002-07-16 Ken Raeburn <raeburn@gnu.org>
10501
10502 * alloc.c (xstrdup, make_string, make_unibyte_string)
10503 (make_multibyte_string, build_string): String pointer args now
10504 point to const.
10505 * charset.c (find_charset_in_text, c_string_width):
10506 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
10507 * fileio.c (report_file_error):
10508 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
10509 (count_combining_before, count_combining_after, insert_1_both):
10510 (insert, insert_and_inherit, insert_string):
10511 (insert_before_markers, insert_before_markers_and_inherit):
10512 * lread.c (intern, oblookup, hash_string):
10513 * minibuf.c (temp_echo_area_glyphs):
10514 * search.c (fast_c_string_match_ignore_case):
10515 * sysdep.c (emacs_open, set_file_times):
10516 * xfaces.c (xstricmp):
10517 * xdisp.c (store_frame_title, string_char_and_length):
10518 (message_dolog, message2, message2_nolog, set_message): Likewise.
10519 (set_message_1): Cast message string argument to const pointer.
10520 * editfns.c (general_insert_function): Insertion function now
10521 takes pointer to const for input data.
10522 * charset.h (find_charset_in_text, c_string_width):
10523 (parse_str_as_multibyte): Declarations updated.
10524 * dispextern.h (xstricmp): Declaration updated.
10525 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
10526 (count_size_as_multibyte, count_combining_before):
10527 (count_combining_after, insert_1, insert_1_both, message_dolog):
10528 (insert, insert_and_inherit, insert_before_markers)
10529 (insert_before_markers_and_inherit, set_message, message2):
10530 (message2_dolog, build_string, make_string, make_unibyte_string):
10531 (make_multibyte_string, intern, oblookup, report_file_error):
10532 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
10533 (emacs_open, xstrdup): Declarations updated.
10534 * systime.h (set_file_times): Declaration updated.
10535
10536 * charset.c (find_charset_in_text, lisp_string_width): Use const
10537 for pointer to lisp string data.
10538 * charset.h (FETCH_STRING_CHAR_ADVANCE):
10539 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
10540 * coding.c (Ffind_coding_systems_region_interval):
10541 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
10542 (Fmake_directory_internal, Fdelete_directory):
10543 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
10544 * fontset.c (font_family_registry, fs_query_fontset):
10545 (list_fontsets):
10546 * frame.c (Fframe_parameter):
10547 * keyboard.c (cmd_error_internal):
10548 * keymap.c (Fdescribe_buffer_bindings):
10549 * lread.c (complete_filename_p, openp):
10550 * minibuf.c (Fminibuffer_complete_word):
10551 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
10552 (face_before_or_after_it_pos, next_element_from_string):
10553 (get_overlay_arrow_glyph_row, display_mode_element):
10554 (decode_mode_spec_coding):
10555 * xterm.c (same_x_server): Likewise.
10556
10557 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
10558 settings of non-existent fields.
10559
10560 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
10561 copy a lisp value.
10562
10563 * lread.c (Fintern_soft): Use string macros instead of
10564 Lisp_String fields.
10565 * keyboard.c (echo_char, parse_modifiers_uncached):
10566 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
10567 * textprop.c (validate_interval_range, interval_of): Likewise.
10568
10569 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
10570
10571 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10572 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
10573 XSTRING()->size_byte.
10574
10575 * lisp.h (SDATA, SREF): Produce rvalue.
10576 (SSET): New macro.
10577 * alloc.c (make_event_array): Use SSET for storing into a string.
10578 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
10579 a string.
10580 * casefiddle.c (casify_object): Use SSET.
10581 * charset.h (FETCH_STRING_CHAR_ADVANCE)
10582 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
10583 address of string contents.
10584 * data.c (Faref): Use SDATA.
10585 (Faset): Use SDATA, SSET.
10586 * dired.c (directory_files_internal): Use SSET.
10587 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
10588 (Fread_file_name): Use SREF, SSET.
10589 * fns.c (concat): Use SSET.
10590 (concat, Fdelete): Use SDATA.
10591 * insdel.c (insert_from_string_1): Use SDATA.
10592 * keyboard.c (Fevent_convert_list): Use SREF.
10593 * lread.c (Fload): Use SDATA, SSET.
10594 * macfns.c (validate_x_resource_name): Use SSET.
10595 * process.c (status_message): Use SSET.
10596 * search.c (wordify): Use SDATA.
10597 (Freplace_match): Use SREF.
10598 * w32fns.c (validate_x_resource_name): Use SSET.
10599 * xfns.c (validate_x_resource_name): Use SSET.
10600 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
10601
10602 2002-07-16 Richard M. Stallman <rms@gnu.org>
10603
10604 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
10605
10606 * xdisp.c (reconsider_clip_changes):
10607 Don't test prevent_redisplay_optimizations_p.
10608 (redisplay_internal): Test prevent_redisplay_optimizations_p
10609 along with clip_changed in some cases.
10610 (try_window_id): Likewise.
10611 (redisplay_window): New local var buffer_unchanged_p.
10612
10613 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
10614
10615 * process.c (create_process): Test USG_SUBTTY_WORKS.
10616 (process_send_signal): Clean up handling of GID.
10617 Detect errors in ioctls meant to set GID.
10618
10619 * window.c (temp_output_buffer_show):
10620 Don't set prevent_redisplay_optimizations_p.
10621
10622 2002-07-15 Juanma Barranquero <lektu@terra.es>
10623
10624 * eval.c (Fdefvaralias): Add docstring argument.
10625
10626 2002-07-15 Ken Raeburn <raeburn@gnu.org>
10627
10628 * lisp.h (STRING_INTERVALS): Produce rvalue.
10629 (STRING_SET_INTERVALS): New macro.
10630 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
10631 * fns.c (Fstring_as_multibyte): Likewise.
10632 * intervals.c (balance_possible_root_interval, delete_interval)
10633 (create_root_interval, copy_intervals_to_string): Likewise.
10634 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
10635 instead of 0.
10636
10637 2002-07-14 Ken Raeburn <raeburn@gnu.org>
10638
10639 * lisp.h (STRING_SET_CHARS): New macro.
10640 (SCHARS, SBYTES): Produce rvalues.
10641 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
10642 * fns.c (concat): Likewise.
10643 * lread.c (read_vector): Likewise.
10644
10645 * lisp.h (SMBP): Deleted. All uses changed to STRING_MULTIBYTE.
10646 (STRING_SET_UNIBYTE): New macro.
10647 (SET_STRING_BYTES): Deleted. Callers (all of which supplied a
10648 length of -1) changed to use STRING_SET_UNIBYTE.
10649 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
10650 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
10651 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
10652 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
10653 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
10654 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
10655 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
10656 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
10657 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
10658 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
10659 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
10660 STRING_BYTES or indirection changed to SCHARS, SBYTES,
10661 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
10662 unchanged for now.
10663
10664 2002-07-13 Kim F. Storm <storm@cua.dk>
10665
10666 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
10667
10668 2002-07-12 Richard M. Stallman <rms@gnu.org>
10669
10670 * fileio.c (Fwrite_region): Doc fix.
10671
10672 * print.c (print_error_message): Don't handle Vsignaling_function here.
10673
10674 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
10675 (command_loop_1): Avoid certain actions after memory-full error.
10676
10677 * eval.c (Fsignal): Don't call cancel_hourglass.
10678 For a memory-full error, don't call Vsignal_hook_function
10679 and don't set Vsignaling_function.
10680
10681 * process.c (process_send_signal): Add abort call.
10682
10683 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
10684
10685 * keymap.c (Fkey_binding): Fix typo.
10686
10687 2002-07-11 Richard M. Stallman <rms@gnu.org>
10688
10689 * alloc.c (Vmemory_full): New variable.
10690 (Vmemory_signal_data): Renamed from memory_signal_data.
10691 Uses changed.
10692 (syms_of_alloc): Defvar them.
10693 (memory_full, buffer_memory_full): Set Vmemory_full.
10694
10695 * lisp.h (Vmemory_full): Add declaration.
10696 (current_column, indented_beyond_p): Change declaration.
10697
10698 * indent.c (last_known_column): Declare as double, not float.
10699 (current_column, current_column_1, string_display_width)
10700 (position_indentation): Return `double'.
10701 (indented_beyond_p): Arg `column' is `double'. Callers changed.
10702
10703 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
10704 (back_to_previous_visible_line_start)
10705 (reseat_at_next_visible_line_start, next_element_from_buffer):
10706 Use `double', not `float', when calling indented_beyond_p.
10707
10708 * s/hpux11.h (BROKEN_SA_RESTART): Defined.
10709
10710 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
10711
10712 2002-07-11 Juanma Barranquero <lektu@terra.es>
10713
10714 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
10715 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
10716 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
10717 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
10718 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
10719 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
10720
10721 2002-07-10 Juanma Barranquero <lektu@terra.es>
10722
10723 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
10724 All callers changed.
10725
10726 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
10727
10728 * data.c (Fdefalias): Add an optional `docstring' argument.
10729 (set_internal, Fsetq_default): Use XCAR/XCDR.
10730
10731 * composite.c (HASH_VALUE, HASH_KEY):
10732 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
10733
10734 2002-07-09 Kenichi Handa <handa@etl.go.jp>
10735
10736 * callproc.c (Fcall_process): Fix previous change.
10737
10738 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
10739
10740 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
10741 Add support for hash-tables.
10742 (Ftry_completion): Return t even if the string appears multiple times.
10743
10744 * fns.c (Fnconc): Use XCDR.
10745 (Fprovide): Use CONSP and XCDR.
10746 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10747 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
10748 (Fmake_hash_table): Accept `:size nil'.
10749 (Fmakehash): Delete: moved to subr.el.
10750 (syms_of_fns): Don't defsubr makehash.
10751
10752 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
10753 (HASH_TABLE_SIZE): Move from fns.c.
10754
10755 2002-07-07 Richard M. Stallman <rms@gnu.org>
10756
10757 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
10758 Instead just return 0 when there is something to be done.
10759 (try_scrolling): If make_cursor_line_fully_visible returns 0,
10760 retry scrolling as if cursor were off the bottom.
10761 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
10762 return CURSOR_MOVEMENT_MUST_SCROLL.
10763 (redisplay_window): If make_cursor_line_fully_visible returns 0,
10764 go to try_to_scroll.
10765
10766 * buffer.c (Fbuffer_local_value): Store current value into its binding
10767 so we get the up-to-date value for the binding that is loaded.
10768
10769 * eval.c (Fdefmacro): Doc fix.
10770
10771 2002-07-05 Dave Love <fx@gnu.org>
10772
10773 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
10774 correctly.
10775
10776 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
10777 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
10778 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
10779 CCL_LookupCharConstTbl.
10780 (syms_of_ccl): Defvar translation-hash-table-vector.
10781
10782 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10783
10784 * xdisp.c: Remove unused variable `face'.
10785
10786 2002-07-04 Juanma Barranquero <lektu@terra.es>
10787
10788 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
10789 obsolescence information.
10790
10791 2002-07-03 Andrew Choi <akochoi@shaw.ca>
10792
10793 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
10794 pattern. Search cache first.
10795 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
10796 for Japanese font.
10797 (XLoadQueryFont): Use it.
10798
10799 2002-07-02 Richard M. Stallman <rms@gnu.org>
10800
10801 * keymap.c (Fdefine_key): Doc fix.
10802
10803 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
10804
10805 2002-07-02 Juanma Barranquero <lektu@terra.es>
10806
10807 * keymap.c (syms_of_keymap): Fix typo.
10808
10809 2002-07-01 Andrew Choi <akochoi@shaw.ca>
10810
10811 * s/darwin.h: Define POSIX_SIGNALS.
10812
10813 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
10814 and FSRefMakePath to convert FSSpec returned with Apple Event to
10815 Posix pathname.
10816 (mac_initialize) [TARGET_API_MAC_CARBON]:
10817 Call init_required_apple_events and disable the `Quit' menu item
10818 provided automatically by the Carbon Toolbox.
10819
10820 2002-07-01 Dave Love <fx@gnu.org>
10821
10822 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
10823 for K&R.
10824
10825 * xterm.c: Fix prototype for K&R.
10826
10827 * term.c (costs_set): Declare static, non-initialized for pcc.
10828
10829 2002-07-01 Richard M. Stallman <rms@gnu.org>
10830
10831 * keyboard.c (timer_last_idleness_start_time): New variable.
10832 (timer_start_idle): Set that.
10833 (read_key_sequence): Use that to reset timer_idleness_start_time
10834 to previous value.
10835
10836 * window.c (Frecenter): With arg, set optional_new_start.
10837
10838 * xdisp.c (redisplay_internal): Make optional_new_start really work.
10839
10840 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
10841 buffer for completion.
10842
10843 2002-06-29 Ken Raeburn <raeburn@gnu.org>
10844
10845 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
10846
10847 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10848
10849 * keyboard.c (readable_filtered_events): New function that filters
10850 FOCUS_IN_EVENT depending on parameter.
10851 (readable_events): Calls readable_filtered_events, not filtering
10852 FOCUS_IN_EVENT.
10853 (get_filtered_input_pending): New function, filtering parameter passed
10854 to readable_filtered_events.
10855 (get_input_pending): Calls get_filtered_input_pending, not filtering
10856 FOCUS_IN_EVENT.
10857 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
10858 FOCUS_IN_EVENT.
10859
10860 * xterm.h (struct x_output): Add focus_state.
10861
10862 * xterm.c (x_focus_changed): New function.
10863 (x_detect_focus_change): New function.
10864 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
10865 EnterNotify and LeaveNotify to track X focus changes.
10866
10867 2002-06-28 Andreas Schwab <schwab@suse.de>
10868
10869 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
10870
10871 2002-06-27 Kim F. Storm <storm@cua.dk>
10872
10873 * xdisp.c: (mode_line_string_list, mode_line_string_face)
10874 (mode_line_string_face_prop): New variables.
10875 (store_mode_line_string): New function.
10876 (display_mode_element): Use store_mode_line_string to
10877 add mode-line string elements to mode_line_string_list
10878 when mode_line_string_list is non-nil.
10879 (Fformat_mode_line): Now returns propertized string by
10880 default. New arg NO-PROPS to ignore properties.
10881 (decode_mode_spec): Only add two dashes for %- in propertized
10882 mode-line string.
10883 (syms_of_xdisp): Init and staticpro mode_line_string_list.
10884
10885 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
10886
10887 * minibuf.c (minibuffer_completion_contents): Add return type.
10888
10889 2002-06-27 Juanma Barranquero <lektu@terra.es>
10890
10891 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
10892
10893 2002-06-26 Juanma Barranquero <lektu@terra.es>
10894
10895 * fileio.c (read_file_name_cleanup): Add missing return.
10896
10897 2002-06-26 Richard M. Stallman <rms@gnu.org>
10898
10899 * window.c (Frecenter): Don't set force_start flag.
10900
10901 * minibuf.c (do_completion, Fminibuffer_complete_word)
10902 (Fminibuffer_completion_help): Complete just the text before point.
10903 (minibuffer_completion_contents): New function.
10904
10905 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
10906
10907 * frame.c (frames_bury_buffer): Function deleted.
10908
10909 2002-06-25 Miles Bader <miles@gnu.org>
10910
10911 * callint.c (Fcall_interactively): When checking to see if doprnt hit
10912 the end of callint_message, allow for a terminating '\0'.
10913
10914 2002-06-24 Juanma Barranquero <lektu@terra.es>
10915
10916 * w32select.c: Include composite.h
10917
10918 * w16select.c: Likewise.
10919
10920 2002-06-24 Kenichi Handa <handa@etl.go.jp>
10921
10922 * callproc.c (Fcall_process): If code detection is necessary,
10923 call detect_coding directly here.
10924
10925 * coding.c (detect_eol): Preserve coding->cmp_data.
10926
10927 * w16select.c (Fw16_get_clipboard_data):
10928 * w32fns.c (w32_to_x_font):
10929 * w32select.c (Fw32_get_clipboard_data):
10930 * xselect.c (selection_data_to_lisp_data):
10931 * xterm.c (XTread_socket): Disable composition handling.
10932
10933 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
10934
10935 * print.c (temp_output_buffer_setup): Kill all local variables.
10936
10937 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
10938
10939 * lread.c (Fread): Remove redundant and imprecise declaration.
10940
10941 * xfns.c (check_x_display_info): Use check_x_frame.
10942
10943 * .gdbinit (xprintsym): Use the new `xname' field.
10944 (xsymbol): Use it.
10945
10946 2002-06-22 Jason Rumney <jasonr@gnu.org>
10947
10948 * w32fns.c (file_dialog_callback): New function.
10949 (Fx_file_dialog): Allow selecting directories as well as files.
10950
10951 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
10952
10953 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
10954 OpenBSD. Add support for mipseb-*-netbsd* machines.
10955
10956 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10957
10958 * macterm.c (mac_scroll_area): Set foreground and backcolor to
10959 black and white before scrolling. Restore frame background and
10960 foreground color after scrolling.
10961 (do_window_update): Call XClearWindow before calling expose_frame.
10962 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
10963 FRAME_FOREGROUND_PIXEL of frame.
10964
10965 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10966 test Mac command key as <ALT> key.
10967
10968 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
10969
10970 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
10971
10972 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
10973 Lookup keys in function-key-map immediately so that key-translation-map
10974 can be applied earlier.
10975 Remove function_key_possible and key_translation_possible, replaced
10976 by checking `keytran_start < t'.
10977
10978 * .gdbinit (xsymbol): Use the new `xname' field.
10979
10980 2002-06-17 Andrew Choi <akochoi@shaw.ca>
10981
10982 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
10983 test Mac command key as <ALT> key.
10984
10985 * mac.c (do_applescript): Call initialize_applescript if necessary
10986 when first called. Dispose of result_desc only when there is no error.
10987 (Fdo_applescript): Use %d format specifier instead of %ld.
10988
10989 2002-06-16 Andrew Choi <akochoi@shaw.ca>
10990
10991 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
10992 of FrontWindow for cases keyDown and autoKey.
10993
10994 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
10995 Vdefault_fontset to Monaco with mac-roman coding.
10996
10997 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
10998 init_process before and after inclusion of Carbon/Carbon.h, resp.
10999
11000 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
11001 cursor_gc.
11002 (add_font_name_table_entry): New function.
11003 (init_font_name_table): Use add_font_name_table_entry; add italic,
11004 bold, and bold-italic entries for truetype fonts.
11005
11006 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
11007 for Mac too.
11008 (try_font_list) [MAC_OS]: If no font matches given registry, try
11009 fonts with any registry matching face_family.
11010 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
11011
11012 * s/darwin.h: If autoconf detects the Ncurses library, define
11013 LIBS_TERMCAP to -lncurses to use it.
11014
11015 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
11016
11017 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
11018
11019 2002-06-15 Richard M. Stallman <rms@gnu.org>
11020
11021 * window.c (Fset_window_configuration): Explicitly preserve
11022 the point value that new_current_buffer had at the start.
11023
11024 2002-06-14 Juanma Barranquero <lektu@terra.es>
11025
11026 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
11027 Fix typos.
11028
11029 2002-06-14 Kim F. Storm <storm@cua.dk>
11030
11031 * insdel.c (insert_1_both, insert_from_string_1)
11032 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
11033 insert happened in the end_unchanged region. Otherwise, the
11034 redisplay may be confused and duplicate the last line in the
11035 buffer [seen after save-buffer when require-final-newline==t].
11036
11037 2002-06-13 Jason Rumney <jasonr@gnu.org>
11038
11039 * w32.c (init_environment): Remove EMACSLOCKDIR.
11040 (stat): Swap _S_IFDIR and _S_IFREG.
11041
11042 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11043
11044 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
11045 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
11046 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
11047 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
11048 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
11049 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
11050 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
11051 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
11052 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
11053 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
11054 SELECTION_REQUEST_EVENT, selection_clear_event to
11055 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
11056 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
11057 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
11058 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
11059 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
11060 no_event to NO_EVENT.
11061
11062 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11063
11064 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
11065
11066 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
11067
11068 * intervals.c (textget): Don't forget to `return'.
11069 (lookup_char_property): Use XCAR/XCDR.
11070
11071 2002-06-12 Juanma Barranquero <lektu@terra.es>
11072
11073 * xdisp.c (Fformat_mode_line): Fix typo.
11074
11075 2002-06-12 Kim F. Storm <storm@cua.dk>
11076
11077 * xdisp.c (Fformat_mode_line): New function.
11078 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
11079 (store_frame_title_char, store_frame_title): Use unconditionally.
11080 (init_xdisp): Defsubr Fformat_mode_line.
11081 Initialize frame_title_buf etc. unconditionally.
11082
11083 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
11084
11085 * keyboard.c (read_key_sequence):
11086 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
11087 things through those maps after downcasing events.
11088 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
11089 applies after function-key-map.
11090 Make sure that keytran can be done in the middle in the sequence.
11091 Be careful not to throw away events past the one we downcase.
11092
11093 * lread.c (read_integer): Remove unused var `tem'.
11094 (read1): Fix int/Lisp_Object mixup.
11095
11096 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
11097
11098 2002-06-11 Richard M. Stallman <rms@gnu.org>
11099
11100 * keyboard.c (readable_events): Ignore any number of
11101 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
11102
11103 2002-06-09 Miles Bader <miles@gnu.org>
11104
11105 * xfaces.c (Ftty_supports_face_attributes_p): New function.
11106 (parse_rgb_list, tty_lookup_color): New functions.
11107 (tty_defined_color): Use `tty_lookup_color' to do all the work.
11108 (color_distance, Fcolor_distance): New functions.
11109 (TTY_SAME_COLOR_THRESHOLD): New macro.
11110 (Qtty_color_standard_values): New variable.
11111 (syms_of_xfaces): Initialize new vars & functions.
11112
11113 2002-06-08 Colin Walters <walters@verbum.org>
11114
11115 * textprop.c (Vchar_property_alias_alist): New variable.
11116 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
11117
11118 * intervals.c (lookup_char_property): New function for looking up
11119 overlay and text properties, created from textget.
11120 (textget): Use it.
11121
11122 * intervals.h (lookup_char_property): Declare.
11123 (Vchar_property_alias_alist): Declare.
11124
11125 * buffer.c (Foverlay_get): Use lookup_char_property.
11126
11127 2002-06-07 Sam Steingold <sds@gnu.org>
11128
11129 * xselect.c (lisp_data_to_selection_data): Fix last change:
11130 *data_ret is not a Lisp string, while unibyte_string is.
11131
11132 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
11133
11134 * xselect.c (lisp_data_to_selection_data): Fix last change:
11135 set size_ret.
11136
11137 2002-06-07 Andreas Schwab <schwab@suse.de>
11138
11139 * m/amdx86-64.h: New file.
11140
11141 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
11142
11143 * fns.c (Fstring_make_unibyte): Doc fix.
11144
11145 * xselect.c (lisp_data_to_selection_data): If the requested type
11146 is STRING, call string_make_unibyte to encode the selected text
11147 as a string.
11148
11149 * window.c (Fset_window_hscroll): Doc fix.
11150
11151 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11152
11153 * fileio.c (choose_write_coding_system):
11154 Call select-safe-coding-system properly.
11155
11156 2002-06-03 Richard M. Stallman <rms@gnu.org>
11157
11158 * xdisp.c (message_with_string): Error if STRING is not a string.
11159
11160 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
11161
11162 * fileio.c (choose_write_coding_system): Pass FILE arg to
11163 Vselect_safe_coding_system_function.
11164
11165 2002-06-03 Ken Raeburn <raeburn@gnu.org>
11166
11167 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
11168
11169 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
11170
11171 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
11172 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
11173 * keymap.c (describe_command): Likewise.
11174 * minibuf.c (read_minibuf): Likewise.
11175
11176 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
11177 Cast `current_column' return value to int.
11178 (back_to_previous_visible_line_start)
11179 (reseat_at_next_visible_line_start, next_element_from_buffer):
11180 Cast `indented_beyond_p' 3rd arg to float.
11181
11182 * indent.c (last_known_column): Now a float.
11183 (current_column_1, position_indentation, current_column)
11184 (string_display_width): Return float.
11185 (Fcurrent_column): Cast `current_column' return value to int.
11186 (Fcurrent_indentation): Cast `position_indentation' retval to int.
11187 (indented_beyond_p): Third arg now a float.
11188 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
11189
11190 * lisp.h (current_column): Now returns float.
11191 (indented_beyond_p): 3rd arg now a float.
11192
11193 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
11194
11195 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
11196 is Qcompound_text_with_extensions.
11197
11198 * xselect.c (lisp_data_to_selection_data): Always set selection
11199 type as string if x_encode_text returns streingp non-NULL.
11200
11201 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
11202
11203 2002-05-30 Richard M. Stallman <rms@gnu.org>
11204
11205 * window.c (Fset_window_configuration): Correct the handling
11206 of point in current buffer, to work with multiple windows.
11207
11208 2002-05-29 Colin Walters <walters@verbum.org>
11209
11210 * lread.c (Fread_from_string): Don't depend on order of evaluation
11211 for C function parameters.
11212
11213 2002-05-28 Richard M. Stallman <rms@gnu.org>
11214
11215 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
11216 way for blinked-off state and for a nonselected window.
11217
11218 * window.c (window_scroll_pixel_based): Don't call Fbolp;
11219 instead, see if the new start pos is at beginning of line.
11220
11221 * fileio.c (Fwrite_region): If START is a string, don't
11222 make any annotations.
11223
11224 * eval.c (syms_of_eval): Doc fix.
11225
11226 2002-05-28 Colin Walters <walters@debian.org>
11227
11228 * emacs.c (USAGE1): Add --no-splash.
11229 (standard_args): Ditto.
11230
11231 2002-05-28 Colin Walters <walters@gnu.org>
11232
11233 * lread.c (readchar_count): New variable.
11234 (readchar): Increment it.
11235 (unreadchar): Decrement it.
11236 (read_multibyte): Decrement it.
11237 (Vread_with_symbol_positions): New variable.
11238 (Vread_symbol_positions_list): New variable.
11239 (read_internal_start): New function, created from Fread and
11240 Fread_from_string. Handle Vread_symbol_positions_list and
11241 Vread_with_symbol_positions.
11242 (readevalloop, Fread, Fread_from_string): Use it.
11243 (read1): Use readchar_count to add symbol positions to
11244 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
11245 (syms_of_lread): DEFVAR_LISP and initialize them.
11246
11247 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
11248 (substitute_object_recurse, substitute_object_in_subtree)
11249 (substitute_in_interval): Prototype.
11250 (read_multibyte): Return c if it's less than zero.
11251
11252 2002-05-28 Kim F. Storm <storm@cua.dk>
11253
11254 * fileio.c (Fread_file_name_internal): Added brute-force
11255 speed up for using predicate file-directory-p.
11256
11257 2002-05-28 Kim F. Storm <storm@cua.dk>
11258
11259 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
11260 New variables.
11261 (syms_of_fileio): DEFVAR_LISP them.
11262 (read_file_name_cleanup): New unwind function.
11263 (Fread_file_name_internal): Only return completions satifying
11264 Vread_file_name_predicate. Temporarily unwind protect and rebind
11265 default-directory while checking completions against the predicate.
11266 (Fread_file_name): Added PREDICATE argument. Specbind it to
11267 Vread_file_name_predicate during completion.
11268 Call Vread_file_name_function to read the file name if non-nil.
11269
11270 * lisp.h (Fread_file_name): Now has 6 args.
11271
11272 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
11273 predicate for Fread_file_name when reading directory name.
11274 Supply Qnil for predicate in other calls to Fread_file_name.
11275
11276 2002-05-26 Miles Bader <miles@gnu.org>
11277
11278 * term.c (tty_capable_p): New function.
11279 * dispextern.h (tty_capable_p): New function declaration.
11280 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
11281 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
11282
11283 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
11284
11285 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
11286 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
11287 (Vwrite_region_annotate_functions): Docstring fix.
11288
11289 2002-05-23 Kim F. Storm <storm@cua.dk>
11290
11291 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
11292 phys_cursor's hpos is overwritten. This is still not completely
11293 correct, as it doesn't really make sense to use hpos at all to
11294 get the cursor glyph (as that is relative to the width of the
11295 characters on the line, which may have changed during the update).
11296
11297 2002-05-22 Jason Rumney <jasonr@gnu.org>
11298
11299 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
11300 Lisp_Object.
11301 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
11302 Use modified enumfont_t struct.
11303
11304 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11305
11306 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
11307 Handle the `hbar' cursor type.
11308 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11309
11310 * w32fns.c (Qhbar): New variable.
11311 (x_specified_cursor_type): Use it.
11312
11313 2002-05-21 Ken Raeburn <raeburn@gnu.org>
11314
11315 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
11316 now, when the address is needed.
11317
11318 2002-05-21 Colin Walters <walters@gnu.org>
11319
11320 * Makefile.in (shortlisp): Add font-core.el.
11321
11322 2002-05-20 Richard M. Stallman <rms@gnu.org>
11323
11324 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
11325
11326 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
11327 equivalent key bindings here.
11328
11329 2002-05-20 Ken Raeburn <raeburn@gnu.org>
11330
11331 Change symbol structure to contain a lisp object for the symbol
11332 name:
11333 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
11334 object field named "xname".
11335 (SYMBOL_NAME): New macro.
11336 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
11337 name field.
11338 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
11339 (mark_object, gc_sweep): Use symbol xname field and XSTRING
11340 instead of name field.
11341 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
11342 SYMBOL_NAME instead of XSYMBOL and name field.
11343 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
11344 instead of XSYMBOL and name field.
11345 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
11346 and SYMBOL_NAME instead of XSYMBOL and name field.
11347 * coding.c (Fread_coding_system, code_convert_region1)
11348 (code_convert_string1, code_convert_string_norecord)
11349 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
11350 XSYMBOL and name field.
11351 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
11352 (Fmake_variable_buffer_local, Fmake_local_variable)
11353 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
11354 of XSYMBOL and name field.
11355 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
11356 XSYMBOL and name field.
11357 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
11358 instead of XSYMBOL and name field.
11359 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
11360 XSYMBOL and name field.
11361 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
11362 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11363 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
11364 instead of XSYMBOL and name field.
11365 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
11366 (parse_modifiers, apply_modifiers, Fevent_convert_list)
11367 (parse_solitary_modifier, Fexecute_extended_command):
11368 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11369 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
11370 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
11371 of XSYMBOL and name field.
11372 (describe_command, describe_translation): Use SYMBOL_NAME and
11373 assignment instead of XSYMBOL and name field and XSETSTRING.
11374 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
11375 instead of XSYMBOL and name field.
11376 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
11377 name field and XSETSTRING.
11378 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11379 of XSYMBOL and name field.
11380 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
11381 assignment instead of XSYMBOL and name field and XSETSTRING.
11382 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
11383 XSTRING instead of XSYMBOL and name field.
11384 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
11385 and XSTRING instead of XSYMBOL and name field.
11386 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
11387 and XSTRING instead of XSYMBOL and name field.
11388 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
11389 XSTRING instead of XSYMBOL and name field.
11390 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
11391 of XSYMBOL and name field.
11392 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
11393 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
11394
11395 2002-05-19 Ken Raeburn <raeburn@gnu.org>
11396
11397 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
11398 and XCDR real rvalues in most configurations.
11399
11400 * buffer.c (fix_overlays_in_range, fix_overlays_before):
11401 Don't take the address of the cdr part of a cons cell; instead, track
11402 the parent cell and call XSETCDR, or set the variable for the head
11403 of the list if we haven't started down the list yet.
11404
11405 2002-05-19 Richard M. Stallman <rms@gnu.org>
11406
11407 * doc.c (reread_doc_file): Don't ask for confirmation.
11408
11409 2002-05-18 Jason Rumney <jasonr@gnu.org>
11410
11411 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
11412 (xbm_load_image): Use it.
11413 (xbm_load): Ditto.
11414 (xbm_read_bitmap_data): Reverted to xfns.c version.
11415 From David Ponce <david@dponce.com>.
11416
11417 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
11418
11419 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
11420 2.02 and later.
11421
11422 2002-05-16 Juanma Barranquero <lektu@terra.es>
11423
11424 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
11425
11426 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
11427
11428 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
11429 meaningful test.
11430 (read_char_minibuf_menu_prompt): Fix typo.
11431
11432 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
11433
11434 * eval.c (Fcommandp): Doc fix.
11435
11436 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
11437
11438 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
11439 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
11440 (Fset_keymap_parent): Gcpro a bit more.
11441 (access_keymap): Gcpro around meta_map call and around the main loop.
11442 (get_keyelt): Gcpro when following indirect references.
11443 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
11444 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
11445 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
11446 Remove useless ad-hoc remap code.
11447
11448 2002-05-13 Richard M. Stallman <rms@gnu.org>
11449
11450 * search.c (search_buffer): Give up boyer moore search if inverse
11451 translation change charset_base.
11452
11453 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
11454
11455 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
11456 characters is carried over from the previous block of text, adjust
11457 coding->produced to account for the extra character.
11458
11459 2002-05-11 Andreas Schwab <schwab@suse.de>
11460
11461 * coding.c (intersection): Keep the elements of the returned list
11462 in the same order as in the first list.
11463
11464 2002-05-11 Kim F. Storm <storm@cua.dk>
11465
11466 * keymap.c (current_minor_maps): Fixed resizing of cmm_maps;
11467 only update cmm_size if realloc actually succeeds.
11468 Testing with initial size of 2 elements revealed that using
11469 realloc on GNU/Linux would cause a random trap in xmalloc
11470 later on, so I rewrote the code to use malloc/bcopy/free instead
11471 of realloc.
11472
11473 2002-05-10 Jason Rumney <jasonr@gnu.org>
11474
11475 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
11476
11477 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
11478
11479 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
11480 parens, to ensure correct evaluation order.
11481
11482 2002-05-10 Kim F. Storm <storm@cua.dk>
11483
11484 * keymap.c (Vemulation_mode_map_alists): New variable.
11485 (syms_of_keymap): DEFVAR_LISP it.
11486 (current_minor_maps): Process keymap alists in that list before
11487 minor-mode-overriding-map-alist and minor-mode-map-alist.
11488
11489 2002-05-09 Richard M. Stallman <rms@gnu.org>
11490
11491 * search.c (Freplace_match): Doc fix.
11492
11493 2002-05-09 Kim F. Storm <storm@cua.dk>
11494
11495 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11496 Enlarge cursor rectangle drawn around image with non-zero relief.
11497
11498 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
11499 Enlarge cursor rectangle drawn around image with non-zero relief.
11500
11501 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
11502 Enlarge cursor rectangle drawn around image with non-zero relief.
11503
11504 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
11505
11506 * xselect.c (lisp_data_to_selection_data): Don't set selection
11507 type if comes from the Lisp object's car. If the selection
11508 contains a pure ASCII text, always return QSTRING as its type.
11509
11510 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11511
11512 * mac.c (mac-cut-function): Doc fix.
11513
11514 2002-05-05 Richard M. Stallman <rms@gnu.org>
11515
11516 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
11517
11518 2002-05-04 Jason Rumney <jasonr@gnu.org>
11519
11520 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
11521 for event-click-count.
11522
11523 * process.c (init_process): Only add server subfeature if we can
11524 use non-blocking I/O.
11525
11526 2002-05-04 Andrew Choi <akochoi@shaw.ca>
11527
11528 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
11529 repeatedly.
11530
11531 2002-05-03 Jason Rumney <jasonr@gnu.org>
11532
11533 * process.c (Fmake_network_process): Only support server sockets
11534 when we can make them non-blocking.
11535
11536 * s/ms-w32.h (HAVE_SELECT): Define.
11537
11538 * w32.h (FILE_NDELAY): New flag.
11539
11540 * w32.c (sys_getpeername, fcntl): New functions.
11541 (_sys_read_ahead): Temporarily block on non-blocking sockets.
11542
11543 * w32proc.c: include sys/file.h.
11544
11545 2002-05-03 Colin Walters <walters@verbum.org>
11546
11547 * callproc.c (Vgame_score_directory): Renamed to
11548 Vshared_game_score_directory.
11549
11550 2002-04-30 Richard M. Stallman <rms@gnu.org>
11551
11552 * s/gnu.h [emacs]: Include stdio.h.
11553 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
11554
11555 * eval.c (do_autoload): Error if called while preparing to dump.
11556
11557 * fns.c (Frequire): Error if need to load while preparing to dump.
11558
11559 2002-04-28 Colin Walters <walters@verbum.org>
11560
11561 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
11562 Default to "~/.emacs.d/games".
11563
11564 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
11565
11566 * lread.c (openp): Change arg exec_only to predicate.
11567 (build_load_history): Use XCAR/XCDR.
11568 (Flocate_file_internal): New fun.
11569 (syms_of_lread): Defsubr it.
11570 (Fload): Update call to openp.
11571
11572 * lisp.h (openp): Update prototype.
11573
11574 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
11575 * w32proc.c (sys_spawnve):
11576 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
11577 * w32.c (check_windows_init_file):
11578 * sound.c (Fplay_sound_internal):
11579 * process.c (Fstart_process):
11580 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
11581 * mac.c (run_mac_command):
11582 * emacs.c (init_cmdargs):
11583 * callproc.c (Fcall_process): Update call to openp.
11584
11585 * textprop.c (remove_properties): Don't use XCAR without CONSP.
11586
11587 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
11588
11589 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11590
11591 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
11592 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
11593
11594 2002-04-28 Richard M. Stallman <rms@gnu.org>
11595
11596 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
11597
11598 * eval.c (Fcommandp): New arg for_call_interactively.
11599 * lisp.h (Fcommandp): Declare new arg.
11600
11601 2002-04-28 Jason Rumney <jasonr@gnu.org>
11602
11603 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
11604
11605 * w32.c (stat, fstat): Use file index information to generate
11606 inodes for directories where available.
11607
11608 2002-04-26 Andrew Choi <akochoi@shaw.ca>
11609
11610 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
11611 [HAVE_CARBON]: Include Mac object files.
11612
11613 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
11614 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
11615 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
11616 MAC_OSX, and MAC_OS instead of macintosh.
11617
11618 * editfns.c [MAC_OS8]: Include stdio.h.
11619
11620 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
11621
11622 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
11623 Apple Monaco.
11624
11625 * process.c: Declare QCfamily and QCfilter as extern.
11626 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
11627 calling select.
11628
11629 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
11630
11631 * tparam.c [MAC_OSX]: Don't define BC and UP.
11632
11633 * config.in [HAVE_CARBON]: Add.
11634
11635 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
11636 Move here from mac/src and mac/inc.
11637
11638 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
11639
11640 2002-04-26 Gerd Moellmann <gerd@gnu.org>
11641
11642 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
11643 Compute phys_cursor_width from the x position returned
11644 by x_draw_glyhs, which is cheaper.
11645 (x_display_and_set_cursor): Compute the buffer-local value
11646 of `cursor-in-non-selected-windows' only when needed.
11647
11648 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11649
11650 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
11651 cursor on a stretch glyph has a width that depends on
11652 x_stretch_cursor_p.
11653
11654 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11655
11656 * abbrev.c (abbrev-start-location): Doc fix.
11657
11658 * indent.c (Fvertical_motion): Fix last change.
11659
11660 2002-04-25 Gerd Moellmann <gerd@gnu.org>
11661
11662 * indent.c (Fvertical_motion): Move to the start of the line
11663 containing PT before moving up or down.
11664
11665 2002-04-24 Gerd Moellmann <gerd@gnu.org>
11666
11667 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
11668 case of writing a whole row, more or less analogous to the case of
11669 writing only parts of a row.
11670
11671 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
11672 0 for NO_CURSOR.
11673
11674 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
11675
11676 2002-04-23 Colin Walters <walters@verbum.org>
11677
11678 * buffer.c (syms_of_buffer): Doc fix.
11679
11680 2002-04-23 Gerd Moellmann <gerd@gnu.org>
11681
11682 * xterm.c (notice_overwritten_cursor): Handle the special case
11683 of the cursor being in the first blank non-text line at the
11684 end of a window.
11685
11686 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
11687 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
11688 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
11689 bar cursors only, to make phys_cursor_width contain what its name
11690 suggests.
11691 (notice_overwritten_cursor): Consider the cursor image erased if
11692 the output area intersects the cursor image in y-direction.
11693
11694 2002-04-23 Simon Marshall <simon@gnu.org>
11695
11696 * xfns.c (x_set_mouse_color): Change default for cross_cursor
11697 to XC_hand2.
11698
11699 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11700
11701 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
11702
11703 2002-04-22 Kim F. Storm <storm@cua.dk>
11704
11705 * textprop.c (remove_properties): Fixed trap for malformed plist.
11706
11707 2002-04-22 Richard M. Stallman <rms@gnu.org>
11708
11709 * cmds.c (Fend_of_line): Handle intangible text in mid line.
11710
11711 * window.c (make_window): Initialize height_fixed_p,
11712 last_cursor_off_p, and p->cursor_off_p slots.
11713
11714 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11715
11716 * fns.c (use-dialog-box): Doc fix.
11717
11718 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11719
11720 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
11721 variables `row', `i' and `area'.
11722 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
11723 toolkit library.
11724
11725 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
11726
11727 * xfaces.c (clear_font_table): Don't free the default font of
11728 a frame even if it's on another display.
11729 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
11730 that could be Qt.
11731
11732 2002-04-19 Juanma Barranquero <lektu@terra.es>
11733
11734 * indent.c (Fmove_to_column): Remove unused local variable
11735 `next_boundary_byte'.
11736 (current_column_1): Likewise.
11737
11738 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
11739
11740 * msdos.c (Qhbar): New variable.
11741 (syms_of_msdos): Intern and staticpro it.
11742 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
11743 cursor type.
11744
11745 2002-04-19 Dave Lambert <dlambert@acm.org>
11746
11747 Theses change implement an underscore-like (`hbar') cursor.
11748
11749 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
11750
11751 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
11752 Handle the `hbar' cursor type.
11753 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
11754
11755 * xfns.c (Qhbar): New variable.
11756 (syms_of_xfns): Intern and staticpro it.
11757 (x_specified_cursor_type): Handle `hbar' cursor.
11758
11759 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
11760 not defined.
11761
11762 2002-04-18 Richard M. Stallman <rms@gnu.org>
11763
11764 * textprop.c (remove_properties): New arg LIST allows scanning
11765 either a list or a plist.
11766 (interval_has_some_properties_list): New function, like
11767 interval_has_some_properties using list instead of plist.
11768 All callers changed.
11769 (Fremove_list_of_text_properties): New function.
11770 (syms_of_textprop): Defsubr it.
11771
11772 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11773
11774 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
11775
11776 2002-04-17 Juanma Barranquero <lektu@terra.es>
11777
11778 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
11779
11780 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
11781
11782 * window.c (coordinates_in_window): Don't report on margin area
11783 if its width is zero.
11784
11785 2002-04-16 Jason Rumney <jasonr@gnu.org>
11786
11787 * w32fns.c (Fx_file_dialog): Decode file name before using.
11788
11789 * w32term.c (construct_drag_n_drop): Likewise.
11790
11791 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
11792
11793 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
11794 store load-history in pure space.
11795
11796 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
11797
11798 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
11799
11800 * xterm.c (Qlatin_1, Qutf_8): New vars.
11801 (syms_of_xterm): Initialize them.
11802 (XTread_socket): Eliminate incorrect optimization that tried to avoid
11803 decoding the output of X*LookupString.
11804 Always use latin-1 to decode the output of XLookupString.
11805 Try Xutf8LookupString if XmbLookupString failed.
11806
11807 * region-cache.c (new_region_cache): Use BEG.
11808
11809 2002-04-16 Gerd Moellmann <gerd@gnu.org>
11810
11811 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
11812 configuration files.
11813 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
11814 returns 0.
11815
11816 2002-04-15 Andreas Schwab <schwab@suse.de>
11817
11818 * config.in: Regenerated using autoheader.
11819
11820 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
11821 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
11822 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
11823 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
11824 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
11825 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
11826 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
11827 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
11828 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
11829 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
11830 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
11831 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
11832 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
11833 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
11834 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
11835 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
11836 STACK_DIRECTION, now set by autoconf.
11837
11838 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11839
11840 * dispnew.c (marginal_area_string): Sort arguments.
11841
11842 * dispextern.h (marginal_area_string): Add prototype.
11843
11844 2002-04-13 Richard M. Stallman <rms@gnu.org>
11845
11846 * fileio.c (Finsert_file_contents):
11847 Don't call temp_output_buffer_setup--do just part, by hand.
11848
11849 * coding.c (run_pre_post_conversion_on_str):
11850 Don't call temp_output_buffer_setup--do just part, by hand.
11851
11852 * keyboard.c (command_loop_1): Don't call start_hourglass
11853 or cancel_hourglass when executing a macro.
11854
11855 * marker.c (count_markers): New function.
11856
11857 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
11858 grow without limit. Move recently used elements to the front.
11859
11860 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
11861
11862 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
11863
11864 2002-04-12 Gerd Moellmann <gerd@gnu.org>
11865
11866 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
11867 rows marginal areas.
11868 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
11869 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
11870
11871 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
11872
11873 2002-04-12 Dave Love <fx@gnu.org>
11874
11875 * dispnew.c (marginal_area_string): New.
11876
11877 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
11878 (Qleft_margin, Qright_margin): Declare.
11879 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
11880
11881 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
11882 note_mode_line_highlight and extended.
11883
11884 * keyboard.c (Qleft_margin, Qright_margin): Declare.
11885 (make_lispy_event): Deal with mouse events in margins.
11886
11887 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
11888
11889 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
11890
11891 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
11892 than deactivating the mark if tmm is set to `lambda'.
11893 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
11894 Use a single event for HELP_EVENT.
11895 (Fexecute_extended_command): Save last_point_position.
11896
11897 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11898
11899 * lisp.h (Fpropertize): Add prototype.
11900
11901 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
11902
11903 2002-04-10 Colin Walters <walters@verbum.org>
11904
11905 * config.in: Add HAVE_SHARED_GAME_DIR.
11906
11907 * callproc.c: (Vgame_score_directory): New variable.
11908 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
11909
11910 2002-04-10 Richard M. Stallman <rms@gnu.org>
11911
11912 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
11913
11914 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
11915
11916 * minibuf.c (read_minibuf): Use empty_string.
11917 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
11918 Short-circuit the search as soon as it "failed".
11919 (Fall_completions): Allow lambda forms and lists of strings for alist.
11920 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
11921 when require_match is nil.
11922 (Ftest_completion): Rename from `test_completion' and export to elisp.
11923 Call the predicate also when alist is a list.
11924 Obey Vcompletion_regexp_list.
11925 (do_completion, Fminibuffer_complete_and_exit): Use it.
11926 (Fassoc_string): Rename from `assoc_for_completion'.
11927 Allow list of strings as well and export to elisp.
11928
11929 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
11930
11931 * puresize.h (BASE_PURESIZE): Increase to 900KB.
11932
11933 2002-04-08 Juanma Barranquero <lektu@terra.es>
11934
11935 * w32.c (sys_accept): Don't hide variable `s'.
11936
11937 2002-04-05 Gerd Moellmann <gerd@gnu.org>
11938
11939 * callint.c (Fcall_interactively): Use INTEGERP instead of
11940 NUMBERP for checking Vhistory_length.
11941
11942 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11943
11944 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
11945 Doc fix to reflect it.
11946
11947 2002-04-04 Richard M. Stallman <rms@gnu.org>
11948
11949 * xdisp.c (display_mode_element): New arg RISKY.
11950 Disregard text props found or specified within a variable
11951 that isn't marked risky-local-variable.
11952 (Qrisky_local_variable): New variable.
11953 (syms_of_xdisp): Init and staticpro it.
11954
11955 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
11956
11957 * undo.c (record_point): New fun.
11958 (record_delete, record_insert): Use it.
11959
11960 2002-04-03 Juanma Barranquero <lektu@terra.es>
11961
11962 * doc.c (Fdocumentation): Add missing parentheses.
11963 (Fdocumentation_property): Likewise.
11964
11965 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
11966
11967 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
11968 data is 0, just return nil.
11969
11970 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
11971
11972 * msdos.c (syms_of_msdos): Fix last change with
11973 mouse_autoselect_window.
11974
11975 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
11976
11977 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
11978 mouse_autoselect_window.
11979
11980 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
11981
11982 * keyboard.c (make_lispy_event): Handle unknown keysyms together
11983 with system-specific keysyms. Use it also for unknown function keys.
11984
11985 * doc.c (reread_doc_file): Return whether reload was attempted.
11986 (Fdocumentation, Fdocumentation_property): Don't try to reload
11987 if the doc is 0 and only ask once.
11988
11989 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
11990
11991 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
11992
11993 * keyboard.c (read_char): If the event was Qselect_window,
11994 restore timer_idleness_start_time to its previous value.
11995
11996 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
11997
11998 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
11999
12000 * region-cache.c (new_region_cache): Use BEG.
12001
12002 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
12003 Use BEG and BEG_BYTE.
12004
12005 * doc.c (get_doc_string): Return nil if the location is wrong.
12006 (reread_doc_file): New fun.
12007 (Fdocumentation, Fdocumentation_property):
12008 Call it if get_doc_string fails.
12009 (Fsnarf_documentation): Make it work for a dumped Emacs.
12010
12011 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
12012 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
12013
12014 * charset.c (Fstring): Allow 0 arguments.
12015
12016 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
12017
12018 * process.c (DATAGRAM_CONN_P, list_processes_1)
12019 (Fprocess_datagram_address, Fset_process_datagram_address)
12020 (Fset_network_process_options, server_accept_connection):
12021 Fix some int/Lisp_Object confusions (thank you union types).
12022
12023 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12024
12025 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
12026
12027 * w32term.c: Likewise.
12028 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
12029
12030 * keyboard.c (Qselect_window): New symbol.
12031 (head_table): Use it.
12032 (keys_of_keyboard): Bound select-window event to handle-select-window.
12033 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
12034
12035 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
12036 (last_window): New variable.
12037 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
12038 (note_mouse_movement): Remove reimplemented code in #if 0.
12039 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
12040 Emacs windows.
12041
12042 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
12043
12044 2002-03-31 Gerd Moellmann <gerd@gnu.org>
12045
12046 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
12047 Callers changed.
12048
12049 2002-03-30 Richard M. Stallman <rms@gnu.org>
12050
12051 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
12052 loop whenever it stops making progress.
12053
12054 * widget.c (set_frame_size): Don't call change_frame_size.
12055
12056 2002-03-30 Gerd Moellmann <gerd@gnu.org>
12057
12058 * dispnew.c (direct_output_for_insert):
12059 Call mark_window_display_accurate.
12060
12061 2002-03-29 Jason Rumney <jasonr@gnu.org>
12062
12063 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
12064
12065 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
12066
12067 * Makefile.in (lread.o): Depend on coding.h.
12068
12069 * lread.c (openp, Fload): Encode the file name before passing it
12070 to `stat', `access', and `emacs_open'.
12071 (openp): GCPRO the encoded file name. Don't recompute Lisp
12072 strings unnecessarily.
12073
12074 2002-03-29 Kim F. Storm <storm@cua.dk>
12075
12076 * fns.c (Flax_plist_put): Doc fix.
12077
12078 2002-03-28 Miles Bader <miles@gnu.org>
12079
12080 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
12081
12082 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12083
12084 * process.c (set-network-process-options): Add usage.
12085 (make-network-process): Doc fix.
12086
12087 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
12088
12089 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
12090
12091 2002-03-26 Richard M. Stallman <rms@gnu.org>
12092
12093 * fns.c (Fsubstring_no_properties): New function.
12094 (Flax_plist_get, Flax_plist_put): New functions.
12095 (syms_of_fns): defsubr them.
12096
12097 * xdisp.c (update_menu_bar): Test only update_mode_lines;
12098 don't test or alter w->update_mode_line.
12099
12100 * window.c (Fdisplay_buffer): Doc fix.
12101
12102 2002-03-24 Richard M. Stallman <rms@gnu.org>
12103
12104 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
12105
12106 2002-03-24 Gerd Moellmann <gerd@gnu.org>
12107
12108 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
12109 (Fdefmacro): Handle `(declare ...)'.
12110 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
12111 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
12112
12113 2002-03-24 Jason Rumney <jasonr@gnu.org>
12114
12115 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
12116 (xbm_file_p): Add prototypes.
12117 (xbm_format, xbm_image_p): Sync with xfns.c.
12118 (reflect_byte): New function.
12119 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
12120 (xbm_load_image): Create bitmaps with a depth of 1.
12121 (init_xfns): Enable XBM images.
12122
12123 2002-03-23 Jason Rumney <jasonr@gnu.org>
12124
12125 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
12126 correctly. Do not pass up_modifier to keyboard buffer.
12127
12128 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
12129
12130 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
12131
12132 * Makefile.in (bootstrapclean): New target.
12133 (bootstrap-temacs, bootstrap-doc): Remove.
12134 (bootstrap-emacs): Use a bog-standard `temacs'.
12135 Don't bother to build a DOC file.
12136
12137 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
12138
12139 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
12140 in temacs even if !CANNOT_DUMP.
12141 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
12142
12143 * alloc.c (check_pure_size): Only output a warning.
12144
12145 2002-03-22 Jason Rumney <jasonr@gnu.org>
12146
12147 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
12148 supported.
12149
12150 * w32term.c (zv_bits): Declare as short, for word alignment.
12151 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
12152 (syms_of_w32term): Define x-use-underline-position-properties.
12153
12154 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
12155 (clear_image_cache): Block input, fix logic, clear matrices in
12156 all frames that share this cache.
12157
12158 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
12159
12160 * emacs.c (main): Update the Copyright year in the blurb printed
12161 by "emacs --version".
12162
12163 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
12164
12165 * xterm.c (XTread_socket): If XK_ISO_Lock and
12166 XK_ISO_Last_Group_Lock are defined, handle keysyms between
12167 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
12168
12169 2002-03-21 Kim F. Storm <storm@cua.dk>
12170
12171 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
12172 menu-bar bindings in keymap and local-map properties _are_ used.
12173 But try keymap property first in accordance with 2002-01-03 patch.
12174 Added comment describing why this is not always reliable.
12175 (tool_bar_items): Ditto for tool-bar.
12176
12177 2002-03-21 Jason Rumney <jasonr@gnu.org>
12178
12179 * w32fns.c (x_clear_image_1): Disable color table code.
12180
12181 2002-03-21 Kim F. Storm <storm@cua.dk>
12182
12183 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
12184 removed the wrong version of the DEFUN macro; fixed it.
12185
12186 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
12187 Fmember rather than Fmemq).
12188 (Fprovide): Check that subfeatures is a list.
12189
12190 * process.c (QCfeature, QCdatagram): Removed variables.
12191 (QCtype, Qdatagram): New variables.
12192 (network_process_featurep): Removed function.
12193 (Fmake_network_process): Removed :feature check.
12194 Use :type 'datagram instead of :datagram t to create a datagram
12195 socket. This allows us to add other connection types (e.g. raw
12196 sockets) later in a consistent manner.
12197 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
12198 supported subfeatures for feature make-network-process.
12199 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
12200 Intern and staticpro QCtype and Qdatagram.
12201 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
12202
12203 * xfns.c: (QCtype): Remove duplicate declaration and
12204 initialization (is now declared in process.c).
12205
12206 * w32fns.c: (QCtype): Remove duplicate declaration and
12207 initialization (is now declared in process.c).
12208
12209 2002-03-21 Richard M. Stallman <rms@gnu.org>
12210
12211 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
12212 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
12213 when jumping to `fail' to avoid undoing reg changes in the
12214 last iteration of the loop.
12215 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
12216
12217 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
12218 Depend on process.h.
12219
12220 2002-03-20 Jason Rumney <jasonr@gnu.org>
12221
12222 Most of the following changes are still conditional on HAVE_IMAGES
12223 which is not set by default on Windows.
12224
12225 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
12226
12227 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
12228 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
12229 (four_corners_best, x_clear_image_1, x_clear_image)
12230 (x_alloc_image_color, postprocess_image)
12231 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
12232 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
12233 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
12234
12235 * w32gui.h (struct XImage): Define.
12236
12237 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
12238 extract mouse co-ordinates.
12239
12240 2002-03-20 Jason Rumney <jasonr@gnu.org>
12241
12242 * w32.c (init_winsock): Dynamically load new server and UDP
12243 socket functions.
12244 (socket_to_fd): New function.
12245 (sys_socket): Use it.
12246 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
12247 (sys_recvfrom, sys_sendto): New wrapper functions.
12248
12249 * process.c (QCfamily, QCfilter): Remove duplicate declaration
12250 and initialization.
12251
12252 * makefile.w32-in (LIBS): Remove $(WSOCK32).
12253
12254 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
12255
12256 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
12257 Don't use "sun" as a variable, it's a predefined constant on Sun
12258 machines.
12259
12260 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12261
12262 * bytecode.c (Fbyte_code): Revert last change.
12263
12264 2002-03-19 Kim F. Storm <storm@cua.dk>
12265
12266 * makefile.w32-in (LIBS): Add $(WSOCK32).
12267 From David Ponce <dponce@voila.fr>.
12268
12269 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12270
12271 * process.c (wait_reading_process_input): Move variables `pname'
12272 and `pnamelen' down where they are used.
12273
12274 * bytecode.c (Fbyte_code): Discard unused computed value to
12275 prevent gcc warning.
12276
12277 * lisp.h (Fplist_member): Add prototype.
12278
12279 2002-03-18 Kim F. Storm <storm@cua.dk>
12280
12281 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
12282 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
12283
12284 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
12285 Remove explicit GNU_LINUX settings for datagram support.
12286
12287 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12288
12289 * process.c (Fmake_network_process): Remove unused variable `sa'.
12290 Doc fix. Add usage:.
12291 (set_socket_options): Remove unused variables `optnum' and `opttype'.
12292
12293 2002-03-17 Richard M. Stallman <rms@gnu.org>
12294
12295 * xdisp.c (cursor_type_changed): New variable.
12296 (redisplay_internal): Redisplay all windows if cursor_type_changed.
12297 Clear it when clearing windows_or_buffers_changed.
12298 (try_cursor_movement, redisplay_window, try_window_id)
12299 (try_window_reusing_current_matrix): Test cursor_type_changed
12300 along with windows_or_buffers_changed.
12301
12302 * window.h (cursor_type_changed): New variable.
12303
12304 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
12305 not update_mode_lines, and always set it to 1.
12306
12307 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
12308 if no frames needed redrawing.
12309
12310 2002-03-17 Kim F. Storm <storm@cua.dk>
12311
12312 The following changes add support for network server processes,
12313 datagram connections, and local (unix) sockets.
12314
12315 * process.h (struct Lisp_Process): New member log.
12316 Doc fix: Member command used to indicate stopped network process.
12317 Doc fix: Member childp contains plist for network process.
12318 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
12319
12320 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
12321 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery,QCstop)
12322 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
12323 New variables.
12324 (NETCONN1_P): New macro.
12325 (DATAGRAM_SOCKETS): New conditional symbol.
12326 (datagram_address): New array.
12327 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
12328 (status_message): Use concat3.
12329 (Fprocess_status): Add `listen' status to doc string. Return `stop'
12330 for a stopped network process.
12331 (Fset_process_buffer): Update contact plist for network process.
12332 (Fset_process_filter): Ditto. Don't enable input for stopped
12333 network processes. Server must listen, even if filter is t.
12334 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
12335 New functions.
12336 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
12337 (Fprocess_contact): Added KEY argument. Handle datagrams.
12338 (list_processes_1): Optionally show only processes with the query
12339 on exit flag set. Dynamically adjust column widths. Omit tty
12340 column if not needed. Report stopped network processes.
12341 Identify server and datagram network processes.
12342 (Flist_processes): New optional arg `query-only'.
12343 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
12344 (conv_lisp_to_sockaddr, set_socket_options)
12345 (network_process_featurep, unwind_request_sigio): New helper functions.
12346 (Fprocess_datagram_address, Fset_process_datagram_address):
12347 (Fset_network_process_options): New lisp functions.
12348 (Fopen_network_stream): Removed. Now defined in simple.el.
12349 (Fmake_network_process): New lisp function. Code is based on previous
12350 Fopen_network_stream, but heavily reworked with new property list based
12351 argument list, support for datagrams, server processes, and local
12352 sockets in addition to old client-only functionality.
12353 (server_accept_connection): New function.
12354 (wait_reading_process_input): Use it to handle incoming connects.
12355 Do not enable input on a new connection if process is stopped.
12356 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
12357 (send_process): Handle datagram sockets.
12358 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
12359 network process is indicated by setting command field to t .
12360 (Fprocess_send_eof): No-op if datagram connection.
12361 (Fstatus_notify): Don't read input for a stream server socket or a
12362 stopped network process.
12363 (init_process): Initialize datagram_address array.
12364 (syms_of_process): Intern and staticpro new variables, defsubr new
12365 functions.
12366
12367 2002-03-16 Jason Rumney <jasonr@gnu.org>
12368
12369 * w32fns.c (w32_to_all_x_charsets): Return correct type in
12370 startup case.
12371
12372 2002-03-16 Richard M. Stallman <rms@gnu.org>
12373
12374 * xdisp.c (redisplay_internal, redisplay_windows):
12375 Use list_of_error to call internal_condition_case_1.
12376 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
12377 so as to catch all errors with no possibility of debugger redisplay.
12378 (list_of_error): New variable.
12379 (syms_of_xdisp): Init and staticpro it.
12380
12381 * print.c (print_object): Delete `\ ' from printed rep of frame.
12382
12383 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
12384
12385 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
12386 until its implementation is fixed.
12387
12388 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12389
12390 * xfns.c (png_load): Remove unused variable `gamma_str'.
12391
12392 2002-03-14 Richard M. Stallman <rms@gnu.org>
12393
12394 * xfns.c (x_real_positions): Handle failure in XQueryTree.
12395
12396 2002-03-14 Miles Bader <miles@gnu.org>
12397
12398 * intervals.c (adjust_for_invis_intang): New function.
12399 (set_point_both): Use `adjust_for_invis_intang' to do most of the
12400 work for dealing with invisible+intangible regions. Do so before
12401 and after both forward and backward movements, to handle both
12402 front-sticky and rear-sticky cases.
12403 * textprop.c (text_property_stickiness): Function moved here from
12404 `editfns.c'.
12405 * intervals.h (text_property_stickiness): New declaration.
12406 * editfns.c (char_property_eq): Function removed.
12407 (text_property_stickiness): Function moved to `textprop.c'.
12408
12409 2002-03-13 Jason Rumney <jasonr@gnu.org>
12410
12411 * config.in: Add STRFTIME_NO_POSIX2.
12412
12413 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
12414 and %OX when underlying strftime does not.
12415
12416 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
12417
12418 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
12419 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
12420 line) to avoid annoying flicker.
12421 (xm_scroll_callback): Get rid of the now unnecessary kludge.
12422 (XTread_socket): Mark it static.
12423
12424 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
12425
12426 2002-03-13 Kim F. Storm <storm@cua.dk>
12427
12428 * puresize.h (BASE_PURESIZE): Increase to 775000.
12429
12430 2002-03-12 Juanma Barranquero <lektu@terra.es>
12431
12432 * editfns.c (syms_of_editfns): Fix typo.
12433
12434 2002-03-12 Gerd Moellmann <gerd@gnu.org>
12435
12436 * xsmfns.c: Include stdio.h because termhooks.h needs it.
12437 Include termopt.h for interrupt_input.
12438
12439 2002-03-11 Andreas Schwab <schwab@suse.de>
12440
12441 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
12442
12443 2002-03-11 Gerd Moellmann <gerd@gnu.org>
12444
12445 * xterm.c (note_mouse_movement): Put code for
12446 x_autoselect_window_p in #if 0.
12447
12448 * lread.c (Fload): Don't assume that message_with_string uses the
12449 string it is given like a C string.
12450
12451 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12452
12453 * xterm.h (x_session_check_input, x_session_initialize): Declared.
12454
12455 * xterm.c: (XTread_socket): Add call to x_session_check_input and
12456 x_session_have_connection.
12457 (x_initialize): Add call to x_session_initialize.
12458
12459 * termhooks.h (enum event_kind): Add save_session_event.
12460
12461 * keyboard.c: Add Emacs event save_session_event.
12462
12463 * emacs.c (main): Add call to syms_of_xsmfns.
12464
12465 * lisp.h: Declare syms_of_xsmfns as extern.
12466
12467 * config.in: Add HAVE_X_SM.
12468
12469 * Makefile.in (LIBXT): Add -lSM -lICE
12470 if HAVE_X_SM and not USE_X_TOOLKIT.
12471 (XOBJ): New file xsmfns.c added.
12472
12473 * xsmfns.c: New file for X session management.
12474
12475 2002-03-09 Jason Rumney <jasonr@gnu.org>
12476
12477 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
12478 read-only when setting modified time.
12479
12480 2002-03-08 Gerd Moellmann <gerd@gnu.org>
12481
12482 * xdisp.c (move_it_vertically_backward): At the end of the function,
12483 when moving forward by lines, treat terminal frames specially.
12484
12485 * keyboard.c (echo_char): Make sure to add a separator between
12486 keys even if echo_dash hasn't been called.
12487
12488 * xdisp.c: Use new string macros.
12489 (update_echo_area): Pass number of bytes to message3 instead of
12490 number of chars.
12491 (set_message_1): Don't access a string's size_byte directly.
12492 (decode_mode_spec_coding): Use number of bytes of eoltype string
12493 instead number of chars.
12494
12495 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
12496
12497 2002-03-08 Juanma Barranquero <lektu@terra.es>
12498
12499 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
12500 24-bit.
12501
12502 2002-03-06 Jason Rumney <jasonr@gnu.org>
12503
12504 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
12505
12506 2002-03-06 Gerd Moellmann <gerd@gnu.org>
12507
12508 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
12509 (cancel_echoing, echo_length, echo_truncate): Changed to
12510 work with new kboard definition.
12511 (echo_now): Use message3_nolog instead of message2_nolog.
12512
12513 * alloc.c (mark_kboards): Mark echo_string.
12514
12515 * keyboard.h (ECHOBUFSIZE): Removed.
12516 (struct kboard): Member echoptr removed, member echobuf renamed
12517 to echo_string.
12518
12519 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
12520 message3 instead of message2 to display the message using STRING's
12521 text properties.
12522
12523 2002-03-05 Andreas Schwab <schwab@suse.de>
12524
12525 * xdisp.c (hscroll_margin): Change to EMACS_INT.
12526
12527 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
12528
12529 * frame.c (default-frame-alist): Explain that setting it doesn't
12530 affect existing frames.
12531
12532 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
12533
12534 * indent.c (skip_invisible): Fix my brain fart.
12535
12536 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
12537
12538 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
12539
12540 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
12541 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
12542 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
12543 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
12544 and variables to use EMACS_INT instead of just int.
12545
12546 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
12547
12548 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
12549
12550 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
12551 environment, pass it down with corrected value.
12552
12553 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12554
12555 * lread.c (read_filtered_event): Do not call start_hourglass
12556 before returning.
12557
12558 2002-03-04 Juanma Barranquero <lektu@terra.es>
12559
12560 * w32term.c (x_display_and_set_cursor): Fix typo.
12561
12562 2002-03-03 Richard M. Stallman <rms@gnu.org>
12563
12564 * fileio.c (Fmake_temp_name): Doc fix.
12565
12566 2002-03-03 Gary Wong <gtw@gnu.org>
12567
12568 * termcap.c [!emacs]: Replace ospeed for building standalone
12569 libtermcap, for binary compatibility.
12570
12571 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
12572
12573 2002-03-03 Richard M. Stallman <rms@gnu.org>
12574
12575 * xrdb.c (file_p): Rename arg `path' to `filename'.
12576
12577 * abbrev.c (Fexpand_abbrev): Increment plist as use count
12578 only if it is an integer.
12579
12580 * xfns.c (png_load): Set screen_gamma based on f->gamma.
12581 If png_get_sRGB gives an answer, call png_set_gamma
12582 using the default image gamma value.
12583
12584 * lread.c (read1): When reading from a file, default string to
12585 multibyte only if it has some multibyte characters.
12586
12587 * print.c (print_object): Output multibyte chars 128...255
12588 using \x even if ! print_escape_multibyte.
12589
12590 * xdisp.c (display_mode_element): Move the places where
12591 bytepos, charpos, this, and lisp_string are set.
12592 Use lisp_string to set bytepos.
12593
12594 * xdisp.c (redisplay_internal):
12595 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
12596
12597 * xdisp.c (display_mode_element): Merge properties specified with
12598 :propertize onto those that come with the string.
12599
12600 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
12601
12602 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
12603 automatic-hscrolling. Users changed.
12604 <hscroll-margin>: Renamed from automatic-hscroll-margin.
12605 Users changed.
12606 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
12607
12608 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
12609
12610 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
12611
12612 2002-03-02 Kim F. Storm <storm@cua.dk>
12613
12614 * window.c (Fminibuffer_selected_window): New function.
12615 (syms_of_window): Defsubr it.
12616
12617 2002-03-01 Kim F. Storm <storm@cua.dk>
12618
12619 * window.h (struct window): New member phys_cursor_width.
12620
12621 * window.c (make_window, replace_window): Init phys_cursor_width.
12622
12623 * xterm.c (x_display_and_set_cursor): Blink box cursor using
12624 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12625
12626 * w32term.c (x_display_and_set_cursor): Blink box cursor using
12627 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
12628
12629 * lisp.h (GCPRO6): New macro.
12630
12631 * process.c (Fopen_network_stream): Use GCPRO6.
12632
12633 2002-03-01 Kim F. Storm <storm@cua.dk>
12634
12635 * process.c (Qconnect, Qfailed): New variables.
12636 (syms_of_process): Intern and staticpro them.
12637 (Fprocess_status): Document connect and failed return values.
12638 [NON_BLOCKING_CONNECT]: New conditional.
12639 (connect_wait_mask, num_pending_connects): New variables.
12640 (status_message): Convert Qfailed status.
12641 (Fopen_network_stream): Added support for non-blocking connect.
12642 New optional args: filter, sentinel, non_blocking. Doc updated.
12643 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
12644 (deactivate_process): Handle pending non-blocking connect.
12645 (wait_reading_process_input): Poll for status of non-blocking
12646 connects. Exec sentinel directly when connect succeeds.
12647 (status_notify): Don't read process output if not yet connected.
12648
12649 2002-02-28 Kim F. Storm <storm@cua.dk>
12650
12651 * window.c: (minibuf_selected_window): Renamed from
12652 Vminibuf_selected_window. Users changed.
12653 (syms_of_window): Staticpro it.
12654
12655 2002-02-26 Kim F. Storm <storm@cua.dk>
12656
12657 The following changes add a new Vminibuf_selected_window variable
12658 which is similar to Vminibuf_scroll_window, but which is only set
12659 on entry to the minibuffer (from a non-minibuffer window):
12660
12661 * window.c: (Vminibuf_selected_window): New variable.
12662 (struct save_window_data): New member minibuf_selected_window.
12663 (Fset_window_configuration): Restore Vminibuf_selected_window.
12664 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
12665 Set minibuf_scroll_window member to nil if minibuf_level is 0.
12666 (compare_window_configurations): Compare minibuf_selected_window.
12667
12668 * window.h: (Vminibuf_selected_window): Declare extern.
12669
12670 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
12671 entry to minibuffer or on entry from a non-minibuffer window.
12672
12673 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
12674 Vminibuf_selected_window instead of Vminibuf_scroll_window.
12675
12676 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
12677 instead of Vminibuf_scroll_window when deciding in which window
12678 the region should be highlighted. Consequently, the region remains
12679 highlighteded even when a completion buffer is also displayed.
12680
12681 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
12682
12683 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
12684
12685 * xselect.c (Qcompound_text_with_extensions): Renamed from
12686 Qcompound_text_no_extensions.
12687 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
12688
12689 2002-02-26 Juanma Barranquero <lektu@terra.es>
12690
12691 * w32proc.c (syms_of_ntproc): Doc fix.
12692
12693 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12694
12695 * intervals.h: Include "dispextern.h" unconditionally.
12696
12697 2002-02-24 Jason Rumney <jasonr@gnu.org>
12698
12699 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
12700 and disp-table.elc.
12701 (lisp): Add emacs-lisp/backquote.elc.
12702
12703 2002-02-24 Kim F. Storm <storm@cua.dk>
12704
12705 * keymap.c (Flookup_key): Fixed problem in 2001-12-28 patch:
12706 The validation of the event type was too strict as it didn't
12707 allow string events; buffer names are used in bindings for
12708 menu-bar-select-buffer (see `menu-bar-update-buffers').
12709
12710 2002-02-23 Kim F. Storm <storm@cua.dk>
12711
12712 The following changes rework my patch of 2002-02-06 which
12713 added command remapping by entering the commands directly into
12714 the keymaps. Now, command remapping uses an explicit `remap'
12715 prefix in the keymaps, i.e. [remap COMMAND].
12716
12717 * keymap.c (Qremap, remap_command_vector): New variables.
12718 (is_command_symbol): Removed function.
12719 (Fdefine_key): No longer accept a symbol for KEY.
12720 Added validation of [remap COMMAND] argument for KEY.
12721 The DEF is no longer required to be a symbol when remapping a command.
12722 (Fremap_command): New function to remap command through keymaps.
12723 (Flookup_key): Perform command remapping initiated by
12724 Fremap_command directly for speed.
12725 (Fkey_binding): Use Fremap_command for command remapping.
12726 (where_is_internal): Handle new command remapping representation.
12727 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
12728 staticpro them. Defsubr Fremap_command.
12729
12730 * keymap.h (Fremap_command): Declare extern.
12731 (is_command_symbol): Remove extern.
12732
12733 * keyboard.c (command_loop_1): Use Fremap_command for command
12734 remapping; now try command remapping for all symbols.
12735
12736 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12737
12738 * coding.h (run_pre_post_conversion_on_str): Add prototype.
12739
12740 2002-02-23 Jason Rumney <jasonr@gnu.org>
12741
12742 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
12743 on the string before encoding it.
12744 (Fw32_get_clipboard_data): Run post-read-conversion on the string
12745 after decoding it.
12746
12747 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
12748
12749 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12750
12751 * w32term.c (enter_timestamp): Remove unused static variable to
12752 prevent warning.
12753
12754 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
12755
12756 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
12757
12758 * w16select.c (Fw16_get_clipboard_data): Fix last change.
12759
12760 * xselect.c (selection_data_to_lisp_data): Fix last change.
12761
12762 2002-02-22 Jason Rumney <jasonr@gnu.org>
12763
12764 * w32term.h (struct w32_output): New member menu_command_in_progress.
12765
12766 * w32menu.c (menubar_selection_callback): Free the menu and
12767 clear the menu_command_in_progress flag.
12768
12769 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
12770 (menu_free_timer): New variable.
12771 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
12772 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
12773 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
12774 menu command is in progress.
12775 <WM_COMMAND>: Set the menu_command_in_progress flag.
12776 Kill any menu_free_timer that is running.
12777
12778 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
12779 Call ExtTextOutA rather than ExtTextOut.
12780
12781 2002-02-22 Eli Zaretskii <eliz@gnu.org>
12782
12783 * puresize.h (BASE_PURESIZE): Increase to 755000.
12784
12785 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12786
12787 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
12788 on the string before encoding it.
12789 (Fw16_get_clipboard_data): Run post-read-conversion on the string
12790 after decoding it.
12791
12792 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
12793
12794 Support for ICCCM Extended Segments in X selections:
12795
12796 * xselect.c <Qcompound_text_no_extensions>: New variable.
12797 (syms_of_xselect): Intern and staticpro it.
12798 (selection_data_to_lisp_data): Run post-read-conversion on decoded
12799 selection text.
12800 (lisp_data_to_selection_data): If next-selection-coding-system is
12801 compound-text-no-extensions, set the type of selection to be
12802 compound-text.
12803
12804 * xterm.h (x_encode_text): Update prototype.
12805
12806 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
12807 callers changed. If SELECTIONP is non-zero, run the
12808 pre-write-conversion function before encoding the selection text.
12809
12810 2002-02-21 Kim F. Storm <storm@cua.dk>
12811
12812 * frame.c (syms_of_frame): Change mouse-highlight default to t.
12813
12814 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
12815 Correct composing of language-change event.
12816
12817 2002-02-20 Kim F. Storm <storm@cua.dk>
12818
12819 * keyboard.c (menu_bar_items): Don't include keymap or local-map
12820 bindings at PT when building menu (the menu is not updated often
12821 enough for this to work reliable).
12822 (tool_bar_items): Likewise.
12823 (current_active_maps): Removed unused (and buggy) function.
12824
12825 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12826
12827 * xfns.c (gif_load): Use correct width and height for GIF images.
12828
12829 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
12830
12831 * floatfns.c (Fatan): Accept an optional second arg and call
12832 atan2 if passed 2 args.
12833
12834 2002-02-18 Jason Rumney <jasonr@gnu.org>
12835
12836 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
12837
12838 2002-02-17 Jason Rumney <jasonr@gnu.org>
12839
12840 * w32term.c (x_autoselect_window_p): New variable.
12841 (syms_of_w32term): DEFVAR_BOOL and initialize it.
12842 (note_mouse_movement): Use it.
12843
12844 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
12845
12846 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
12847
12848 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
12849 New variables.
12850 (syms_of_w32fns): Intern and staticpro them.
12851 (x_frame_parms) <"fullscreen">: New parameter.
12852 (x_fullscreen_move, x_set_fullscreen): New functions.
12853 (x_set_frame_parameters): Support Qfullscreen.
12854 (x_real_positions): Save x/y_pixels_diff frame params.
12855 (x_figure_window_size): Support full-screen frames.
12856 (Fx_create_frame): Default the fullscreen parameter.
12857
12858 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
12859 (x_fullscreen_adjust): New functions.
12860 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
12861 fullscreen. Call x_check_fullscreen_move, and set the
12862 want_fullscreen member of output_data.w32
12863 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
12864
12865 * w32term.h: New enum for FULLSCREEN_* constants.
12866 (struct w32_output): New members want_fullscreen, x_pixels_diff,
12867 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
12868 (x-fullscreen-adjust): New prototype.
12869
12870 2002-02-17 Kim F. Storm <storm@cua.dk>
12871
12872 * frame.c: (Vmouse_highlight): New variable.
12873 (syms_of_frame): DEFVAR_LISP it.
12874
12875 * frame.h: (Vmouse_highlight): Declare extern.
12876
12877 * xterm.h (struct x_display_info): Add mouse_face_hidden.
12878
12879 * xterm.c (disable_mouse_highlight): Removed variable.
12880 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12881 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12882 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
12883 and on after keyboard input.
12884 (x_term_init): Initialize mouse_face_hidden.
12885
12886 * msdos.h (struct display_info): Add mouse_face_hidden.
12887
12888 * msdos.c (disable_mouse_highlight): Removed variable.
12889 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12890 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
12891 (internal_terminal_init): Initialize mouse_face_hidden.
12892 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
12893 and on after keyboard input.
12894
12895 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
12896
12897 * w32term.c (disable_mouse_highlight): Removed variable.
12898 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
12899 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
12900 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
12901 and on after keyboard input.
12902 (w32_initialize_display_info): Initialize mouse_face_hidden.
12903
12904 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
12905
12906 * msdos.c (last_mouse_window): New variable.
12907 (dos_rawgetc): Fix last change--if the mouse is in the same window
12908 as recorded in last_mouse_window, don't select this window.
12909
12910 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
12911
12912 * msdos.c (x_autoselect_window_p): New variable.
12913 (syms_of_msdos): Defvar it.
12914 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
12915 which the last mouse movement occured, unless it is already selected.
12916
12917 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
12918 New variables.
12919 (syms_of_xdisp): DEVFAR them.
12920 (hscroll_window_tree): Use automatic_hscroll_margin and
12921 Vautomatic_hscroll_step to compute the amount of window scrolling.
12922
12923 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
12924
12925 * xterm.c (x-autoselect-window): New variable.
12926 (note_mouse_movement): Use it.
12927
12928 * keyboard.c: Do not include "systime.h" twice.
12929
12930 2002-02-15 Andreas Schwab <schwab@suse.de>
12931
12932 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
12933
12934 * alloc.c (NSTATICS): Increase to 1280.
12935
12936 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
12937
12938 * alloc.c (NSTATICS): Bump to 1026.
12939
12940 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
12941 (Vx_super_keysym): New variables.
12942 (syms_of_xterm): DEFVAR_LISP them.
12943 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
12944 variables to determine which keys to use for the various modifiers.
12945
12946 2002-02-13 Kim F. Storm <storm@cua.dk>
12947
12948 * window.c: (Vmode_line_in_non_selected_windows): Removed.
12949 (mode_line_in_non_selected_windows): New variable.
12950 (syms_of_window): DEFVAR_BOOL it.
12951
12952 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
12953 Use mode_line_in_non_selected_windows.
12954 (mode_line_in_non_selected_windows): Declare extern.
12955 (Vmode_line_in_non_selected_windows): Removed extern.
12956
12957 2002-02-13 Richard M. Stallman <rms@gnu.org>
12958
12959 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
12960 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
12961 (Fclear_this_command_keys): Doc fixes.
12962
12963 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
12964 (update_face_from_frame_parameter): Increment face_change_count
12965 and windows_or_buffers_changed to force redisplay using changed faces.
12966
12967 * xdisp.c (QCpropertize): New variable.
12968 (mode_line_proptrans_alist): New variable.
12969 (display_mode_element): New arg PROPS; all calls changed.
12970 Implement this, for strings.
12971 Handle literal output of strings by sharing the
12972 main-line code for strings, using local var `literal'.
12973 Handle :propertize feature.
12974 (syms_of_xdisp): Initialze and staticpro QCpropertize and
12975 mode_line_proptrans_alist.
12976
12977 2002-02-11 Kim F. Storm <storm@cua.dk>
12978
12979 * window.c: (Vmode_line_in_non_selected_windows): New variable.
12980 (syms_of_window): DEFVAR_LISP it.
12981
12982 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
12983 (CURRENT_MODE_LINE_FACE_ID): Use it.
12984 (Vmode_line_in_non_selected_windows): Declare extern.
12985
12986 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
12987 to get mode line face.
12988
12989 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
12990
12991 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
12992 variables; cus-start.el doesn't need them anymore.
12993
12994 2002-02-09 Kim F. Storm <storm@cua.dk>
12995
12996 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
12997 reduction. This fixes a display problem where stray newlines were
12998 inserted in the window (corrected by C-l). Clarified code (IMHO).
12999
13000 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
13001
13002 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
13003
13004 * xdisp.c (display_mode_lines): Fix last change.
13005
13006 2002-02-09 Jason Rumney <jasonr@gnu.org>
13007
13008 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
13009 match each other.
13010 (w32_load_system_font): Prevent Cleartype fonts from loading.
13011 (Fx_show_tip): Ensure tip frames are above other topmost windows.
13012
13013 2002-02-09 Kim F. Storm <storm@cua.dk>
13014
13015 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
13016 (CURRENT_MODE_LINE_HEIGHT): Use it.
13017 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
13018
13019 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
13020 (pos_visible_p, handle_face_prop): Likewise.
13021 (display_mode_lines): Likewise, but for the real selected window.
13022 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
13023
13024 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
13025 in non-selected windows.
13026 (realize_basic_faces): Realize it.
13027 (syms_of_term): Intern and staticpro it.
13028
13029 2002-02-08 Kim F. Storm <storm@cua.dk>
13030
13031 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
13032 Changed mail addresses to emacs-devel@gnu.org.
13033
13034 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
13035
13036 * fileio.c (Fsubstitute_in_file_name): If the file name includes
13037 ~user, and there's no such user, don't discard everything before ~user.
13038
13039 * floatfns.c (Fround): Doc fix.
13040
13041 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13042
13043 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
13044
13045 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
13046
13047 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
13048
13049 2002-02-07 Kim F. Storm <storm@cua.dk>
13050
13051 * keymap.c (where_is_internal): Only check whether definition is
13052 remapped if it fulfills is_command_symbol.
13053
13054 2002-02-07 Andreas Schwab <schwab@suse.de>
13055
13056 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
13057
13058 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
13059
13060 2002-02-06 Kim F. Storm <storm@cua.dk>
13061
13062 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
13063 defining command remapping. Doc updated.
13064 (Flookup_key): Remap command through keymap if KEY is a symbol.
13065 (is_command_symbol): New function.
13066 (Fkey_binding): Use it. New optional argument NO-REMAP.
13067 Doc updated. Callers changed. Perform command remapping via
13068 recursive call unless that arg is non-nil.
13069 (where_is_internal): New argument no_remap. Callers changed.
13070 Call recursively to find original key bindings for a remapped
13071 comand unless that arg is non-nil.
13072 (Fwhere_is_internal): New optional argument NO-REMAP.
13073 Doc updated. Callers changed. Pass arg to where_is_internal.
13074
13075 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
13076 (is_command_symbol): Added prototype.
13077
13078 * keyboard.c (Vthis_original_command): New variable.
13079 (syms_of_keyboard): DEFVAR_LISP it.
13080 (command_loop_1): Set it, and perform command remapping.
13081
13082 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13083
13084 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
13085
13086 2002-02-06 Jason Rumney <jasonr@gnu.org>
13087
13088 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
13089
13090 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
13091
13092 * charset.c (get_charset_id): Use if-else instead of ?:.
13093
13094 2002-02-06 Richard M. Stallman <rms@gnu.org>
13095
13096 * filelock.c (S_ISLNK): Define if not defined.
13097
13098 2002-02-03 Richard M. Stallman <rms@gnu.org>
13099
13100 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
13101
13102 * lread.c (read1): Redesign strategy for force_multibyte and
13103 force_singlebyte. Now is_multibyte records whether read_buffer
13104 is multibyte. Encountering any multibyte character makes it so.
13105
13106 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
13107
13108 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
13109 with the same sequence, map that sequence to f10 rather than f0.
13110
13111 2002-02-03 Andreas Schwab <schwab@suse.de>
13112
13113 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
13114 latter never being defined on GNU/Linux.
13115
13116 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
13117
13118 * xfaces.c (realize_default_face): Don't set the weight and slant of
13119 the default face to Qnormal, unless these attributes are unspecified.
13120
13121 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13122
13123 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
13124 Call cancel_hourglass unconditionally.
13125
13126 * eval.c (Fsignal): Remove duplicated declaration of
13127 the variable `display_hourglass_p'.
13128
13129 2002-01-31 Richard M. Stallman <rms@gnu.org>
13130
13131 * editfns.c (region_limit): Nicer error message.
13132
13133 * coding.c (decode_composition_emacs_mule):
13134 Give up if NCOMPONENT gets too large to index `component'.
13135
13136 * callint.c (check_mark): New arg to specify clearer error message.
13137 Callers changed.
13138
13139 2002-01-27 Richard M. Stallman <rms@gnu.org>
13140
13141 * minibuf.c (Fcompleting_read): Doc fix.
13142
13143 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13144
13145 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
13146 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
13147 Fix doc-strings.
13148
13149 2002-01-26 Richard M. Stallman <rms@gnu.org>
13150
13151 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
13152
13153 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
13154 and scroll_up_aggressively.
13155
13156 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13157
13158 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
13159
13160 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
13161
13162 * textprop.c (Fnext_property_change, Fnext_single_property_change)
13163 (Fprevious_property_change, Fprevious_single_property_change):
13164 Stay within the narrowed-buffer boundaries.
13165
13166 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
13167
13168 * term.c (Ftty_display_color_cells): New function.
13169 (syms_of_term): Defsubr it.
13170 (Ftty_display_color_cells, Ftty_display_color_p): Change the
13171 argument name to DISPLAY. Doc fix.
13172
13173 * dispextern.h: Add prototype for set_tty_color_mode and
13174 tty_setup_colors.
13175
13176 2002-01-24 Jason Rumney <jasonr@gnu.org>
13177
13178 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
13179 If region left to draw is not what was expected, mark the frame as
13180 garbaged.
13181
13182 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
13183 Combine the regions returned by BeginPaint and GetUpdateRect.
13184
13185 2002-01-23 Jason Rumney <jasonr@gnu.org>
13186
13187 * w32term.c (x_update_window_begin): Only hide caret if
13188 w32_use_visible_system_caret is set.
13189 (x_update_window_end): Only show caret if
13190 w32_use_visible_system_caret is set.
13191 (syms_of_w32term): Handle SystemParametersInfo call failing.
13192
13193 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
13194
13195 2002-01-22 Richard M. Stallman <rms@gnu.org>
13196
13197 * unexelf.c (unexec): Define n so as to cause compilation error
13198 for the code where people have often written n instead of nn.
13199
13200 * .gdbinit (hookpost-run): Defined.
13201
13202 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13203
13204 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
13205
13206 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13207
13208 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
13209 if fullscreen is being set.
13210
13211 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13212
13213 * minibuf.c (Fminibuffer_contents)
13214 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
13215 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
13216
13217 2002-01-21 Richard M. Stallman <rms@gnu.org>
13218
13219 * window.c (check_frame_size): Fix minimum height calculation.
13220
13221 2002-01-20 Ken Raeburn <raeburn@gnu.org>
13222
13223 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
13224 height before comparison.
13225 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
13226
13227 2002-01-20 Jason Rumney <jasonr@gnu.org>
13228
13229 * w32term.c (w32_system_caret_width): Remove.
13230 (w32_use_visible_system_caret): New user flag.
13231 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
13232 Windows reports a screen reader running.
13233 (x_update_window_begin): Hide the system caret.
13234 (x_update_window_end): Show the system caret.
13235 (x_display_and_set_cursor): Don't draw a cursor when
13236 w32_use_visible_system_caret is set. Do not adjust width.
13237
13238 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
13239 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
13240 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
13241 the user requests it. Use system default width when creating.
13242 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
13243
13244 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
13245 New window messages.
13246
13247 2002-01-20 Richard M. Stallman <rms@gnu.org>
13248
13249 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
13250
13251 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13252
13253 * doprnt.c (doprnt1): Fix typos in error call.
13254
13255 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
13256
13257 * unexelf.c (unexec) [__sgi]: Support the .got sections.
13258
13259 2002-01-20 Jason Rumney <jasonr@gnu.org>
13260
13261 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
13262 that Windows returns. If a double check fails, try to guess how
13263 ExtTextOut is going to act.
13264
13265 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
13266 in place of stricmp.
13267 (w32_list_synthesized_fonts): Removed.
13268 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
13269 (struct enumfont_t): New element; list.
13270 (enum_font_cb2): List all style and charset variations of a font.
13271 (Fw32_select_font): New optional argument; include_proportional.
13272 Exclude vertical fonts. Exclude proportional fonts unless
13273 include_proportional is non-nil.
13274 (w32_enable_synthesized_fonts): Change to a boolean.
13275 (Fw32_send_sys_command): Doc fix.
13276
13277 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13278
13279 * dispnew.c (update_frame): Move the variable `tem' to the block
13280 where it is used.
13281
13282 2002-01-19 Jason Rumney <jasonr@gnu.org>
13283
13284 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
13285 call to face-set-after-frame-default.
13286
13287 2002-01-18 Richard M. Stallman <rms@gnu.org>
13288
13289 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
13290 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
13291
13292 2002-01-17 Richard M. Stallman <rms@gnu.org>
13293
13294 * window.c (enlarge_window): When exceeding size of parent,
13295 directly delete all the siblings instead of trying to resize it.
13296
13297 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13298
13299 * term.c (set_tty_color_mode): Remove unused variable `tem'.
13300
13301 2002-01-16 Henrik Enberg <henrik@enberg.org>
13302
13303 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
13304
13305 2002-01-16 Kim F. Storm <storm@cua.dk>
13306
13307 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
13308 is invisible. This can happen if cursor is on top line of a
13309 window, and we switch to a buffer with a header line.
13310
13311 * w32term.c (x_erase_phys_cursor): Ditto.
13312
13313 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13314
13315 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
13316 `dont_resize' only when used.
13317
13318 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
13319
13320 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
13321
13322 * xdisp.c (display_mode_element): When computing charpos, depend
13323 on multibyteness of elt, not the text in field.
13324
13325 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13326
13327 * buffer.c (Fkill_all_local_variables):
13328 Increment `update_mode_lines' only once.
13329
13330 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13331
13332 * lisp.h (adjust_after_replace_noundo)
13333 (Fupdate_coding_systems_internal): Add prototypes.
13334
13335 * sound.c (Fplay_sound): Initialize header_size also for :data case.
13336
13337 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
13338
13339 Support for the --color command-line argument and tty-color-mode
13340 frame parameter:
13341
13342 * term.c (tty_default_color_capabilities, tty_setup_colors)
13343 (set_tty_color_mode): New functions.
13344 (term_init): Call tty_default_color_capabilities.
13345 (Qtty_color_mode_alist): New variable.
13346 (syms_of_term): Intern and staticpro it.
13347
13348 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
13349 frames.
13350 (do_switch_frame): For termcap frames, switch the tty
13351 color mode as specified by the frame's parameters.
13352 (Qtty_color_mode): New variable.
13353 (syms_of_frame): Intern and staticpro it.
13354
13355 * emacs.c (USAGE2): Add the --color option.
13356 (standard_args): Ditto.
13357
13358 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13359
13360 * xterm.h (struct x_output): New members want_fullscreen,
13361 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
13362 y_pixels_outer_diff.
13363 New enum for FULLSCREEN_* constants.
13364 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
13365 is NULL.
13366 (x_fullscreen_adjust): Add prototype.
13367
13368 * emacs.c (USAGE2): Add the new full-screen arguments.
13369 (standard_args): Ditto.
13370
13371 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
13372 New variables.
13373 (syms_of_xfns): Intern and staticpro them.
13374 (x_frame_parms) <"fullscreen">: New parameter.
13375 (x_fullscreen_move, x_set_fullscreen): New functions.
13376 (x_set_frame_parameters): Support for Qfullscreen.
13377 (x_real_positions): More accurate computation of the frame position.
13378 (x_figure_window_size): Support full-screen frames.
13379 (Fx_create_frame): Default the fullscreen parameter.
13380
13381 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
13382 (XTread_socket) <Expose>: Call x_check_fullscreen.
13383 <ConfigureNotify>: Don't resize to fullscreen.
13384 Call x_check_fullscreen_move, and set the want_fullscreen member of
13385 output_data.x.
13386
13387 2002-01-13 Jason Rumney <jasonr@gnu.org>
13388
13389 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
13390 for mice with more than 3 buttons.
13391
13392 * w32term.c (parse_button): New parameter xbutton. Callers changed.
13393 (w32_read_socket): Handle new "XBUTTON" messages.
13394
13395 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
13396 (syms_of_w32fns): DEFVAR_BOOL it.
13397 (w32_wnd_proc): Handle new "XBUTTON" messages.
13398
13399 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13400
13401 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
13402
13403 2002-01-13 Andreas Schwab <schwab@suse.de>
13404
13405 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
13406
13407 2002-01-12 Andreas Schwab <schwab@suse.de>
13408
13409 * .gdbinit (xbuffer): Remove address operator since data is now a
13410 pointer.
13411
13412 2002-01-11 Richard M. Stallman <rms@gnu.org>
13413
13414 * insdel.c (adjust_after_replace_noundo): New function.
13415
13416 * coding.c (code_convert_region): Don't copy old text if undo disabled.
13417
13418 2002-01-09 Jason Rumney <jasonr@gnu.org>
13419
13420 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
13421 when checking for multiple frames.
13422
13423 2002-01-08 Richard M. Stallman <rms@gnu.org>
13424
13425 * window.c (delete_window): Rewrite the code for changing the
13426 selected window to handle the case where WINDOW is not a leaf.
13427
13428 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
13429
13430 * process.c (send_process): Set src_multibyte to 1 after the call
13431 top setup_coding_system, not before the call.
13432
13433 2002-01-07 Jason Rumney <jasonr@gnu.org>
13434
13435 * xmenu.c (set_frame_menubar, xmenu_show):
13436 (xdialog_show): Initialize wv->help to Qnil.
13437
13438 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
13439 (w32_dialog_show): Initialize wv->help to Qnil.
13440
13441 2002-01-06 Jason Rumney <jasonr@gnu.org>
13442
13443 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
13444
13445 * w32menu.c (w32_menu_display_help): Revert last change.
13446
13447 * xmenu.c (menu_highlight_callback): Revert last change.
13448
13449 2002-01-06 Andreas Schwab <schwab@suse.de>
13450
13451 * insdel.c (make_gap_larger): Make sure buffer size does not
13452 overflow range of int.
13453
13454 2002-01-05 Jason Rumney <jasonr@gnu.org>
13455
13456 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
13457 OVERLAPS_P.
13458
13459 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
13460
13461 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
13462 to the left or to the right of the pointer, put it against
13463 the left screen edge.
13464 (x_frame_parms): Add missing braces around initializer.
13465
13466 * w32term.c (x_setup_relief_colors): Don't compute an image's
13467 background color if it doesn't have a Pixmap.
13468 (notice_overwritten_cursor): Don't depend on
13469 output_cursor and updated_area. Compare pixel coordinates with
13470 window's cursor pixel coordinates.
13471 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13472 Call notice_overwritten_cursor with new arg list.
13473 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13474 unconditionally.
13475 (x_draw_image_relief): Use predefined macro instead of
13476 constant when the value of `tool_bar_button_relief' is negative.
13477
13478 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
13479
13480 2002-01-04 Richard M. Stallman <rms@gnu.org>
13481
13482 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
13483
13484 2002-01-03 Richard M. Stallman <rms@gnu.org>
13485
13486 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
13487 (Fkey_binding): Try the `keymap' property map first.
13488 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
13489 minor mode bindings.
13490
13491 2002-01-03 Kim F. Storm <storm@cua.dk>
13492
13493 * keyboard.c (read_key_sequence): Fixed cast of submaps arg to bcopy.
13494
13495 2002-01-02 Richard M. Stallman <rms@gnu.org>
13496
13497 * keyboard.c (read_key_sequence): Handle the keymap property
13498 before minor mode maps.
13499
13500 * editfns.c (Fformat): Update thissize from field_width
13501 based on the actual width, in the string case.
13502
13503 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13504
13505 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
13506 when used as truth value to prevent gcc warnings.
13507
13508 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
13509 * w32proc.c: Include <config.h>.
13510
13511 2002-01-01 Andreas Schwab <schwab@suse.de>
13512
13513 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
13514 not EMACS_INT, to make them compatible with DEFVAR_INT.
13515 * lisp.h (max_specpdl_size): Adjust declaration.
13516
13517 2002-01-01 Richard M. Stallman <rms@gnu.org>
13518
13519 * print.c (print_object): Test print_escape_nonascii only for
13520 unibyte strings.
13521 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
13522 when outputting to a multibyte buffer.
13523
13524 2001-12-29 Richard M. Stallman <rms@gnu.org>
13525
13526 * print.c (print_object): In multibyte string, use hex escapes.
13527 Use octal only for unibyte strings.
13528 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
13529
13530 * lread.c (read_escape): New arg BYTEREP for reporting whether
13531 escape forces unibyte or multibyte.
13532 (read1): When reading a string, take note of that info.
13533
13534 2001-12-29 Ken Raeburn <raeburn@gnu.org>
13535
13536 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
13537 comparison to test lisp value returned by Fget.
13538
13539 2001-12-29 Richard M. Stallman <rms@gnu.org>
13540
13541 * lisp.h (max_specpdl_size): Add declaration.
13542
13543 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
13544
13545 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
13546 Handle modifier bits. Correct typo in error message.
13547
13548 2001-12-28 Richard M. Stallman <rms@gnu.org>
13549
13550 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
13551 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
13552 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
13553 Update calls to Fdefine_abbrev.
13554 (write_abbrev): Update for changed data format.
13555 Don't list "system" abbrevs.
13556 (Fexpand_abbrev): Update use count with new data format.
13557 (describe_abbrev): Update for changed data format.
13558 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
13559
13560 * config.in (HAVE_MBSINIT): Add #undef.
13561
13562 * strftime.c (mbsinit): Define as no-op if not available.
13563
13564 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
13565 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
13566
13567 * keymap.c (Flookup_key): Error message if key has wrong data type.
13568 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
13569 (exclude_key): New variable.
13570
13571 2001-12-28 Gerd Moellmann <gerd@gnu.org>
13572
13573 * xterm.c (x_setup_relief_colors): Don't compute an image's
13574 background color if it doesn't have a Pixmap.
13575
13576 * xterm.c (notice_overwritten_cursor): Don't depend on
13577 output_cursor and updated_area. Compare pixel coordinates with
13578 window's cursor pixel coordinates.
13579 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
13580 Call notice_overwritten_cursor with new arg list.
13581 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
13582 unconditionally.
13583
13584 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
13585 height of the cursor line to the amount to scroll.
13586
13587 2001-12-27 Richard M. Stallman <rms@gnu.org>
13588
13589 * intervals.c (set_point_both): The position after an invisible,
13590 intangible character is not an acceptable stopping point.
13591
13592 2001-12-27 Ken Raeburn <raeburn@gnu.org>
13593
13594 * window.c (enlarge_window): In new preserve_before code, convert
13595 CURBEG from lisp object to integer before doing arithmetic.
13596
13597 2001-12-27 Richard M. Stallman <rms@gnu.org>
13598
13599 * bytecode.c (Fbyte_code): Undo previous change.
13600
13601 2001-12-26 Kim F. Storm <storm@cua.dk>
13602
13603 * keyboard.c (record_char): Ignore duplicate help-echo events only
13604 separated by mouse-movement. When tracking mouse, only record
13605 first and last mouse-movement event in same window.
13606 Don't record mouse-movement events in keyboard macros.
13607
13608 2001-12-25 Richard M. Stallman <rms@gnu.org>
13609
13610 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
13611 (Fenlarge_window): New arg PRESERVE_BEFORE.
13612
13613 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
13614 instead of Fstring_as_unibyte.
13615
13616 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13617
13618 The following changes remove mocklisp support:
13619
13620 * mocklisp.h, mocklisp.c: Files removed.
13621
13622 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
13623 `Qmocklisp' and `Qmocklisp_arguments'.
13624 Remove prototype of syms_of_mocklisp.
13625
13626 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
13627
13628 * callint.c: Do not include mocklisp.h.
13629 (Fcall_interactively): Do not test for mocklisp case.
13630
13631 * eval.c: Remove variables `Qmocklisp_arguments',
13632 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
13633 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
13634 Do not test for mocklisp case.
13635 (Fwhile): Remove unused variable `tem'.
13636 (syms_of_eval): Remove variable `moclisp-arguments'.
13637
13638 * data.c (wrong_type_argument): Remove mocklisp case.
13639
13640 * doc.c (Fdocumentation): Remove mocklisp case.
13641
13642 * emacs.c (main): Do not call syms_of_mocklisp.
13643
13644 2001-12-21 Richard M. Stallman <rms@gnu.org>
13645
13646 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
13647 to the left or to the right of the pointer, put it against
13648 the left screen edge.
13649
13650 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
13651
13652 * Makefile.in (distclean): Remove .gdbinit if we are building
13653 outside the source tree.
13654
13655 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
13656
13657 * w32.c (emacs_root_dir): New function.
13658
13659 * msdos.c (emacs_root_dir): New function.
13660
13661 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
13662 of the current drive as the fallback for default_directory.
13663
13664 * dired.c (file_name_completion): Run the elements of
13665 completion-ignored-extensions through ENCODE_FILE.
13666
13667 * lisp.h (scmp): Remove prototype, since it's now a static
13668 function private to dired.c.
13669
13670 2001-12-18 Richard M. Stallman <rms@gnu.org>
13671
13672 * dired.c (scmp): Function moved from minibuf.c.
13673 Delete multibyte handling--used only on encoded strings.
13674
13675 * minibuf.c (scmp): Function moved to dired.c.
13676
13677 * fns.c (merge): Add QUIT call.
13678
13679 2001-12-18 Dave Love <fx@gnu.org>
13680
13681 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
13682 language/georgian.el.
13683
13684 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
13685
13686 * Makefile.in (lisp, shortlisp): Synchronize with changes to
13687 lisp/Makefile.in:DONTCOMPILE.
13688
13689 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13690
13691 * xdisp.c (window_box_height): Do not return negative values.
13692 From Gerd Moellmann <gerd@gnu.org>.
13693
13694 * keyboard.c (head_table): Add missing braces around initializer.
13695
13696 * term.c (keys): Likewise.
13697
13698 * xfns.c (x_frame_parms, visual_classes): Likewise.
13699
13700 2001-12-17 Sam Steingold <sds@gnu.org>
13701
13702 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
13703 patch (COMPOSING_P, not COMPOSING).
13704
13705 2001-12-17 Richard M. Stallman <rms@gnu.org>
13706
13707 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
13708
13709 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
13710 before calling decode_coding.
13711
13712 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
13713
13714 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
13715 instead of only for COMPOSITION_DISABLED.
13716
13717 2001-12-16 Richard M. Stallman <rms@gnu.org>
13718
13719 * alloc.c (pure_alloc): After overflow, allocate just a small block.
13720
13721 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
13722
13723 * buffer.h (struct buffer): New field `display_error_modiff'.
13724 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
13725
13726 * window.c (Frecenter): Clear display_error_modiff field.
13727
13728 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
13729 Call redisplay_window, but not if display_error_modiff field says no.
13730 (redisplay_window_error): New function.
13731 (displayed_buffer): New variable.
13732 (redisplay_internal, redisplay_windows): Call the new functions
13733 instead of redisplay_window directly.
13734
13735 2001-12-15 Richard M. Stallman <rms@gnu.org>
13736
13737 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
13738
13739 2001-12-14 Andrew Innes <andrewi@gnu.org>
13740
13741 * makefile.w32-in (EMACSLOADPATH): Define.
13742 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
13743 (bootstrap-temacs): Remove dependency on bootstrap-clean.
13744
13745 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
13746
13747 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
13748 parameter have a numeric value all the time.
13749
13750 * w32fns.c (x_report_frame_params): Likewise.
13751
13752 2001-12-12 Richard M. Stallman <rms@gnu.org>
13753
13754 * fileio.c (Fwrite_region): Doc fix.
13755
13756 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
13757 (redisplay_internal): Call clear_image_cache only for window terminals.
13758
13759 2001-12-12 Gerd Moellmann <gerd@gnu.org>
13760
13761 * xdisp.c (move_it_vertically_backward): Change heuristic
13762 for the case that we didn't move far enough initially.
13763
13764 * window.c (Frecenter): Simplify computation in the case of window
13765 system frames and ARG < 0; use window_box_height.
13766
13767 2001-12-11 Richard M. Stallman <rms@gnu.org>
13768
13769 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
13770 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
13771
13772 2001-12-11 Andrew Innes <andrewi@gnu.org>
13773
13774 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
13775 arg is negative.
13776
13777 2001-12-11 Richard M. Stallman <rms@gnu.org>
13778
13779 * m/hp800.h: Split the __hpux conditional into the parts
13780 that are right for GNU/Linux too and the parts that are not.
13781 Use the former if GNU_LINUX.
13782 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
13783
13784 * s/gnu-linux.h (GNU_LINUX): Defined.
13785
13786 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13787
13788 * macros.c, msdos.c, w16select.c: Change doc-string comments to
13789 `new style' [w/`doc:' keyword].
13790
13791 2001-12-10 Jason Rumney <jasonr@gnu.org>
13792
13793 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
13794 before using.
13795
13796 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13797
13798 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
13799 keyword].
13800
13801 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
13802
13803 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
13804
13805 * s/hpux10.h (srand48): Don't undefine.
13806
13807 2001-12-09 Jason Rumney <jasonr@gnu.org>
13808
13809 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
13810 Add comment to explain where the struct came from.
13811 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
13812 (add_menu_item): Process pop-up menus first to avoid memory leak.
13813 (add_menu_item, w32_menu_display_help): Use `help' field as
13814 Lisp_Object.
13815 (w32_free_submenu_strings): Only free owner-drawn strings.
13816
13817 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13818
13819 * COPYING: Moved back.
13820
13821 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
13822 Add parentheses around && within ||.
13823
13824 * indent.c (compute_motion): Likewise.
13825
13826 * intervals.c (merge_properties_sticky): Likewise.
13827
13828 * coding.c (setup_coding_system, shrink_encoding_region)
13829 (Fdecode_sjis_char): Likewise.
13830
13831 2001-12-07 Andreas Schwab <schwab@suse.de>
13832
13833 * xdisp.c (display_mode_element): Don't read past end of string if
13834 it ends with '%'.
13835
13836 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
13837 can hold.
13838
13839 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
13840 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
13841 type changed to Lisp_Object.
13842 (syms_of_data): DEFVAR_LISP them.
13843
13844 2001-12-07 Richard M. Stallman <rms@gnu.org>
13845
13846 * callproc.c (init_callproc): Set Vdata_directory based on the source
13847 location whenever Emacs was run uninstalled.
13848
13849 2001-12-06 Paul Eggert <eggert@twinsun.com>
13850
13851 * config.in (HAVE_WORKING_VFORK): New #undefs.
13852 * process.c (create_process):
13853 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
13854 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
13855 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
13856 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
13857 * m/intel386.h (HAVE_VFORK): Likewise.
13858 * m/mips-siemens.h (HAVE_VFORK): Likewise.
13859 * m/mips.h (HAVE_VFORK): Likewise.
13860 * s/freebsd.h (vfork): Remove #define.
13861 * s/lynxos.h (HAVE_VFORK): Remove #undef.
13862 * s/usg5-4-2.h: Fix comment about vfork.
13863
13864 2001-12-06 Richard M. Stallman <rms@gnu.org>
13865
13866 * s/hpux10.h (random): Add undef.
13867 (HAVE_RANDOM): Define it just once.
13868
13869 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
13870
13871 * eval.c: Undo last change: the standard syntax is not wanted.
13872
13873 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
13874
13875 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
13876 scroll bars of the frame before deleting the frame itself. If the
13877 frame has a widget, delete the frame with XtDestroyWidget, and do
13878 not call XDestroyWindow before that.
13879
13880 2001-12-06 Kim F. Storm <storm@cua.dk>
13881
13882 * xfns.c (x_report_frame_params): Return actual fringe widths.
13883
13884 * w32fns.c (x_report_frame_params): Return actual fringe widths.
13885
13886 2001-12-05 Andrew Innes <andrewi@gnu.org>
13887
13888 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
13889 excessively large.
13890
13891 * insdel.c (make_gap_larger): New function.
13892 (make_gap_smaller): New function.
13893 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
13894 Call make_gap_smaller if arg is negative.
13895
13896 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
13897
13898 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
13899 Pass a dummy argument when calling interrupt_signal.
13900 (parse_menu_item): Mark disabled items before checking for empty def.
13901 (read_char_minibuf_menu_prompt): Make safety more visible.
13902 (read_key_sequence): Add a `first_unbound' variable.
13903 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
13904 unbound prefix as soon as we can detect it.
13905
13906 * doc.c (Fsnarf_documentation): Add prototype.
13907 (get_doc_string): Handle negative arguments.
13908 (Fdocumentation): Use AREF and ASIZE.
13909 Move the calls to get_doc_string to a single place.
13910 Don't confuse an interactive-spec for a docstring reference.
13911 (Fdocumentation_property): Take advantage of the fact that
13912 get_doc_string now ignores the sign of the docstring position.
13913
13914 * eval.c: Use standard syntax for usage in docstrings.
13915
13916 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13917
13918 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
13919
13920 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
13921
13922 * xterm.c (x_draw_image_relief): Use predefined macro instead of
13923 constant when the value of `tool_bar_button_relief' is negative.
13924
13925 2001-12-02 Richard M. Stallman <rms@gnu.org>
13926
13927 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
13928 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
13929
13930 * fileio.c (read_non_regular): Delete Fsignal call.
13931
13932 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
13933
13934 * lisp.h (run_hook_list_with_args): Undo last change.
13935
13936 2001-12-01 Gerd Moellmann <gerd@gnu.org>
13937
13938 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
13939
13940 2001-12-01 Jason Rumney <jasonr@gnu.org>
13941
13942 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
13943
13944 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
13945 [!WM_MOUSELEAVE]: Define.
13946
13947 * w32menu.c (current_popup_menu, get_menu_item_info):
13948 (set_menu_item_info): New vars.
13949 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
13950 (w32_menu_show): Set current_popup_menu.
13951 (add_menu_item): Allocate new strings for owner-drawn menu items
13952 and help strings.
13953 Use owner-draw for disabled menu items again.
13954 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
13955 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
13956
13957 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
13958 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
13959 <WM_EXITMENULOOP>: Free menu strings.
13960 <WM_MOUSELEAVE>: Stop tracking mouse.
13961 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
13962
13963 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
13964 and mouse face.
13965
13966 2001-12-01 Kim F. Storm <storm@cua.dk>
13967
13968 The following changes add left-fringe and right-fringe
13969 frame parameters to adjust fringe widths, or remove one or
13970 both fringes.
13971
13972 * frame.h (struct frame): Remove trunc_area_pixel_width and
13973 trunc_area_cols fields.
13974 (Qleft_fringe, Qright_fringe): Declare.
13975 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
13976
13977 * frame.c (Qleft_fringe, Qright_fringe): New vars.
13978 (syms_of_frame): Initialize them.
13979
13980 * window.c (coordinates_in_window): Handle separate left and right
13981 fringe widths.
13982
13983 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
13984 and fringe_cols fields.
13985 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
13986 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
13987 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
13988 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
13989 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
13990 (x_compute_fringe_widths): Add prototype.
13991
13992 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
13993 fill fringe evenly with small dashes.
13994 (x_draw_fringe_bitmap): Clear background if necessary. Align and
13995 clip the new ZV bitmap to avoid jitter between rows.
13996 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
13997 background. Don't draw fringe bitmaps if fringe width is zero.
13998 (x_compute_fringe_widths): New function.
13999 (x_new_font, x_set_window_size_1): Use it.
14000
14001 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
14002 (x_set_frame_parameters): Process `font' parameter before other
14003 parameters as fringe widths depend on it.
14004 (x_set_fringe_width): New function.
14005 (x_figure_window_size): Use x_compute_fringe_widths.
14006 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
14007 parameters.
14008
14009 * widget.c (set_frame_size): Use x_compute_fringe_widths.
14010 (EmacsFrameSetCharSize): Ditto.
14011
14012 * w32term.h: Merged changes from xterm.h.
14013 * w32term.c: Merged changes from xterm.c.
14014 * w32fns.c: Merged changes from xfns.c.
14015
14016 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14017
14018 * COPYING: Removed.
14019
14020 2001-11-29 Dave Love <fx@gnu.org>
14021
14022 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
14023 extra extra slot.
14024 (detect_coding_mask): Fix call of detect_coding_iso2022.
14025
14026 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14027
14028 * fileio.c (file-name-coding-system)
14029 (default-file-name-coding-system): Doc fix (links to referenced
14030 variables added).
14031
14032 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14033
14034 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
14035 Add dummy uses of gcproN variables.
14036
14037 * category.c (describe_category, describe_category_1)
14038 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
14039 (syms_of_category): Don't defsubr Sdescribe_categories.
14040
14041 2001-11-28 Richard M. Stallman <rms@gnu.org>
14042
14043 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
14044
14045 * Makefile.in (lispdir): New variable, referring to build dir.
14046 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
14047
14048 2001-11-28 Andrew Innes <andrewi@gnu.org>
14049
14050 * w32menu.c (w32_menu_display_help): Actually add the new argument
14051 OWNER.
14052
14053 2001-11-28 Jason Rumney <jasonr@gnu.org>
14054
14055 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
14056 menu items. From David Ponce <dponce@wanadoo.fr>.
14057 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
14058 conditionally.
14059 (w32_menu_display_help): New argument OWNER. Rewritten to store a
14060 help event in the owner frame's keyboard buffer.
14061
14062 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
14063 (Fx_show_tip): Don't subtract last width from row width.
14064
14065 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
14066 (w32_read_socket): Use EQ to compare frames.
14067
14068 2001-11-28 Gerd Moellmann <gerd@gnu.org>
14069
14070 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
14071 OVERLAPS_P.
14072
14073 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14074
14075 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
14076 `gcpro3' and `gcpro4'.
14077
14078 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
14079
14080 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
14081
14082 * ccl.c: Use AREF and ASIZE.
14083
14084 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
14085
14086 * lisp.h (run_hook_list_with_args): Remove.
14087 (LIST_END_P): Fix call to wrong_type_argument.
14088 (make_fixnum_or_float): Use EMACS_INT rather than int.
14089
14090 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
14091
14092 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
14093 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
14094
14095 * eval.c: Use AREF and ASIZE.
14096 (Ffetch_bytecode): Add the file name to the error message.
14097
14098 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
14099 which match the end of the file-name.
14100 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
14101 is not a valid env var, but leave it as is instead.
14102
14103 * keymap.c (access_keymap): Handle t bindings like nil bindings.
14104 Make nil bindings in char-tables transparent.
14105 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
14106
14107 2001-11-26 Richard M. Stallman <rms@gnu.org>
14108
14109 * textprop.c (set_text_properties_1): Allow START, END in either order.
14110 Do nothing if range is empty.
14111
14112 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
14113
14114 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
14115 (clean): Not here.
14116
14117 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14118
14119 * textprop.c (set_text_properties_1): Clearly mark that the
14120 interval should not be empty.
14121
14122 * intervals.c (graft_intervals_into_buffer):
14123 Don't call set_text_properties_1 on an empty interval.
14124
14125 2001-11-25 Richard M. Stallman <rms@gnu.org>
14126
14127 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
14128
14129 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
14130 don't lose the data in it.
14131
14132 2001-11-25 Juanma Barranquero <lektu@terra.es>
14133
14134 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
14135
14136 * buffer.c (Fkill_buffer): Likewise.
14137
14138 * print.c (temp_output_buffer_setup): Likewise.
14139
14140 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
14141
14142 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
14143
14144 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
14145
14146 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
14147 Niemitalo <kon@iki.fi>.
14148
14149 2001-11-25 Jason Rumney <jasonr@gnu.org>
14150
14151 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
14152
14153 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
14154 (Fx_show_tip): Block input during frame creation.
14155 (Fx_show_tip, Fx_hide_tip): Enable.
14156
14157 2001-11-24 Richard M. Stallman <rms@gnu.org>
14158
14159 * lread.c (Fload): Detect recursive load error for more than 3
14160 nestings of the same file.
14161 (Vrecursive_load_depth_limit): Variable deleted.
14162 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
14163
14164 2001-11-24 Jason Rumney <jasonr@gnu.org>
14165
14166 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
14167 mouse position if either left or top is not specified.
14168
14169 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
14170 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
14171 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
14172 (my_create_tip_window): Assign tip_window.
14173 (x_create_tip_frame): Use same defaults as X.
14174 (compute_tip_xy): Remove unused variable. Use full screen width.
14175 (Fx_show_tip): Do not double height. Call ShowWindow directly.
14176
14177 * w32term.c (x_after_update_window_line): Doc fix.
14178 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
14179 frames.
14180 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
14181
14182 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
14183 for all Windowed systems.
14184
14185 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
14186
14187 * msdos.c (IT_clear_screen): If the frame's faces are not yet
14188 realized, use the initial screen colors to clear the screen.
14189
14190 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14191
14192 * textprop.c (Fset_text_properties): Remove unused variables
14193 `unchanged', `prev_changed', `s' and `len'.
14194
14195 * search.c (Freplace_match): Remove unused variable `inslen'.
14196
14197 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
14198
14199 2001-11-22 Jason Rumney <jasonr@gnu.org>
14200
14201 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
14202 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
14203 (my_create_tip_window): New function.
14204 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
14205 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
14206
14207 2001-11-20 Jason Rumney <jasonr@gnu.org>
14208
14209 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
14210 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
14211
14212 * w32fns.c (Vw32_system_coding_system): Remove.
14213 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
14214
14215 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
14216
14217 * fileio.c (Fwrite_region): Move choose_write_coding_system to
14218 after build_annotations.
14219
14220 * syntax.c (describe_syntax): Add dummy arg.
14221 (describe_syntax_1): Update call to describe_vector.
14222
14223 * category.c (describe_category): Add dummy arg.
14224 (describe_category_1): Update call to describe_vector.
14225
14226 * keymap.c (Fdescribe_vector): Add `describer' parameter.
14227 (describe_command, describe_translation): Add dummy second param.
14228 (describe_map): Call elt_describer with two arguments.
14229 (describe_vector_princ): Add `fun' parameter.
14230 Call it instead of the hardcoded `princ'.
14231 (describe_vector): Add arg `args'.
14232 Pass it as a new second argument to elt_describer.
14233
14234 * keymap.h (describe_vector): Update prototype.
14235
14236 * frame.c: Don't include keymap.h any more.
14237 (keys_of_frame): Remove.
14238
14239 * lisp.h (keys_of_frame): Remove declaration.
14240
14241 * emacs.c (main): Don't call `keys_of_frame' any more.
14242
14243 2001-11-14 Andreas Schwab <schwab@suse.de>
14244
14245 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
14246 if defined, 0 otherwise.
14247 (MAP_FAILED): Define if not defined and use it to test mmap failure.
14248 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
14249
14250 2001-11-19 Richard M. Stallman <rms@gnu.org>
14251
14252 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
14253
14254 2001-11-18 Jason Rumney <jasonr@gnu.org>
14255
14256 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
14257 (x_draw_bar_cursor): If the background color of the glyph under
14258 the cursor equals the frame's cursor color, use the glyph's
14259 foreground color for drawing the bar cursor.
14260 (x_after_update_window_line): Clear internal border in different
14261 circumstances.
14262 (w32_set_vertical_scroll_bar): Check for width and height > 0.
14263 (w32_draw_relief_rect): Correct relief by 1 pixel.
14264 (x_set_glyph_string_background_width):
14265 Set extends_to_end_of_line_p if the row's fill_line_p is set and
14266 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
14267 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
14268 if cursor_in_non_selected_windows is false.
14269 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
14270 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
14271 Notice if cursor gets overwritten.
14272 (notice_overwritten_cursor): Renamed from
14273 note_overwritten_text_cursor. Rewritten to take glyph widths
14274 into account, and to take X positions as parameters.
14275 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
14276 around call to x_draw_glyphs.
14277 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
14278 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
14279 color to use for image glyph reliefs.
14280 (x_draw_image_relief): Accept zero tool_bar_button_relief.
14281 (glyph_rect): Remove unused variable `area'.
14282
14283 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
14284 some items.
14285 (x_set_internal_border_width): Set frame garbaged when window
14286 doesn't exist yet.
14287 (Fx_create_frame): Accept zero tool_bar_button_relief.
14288 (x_clear_image_1, four_corners_best, image_background)
14289 (image_background_transparent): New functions.
14290 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
14291 (gs_format): Add `:background' entry.
14292 (lookup_image): Set IMG's background color if specified.
14293 (pbm_load, xbm_load_image, png_load): Set IMG's background field
14294 when appropriate.
14295 (x_clear_image_1): Reset `background_valid' and
14296 `background_transparent_valid' fields.
14297 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
14298 calculating it here. Set IMG's background_transparent field.
14299 (enum xpm_keyword_index): Add XPM_BACKGROUND.
14300 (enum png_keyword_index): Add PNG_BACKGROUND.
14301 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
14302 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
14303 (enum gif_keyword_index): Add GIF_BACKGROUND.
14304 (enum gs_keyword_index): Add GS_BACKGROUND.
14305 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
14306 Pre-calculate image background color where necessary.
14307 (x_create_x_image_and_pixmap, xbm_load, gs_load):
14308 Use display info's n_cbits entry for screen depth.
14309 (Fx_show_tip): Remove unused variables `buffer', `top',
14310 `left', `max_width' and `max_height'.
14311
14312 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
14313
14314 2001-11-18 Gerd Moellmann <gerd@gnu.org>
14315
14316 * puresize.h (BASE_PURESIZE): Increase to 750000.
14317
14318 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14319
14320 * frame.c (Fframe_live_p): Doc fix.
14321
14322 2001-11-18 Richard M. Stallman <rms@gnu.org>
14323
14324 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
14325 (message_dolog_marker3): New static variables hold three markers.
14326 (syms_of_xdisp): Initialize and staticpro them.
14327 (message_dolog): Use message_dolog_marker1..3 instead of
14328 allocating markers each time. Unchain them when done.
14329
14330 2001-11-17 Richard M. Stallman <rms@gnu.org>
14331
14332 * doc.c (Fsnarf_documentation): Doc fix.
14333
14334 2001-11-17 Andreas Schwab <schwab@suse.de>
14335
14336 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
14337
14338 2001-11-17 Richard M. Stallman <rms@gnu.org>
14339
14340 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
14341
14342 2001-11-17 Jason Rumney <jasonr@gnu.org>
14343
14344 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
14345
14346 2001-11-17 Gerd Moellmann <gerd@gnu.org>
14347
14348 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
14349 with invalid position.
14350
14351 2001-11-16 Richard M. Stallman <rms@gnu.org>
14352
14353 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
14354
14355 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
14356 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
14357 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
14358
14359 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
14360
14361 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14362
14363 * fileio.c (build_annotations): Split off the tail.
14364 (build_annotations_2): New fun. Extracted from build_annotations.
14365 (Fwrite_region): Split the call to build_annotations into two
14366 calls to build_annotations and build_annotations_2.
14367
14368 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14369
14370 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
14371 clear_waiting_for_input with argument.
14372
14373 * xterm.h (x_update_cursor): Remove duplicated prototype.
14374
14375 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
14376
14377 * xterm.c (waiting_for_input): Remove unnecessary declaration.
14378
14379 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
14380
14381 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
14382
14383 * fileio.c (choose_write_coding_system): New fun, extracted
14384 from Fwrite_region.
14385 (Fwrite_region): Use it.
14386
14387 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
14388 (funcall_lambda, run_hook_with_args): Make static and add prototype.
14389 (ml_apply, find_handler_clause): Add prototype.
14390
14391 2001-11-16 Eli Zaretskii <eliz@gnu.org>
14392
14393 * config.in: Add #undef HAVE_COFF_H.
14394
14395 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
14396 Required for ISC 4.1.
14397
14398 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
14399
14400 * syswait.h: (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
14401 Andrew Wiseman <a.wiseman@btclick.com>.
14402
14403 2001-11-16 Kim F. Storm <storm@cua.dk>
14404
14405 The following changes are made to clean up the various internal
14406 references to the fringes to actually use the term `fringe' for
14407 them. Previously, they were called `flags areas', `bitmap areas',
14408 `left/right side of windows', or implicitly as `flags' or
14409 `bitmaps':
14410
14411 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
14412 Comments fixed. Use renamed symbols.
14413
14414 * dispnew.c: Comment fix. Use renamed symbols.
14415
14416 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
14417 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
14418 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
14419
14420 * msdos.c: Comment fix.
14421
14422 * w32fns.c: Use renamed symbols.
14423
14424 * w32term.c: Comment fixes. Use renamed symbols.
14425 (fringe_bitmap_type): Renamed from bitmap_type.
14426 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14427 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
14428 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14429
14430 * w32term.h: Comment fixes. Use renamed symbols.
14431 (fringes_extra): Renamed from flags_areas_extra.
14432 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14433 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14434 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14435 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14436 (FRAME_X_LEFT_FRINGE_WIDTH):
14437 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14438 (FRAME_X_RIGHT_FRINGE_WIDTH):
14439 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14440
14441 * widget.c: Use renamed symbols.
14442
14443 * window.c: Comment fixes. Use renamed symbols.
14444 (coordinates-in-window-p): Doc fix.
14445
14446 * xdisp.c: Comment fixes. Use renamed symbols.
14447
14448 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
14449
14450 * xfns.c: Use renamed symbols.
14451
14452 * xterm.c: Comment fixes. Use renamed symbols.
14453 (fringe_bitmap_type): Renamed from bitmap_type.
14454 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
14455 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
14456 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
14457
14458 * xterm.h: Comment fixes. Use renamed symbols.
14459 (fringes_extra): Renamed from flags_areas_extra.
14460 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
14461 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
14462 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
14463 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
14464 (FRAME_X_LEFT_FRINGE_WIDTH):
14465 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
14466 (FRAME_X_RIGHT_FRINGE_WIDTH):
14467 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
14468
14469 2001-11-15 Jason Rumney <jasonr@gnu.org>
14470
14471 * w32menu.c (add-menu-item): Make help_echo and radio buttons
14472 work for most menu items. From David Ponce
14473 <david.ponce@wanadoo.fr>.
14474
14475 2001-11-15 Gerd Moellmann <gerd@gnu.org>
14476
14477 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
14478 Some x_set_* function expect to be called even if old and new
14479 value are equal.
14480
14481 * xdisp.c (build_desired_tool_bar_string): Accept zero
14482 tool_bar_button_relief.
14483
14484 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
14485
14486 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
14487
14488 * xterm.c (x_draw_bar_cursor): If the background color of the
14489 glyph under the cursor equals the frame's cursor color, use
14490 the glyph's foreground color for drawing the bar cursor.
14491
14492 * dispnew.c (direct_output_forward_char): Fix character/byte
14493 position comparison.
14494
14495 2001-11-15 Miles Bader <miles@gnu.org>
14496
14497 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
14498 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
14499 Update arguments to find_field.
14500 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
14501 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
14502 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
14503 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
14504
14505 2001-11-14 Richard M. Stallman <rms@gnu.org>
14506
14507 * editfns.c (Fpropertize): Allow call with 1 arg.
14508
14509 * dispextern.h (image_background, image_background_transparent):
14510 Conditionalize on HAVE_X_WINDOWS.
14511
14512 2001-11-13 Richard M. Stallman <rms@gnu.org>
14513
14514 * print.c (Fprin1_to_string): Doc fix.
14515
14516 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
14517
14518 * floatfns.c (Fceiling, Ffloor): Doc fixes.
14519
14520 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
14521
14522 * fileio.c (Ffile_accessible_directory_p): Doc fix.
14523
14524 * eval.c (syms_of_eval): Doc fix.
14525
14526 * coding.c (syms_of_coding): Doc fix.
14527
14528 * doc.c (Fsnarf_documentation): Doc fix.
14529
14530 * dispnew.c (syms_of_display): Doc fix.
14531
14532 * category.c (Fget_unused_category): Doc fix.
14533
14534 * buffer.c (syms_of_buffer): Doc fixes.
14535
14536 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
14537
14538 * print.c (prin1, print): Doc fix.
14539
14540 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14541
14542 * fontset.h: Remove declarations of variables
14543 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
14544
14545 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
14546 `Vclip_large_size_font'.
14547
14548 2001-11-13 Jason Rumney <jasonr@gnu.org>
14549
14550 * w32fns.c: Doc fix.
14551
14552 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14553
14554 * xfaces.c (Fface_attributes_as_vector): Doc fix.
14555
14556 * fns.c: Doc fix.
14557
14558 * emacs.c: Doc fix.
14559
14560 * coding.c: Doc fix.
14561
14562 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
14563 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
14564 `new style' [w/`doc:' keyword].
14565
14566 2001-11-12 Richard M. Stallman <rms@gnu.org>
14567
14568 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
14569 LeaveNotify events. Only FocusIn and FocusOut do that now.
14570 (x_display_and_set_cursor): Do display hollow cursors in active
14571 minibuffer windows when they are not selected.
14572
14573 2001-11-12 Jason Rumney <jasonr@gnu.org>
14574
14575 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
14576 * w32term.c: Change doc-string comments to `new style'
14577 [w/`doc:' keyword]. Doc fixes.
14578
14579 * w32fns.c: Don't define max.
14580 (Fx_open_connection): Only execute once.
14581
14582 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14583
14584 * ccl.c: Change macros to use do-while block instead of if-else.
14585 Use braces to follow GNU Coding Standards.
14586
14587 2001-11-11 Richard M. Stallman <rms@gnu.org>
14588
14589 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
14590
14591 * lread.c (read_escape): Use end_of_file_error for reporting eof.
14592
14593 * insdel.c (replace_range): Use adjust_markers_for_replace
14594 instead of adjust_markers_for_delete and adjust_markers_for_insert.
14595
14596 * intervals.h: Declare set_text_properties and set_text_properties_1.
14597
14598 * textprop.c (set_text_properties_1): New subroutine
14599 broken out of set_text_properties.
14600 (set_text_properties): Use set_text_properties_1.
14601
14602 * intervals.c (graft_intervals_into_buffer):
14603 Use set_text_properties_1 to clear out properties.
14604
14605 * search.c (Freplace_match): Use replace_range to insert
14606 and delete. Don't request property inheritance from
14607 surrounding text.
14608
14609 2001-11-10 Jason Rumney <jasonr@gnu.org>
14610
14611 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
14612 vertical fonts. Allow them if face name is explicitly specified.
14613 Do not give up if we find a font that cannot be converted to an xlfd.
14614
14615 2001-11-10 Gerd Moellmann <gerd@gnu.org>
14616
14617 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
14618 instead of malloc/free.
14619
14620 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14621
14622 * xfaces.c (merge_face_vectors): Use braces to follow GNU
14623 Coding Standards.
14624 (Finternal_set_lisp_face_attribute): Likewise.
14625
14626 * buffer.c (Fbury_buffer): Likewise.
14627
14628 * indent.c (current_column_1): Remove unused variable `prev_col'.
14629
14630 * coding.c (encode_coding): Use precomputed value of `src'.
14631 (encode_coding): Remove unused variable `src_end'.
14632 (code_convert_region): Remove unused variables `count'.
14633
14634 2001-11-07 Jason Rumney <jasonr@gnu.org>
14635
14636 * w32term.c (x_display_and_set_cursor): Do not move system caret
14637 if cursor_glyph is NULL.
14638
14639 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14640
14641 * keymap.c (access_keymap): Fix compilation error.
14642
14643 2001-11-07 Miles Bader <miles@gnu.org>
14644
14645 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
14646
14647 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14648
14649 * intervals.c (graft_intervals_into_buffer):
14650 Remove #ifdef'd-out code.
14651 (graft_intervals_into_buffer): Remove unused variable `middle'.
14652
14653 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
14654 code (eval-current-buffer).
14655 Change doc-string comments to `new style' [w/`doc:' keyword].
14656
14657 2001-11-06 Richard M. Stallman <rms@gnu.org>
14658
14659 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
14660
14661 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
14662
14663 * lread.c (read1): Fix behavior with nested backquoting.
14664
14665 * keyboard.c (make_lispy_event): Check integerness and fix
14666 Lisp_Object/int mixup.
14667
14668 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14669
14670 * fns.c (copy_hash_table): Remove unused variable `v'.
14671
14672 * fontset.c (fontset_font_pattern): Remove unused variable
14673 `family_registry'.
14674
14675 * indent.c (current_column_1): Remove unused variable `prev_col'.
14676
14677 2001-11-05 Richard M. Stallman <rms@gnu.org>
14678
14679 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
14680
14681 * buffer.c (Fkill_buffer): Don't delete auto save file
14682 if buffer is modified.
14683
14684 2001-11-05 Andrew Innes <andrewi@gnu.org>
14685
14686 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
14687 CHECK_NUMBER_CDR.
14688
14689 2001-11-05 Richard M. Stallman <rms@gnu.org>
14690
14691 * unexelf.c (unexec): Minor changes; clean up comments.
14692
14693 2001-11-05 Sam Steingold <sds@gnu.org>
14694
14695 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
14696
14697 2001-11-05 Andreas Schwab <schwab@suse.de>
14698
14699 * sound.c (sound_perror): Save errno from being clobbered.
14700
14701 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
14702
14703 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
14704 the program image directly.
14705
14706 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14707
14708 * buffer.h (Fbuffer_local_value): Add prototype.
14709
14710 2001-11-04 Richard M. Stallman <rms@gnu.org>
14711
14712 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
14713 and CHECK_BUFFER.
14714
14715 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
14716 (record_char): Likewise.
14717
14718 * keyboard.c (make_lispy_event): Don't insist a drag event must
14719 move to a different buffer position. Instead, check for moving at
14720 least double_click_fuzz.
14721
14722 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
14723
14724 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
14725
14726 * indent.c (current_column_1, Fmove_to_column): Separate the code
14727 for display-table glyphs from the code for buffer text, to fix
14728 bugs in the former.
14729
14730 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
14731
14732 * buffer.c (Fbuffer_local_value): New function.
14733 (syms_of_buffer): Defsubr it.
14734
14735 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
14736 value of `cursor-in-non-selected-windows'.
14737
14738 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
14739 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
14740 (syms_of_xdisp): Initialize it.
14741
14742 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14743
14744 * xfns.c (Fx_create_frame): Doc fix.
14745
14746 * coding.c: Change doc-string comments to `new style' [w/`doc:'
14747 keyword].
14748
14749 * eval.c (top_level_value, top_level_set): Remove commented and
14750 #ifdef'd-out code.
14751 (Fdefvar): Fix usage in doc-string.
14752
14753 2001-11-03 Richard M. Stallman <rms@gnu.org>
14754
14755 * xfns.c: Include unistd.h, if it exists.
14756
14757 * editfns.c: Move the include of ctype.h after unistd.h.
14758
14759 * gmalloc.c: Test BROKEN_PROTOTYPES.
14760
14761 2001-11-03 Ken Raeburn <raeburn@gnu.org>
14762
14763 * lisp.h (CHECK_STRING_CAR): New macro.
14764 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
14765 treating XCAR and XCDR as lvalues.
14766 (openp): Use CHECK_STRING_CAR.
14767 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
14768
14769 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
14770
14771 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
14772 (SIGMASKTYPE): Define.
14773
14774 * syssignal.h (sigunblock): Don't define if already defined.
14775
14776 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14777
14778 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
14779 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
14780 Fix typos in comments.
14781
14782 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
14783 and #ifdef'd-out code.
14784 Fix and reindent comments.
14785
14786 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
14787
14788 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
14789 argument `i' in macros.
14790
14791 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
14792 `i' in macros.
14793
14794 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
14795 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
14796 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
14797 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
14798 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
14799 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
14800 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
14801 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
14802 in macros.
14803
14804 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
14805 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
14806 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
14807 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
14808 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
14809 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
14810 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
14811 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
14812 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
14813 (remove unused second argument).
14814
14815 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
14816
14817 * syntax.c (describe_syntax): New wrapper.
14818 (Finternal_describe_syntax_value): Rename from describe_syntax.
14819 Don't insert space at front and \n at the end.
14820 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
14821
14822 * regex.c (re_wctype): Try to fix some warnings.
14823 (regcomp, regexec): Don't forget the __restrict.
14824
14825 2001-11-02 Richard M. Stallman <rms@gnu.org>
14826
14827 * textprop.c (Fget_char_property): Doc fix.
14828
14829 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14830
14831 * process.c (Fstart_process): Add usage to doc-string.
14832
14833 * data.c (Fsetq_default): Ditto.
14834
14835 * callint.c (Finteractive): Ditto.
14836
14837 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
14838
14839 * macros.c: Don't include keymap.h any more.
14840
14841 2001-11-01 Richard M. Stallman <rms@gnu.org>
14842
14843 * data.c (Fmake_local_variable): Doc fix.
14844
14845 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
14846 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
14847
14848 * keymap.c (Fdescribe_buffer_bindings): Print character property
14849 bindings along with or instead of the buffer local map.
14850 Make the overriding maps override what they should.
14851
14852 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14853
14854 * window.c (grow_mini_window): Fix typo in comment.
14855
14856 2001-11-01 Gerd Moellmann <gerd@gnu.org>
14857
14858 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
14859 (XTset_vertical_scroll_bar): Likewise.
14860
14861 * xfns.c (x_build_heuristic_mask): Use four_corners_best
14862 instead of IMAGE_BACKGROUND.
14863
14864 * xfns.c (four_corners_best): Reindent.
14865
14866 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
14867 Handle :box so that it is possible to specify sexprs.
14868
14869 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
14870
14871 * s/hpux11.h: New file.
14872
14873 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14874
14875 * emacs.c (USAGE1): Show command line option --no-window-system
14876 instead of --no-windows in usage.
14877 (standard_args): Rename --no-windows to --no-window-system.
14878 (bug_reporting_address): Follow Emacs coding conventions.
14879
14880 * eval.c (Fcommandp): Doc fix.
14881 Change doc-string comments to `new style' [w/`doc:' keyword].
14882
14883 * frame.c (Fframe_live_p): Doc fix.
14884
14885 * buffer.c (selective-display-ellipses): Doc fix.
14886
14887 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14888
14889 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
14890
14891 * xfaces.c (realize_x_face): If C is not a single-byte character,
14892 set the face's colors_copied_bitwise_p instead of the defaulted_p
14893 members which have a different meaning.
14894 (free_face_colors): Do nothing for a face whose colors have been
14895 copied bitwise.
14896
14897 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
14898
14899 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14900
14901 * marker.c, mocklisp.c: Change doc-string comments to `new style'
14902 [w/`doc:' keyword].
14903
14904 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14905
14906 * fns.c (require_unwind): Return Lisp_Object.
14907
14908 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
14909
14910 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
14911 (last-input-char): Revert doc-string to be the same as the
14912 doc-string of `last-input-event'.
14913
14914 * xdisp.c: Fix typos in comments.
14915
14916 2001-10-31 Gerd Moellmann <gerd@gnu.org>
14917
14918 * window.c (grow_mini_window): Handle case that the root
14919 window is already smaller than the nominal mininum height.
14920
14921 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
14922
14923 * emacs.c (main): Don't call keys_of_macros any more.
14924
14925 * lisp.h (keys_of_macros): Remove.
14926
14927 * macros.c (keys_of_macros): Remove.
14928
14929 * xfaces.c (Fface_attribute_relative_p): Declare args.
14930
14931 2001-10-30 Jason Rumney <jasonr@gnu.org>
14932
14933 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
14934 (enum_font_cb2): Ignore fonts with vertical orientation.
14935
14936 2001-10-30 Richard M. Stallman <rms@gnu.org>
14937
14938 * keyboard.c (Finput_pending_p): Doc fix.
14939
14940 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14941
14942 * xterm.c (x_after_update_window_line): Don't run the code
14943 clearing in borders for rows whose visible height is 0.
14944
14945 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
14946 resized_p flag is set. If not set, use the much less flickering
14947 method previously used.
14948
14949 * dispnew.c (change_frame_size_1): Set frame's resized_p.
14950
14951 * frame.h (struct frame) <resized_p>: New member.
14952
14953 * lread.c (to_multibyte): Ensure read_buffer is at least twice
14954 as large as the number of bytes to convert.
14955
14956 * lread.c (to_multibyte): New function.
14957 (read1): Use it.
14958
14959 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
14960
14961 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
14962
14963 2001-10-30 Gerd Moellmann <gerd@gnu.org>
14964
14965 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
14966 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
14967 if the row's fill_line_p is set and drawing the last glyph with
14968 DRAW_IMAGE_{RAISED,SUNKEN}.
14969
14970 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
14971
14972 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
14973
14974 * xmenu.c: Include coding.h and charset.h.
14975 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
14976 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
14977 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
14978 Explicitly set wv->help. Use `TRUE' rather than `True'.
14979 (menu_help_callback): Use empty_string.
14980
14981 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
14982 (Fx_popup_dialog): Explicitly init f.
14983 (w32_menu_display_help): Use empty_string.
14984
14985 2001-10-29 Richard M. Stallman <rms@gnu.org>
14986
14987 * fns.c (Frequire): Detect recursive try to require the same
14988 feature 3 or more levels deep, and get error.
14989 (require_unwind): New subroutine.
14990 (require_nesting_list): New variable.
14991 (syms_of_fns): Init and staticpro it.
14992
14993 * print.c (print_object): Clarify indication of insertion type.
14994
14995 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
14996
14997 * coding.c (syms_of_coding): Document that locale-coding-system is
14998 used for decoding input on X.
14999
15000 * window.c (Fscroll_left, Fscroll_right): Doc fix.
15001
15002 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15003
15004 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
15005 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
15006
15007 2001-10-29 Gerd Moellmann <gerd@gnu.org>
15008
15009 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
15010 use NO_CURSOR if cursor_in_non_selected_windows is false.
15011
15012 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
15013 the slant attribute if FRAME is t.
15014
15015 * xfns.c (x_set_internal_border_width): Set frame garbaged
15016 when X window doesn't exist yet.
15017
15018 * xterm.c (x_after_update_window_line): Clear internal border
15019 in different circumstances.
15020
15021 * xterm.c (XTread_socket) <KeyPress>: Don't use
15022 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
15023 <handa@etl.go.jp>.
15024
15025 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
15026
15027 * m/ibms390.h: New file. From Adam Thornton
15028 <athornton@sinenomine.net>.
15029
15030 2001-10-28 Gerd Moellmann <gerd@gnu.org>
15031
15032 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
15033
15034 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
15035 a loop counter.
15036
15037 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15038
15039 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
15040
15041 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
15042 keyword].
15043 Fix typos in comments.
15044
15045 * emacs.c (bug_reporting_address): New function.
15046 Use it when displaying usage message.
15047
15048 * minibuf.c (read_minibuf): Remove unused external declaration of
15049 variable `Qread_only'.
15050
15051 * keymap.c (access_keymap): Remove unused variable `charset'.
15052
15053 2001-10-28 Miles Bader <miles@gnu.org>
15054
15055 * xfaces.c (merge_face_heights): Handle TO being relative as well.
15056 Remove #ifdef'd-out code.
15057 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
15058 (syms_of_xfaces): Initialize them.
15059
15060 2001-10-27 Jason Rumney <jasonr@gnu.org>
15061
15062 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
15063 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
15064 position using the system caret.
15065
15066 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
15067 (w32_system_caret_height, w32_system_caret_x)
15068 (w32_system_caret_y): New variables for tracking system caret.
15069 (w32_initialize): Initialize them.
15070 (x_display_and_set_cursor): Make system caret follow the active cursor.
15071
15072 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
15073 New messages types.
15074
15075 * w32term.c (note_mouse_highlight): Clear old help_echo.
15076
15077 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15078
15079 * xterm.c: Fix typo in a comment.
15080
15081 * emacs.c: Fix typos in comments.
15082 Remove unnecessary spaces.
15083 Change doc-string comments to `new style' [w/`doc:' keyword].
15084 (USAGE2): Fix typos in usage string.
15085
15086 * xterm.c: Fix typo in a comment.
15087
15088 * lisp.h: (gdb_lisp_params): Remove code in #if 0 which is now in
15089 emacs.c.
15090
15091 2001-10-27 Gerd Moellmann <gerd@gnu.org>
15092
15093 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
15094 instead of 1/2 line_height in the heuristic for skipping
15095 farther backward when target_y was not reached.
15096
15097 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
15098 Display errno only if non-zero.
15099 (sound_warning): New function.
15100 (vox_configure): Don't treat failing to set sample rate as error.
15101 (various places): Improve error messages.
15102
15103 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
15104
15105 * fileio.c (Faccess_file): Run the argument filename through
15106 Fexpand_file_name, before using it.
15107
15108 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
15109 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
15110
15111 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15112
15113 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
15114
15115 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15116 Fix clearing in the case of scroll bars on the right.
15117
15118 2001-10-26 Juanma Barranquero <lektu@terra.es>
15119
15120 * w32gui.h (XImage): Add a dummy typedef.
15121
15122 2001-10-26 Gerd Moellmann <gerd@gnu.org>
15123
15124 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
15125
15126 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
15127
15128 * frame.c (Fframe_parameter): Fix last change.
15129
15130 * fileio.c: Revert last change (which removed old commented-out
15131 version of expand-file-name). Add a comment that explains why
15132 this old version should not be removed.
15133
15134 2001-10-25 Gerd Moellmann <gerd@gnu.org>
15135
15136 * frame.c (Fframe_parameter): Fix a bug whereby some
15137 ``artificial'' frame parameters, like `minibuffer' were not
15138 obtained by calling Fframe_parameters.
15139
15140 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
15141 cursor differently.
15142
15143 * xdisp.c (move_it_vertically_backward): Compute line height
15144 differently. Add heuristic to try to be more compatible to 20.x.
15145
15146 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
15147
15148 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
15149
15150 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
15151 boolean.
15152
15153 2001-10-25 Miles Bader <miles@gnu.org>
15154
15155 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
15156 BG is a pointer to a structure, not a structure.
15157 (gif_format, png_format): Add missing commas.
15158
15159 2001-10-24 Richard M. Stallman <rms@gnu.org>
15160
15161 * xfaces.c (Fface_attributes_as_vector): New function.
15162 (syms_of_xfaces): Defsubr it.
15163
15164 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15165
15166 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
15167 variable `area'.
15168
15169 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15170
15171 * search.c (scan_newline): Remove unused variable `selective_display'.
15172
15173 2001-10-25 Miles Bader <miles@gnu.org>
15174
15175 * dispextern.h (struct image): Add `background',
15176 `background_valid', and `background_transparent' fields.
15177 (image_background, image_background_transparent): New declarations.
15178 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
15179 * xfns.c (image_background, image_background_transparent)
15180 (four_corners_best): New functions.
15181 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
15182 (gs_format): Add `:background' entry.
15183 (lookup_image): Set IMG's background color if specified.
15184 (pbm_load, xbm_load_image, png_load): Set IMG's background field
15185 when appropriate.
15186 (x_clear_image_1): Reset `background_valid' and
15187 `background_transparent_valid' fields.
15188 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
15189 calculating it here. Set IMG's background_transparent field.
15190 (enum xpm_keyword_index): Add XPM_BACKGROUND.
15191 (enum png_keyword_index): Add PNG_BACKGROUND.
15192 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
15193 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
15194 (enum gif_keyword_index): Add GIF_BACKGROUND.
15195 (enum gs_keyword_index): Add GS_BACKGROUND.
15196 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
15197 Pre-calculate image background color where necessary.
15198 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
15199 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
15200 color to use for image glyph reliefs.
15201
15202 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15203
15204 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
15205 in full-width rows.
15206
15207 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
15208 Fix clearing of area not covered by scroll bar.
15209
15210 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15211
15212 * xterm.c: (x_insert_glyphs): Remove unused variables `real_end'
15213 and `real_start'.
15214 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
15215 (glyph_rect): Remove unused variable `area'.
15216
15217 2001-10-24 Gerd Moellmann <gerd@gnu.org>
15218
15219 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
15220
15221 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
15222 (row_containing_pos): Take additional argument DY.
15223 Treat rows ending in middle of char differently.
15224 (display_line): Handle tabs on window systems differently.
15225
15226 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
15227 with additional argument.
15228
15229 * dispextern.h (row_containing_pos): Adjust prototype.
15230
15231 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
15232 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
15233 (try_window_id, try_window_reusing_current_matrix)
15234 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
15235 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
15236
15237 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15238
15239 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
15240 gnuemacs).
15241 (HAVE_BOXES): Fix typo in comment.
15242 (push_menu_pane): Fix typo in comment.
15243
15244 * xdisp.c: (display_prop_string_p): Remove unused local declaration
15245 of `Qwhen'.
15246 (single_display_prop_string_p): Remove unused local declarations
15247 of `Qwhen' and `Qmargin'.
15248 (string_buffer_position): Remove unused variable `around'.
15249 (store_frame_title): Remove unused variable `width'.
15250
15251 * window.c: Don't define max.
15252 (coordinates_in_window): Remove unused variable `uy'.
15253
15254 * widget.c: Don't define max.
15255
15256 * process.c: Don't define max.
15257 (create_process): Remove unused variable `buffer'.
15258
15259 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15260
15261 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
15262
15263 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
15264
15265 * xfaces.c (Finternal_set_lisp_face_attribute)
15266 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
15267 frame is on a windowed display.
15268
15269 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15270
15271 * dispnew.c (sync_window_with_frame_matrix_rows):
15272 Fix handling of windows which aren't full-width, fix handling
15273 of marginal areas.
15274
15275 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
15276
15277 2001-10-23 Andreas Schwab <schwab@suse.de>
15278
15279 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
15280 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
15281
15282 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15283
15284 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
15285 REAL_END. Notice if cursor gets overwritten.
15286 (notice_overwritten_cursor): Take X positions as parameters.
15287 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
15288 around call to x_draw_glyphs.
15289
15290 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15291
15292 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
15293 instead of C) and usage.
15294
15295 * editfns.c (char-to-string): Fix argument names (use CHAR instead
15296 of C) and usage.
15297
15298 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
15299 `left', `max_width' and `max_height'.
15300
15301 2001-10-23 Gerd Moellmann <gerd@gnu.org>
15302
15303 * xdisp.c (display_line): For a tab continued to the next line,
15304 set row's ends_in_middle_of_char_p.
15305
15306 2001-10-22 Gerd Moellmann <gerd@gnu.org>
15307
15308 * xdisp.c (display_line): Fix computation of continuation lines
15309 width for TABs.
15310
15311 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15312
15313 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
15314 `Qlaplace'.
15315
15316 * fileio.c: Remove unused code.
15317
15318 2001-10-22 Miles Bader <miles@gnu.org>
15319
15320 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
15321 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
15322 Remove `DOC_STRINGS_IN_COMMENTS' cases.
15323
15324 2001-10-21 Jason Rumney <jasonr@gnu.org>
15325
15326 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
15327
15328 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
15329
15330 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
15331 (Finsert_string): Avoid the multi-line string literals warning.
15332
15333 2001-10-22 Miles Bader <miles@gnu.org>
15334
15335 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
15336 (Fdocumentation): Don't use it.
15337 (syms_of_doc): Don't initialize it.
15338
15339 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
15340 * print.c (Fwith_output_to_temp_buffer): Likewise.
15341 * window.c (Fsave_window_excursion): Likewise.
15342 * editfns.c (Fsave_excursion, Fsave_current_buffer)
15343 (Fsave_restriction): Likewise.
15344 * eval.c (Frun_hooks, Frun_hook_with_args)
15345 (Frun_hook_with_args_until_failure)
15346 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
15347 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
15348 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
15349 (Funwind_protect, Fcondition_case): Likewise.
15350 * coding.c (Ffind_operation_coding_system): Likewise.
15351 * keyboard.c (Ftrack_mouse): Likewise.
15352
15353 2001-10-21 Miles Bader <miles@gnu.org>
15354
15355 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
15356 (Fmake_hash_table): Add usage: string to doc string.
15357 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
15358 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
15359 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
15360 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
15361 (Fml_prefix_argument_loop): Likewise.
15362
15363 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15364
15365 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
15366
15367 * sysdep.c (init_sys_modes): Change doc-string comments to `new
15368 style' [w/`doc:' keyword].
15369
15370 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
15371 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
15372 comments to `new style' [w/`doc:' keyword].
15373
15374 2001-10-21 Jason Rumney <jasonr@gnu.org>
15375
15376 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
15377
15378 * w32term.c (remember_mouse_glyph): New function.
15379 (w32_mouse_position): Use it.
15380 (note_mouse_movement): If the mouse moved off the glyph, remember
15381 its new position.
15382
15383 * w32term.h (struct w32_output): Correct spelling of x_compatible.
15384 (w32_display_info): Add mouse_face_overlay.
15385
15386 * w32term.c (notice_overwritten_cursor): Renamed from
15387 note_overwritten_text_cursor. Rewritten to take glyph widths into
15388 account.
15389 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
15390 (fast_find_string_pos): New function.
15391 (fast_find_position): Return the correct vpos. Add parameter
15392 STOP. In the final row, stop before glyphs having STOP as object.
15393 Don't consider glyphs that are not from a buffer.
15394 (fast_find_position) [0]: Add a presumably more correct version
15395 for after 21.1.
15396 (expose_window_tree, expose_frame): Don't compute intersections here.
15397 (expose_window): Do it here instead.
15398 (expose_window_tree, expose_window, expose_line): Return 1 when
15399 overwriting mouse-face.
15400 (expose_window): If W is the window currently being updated, mark
15401 the frame garbaged.
15402 (expose_frame): If mouse-face was overwritten, redo it.
15403 (x_use_underline_position_properties): New variable.
15404 (syms_of_xterm): DEFVAR_BOOL it.
15405 (x_draw_glyph_string): Add comment to use it in future.
15406 (x_draw_glyph_string): Restore clipping after drawing box.
15407 Fix a computation of the underline position.
15408 (w32_get_glyph_string_clip_rect): Minor cleanup.
15409 (x_fill_stretch_glyph_string): Remove an assertion.
15410 (x_produce_glyphs): Don't convert multibyte characters
15411 to unibyte characters in unibyte buffers.
15412 (cursor_in_mouse_face_p): New function.
15413 (x_draw_stretch_glyph_string): Use it to choose a different GC
15414 when drawing a cursor within highlighted text. Don't draw
15415 background again if it has already been drawn.
15416 (x_draw_glyph_string_box): Don't draw a full-width
15417 box just because the glyph row's full_width_p flag is set.
15418 (x_draw_glyphs): Fix computation of rightmost x for
15419 full-width rows.
15420 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
15421 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
15422 change bottom shadow accordingly. Some cleanup.
15423 (x_update_window_end): Handle overwritten mouse face
15424 also for tool bar windows.
15425 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
15426 DRAW is DRAW_IMAGE_RAISED.
15427 (clear_mouse_face): Return 1 if text with mouse face was
15428 actually redrawn. Make the function static.
15429 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
15430 optimize away highlighting if we pass over that same overlay again.
15431 (note_mouse_highlight): Call mouse_face_overlay_overlaps
15432 to detect a case where we have to highlight a different region
15433 despite not having left the currently highlighted region.
15434 Set mouse_face_overlay in the x_display_info. Avoid changing the
15435 mouse pointer shape when show_mouse_face has already done it, or
15436 there is no need. Handle mouse-face and help-echo in strings.
15437 (glyph_rect): New function.
15438 (w32_mouse_position): Use it to raise the threshold for mouse
15439 movement event generation.
15440 (w32_initialize_display_info): Initialize the x_display_info's
15441 mouse_face_overlay.
15442 (w32_set_vertical_scroll_bar): Don't clear a zero height
15443 or width area.
15444 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
15445 a widget to zero height.
15446
15447 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
15448 Protect unibyte strings created by replacing their multibyte
15449 equivalents in menu_items.
15450 (w32_menu_show): Don't overwrite an item's name with its key
15451 description in case the description is a multibyte string.
15452 (single_submenu): Some cleanup.
15453
15454 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
15455 (postprocess_image): New function.
15456 (lookup_image): Call it for all image types except PostScript.
15457 (x_kill_gs_process): Call postprocess_image.
15458 (tiff_error_handler, tiff_warning_handler): New functions.
15459 (tiff_load): Install them as handlers.
15460 (x_kill_gs_process): Recognize if someone has cleared the image
15461 cache under us.
15462 (valid_image_p): Protect better against invalid image
15463 specifications. Previous code could signal an error.
15464 (Fx_hide_tip, Fshow_tip): Doc fix.
15465 (Fv_max_tooltip_size): New variable.
15466 (syns_of_xfns): DEFVAR_LISP it.
15467 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
15468 window buffer to *tip* right after creating the frame. Set frame's
15469 window_width. Use a maximum tooltip size specified by
15470 Vx_max_tooltip_size, if that has valid contents.
15471 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
15472 Make sure the tooltip is completely visible.
15473 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
15474 (Fx_create_frame): Adjust the frame's height for presence
15475 of the tool bar before calling x_figure_window_size.
15476 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
15477 when the window gets smaller.
15478 (x_set_foreground_color): Set frame's cursor_pixel.
15479 (x_set_foreground_color, x_set_background_color): Cleaned up.
15480 (x_set_font): Handle case of x_new_fontset returning the same name
15481 as before, although there was a change in fontsets.
15482
15483 2001-10-21 Miles Bader <miles@gnu.org>
15484
15485 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
15486 (Flogxor): Add usage: string to doc string.
15487 * charset.c (Fstring): Likewise.
15488 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
15489 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
15490
15491 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
15492
15493 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
15494
15495 * alloc.c: Reindent DEFUNs with doc: keywords.
15496
15497 * abbrev.c (Finsert_abbrev_table_description): Reindent.
15498
15499 * frame.c: Change doc-string comments to `new style' [w/`doc:'
15500 keyword].
15501
15502 See ChangeLog.9 for earlier changes.
15503
15504 ;; Local Variables:
15505 ;; coding: iso-2022-7bit
15506 ;; End:
15507
15508 Copyright (C) 2001, 2002 Free Software Foundation, Inc.
15509 Copying and distribution of this file, with or without modification,
15510 are permitted provided the copyright notice and this notice are preserved.
15511
15512 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4