]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2006-05-05 Kenichi Handa <handa@m17n.org>
2
3 * xdisp.c (handle_composition_prop): Fix for the case of empty
4 composition component.
5
6 2006-05-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7
8 * keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info
9 from event->arg.
10
11 * termhooks.h (enum event_kind) [MAC_OS]: Update comment for
12 MAC_APPLE_EVENT.
13
14 * macterm.h (mac_make_lispy_event_code): Remove extern.
15 (mac_post_mouse_moved_event): Add extern.
16 (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
17 `const AEDesc *' in externs.
18 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern.
19
20 * mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
21 `const AEDesc *'.
22 [TARGET_API_MAC_CARBON] (create_apple_event): New function.
23 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it.
24 Use xrealloc instead of repeated xmalloc/xfree.
25 [TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref): New
26 function.
27
28 * macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value.
29
30 * macselect.c: Update copyright year.
31 (mac_store_apple_event): Change return type to void in extern.
32 (mac_handle_apple_event): Don't get return value from
33 mac_store_apple_event.
34 [TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable.
35 (syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it.
36 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from
37 macterm.c. Use Vmac_dnd_known_types as acceptable flavors.
38 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. New
39 implementation using create_apple_event_from_drag_ref.
40 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
41 (mac_do_receive_dragUPP): Move variables from macterm.c.
42 (install_drag_handler, remove_drag_handler): New functions.
43
44 * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window
45 path select also for proxy icon click.
46 [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function.
47 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it.
48 (xlfdpat_create): Remove unused label `error' and trailing sentences.
49 (mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c.
50 (mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to
51 macselect.c.
52 (install_drag_handler, remove_drag_handler): Add extern.
53 (mac_store_apple_event): Change return type to void. All uses changed.
54 Create Lisp object from Apple event and store it into input event.
55 (mac_make_lispy_event_code): Remove function.
56 [TARGET_API_MAC_CARBON] (mac_store_drag_event): New function.
57 (install_window_handler): Call install_drag_handler.
58 (remove_window_handler): Call remove_drag_handler.
59
60 2006-05-03 Richard Stallman <rms@gnu.org>
61
62 * sound.c (Fplay_sound_internal): Dynamically allocate
63 current_sound_device and current_sound.
64 (sound_cleanup): Free them.
65
66 * minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive
67 when inside a keyboard macro.
68
69 2006-05-02 Andreas Schwab <schwab@suse.de>
70
71 * xmenu.c (restore_menu_items): Return a value.
72
73 2006-05-01 Martin Rudalics <rudalics@gmx.at>
74
75 * syntax.c (Fforward_comment): Detect generic comment at beginning of
76 buffer when moving backwards.
77
78 2006-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
79
80 * dispnew.c (update_window): Don't set changed_p when mode/header
81 line is updated.
82
83 * xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar.
84 (get_glyph_face_and_encoding, get_char_face_and_encoding):
85 Don't distinguish known faces from others.
86
87 * mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion
88 through typeFileURL failed.
89
90 * macfns.c (mac_update_title_bar): New function.
91 [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function.
92 (show_hourglass, hide_hourglass) [USE_CG_DRAWING]:
93 Call mac_prepare_for_quickdraw.
94
95 * macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined.
96 (USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1.
97 (enum pcm_status): New enum.
98 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID)
99 (XCharStructRow): Remove. Now validity is represented by
100 non-negativeness of sum of ascent and descent.
101 (struct MacFontStruct): Change type of member `rows'.
102 (struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'.
103
104 * macterm.c (mac_draw_line, mac_draw_line_to_pixmap):
105 Adjust endpoints of strictly horizontal/vertical lines.
106 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects.
107 (pcm_init, pcm_get_status): New functions.
108 (x_per_char_metric, XLoadQueryFont): Use them instead of
109 XCharStructRow and related macros.
110 (x_draw_relief_rect): Don't adjust arguments of mac_draw_line.
111 (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME.
112 (XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag
113 and window path pop-up menu on title bar.
114 (mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1.
115
116 * macterm.h (mac_update_title_bar): Add extern.
117 (struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'.
118 (FRAME_FILE_NAME): New macro.
119
120 * unexmacosx.c (unexec): Error if trying unexec from dumped executable.
121
122 2006-04-30 Richard Stallman <rms@gnu.org>
123
124 * keymap.c (Fdefine_key): Improve error message
125 when KEY begins with a non-prefix key.
126
127 2006-04-30 Martin Rudalics <rudalics@gmx.at>
128
129 * syntax.c (Fforward_comment): Don't forget to break out of the loop
130 when we skipped backward over a generic comment.
131
132 2006-04-27 Nick Roberts <nickrob@snap.net.nz>
133
134 * .gdbinit (pp1, pv1): Only print value as expression is now
135 printed out by gud-print.
136 (pv1): Correct doc string.
137
138 2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
139
140 * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
141 Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8):
142 keymap.c:895: error: address of register variable `def' requested.
143
144 2006-04-26 Jason Rumney <jasonr@gnu.org>
145
146 * w32term.c (construct_mouse_wheel): Handle negative coordinates.
147
148 * w32fns.c (w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN>:
149 <WM_LBUTTONUP, WM_RBUTTONUP>: Call signal_user_input in the cases
150 where we preempt mouse_button_timer.
151
152 2006-04-25 Miles Bader <miles@gnu.org>
153
154 * editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23.
155
156 2006-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
157
158 * process.h: Include headers for pid_t.
159
160 2006-04-24 Kim F. Storm <storm@cua.dk>
161
162 * xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which
163 does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief.
164 (produce_stretch_glyph): Assume that face box height and width is
165 already included in stretch glyph size so caller doesn't have to
166 consider the extra space otherwise added (fixes problem in ses.el).
167
168 * frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame
169 matrices to force recalculation of tool-bar height after font change.
170
171 * xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity.
172 Clear it when done, so we don't accidentally draw a second copy of
173 the tool-bar after resetting f->n_tool_bar_rows.
174 (redisplay_tool_bar): Update tool-bar-lines frame parameter whenever
175 we recalculate f->n_tool_bar_rows.
176
177 2006-04-23 Lars Hansen <larsh@soem.dk>
178
179 * editfns.c (find_field): Fix comment.
180 (Ffield_beginning): Fix bug when POS is at field beginning.
181
182 2006-04-22 Eli Zaretskii <eliz@gnu.org>
183
184 * puresize.h (BASE_PURESIZE): Increase to 1205000.
185
186 2006-04-21 Kim F. Storm <storm@cua.dk>
187
188 * xdisp.c (redisplay_window): Fix last change. Don't recenter if
189 window start is at BEGV.
190
191 * dispextern.h (struct image): New member `corners'.
192 (TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros.
193
194 * image.c (four_corners_best): New arg CORNERS specifies what pixels
195 to look at in case image has margin.
196 (x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best.
197 (image_background, image_background_transparent)
198 (x_build_heuristic_mask): Pass img->corners to four_corners_best.
199 (gif_load): Set img->corners according to image's margin spec.
200 Use img->corners values directly where applicable.
201 Save image extension data in img->data.lisp_val.
202 (gif_clear_image): New function to free img->data.lisp_val.
203 (gif_type): Use it instead of generic x_clear_image.
204 (Fimage_extension_data): New defun.
205 (syms_of_image): Defsubr it.
206
207 2006-04-21 John Sullivan <john@wjsullivan.net> (tiny change)
208
209 * window.c (Fdisplay_buffer): Doc fix.
210
211 2006-04-21 Eli Zaretskii <eliz@gnu.org>
212
213 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000.
214
215 2006-04-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
216
217 * image.c [MAC_OS] (xpm_load_image): Fill in background field
218 while we have ximg handy.
219
220 * macmenu.c (restore_menu_items, save_menu_items): New functions
221 from xmenu.c.
222 (set_frame_menubar, digest_single_submenu): Apply 2006-04-18
223 changes for xmenu.c.
224
225 * macterm.c (x_per_char_metric): Return NULL if glyph width is 0.
226 (add_mac_font_name): New function.
227 (init_font_name_table): Use it. Adopt the first found font from
228 those having the same family name.
229
230 2006-04-21 Nick Roberts <nickrob@snap.net.nz>
231
232 * xdisp.c (note_mouse_highlight): Use build_string.
233
234 2006-04-20 Lars Hansen <larsh@soem.dk>
235
236 * textprop.c (Fremove_list_of_text_properties):
237 Ensure modify_region is called only when buffer is modified and that
238 signal_after_change is allways called in that case.
239
240 * print.c (PRINTFINISH): Call signal_after_change.
241
242 2006-04-20 Kim F. Storm <storm@cua.dk>
243
244 * xdisp.c (redisplay_window): Fix last change.
245
246 * xdisp.c (redisplay_window): If current window start is not at the
247 beginning of a line, select a new window start if buffer is modified
248 and window start is in the modified region, but the first change is
249 before window start.
250
251 2006-04-18 Richard Stallman <rms@gnu.org>
252
253 * xmenu.c (restore_menu_items, save_menu_items): New fns.
254 (set_frame_menubar): Use save_menu_items. Save updated vector in
255 the frame before unwinding it. Don't use unuse_menu_items.
256 Don't use discard_menu_items.
257 (digest_single_submenu): Abort if an item is not in a pane.
258 (init_menu_items): Put the error check at the top.
259
260 * keymap.c (describe_map): Make "shadowed" warning more verbose.
261
262 * window.c (adjust_window_trailing_edge): Correctly distinguish
263 series vs parallel cases, even when window has no parent.
264
265 * abbrev.c (record_symbol): New function.
266 (Finsert_abbrev_table_description): Sort the abbrevs alphabetically.
267
268 2006-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
269
270 * image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return
271 value of xmalloc.
272
273 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
274 (create_apple_event_from_event_ref, xrm_get_preference_database)
275 (cfstring_create_normalized): Don't check return value of xmalloc.
276
277 * macselect.c (get_scrap_target_type_list, defer_apple_events)
278 (copy_scrap_flavor_data, mac_handle_service_event): Don't check
279 return value of xmalloc/xrealloc.
280
281 * macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create)
282 (init_font_name_table, init_font_name_table, mac_do_list_fonts)
283 (XLoadQueryFont, mac_store_apple_event): Don't check return value
284 of xmalloc.
285
286 2006-04-17 Kim F. Storm <storm@cua.dk>
287
288 * window.c (coordinates_in_window): On the vertical border,
289 calculate the row number measured from the top of the window, not
290 the top of the frame.
291 (window_loop): Test w->dedicated with !NILP instead of EQ Qt.
292 (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change.
293
294 2006-04-16 Eli Zaretskii <eliz@gnu.org>
295
296 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000.
297
298 2006-04-16 Romain Francoise <romain@orebokech.com>
299
300 * puresize.h (BASE_PURESIZE): Decrement back to 1200000.
301
302 2006-04-16 Andreas Schwab <schwab@suse.de>
303
304 * puresize.h (PURESIZE_RATIO): Reduce to 10/6.
305
306 2006-04-15 Romain Francoise <romain@orebokech.com>
307
308 * puresize.h (BASE_PURESIZE): Increment to 1210000.
309
310 2006-04-13 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
311
312 * print.c (Fprin1_to_string): Mention in the `doc' that the
313 behavior is modified by `print-level' and `print-length'.
314
315 2006-04-13 Kenichi Handa <handa@m17n.org>
316
317 * coding.c (setup_coding_system): If eol-type is not yet decided
318 and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK.
319 If coding_system is nil, return 0.
320 (code_convert_region1): Even if coding_system is nil, don't skip
321 conversion if system_eol_type is not LF.
322 (code_convert_string1): Likewise.
323 (code_convert_string_norecord): Likewise.
324
325 2006-04-13 Kenichi Handa <handa@m17n.org>
326
327 * coding.c (setup_coding_system): Fix previous change.
328 (encode_coding): If eol_type is not yet decided, use system_eol_type.
329 (shrink_encoding_region): If eol_type is not yet decided and
330 system_eol_type is not LF, don't shrink.
331
332 2006-04-13 Nick Roberts <nickrob@snap.net.nz>
333
334 * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical
335 line.
336
337 2006-04-12 Richard Stallman <rms@gnu.org>
338
339 * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1].
340
341 * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return.
342 (Fprocess_send_eof): Abort if fail to open null device.
343
344 2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
345
346 * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h.
347
348 * image.c [MAC_OS] (xpm_load_image): Add parentheses around
349 assignment used as truth value. Add explicit braces to avoid
350 ambiguous `else'.
351 [MAC_OS] (gif_load): Remove unused variable `gcpro1'.
352
353 * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and
354 EXFUN in #ifdef HAVE_WINDOW_SYSTEM.
355 (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm):
356 Put externs in #ifdef HAVE_X_WINDOWS.
357 (syms_of_macfns, syms_of_macselect, syms_of_macterm)
358 (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs.
359 (init_mac_osx_environment) [MAC_OSX]: Add extern.
360
361 * mac.c (init_process): Remove undef.
362 (select) [MAC_OSX]: Undefine before including sysselect.h.
363 (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]:
364 Remove functions and prototypes.
365 (parse_value): Add parentheses around + inside shift.
366 (path_from_vol_dir_name): Make static.
367 (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'.
368 [!MAC_OSX] (get_path_to_system_folder): Likewise.
369 (Fmac_get_file_creator, Fmac_get_file_type): Remove unused
370 variable `cCode'.
371 (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'.
372 (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'.
373
374 * macfns.c (x_to_mac_color): Remove unused variable `tail'.
375 (x_set_mouse_color): Remove unused variable `dpy'.
376 (Fx_create_frame): Remove unused variable `x_frame_count'.
377 (Fx_server_version): Add explicit braces to avoid ambiguous `else'.
378 (x_sync): Move from macterm.c.
379 (Fx_file_dialog): Remove unused variable `default_filter_index'.
380
381 * macmenu.c (min_menu_id): Make element type explicit.
382
383 * macselect.c (get_flavor_type_from_symbol): Remove unused
384 variable `val'.
385 (get_scrap_private_timestamp, x_get_foreign_selection)
386 (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'.
387 (Fmac_process_deferred_apple_events): Remove unused variables
388 `keyword', `reply', `apple_event', `count', and `err'.
389
390 * macterm.c: Don't include gnu.h.
391 (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes.
392 (x_sync): Move to macfns.c.
393 [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused
394 variable `mask_bits'.
395 (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'.
396 (x_draw_image_glyph_string): Remove unused variable `pixmap'.
397 (x_mac_to_emacs_modifiers): Remove function.
398 (XTset_vertical_scroll_bar, mac_handle_visibility_change)
399 (x_make_frame_visible, xlfdpat_create, mac_handle_command_event):
400 Add explicit braces to avoid ambiguous `else'.
401 (x_make_frame_visible): Remove unused variables `type',
402 `original_top', and `original_left'.
403 (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||.
404 (x_load_font): Remove unused variables `full_name', and `value'.
405 (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]:
406 Remove functions.
407 (do_zoom_window): Reorganize variables with respect to conditionals.
408 (init_command_handler): Remove unused variable `err'.
409 [MAC_OSX] (mac_check_bundle): Remove unused variable `child'.
410
411 * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position)
412 (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
413 (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC)
414 (do_menu_choice, have_menus_p, x_real_positions)
415 (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width)
416 (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar)
417 (free_frame_menubar): Add externs.
418
419 * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H.
420 (malloc, realloc, free): Add undefs.
421 (read_load_commands): Remove unused variable `n' and `j'.
422 (copy_data_segment): Remove unused variable `r'.
423
424 * xdisp.c (get_glyph_string_clip_rects): Add parentheses around &&
425 within ||. Add explicit braces to avoid ambiguous `else'.
426 (dump_glyph_row): Remove label for `inverse_p' from legend.
427
428 * xfaces.c (Finternal_merge_in_global_face, try_font_list):
429 Add explicit braces to avoid ambiguous `else'.
430
431 2006-04-11 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
432
433 * dispnew.c (init_display): Don't init X display if the user asked
434 for a non-X display.
435
436 2006-04-12 Kenichi Handa <handa@m17n.org>
437
438 * coding.c (setup_coding_system): Use system_eol_type for default
439 coding->eol_type.
440
441 2006-04-11 Dan Nicolaescu <dann@ics.uci.edu>
442
443 * lisp.h (wrong_type_argument): Mark as NO_RETURN.
444
445 * data.c (wrong_type_argument): Try to avoid compiler warnings due
446 to the fact the function is now marked as NO_RETURN.
447
448 2006-04-10 Eli Zaretskii <eliz@gnu.org>
449
450 * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef.
451
452 2006-04-10 Romain Francoise <romain@orebokech.com>
453
454 * xrdb.c (gethomedir): Use xstrdup.
455
456 2006-04-10 Andreas Schwab <schwab@suse.de>
457
458 * xrdb.c (gethomedir): Make sure to always return a pointer that
459 can be passed to free.
460
461 2006-04-09 Richard Stallman <rms@gnu.org>
462
463 * lisp.h (Fkill_emacs): Undo previous change.
464
465 2006-04-08 Richard Stallman <rms@gnu.org>
466
467 * search.c (boyer_moore): Test ch >= 0400, not >.
468
469 2006-04-09 Dan Nicolaescu <dann@ics.uci.edu>
470
471 * puresize.h (pure_write_error): Mark as NO_RETURN.
472
473 * lisp.h (args_out_of_range, args_out_of_range_3)
474
475 2006-04-08 Eli Zaretskii <eliz@gnu.org>
476
477 * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements
478 if a menu is active on this frame.
479
480 2006-04-08 Dan Nicolaescu <dann@ics.uci.edu>
481
482 * lisp.h (report_file_error): Mark as NO_RETURN.
483
484 2006-04-08 Eli Zaretskii <eliz@gnu.org>
485
486 * alloc.c [STDC_HEADERS]: Include stddef.h.
487
488 * lisp.h (PSEUDOVECSIZE): Fix last change.
489
490 2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
491
492 * process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
493 `raw_status_high', and `raw_status_low' with plain integers, and move
494 them to the end of the structure.
495
496 * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
497 pseudovector's size field so only the Lisp_Object fields get GC'd.
498
499 * process.c (update_status, make_process, Fdelete_process)
500 (Fprocess_status, list_processes_1, start_process_unwind)
501 (create_process, Fmake_network_process, server_accept_connection)
502 (wait_reading_process_output, send_process, Fprocess_running_child_p)
503 (process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
504 (sigchld_handler, status_notify): Adjust to new non-Lisp fields for
505 `pid' and `raw_status'.
506 (Fprocess_id, Fsignal_process): Same, and additionally use floats when
507 representing PIDs that are larger than most-positive-fixnum.
508
509 * keymap.c (describe_map): Only use XINT if we checked INTEGERP.
510
511 * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
512
513 2006-04-08 Eli Zaretskii <eliz@gnu.org>
514
515 * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
516
517 2006-04-03 Paul Eggert <eggert@cs.ucla.edu>
518
519 * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
520 ../lib-src/b2m.c and ../lib-src/editfns.c.
521 (Fcurrent_time_string): Use it.
522 Document that the year might not consume 4 columns if it's outside
523 the range 1000-9999.
524 Check for asctime failure.
525 Don't assume that the output string length is always exactly 24.
526
527 2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
528
529 * macterm.c (XTread_socket): Initialize variable `f' before its use.
530
531 2006-04-03 Kenichi Handa <handa@m17n.org>
532
533 * image.c: Include "charset.h" and "coding.h".
534 (x_find_image_file): Return an encoded file name.
535
536 2006-04-01 Eli Zaretskii <eliz@gnu.org>
537
538 * configure: Regenerated.
539
540 2006-03-31 Kenichi Handa <handa@m17n.org>
541
542 * xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
543
544 2006-03-30 Dan Nicolaescu <dann@ics.uci.edu>
545
546 * xdisp.c (syms_of_xdisp): Fix variable name.
547
548 2006-03-30 Kenichi Handa <handa@m17n.org>
549
550 * xterm.c (x_term_init): Delete superfluous UNGCPRO.
551
552 2006-03-29 Juanma Barranquero <lekktu@gmail.com>
553
554 * keyboard.c (process_tool_bar_item): Reorder dummy args.
555
556 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
557
558 * keyboard.c (tool_bar_items): Use map_keymap.
559 (process_tool_bar_item): Add dummy args to fit the required interface.
560
561 2006-03-25 Eli Zaretskii <eliz@gnu.org>
562
563 * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
564 to zero before calling debug_print or safe_debug_print.
565
566 * print.c (print_output_debug_flag): New global variable.
567 (Fexternal_debugging_output) [WINDOWSNT]: Don't call
568 OutputDebugString if print_output_debug_flag is zero.
569
570 2006-03-24 Paul Eggert <eggert@cs.ucla.edu>
571
572 * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
573 (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
574 (Fdecode_time): Cast tm_year to EMACS_INT.
575 (Fcurrent_time_string): Report an invalid time specification if
576 the argument is invalid. Also, check for out-of-range time stamps.
577
578 2006-03-24 Kim F. Storm <storm@cua.dk>
579
580 * xterm.c (handle_one_xevent):
581 * w32term.c (w32_read_socket):
582 * macterm.c (XTread_socket): Don't let key-press clear mouse face
583 on in toolbar window if mouse-highlight is an integer.
584
585 * fns.c (sxhash_list): Include last non-nil CDR in hash.
586
587 2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
588
589 * macmenu.c (enum mac_menu_kind): New enum.
590 (min_menu_id): New variable.
591 (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
592 (MIN_SUBMENU_ID): Remove defines. All uses are replaced with
593 min_menu_id and enumerators in enum mac_menu_kind.
594 (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
595 All uses changed. Add range check for menu ID.
596 (fill_menubar): Add range check for menu ID.
597 [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
598 GetEventParameter.
599 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
600 for each menu kind.
601
602 2006-03-22 Kim F. Storm <storm@cua.dk>
603
604 * xdisp.c: Undo 2006-03-21 change.
605
606 * term.c: Define aliases for append_glyph and produce_stretch_glyph
607 when `static' is defined to avoid name clash with those in xdisp.c.
608
609 * process.c (Faccept_process_output): Fix to comply with lisp reference.
610 Change arg "timeout" to "seconds" and allow both integer and float value.
611 Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
612 rather than microseconds. Fix doc string accordingly.
613
614 2006-03-21 Ken Raeburn <raeburn@raeburn.org>
615
616 * xdisp.c (store_next_glyph): Rename from append_glyph.
617 (generate_stretch_glyph): Rename from produce_stretch_glyph.
618 All callers changed accordingly.
619
620 2006-03-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
621
622 * xterm.c: x_session_initialized new variable.
623 (x_term_init): Use x_session_initialized to check if
624 x_session_initialize should be called.
625 (x_initialize): Initialize x_session_initialized.
626
627 2006-03-21 Kim F. Storm <storm@cua.dk>
628
629 * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
630 bitmap here, but ...
631 (update_window_fringes): ... here, so we can test if it has changed.
632
633 2006-03-20 Andreas Schwab <schwab@suse.de>
634
635 * dispnew.c (init_display): Check DISPLAY here.
636
637 * emacs.c (main): Don't check here.
638
639 * xterm.c (x_display_ok): Don't use DISPLAY env var.
640
641 2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
642
643 * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
644 mixup (YAILOM).
645
646 2006-03-20 Eli Zaretskii <eliz@gnu.org>
647
648 * emacs.c (main): Fix last change.
649
650 2006-03-20 Kenichi Handa <handa@m17n.org>
651
652 * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
653
654 * keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
655
656 * xfns.c (xg_set_icon): Remove unnecessary GCPRO.
657
658 * xterm.c (x_term_init): Remove unnecessary GCPRO.
659
660 2006-03-19 Kim F. Storm <storm@cua.dk>
661
662 * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
663 so it doesn't associate overlay string with following glyph by default.
664 Allow integer property value to specify explicit number of buffer
665 positions associate with overlay string.
666
667 2006-03-18 Chong Yidong <cyd@stupidchicken.com>
668
669 * xterm.c (x_display_ok): Fix minor bug and compilation warnings.
670
671 2006-03-18 Nozomu Ando <nand@mac.com>
672
673 * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
674 (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
675 (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
676 Don't redefine.
677
678 * m/mips.h: Don't use unexmips on NetBSD.
679 (LIBS_MACHINE): Move definition lower, so it doesn't use
680 LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
681 C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
682
683 * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
684 (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
685 option is broken (e.g., MIPS/NetBSD).
686
687 2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change)
688
689 * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
690 Remove the HAVE_X_WINDOWS conditional.
691
692 2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change)
693
694 * emacs.c (main): If user asks for a display that is unavailable,
695 simulate -nw.
696
697 * xterm.c (x_display_ok): New function.
698
699 * xterm.h: Add prototype for x_display_ok.
700
701 2006-03-18 Eli Zaretskii <eliz@gnu.org>
702
703 * w32fns.c (Fw32_select_font): Doc fix.
704
705 2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
706
707 * image.c [MAC_OS] (XPutPixel, XGetPixel)
708 [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
709 version when depth is 32.
710 (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
711 New function.
712 (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
713 (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
714
715 * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
716 Create GWorld in ARGB pixel format.
717 (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
718 Remove functions.
719 (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
720 instead of mac_copy_area/mac_copy_area_with_mask.
721
722 2006-03-15 Kim F. Storm <storm@cua.dk>
723
724 * xdisp.c (extend_face_to_end_of_line): Always add space glyph to
725 empty row. Fixes memory corruption revealed by 2006-03-02 change.
726 (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
727 (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
728 width is exactly the same as the window width. Don't count a final
729 empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
730
731 2006-03-15 Juanma Barranquero <lekktu@gmail.com>
732
733 * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
734 conditional on HAVE_NTGUI, not WINDOWS_NT.
735
736 2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
737
738 * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
739
740 * fringe.c (mac_init_fringe) [MAC_OS]: New function.
741
742 * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
743 (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
744 (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
745 (mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
746 (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
747 (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
748 instead of mac_draw_bitmap.
749 (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
750 define_fringe_bitmap and destroy_fringe_bitmap.
751
752 2006-03-14 Chong Yidong <cyd@stupidchicken.com>
753
754 * xterm.c (x_uncatch_errors): Block input for entire function.
755
756 2006-03-12 Jason Rumney <jasonr@gnu.org>
757
758 * w32fns.c (Fx_create_frame): Remove call to
759 Qface_set_after_frame_default (from xfns.c 2003-05-26).
760
761 * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
762 finished with the menu.
763
764 * w32term.c: Sync 2005-10-24 xterm.c changes.
765 (last_mouse_glyph_frame): New var.
766 (note_mouse_movement): Say mouse moved if current frame differs
767 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
768 (w32_mouse_position): Set last_mouse_glyph_frame.
769 Remove OLD_REDISPLAY_CODE block.
770
771 2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
772
773 * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
774
775 * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
776 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
777
778 * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
779
780 * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
781
782 * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
783 (x_draw_composite_glyph_string_foreground)
784 (x_draw_image_foreground): Undo previous changes.
785 (x_draw_hollow_cursor): Likewise. Subtract 1 from the last
786 argument of mac_draw_rectangle.
787 (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
788 (mac_draw_string_common, mac_draw_image_string_cg): Use them.
789 (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
790 (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
791 [USE_CG_DRAWING]: New functions.
792 (mac_draw_line, mac_erase_rectangle, mac_clear_window)
793 (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
794 (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
795 (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
796 (mac_copy_area, mac_scroll_area, x_scroll_bar_create)
797 (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
798 (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
799
800 2006-03-12 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
801
802 * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
803
804 2006-03-11 Jason Rumney <jasonr@gnu.org>
805
806 * w32fns.c (signal_user_input): New function.
807 (post_character_message): Use it for keyboard input.
808 (w32_msg_pump): Use it for mouse input.
809
810 2006-03-11 Luc Teirlinck <teirllm@auburn.edu>
811
812 * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
813 (window_scroll_pixel_based, syms_of_window): Adapt to above change.
814
815 2006-03-11 Eli Zaretskii <eliz@gnu.org>
816
817 * w32fns.c (w32_wnd_proc): Ignore middle and extra button events
818 if a menu is already active (the menubar_active flag is on).
819
820 2006-03-11 David Ponce <david@dponce.com>
821
822 * xfns.c (x_create_tip_frame): Preserve received parms by copying them.
823
824 2006-03-11 Eli Zaretskii <eliz@gnu.org>
825
826 * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
827 the list of unused display error handling functions.
828
829 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
830 HAVE_X_WINDOWS.
831 (internal_condition_case, internal_condition_case_1)
832 (internal_condition_case_2): Call x_catching_errors only if
833 HAVE_X_WINDOWS.
834
835 * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
836 Don't include sys/resource.h unless defined.
837
838 2006-03-11 Richard Stallman <rms@gnu.org>
839
840 * keymap.c (describe_map): Shorten string to indicate shadowed binding.
841
842 * vm-limit.c (get_lim_data, lim_data, data_space_start):
843 Move from mem-limits.h.
844 (enum warnlevel): New data type.
845 (check_memory_limits): Rewrite the logic about warnings.
846 Use standard `struct rlimit'. Check return values for nonsense.
847 (memory_warnings): Always clear lim_data.
848
849 * mem-limits.h (get_lim_data, lim_data, data_space_start):
850 Move to vm-limit.c.
851
852 * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
853
854 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
855 (internal_condition_case_1, internal_condition_case_2):
856 Abort if within unclosed x_catch_errors.
857
858 2006-03-11 Romain Francoise <romain@orebokech.com>
859
860 * process.c (Vprocess_adaptive_read_buffering): Doc fix.
861
862 2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
863
864 * lisp.h: Remove duplicate prototypes. Make the prototype of
865 getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
866
867 2006-03-11 Eli Zaretskii <eliz@gnu.org>
868
869 * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
870 argument of XDrawRectangle.
871
872 * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
873
874 * macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
875 (x_draw_glyph_string_foreground)
876 (x_draw_composite_glyph_string_foreground)
877 (x_draw_image_foreground): Don't subtract 1 from width and height
878 arguments to mac_draw_rectangle.
879 (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
880
881 2006-03-10 Kim F. Storm <storm@cua.dk>
882
883 * alloc.c (USE_POSIX_MEMALIGN): Fix last change.
884
885 2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca>
886
887 * alloc.c (USE_POSIX_MEMALIGN): New macro.
888 (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
889
890 2006-03-09 Kenichi Handa <handa@m17n.org>
891
892 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
893 ASCII component of a composition.
894
895 2006-03-08 Luc Teirlinck <teirllm@auburn.edu>
896
897 * window.c: Declare preserve_y as a static global variable.
898 (window_scroll_pixel_based): No longer declare preserve_y;
899 it is global now.
900 (syms_of_window): Set preserve_y to -1.
901
902 2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
903
904 * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
905 depth is 32.
906 [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
907 depth is 32.
908
909 2006-03-06 Chong Yidong <cyd@stupidchicken.com>
910
911 * xdisp.c (handle_invisible_prop): Don't update it->position with
912 a buffer position if we're in a display string.
913
914 2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
915
916 * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
917 (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
918
919 * macfns.c (x_default_scroll_bar_color_parameter)
920 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
921 Remove unnecessary prototypes.
922 (x_set_scroll_bar_default_width):
923 Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
924 (mac_set_scroll_bar_width): New function.
925 (mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
926
927 * macterm.c (get_control_part_bounds): Fix type of return value.
928 (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
929 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
930 scroll bar if it is not tall enough to display scroll bar thumb.
931 [USE_CARBON_EVENTS] (mac_convert_event_ref)
932 (mac_handle_command_event, mac_handle_window_event)
933 (mac_handle_mouse_event): Check error code of GetEventParameter.
934 (convert_fn_keycode) [MAC_OSX]: Likewise.
935
936 2006-03-05 Andreas Schwab <schwab@suse.de>
937
938 * xselect.c (x_catch_errors_unwind): Fix missing return value.
939
940 2006-03-02 Kim F. Storm <storm@cua.dk>
941
942 * frame.h (struct frame): New member n_tool_bar_rows.
943
944 * xdisp.c: Minimize the unpleasent visual impact of the requirement
945 that non-toolkit tool-bars must occupy an integral number of screen
946 lines, by distributing the rows evenly over the tool-bar screen area.
947 (Vtool_bar_border): New variable.
948 (syms_of_xdisp): DEFVAR_LISP it.
949 (display_tool_bar_line): Add HEIGHT arg for desired row height.
950 Make tool-bar row the desired height. Use default face for border
951 below tool-bar.
952 (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of
953 actual tool-bar rows.
954 (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
955 Adjust the height of the tool-bar rows to fill tool-bar screen area.
956 (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
957 is resized.
958
959 2006-03-01 Luc Teirlinck <teirllm@auburn.edu>
960
961 * search.c (Fregexp_quote): Do not precede a literal `]' with two
962 backslashes to try to make clear that it has a literal meaning; it
963 does not do that. (It could close a character alternative
964 containing a backslash.)
965
966 2006-02-28 Chong Yidong <cyd@stupidchicken.com>
967
968 * xselect.c (x_catch_errors_unwind): New function.
969 (x_reply_selection_request): Put x_uncatch_errors in an unwind.
970 (Fx_get_atom_name): Call x_uncatch_errors earlier.
971
972 * window.c (Qscroll_up, Qscroll_down): New syms.
973 (window_scroll_pixel_based): Make preserve_y static to avoid
974 getting point stuck when scrolling 1 line.
975
976 2006-02-26 Chong Yidong <cyd@stupidchicken.com>
977
978 * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
979
980 * xterm.c (x_load_font, x_term_init, XTmouse_position)
981 (handle_one_xevent, x_connection_closed, x_list_fonts):
982 No arg for x_uncatch_errors.
983
984 * xselect.c (x_own_selection, x_decline_selection_request)
985 (x_reply_selection_request, x_get_foreign_selection)
986 (Fx_get_atom_name, Fx_send_client_event): Likewise.
987
988 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
989 Likewise.
990
991 2006-02-26 Luc Teirlinck <teirllm@auburn.edu>
992
993 * lread.c: Declare Vload_file_rep_suffixes instead of
994 deleted variable default_suffixes.
995 (Fget_load_suffixes): New function.
996 (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
997 No longer use deleted variable default_suffixes. Update docstring.
998 (syms_of_lread): defsubr Sget_load_suffixes.
999 Expand `load-suffixes' docstring.
1000 Delete default_suffixes and DEFVAR_LISP the new variable
1001 `load-file-rep-suffixes'.
1002
1003 * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
1004 of Vload_suffixes.
1005
1006 * lisp.h: EXFUN Fget_load_suffixes.
1007 Extern Vload_file_rep_suffixes.
1008
1009 * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
1010 with lisp.h.
1011
1012 2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
1013
1014 * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
1015 qualifier which was trying to avoid the bug that was fixed by
1016 yesterday's changes to xterm.c.
1017
1018 2006-02-25 Chong Yidong <cyd@stupidchicken.com>
1019
1020 * xterm.h (x_catch_errors) Return value changed to void.
1021 (x_uncatch_errors): Delete unused count argument.
1022
1023 * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
1024 it can be called in a signal handler.
1025 (x_catch_errors_unwind): Function deleted.
1026 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
1027 (x_check_errors): Call x_uncatch_errors before signalling error.
1028
1029 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
1030 (x_connection_closed, x_list_fonts): Use new versions of
1031 x_catch_errors and x_uncatch_errors.
1032
1033 * xselect.c (x_own_selection, x_decline_selection_request)
1034 (x_reply_selection_request, x_get_foreign_selection)
1035 (Fx_get_atom_name, Fx_send_client_event): Likewise.
1036
1037 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
1038 Likewise.
1039
1040 * eval.c (record_unwind_protect): Add an assertion.
1041
1042 2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
1043
1044 * process.c (Fmake_network_process): Init the process's mark.
1045
1046 2006-02-25 Kim F. Storm <storm@cua.dk>
1047
1048 * buffer.c (modify_overlay): Force redisplay if we modify an
1049 overlay at the end of the buffer.
1050
1051 2006-02-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1052
1053 * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
1054 nil the image file has been removed, in that case use the (cached)
1055 pixmap.
1056
1057 2006-02-24 Kenichi Handa <handa@m17n.org>
1058
1059 * fileio.c (Finsert_file_contents): When a text is replaced
1060 partially, be sure to set point before the inserted characters.
1061
1062 2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change)
1063
1064 * xfns.c (Fx_file_dialog): Return a decoded file name.
1065
1066 2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1067
1068 * dispnew.c (update_text_area): Avoid needless redraw of rightmost
1069 glyph whose face is extended to the text area end.
1070
1071 * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
1072 values if control is not visible or values are not changed.
1073
1074 2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
1075
1076 * window.c (Fwindow_list): Check `window' before doing XWINDOW.
1077 The default `window' should not be "on a different frame".
1078
1079 2006-02-22 Kim F. Storm <storm@cua.dk>
1080
1081 * indent.c (Fvertical_motion): Only try to move back if we can.
1082
1083 2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1084
1085 * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
1086 n_clip_rects.
1087
1088 * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
1089 xmenu.c.
1090
1091 * macterm.c (GC_CLIP_REGION): Remove macro.
1092 (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
1093 All uses changed. Don't do clipping if n_clip_rects is zero.
1094 (mac_set_clip_rectangles): Use xassert instead of abort.
1095 Set n_clip_rects. Don't make clip_region empty when number of
1096 clipping rectangles is zero.
1097 (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
1098 calling mac_set_clip_rectangles.
1099 (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
1100 avoid multiple redraws.
1101
1102 2006-02-22 Kim F. Storm <storm@cua.dk>
1103
1104 * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
1105
1106 2006-02-21 Kim F. Storm <storm@cua.dk>
1107
1108 * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
1109
1110 2006-02-21 Zhang Wei <brep@newsmth.org>
1111
1112 * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
1113 returning it.
1114
1115 2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1116
1117 * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
1118 (standard_bitmaps): Use it.
1119
1120 2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1121
1122 * macterm.c (mac_draw_string_common): Remove arg MODE. New arg
1123 BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero.
1124 (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
1125 [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
1126 mac_draw_string_cg. New arg BG_WIDTH. All uses changed.
1127 Draw background if BG_WIDTH is not zero. Use float constants as
1128 divisors instead of double. Use alloca instead of xmalloc/xfree.
1129 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1130 [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
1131 mac_draw_image_string* functions.
1132 (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
1133 some fonts when srcCopy text transfer mode might be used.
1134 (mac_begin_clip, mac_end_clip): Check if region is empty.
1135 (mac_set_clip_rectangles): When resetting clip region, make it
1136 empty instead of disposing of it.
1137
1138 2006-02-20 Kim F. Storm <storm@cua.dk>
1139
1140 * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
1141
1142 * buffer.h (struct buffer): New members fringe_indicator_alist and
1143 fringe_cursor_alist.
1144
1145 * buffer.c (init_buffer_once): Set dummy default values for
1146 fringe-indicator-alist and fringe-cursor-alist. The proper
1147 default values are set by pre-loading fringe.el.
1148 (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
1149 fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
1150 corresponding default- variables.
1151
1152 * fringe.c (enum fringe_bitmap_type): Remove. Change all uses
1153 to use `int'.
1154 (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
1155 Define explicitly.
1156 (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
1157 (Qhollow_small): New variables.
1158 (syms_of_fringe): Intern and staticpro them.
1159 (question_mark_bits): Rename from unknown_bits.
1160 (left_curly_arrow_bits): Rename from continuation_bits.
1161 (right_curly_arrow_bits): Rename from continued_bits.
1162 (left_triangle_bits): Rename from ov_bits.
1163 (right_triangle_bits): Add.
1164 (filled_rectangle_bits): Rename from filled_box_cursor_bits.
1165 (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
1166 (filled_square_bits): Add.
1167 (vertical_bar_bits): Rename from bar_cursor_bits.
1168 (horizontal_bar_bits): Rename from hbar_cursor_bits.
1169 (empty_line_bits): Rename from zv_bits.
1170 (standard_bitmaps): Update to use new names.
1171 (draw_fringe_bitmap_1): Make static.
1172 (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
1173 to map from logical cursors and indicators to physical bitmaps.
1174 (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
1175 bitmaps using symbol names instead of bitmap numbers.
1176 (update_window_fringes): Use logical indicator symbol names
1177 instead of bitmap numbers for logical. Add bitmap cache.
1178 (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
1179
1180 2006-02-20 Chong Yidong <cyd@stupidchicken.com>
1181
1182 * regex.c: Revert 2006-02-19 change.
1183 (xmalloc, xrealloc): Define these when not linked to Emacs.
1184 Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
1185
1186 2006-02-19 Luc Teirlinck <teirllm@auburn.edu>
1187
1188 * regex.c (extend_range_table_work_area): Fix typo.
1189
1190 2006-02-19 Richard M. Stallman <rms@gnu.org>
1191
1192 * xterm.c (x_catch_errors): Use xmalloc.
1193
1194 * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
1195 (regex_compile): Likewise.
1196 (regcomp): Use xmalloc.
1197
1198 * gtkutil.c (malloc_widget_value): Use xmalloc.
1199
1200 * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
1201 (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
1202
1203 * xmenu.c (digest_single_submenu): When pane_string is empty,
1204 do initialize save_wv.
1205
1206 2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1207
1208 * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
1209 w->update_mode_line if arg F is not the selected frame.
1210
1211 * macmenu.c (popup_activated_flag, submenu_id)
1212 (next_menubar_widget_id): Remove variables.
1213 (initialize_frame_menubar): Remove function.
1214 (pop_down_menu, mac_menu_show): Simplify save value.
1215 (dispose_menus): New function.
1216 (pop_down_menu, fill_menubar): Use it.
1217 (fill_submenu): Remove function. All uses changed to fill_menu.
1218 (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg
1219 POS. Don't call SetMenuItemHierarchicalID here.
1220 (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be
1221 used next. Call SetMenuItemHierarchicalID here.
1222 (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu
1223 objects if needed. Reuse existing menu bar titles if possible.
1224 (set_frame_menubar): Don't clean up menu objects here.
1225
1226 2006-02-18 Chong Yidong <cyd@stupidchicken.com>
1227
1228 * window.c (window_min_size_1): Ensure room for the scroll bar and
1229 fringes.
1230
1231 2006-02-17 Romain Francoise <romain@orebokech.com>
1232
1233 * puresize.h (BASE_PURESIZE): Increment to 1200000.
1234
1235 2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca>
1236
1237 * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
1238 addition of the BLOCK_INPUTs.
1239
1240 2006-02-17 Juanma Barranquero <lekktu@gmail.com>
1241
1242 * window.c (Fset_window_scroll_bars): Doc fix.
1243
1244 2006-02-17 Kenichi Handa <handa@m17n.org>
1245
1246 * xdisp.c (display_mode_element): Call display_string with correct
1247 PREC arg (which must be a number of characters, not column width).
1248
1249 2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1250
1251 * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
1252
1253 * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
1254
1255 * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
1256
1257 2006-02-14 Richard M. Stallman <rms@gnu.org>
1258
1259 * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
1260
1261 * m/ibms390x.h: New file.
1262
1263 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1264
1265 * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
1266 value of x-gtk-whole-detached-tool-bar.
1267 (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
1268
1269 * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
1270
1271 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1272
1273 * xterm.c (x_x_to_emacs_modifiers): Make non-static.
1274
1275 * xterm.h: Declare x_x_to_emacs_modifiers.
1276
1277 * gtkutil.c (xg_tool_bar_button_cb): New function.
1278 (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
1279 store modifiers in event.
1280 (update_frame_tool_bar): Connect button-release-event to
1281 xg_tool_bar_button_cb.
1282
1283 2006-02-13 Richard M. Stallman <rms@gnu.org>
1284
1285 * .gdbinit (xwindow): Update the code to show the window box.
1286
1287 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1288
1289 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
1290
1291 2006-02-12 Richard M. Stallman <rms@gnu.org>
1292
1293 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
1294
1295 2006-02-11 Eli Zaretskii <eliz@gnu.org>
1296
1297 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
1298 (syms_of_keyboard): DEVFAR_LISP and initialize it.
1299 (parse_tool_bar_item, parse_menu_item): If that variable is
1300 non-nil, don't disable menu items and tool-bar buttons.
1301
1302 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
1303
1304 * doc.c (Fsubstitute_command_keys): Doc fix.
1305
1306 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
1307
1308 * data.c (Findirect_function): Rewrite docstring.
1309 Fix omission bug: Declare new arg NOERROR.
1310
1311 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1312
1313 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
1314 if window_desc is not set yet.
1315 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
1316 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
1317 parameter `visibility' is `icon'.
1318 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
1319 instead of "fontset-mac".
1320 (Fx_focus_frame): New defun.
1321 (syms_of_macfns): Defsubr it.
1322
1323 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
1324 for unfocused frame.
1325 (x_raise_frame): Call BringToFront instead of SelectWindow.
1326 (x_lower_frame): Use NULL instead of nil.
1327 (x_make_frame_visible): Don't call SelectWindow.
1328 (XTread_socket): Increment handling_signal at the start, decrement
1329 it at the end.
1330 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
1331 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
1332
1333 2006-02-10 Kim F. Storm <storm@cua.dk>
1334
1335 * data.c (Findirect_function): Add NOERROR arg. All callers changed
1336 to pass Qnil for NOERROR.
1337
1338 * keymap.c (current_minor_maps_error): Remove.
1339 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
1340 instead of using internal_condition_case_1+current_minor_maps_error.
1341
1342 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1343
1344 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
1345 frames for GTK, in that case it is the tool bar. This is so that
1346 highlighted text get reset properly.
1347
1348 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
1349
1350 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
1351
1352 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1353
1354 * window.c (adjust_window_trailing_edge): Check that shrinking
1355 does not set a window to size zero or less.
1356
1357 2006-02-08 Miles Bader <miles@gnu.org>
1358
1359 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
1360 of Fget_text_property (other field functions work with overlays as
1361 well as text-properties).
1362
1363 2006-02-07 Kenichi Handa <handa@m17n.org>
1364
1365 * dispextern.h (unibyte_display_via_language_environment): Extern it.
1366
1367 * xterm.h (unibyte_display_via_language_environment):
1368 * w32term.h (unibyte_display_via_language_environment):
1369 * macterm.h (unibyte_display_via_language_environment): Delete extern.
1370
1371 2006-02-07 Kenichi Handa <handa@m17n.org>
1372
1373 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
1374 (produce_glyphs): Set the character to print in
1375 it->char_to_display. Handle unibyte-display-via-language-environment.
1376 (produce_stretch_glyph): Set character to print in it->char_to_display.
1377
1378 2006-02-06 Kenichi Handa <handa@m17n.org>
1379
1380 * lread.c (openp): Initialize encoded_fn before GCPRO it.
1381
1382 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
1383
1384 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
1385
1386 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
1387 Cast bitfield value to EMACS_INT, to suppress gcc warning.
1388
1389 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
1390 defining.
1391
1392 2006-02-03 Kim F. Storm <storm@cua.dk>
1393
1394 * xdisp.c: Cache last merged escape glyph face.
1395 (last_escape_glyph_frame, last_escape_glyph_face_id)
1396 (last_escape_glyph_merged_face_id): New variables.
1397 (get_next_display_element): Use/update them.
1398 (redisplay_internal): Reset them before redisplay.
1399
1400 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
1401 Only recheck faces after displaying ellipsis.
1402
1403 2006-02-02 Kenichi Handa <handa@m17n.org>
1404
1405 * coding.c (decode_composition_emacs_mule): Fix handling of
1406 incorrect format data.
1407
1408 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1409
1410 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
1411 (gtk_toolbar_insert) so we can have tool bars of different sizes.
1412
1413 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
1414
1415 * data.c (Flistp): Doc fix.
1416
1417 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
1418
1419 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
1420 Fix typos in docstrings.
1421
1422 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
1423
1424 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
1425
1426 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
1427
1428 * alloc.c (make_interval, allocate_string)
1429 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
1430 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
1431 global variables.
1432
1433 2006-01-27 Eli Zaretskii <eliz@gnu.org>
1434
1435 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
1436 the MSDOS definition.
1437
1438 2006-01-26 Richard M. Stallman <rms@gnu.org>
1439
1440 * alloc.c (check_pure_size): Make overflow message an "error message".
1441
1442 * keymap.c (Fmap_keymap): Doc fix.
1443
1444 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
1445 unless they were cleared out.
1446
1447 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
1448
1449 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1450
1451 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
1452 (find_field): Set before_field to after_field when pos is at BEGV.
1453 (Fline_beginning_position, Fline_end_position):
1454 Clarify confusing doc string.
1455
1456 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
1457 string.
1458
1459 2006-01-26 Kenichi Handa <handa@m17n.org>
1460
1461 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
1462 current_dir, and error_file. On reporting an error, decode them
1463 back.
1464
1465 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1466
1467 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
1468 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
1469 Don't check for quit, since any loop will go through fail or jump.
1470
1471 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
1472
1473 * alloc.c (allocate_string_data): Update next_free immediately, to
1474 reduce risk of memory clobberage.
1475
1476 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1477
1478 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
1479 display when point moves across an ellipsis. If there are
1480 adjacent invisible texts, don't lose the second one's ellipsis.
1481 (x_produce_glyphs): Doc fix.
1482
1483 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
1484
1485 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
1486
1487 2006-01-23 Kim F. Storm <storm@cua.dk>
1488
1489 * xdisp.c (handle_single_display_spec): Fix handling of space
1490 property on char from string: set *position rather than
1491 it->current.pos.
1492 (produce_stretch_glyph): Reduce width of stretch glyphs so they
1493 don't get wider than the window (unless truncate-lines is on).
1494
1495 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
1496
1497 * xterm.c: Avoid allocating Lisp data from a signal handler.
1498 (x_error_message): New var to replace x_error_message_string.
1499 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
1500 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
1501 (syms_of_xterm): Use it instead of x_error_message_string.
1502
1503 * alloc.c (lisp_align_free): Add an assertion.
1504 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
1505 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
1506 a signal handler.
1507
1508 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
1509
1510 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
1511
1512 2006-01-21 Romain Francoise <romain@orebokech.com>
1513
1514 * xdisp.c (get_window_cursor_type): Fix last change.
1515 Update copyright year.
1516
1517 2006-01-20 Eli Zaretskii <eliz@gnu.org>
1518
1519 * lread.c (Fload): Don't leak the file descriptor returned by
1520 openp if we are going to signal an error.
1521
1522 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
1523 directly to _close.
1524 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
1525 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
1526 to _read.
1527 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
1528 directly to _write.
1529
1530 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
1531 if it is NULL.
1532
1533 2006-01-20 Kenichi Handa <handa@m17n.org>
1534
1535 * puresize.h (BASE_PURESIZE): Increment to 1190000.
1536
1537 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
1538
1539 * xdisp.c (get_window_cursor_type): Use cursor type specified by
1540 the selected buffer for the echo area too.
1541
1542 2006-01-19 Richard M. Stallman <rms@gnu.org>
1543
1544 * keymap.c (Fmap_keymap): Doc fix.
1545
1546 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
1547
1548 * keyboard.c (echo_char): Don't omit the space between first two
1549 echoed chars.
1550
1551 * minibuf.c (read_minibuf): Fix previous change.
1552
1553 2006-01-19 Kenichi Handa <handa@m17n.org>
1554
1555 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
1556
1557 2006-01-17 Richard M. Stallman <rms@gnu.org>
1558
1559 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
1560 value in f->param_alist.
1561
1562 2006-01-15 Andreas Schwab <schwab@suse.de>
1563
1564 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
1565
1566 2006-01-13 Richard M. Stallman <rms@gnu.org>
1567
1568 * Makefile.in: Define new macro WINDOW_SUPPORT.
1569 (lisp): Use it.
1570 (SOME_MACHINE_LISP): Add conditionally loaded files.
1571
1572 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1573
1574 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1575 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
1576 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
1577 decomposed form.
1578
1579 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
1580 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
1581 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
1582 macro. Also try member ifr_addr when getting netmask.
1583
1584 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
1585
1586 * fileio.c (Fexpand_file_name): Remove redundant tests.
1587 Fix elimination of // so that it doesn't prevent elimination of an
1588 immediately following /. or /..
1589
1590 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1591
1592 * gtkutil.c (xg_toggle_notify_cb): New function.
1593 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
1594 xg_toggle_notify_cb.
1595 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
1596 parameter value changes so the toggle button gets updated.
1597
1598 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
1599
1600 * .gdbinit: Fix typo.
1601
1602 2006-01-05 Eli Zaretskii <eliz@gnu.org>
1603
1604 * .gdbinit: Fix last change.
1605
1606 2006-01-05 Kim F. Storm <storm@cua.dk>
1607
1608 * process.c (Fmake_network_process): Use AF_INET instead of
1609 AF_UNSPEC when AF_INET6 is not defined.
1610
1611 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1612
1613 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
1614 Don't check that the other type is known file-related one.
1615
1616 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
1617 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
1618 OS X 10.4 and later.
1619
1620 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1621
1622 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
1623 let GTK do all image processing. Importing Emacs own pixmaps to GTK
1624 looks bad for inactive tool bar items with some Gnome themes.
1625
1626 2006-01-04 Eli Zaretskii <eliz@gnu.org>
1627
1628 * .gdbinit: Avoid a warning message when x_error_quitter is not
1629 compiled in.
1630
1631 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
1632 for w32.
1633
1634 2006-01-04 Kim F. Storm <storm@cua.dk>
1635
1636 * process.c: Add IPv6 support.
1637 (Qipv4, Qipv6): New vars.
1638 (syms_of_process): Intern and staticpro them.
1639 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
1640 with or without port number. Handle 4 element vector as IPv4 address
1641 without port number.
1642 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
1643 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
1644 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
1645 request that address family only. :family nil or omitted means to
1646 determine address family from the specified :host and :service.
1647 (ifflag_table): Add missing OpenBSD IFF_ flags.
1648 (server_accept_connection): Handle IPv6 addresses.
1649 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
1650
1651 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
1652 determine which breakpoints to set.
1653
1654 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
1655
1656 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
1657
1658 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
1659
1660 2006-01-03 Romain Francoise <romain@orebokech.com>
1661
1662 * emacs.c (main): Update copyright year.
1663
1664 2006-01-03 Ken Raeburn <raeburn@gnu.org>
1665
1666 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
1667 nil for the call to internal_delete_file.
1668
1669 2006-01-01 Ken Raeburn <raeburn@gnu.org>
1670
1671 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
1672 to nil for the call to Fwrite_region.
1673
1674 2005-12-31 Richard M. Stallman <rms@gnu.org>
1675
1676 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
1677
1678 2005-12-31 Eli Zaretskii <eliz@gnu.org>
1679
1680 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
1681
1682 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
1683
1684 * textprop.c (set_text_properties): Reword description of return value.
1685 Return Qnil if caller wants to remove all text properties from a
1686 string and the string already has no intervals.
1687
1688 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
1689
1690 * term.c (visible_cursor): New boolean var.
1691 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
1692 visible_cursor.
1693 (syms_of_term): Export the new var as "visible-cursor".
1694
1695 2005-12-30 Eli Zaretskii <eliz@gnu.org>
1696
1697 * .gdbinit: Tell users not to worry about GDB warnings that some
1698 functions do not exist in the binary.
1699
1700 2005-12-30 Andreas Schwab <schwab@suse.de>
1701
1702 * process.c (Fnetwork_interface_info): Correctly terminate the
1703 loop over ifflag_table.
1704
1705 2005-12-29 Richard M. Stallman <rms@gnu.org>
1706
1707 * lread.c (readevalloop): Test for reading a whole buffer
1708 before actually reading anything. Handle all cases, including
1709 START = END = nil and an already-narrowed buffer.
1710 Convert END to a marker if it is a number.
1711
1712 * keymap.c (describe_map): Put sparse map elements into an array,
1713 sort them, then output a sequence of identical bindings on one line.
1714 (struct describe_map_elt): New data type.
1715 (describe_map_compare): New function.
1716
1717 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1718
1719 * gtkutil.c (xg_get_file_with_chooser): Change message shown
1720 in file chooser.
1721
1722 2005-12-27 Richard M. Stallman <rms@gnu.org>
1723
1724 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
1725 not the current one.
1726
1727 * minibuf.c (Fminibuffer_message): Doc fix.
1728 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
1729
1730 * eval.c (do_autoload): Ignore elements of Vautoload_queue
1731 where car is not symbol.
1732
1733 2005-12-27 Kenichi Handa <handa@m17n.org>
1734
1735 * charset.c (lisp_string_width): Check multibyteness of STRING.
1736
1737 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1738
1739 * xfns.c: x_show_hidden_files, new variable.
1740 (syms_of_xfns): Defvar it.
1741
1742 * gtkutil.c (xg_toggle_visibility_cb): New function.
1743 (xg_get_file_with_chooser): Add toggle hidden files and a message
1744 to the new file chooser dialog. Show hidden files if
1745 x_show_hidden_files is non-zero.
1746
1747 2005-12-26 Richard M. Stallman <rms@gnu.org>
1748
1749 * keyboard.h: Undo previous change.
1750
1751 * Makefile.in (undo.o): Undo previous change.
1752
1753 * undo.c: Undo previous change.
1754
1755 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
1756
1757 * keyboard.h: extern last_point_position_window.
1758
1759 * undo.c: include keyboard.h.
1760
1761 * Makefile.in (undo.o): Depend on keyboard.h.
1762
1763 2005-12-26 Richard M. Stallman <rms@gnu.org>
1764
1765 * commands.h (last_point_position_window): Declare.
1766
1767 * undo.c: Depend on window.h.
1768 (record_point): Save old point from the correct window.
1769
1770 * keyboard.c (last_point_position_window): New variable.
1771 (command_loop_1): Set last_point_position_window.
1772 (syms_of_keyboard): Init it.
1773
1774 * Makefile.in (undo.o): Depend on window.h.
1775
1776 2005-12-25 Richard M. Stallman <rms@gnu.org>
1777
1778 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
1779 to undo a `provide'.
1780
1781 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
1782
1783 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
1784
1785 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
1786 define for FreeBSD on this platform.
1787
1788 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1789
1790 * macterm.h (TYPE_FILE_NAME): New define.
1791 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
1792
1793 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
1794 Add prototypes. Make static.
1795 (mac_aedesc_to_lisp): Initialize err to noErr.
1796 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
1797 (init_coercion_handler): New functions.
1798 (Fmac_coerce_ae_data): Use coercion of Apple event data for
1799 translation from/to file names.
1800
1801 * macterm.c: Don't include sys/param.h.
1802 (init_coercion_handler): Add extern.
1803 [MAC_OS8] (main): Call init_coercion_handler.
1804 (mac_initialize) [MAC_OSX]: Likewise.
1805 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
1806 Apple event data for translation from/to file names.
1807
1808 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
1809
1810 * image.c [MAC_OS] (find_image_fsspec): Likewise.
1811
1812 2005-12-23 Martin Rudalics <rudalics@gmx.at>
1813
1814 * insdel.c (insert, insert_and_inherit, insert_before_markers)
1815 (insert_before_markers_and_inherit): Make sure FROM is correct
1816 when `after-change-functions' are called.
1817
1818 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1819
1820 * xfns.c (Fx_uses_old_gtk_dialog): New function.
1821
1822 * gtkutil.c (xg_uses_old_file_dialog): New function.
1823 (xg_get_file_name): Use xg_uses_old_file_dialog.
1824
1825 * gtkutil.h: Declare xg_uses_old_file_dialog.
1826
1827 2005-12-22 Richard M. Stallman <rms@gnu.org>
1828
1829 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
1830
1831 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1832
1833 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
1834
1835 * macgui.h (XCharStruct): Remove member `valid_p'.
1836 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
1837 (XCharStructRow): New typedef.
1838 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
1839 New macros.
1840 (struct MacFontStruct): Add member `bounds'. Remove member
1841 `per_char'. All uses for QuichDraw Text fonts are changed to
1842 `bounds.per_char'. ATSUI font bounds are represented as an array
1843 `bounds.rows' of XCharStructRow's, each of which consists of a
1844 bitmap of valid entries and an array of char bounds.
1845
1846 * macterm.c (mac_per_char_metric): Add prototype.
1847 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
1848 (mac_query_char_extents): New function.
1849 (x_per_char_metric): Use it.
1850 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
1851 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
1852 Use mac_per_char_metric instead of x_per_char_metric.
1853 (mac_text_extents_16): New function.
1854 (mac_compute_glyph_string_overhangs): Use it.
1855 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
1856
1857 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
1858
1859 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
1860 (Fminibuffer_completion_help): Remove duplicates before display.
1861
1862 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1863
1864 * print.c (print_preprocess): Don't lose print_depth levels while
1865 iterating.
1866
1867 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1868
1869 * macmenu.c (Qmac_apple_event): Add extern.
1870 (set_frame_menubar, mac_menu_show keymp_panes)
1871 (single_keymap_panes, list_of_panes, list_of_item)
1872 (single_menu_item): Add argument types to prototypes.
1873 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
1874 (struct skp): New struct (from xmenu.c).
1875 (single_keymap_panes, single_menu_item, list_of_panes)
1876 (list_of_item): Sync with xmenu.c.
1877 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
1878 POSITION if it is mac-apple-event event.
1879 (menubar_selection_callback): Don't use menu_command_in_progress.
1880 (set_frame_menubar): First parse all submenus, then make
1881 widget_value trees from them. Don't allocate any widget_value
1882 objects until we are done with the parsing.
1883 (parse_single_submenu, digest_single_submenu): New functions.
1884 (single_submenu): Function deleted, replaced by those two.
1885 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
1886 create or dispose of EventHandlerUPP. Install hander to all submenus.
1887 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
1888 instead of ENCODE_SYSTEM.
1889 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
1890 integer values.
1891 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
1892 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
1893 format menu item string. Don't use NULL for integer value.
1894
1895 * macterm.h (struct mac_output): Remove unused member
1896 menu_command_in_progress.
1897
1898 2005-12-20 Juri Linkov <juri@jurta.org>
1899
1900 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
1901 position is non-nil, else set it to nil.
1902
1903 * macmenu.c (Fx_popup_menu): Add `else' to set
1904 Vmenu_updating_frame to nil only if position is nil.
1905
1906 * w32menu.c (Fx_popup_menu): Add `else' to set
1907 Vmenu_updating_frame to nil only if position is nil.
1908
1909 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1910
1911 * keyboard.c (make_lispy_event): Drag-and-drop items are now
1912 stored in member `args' of struct input_event.
1913
1914 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
1915
1916 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
1917 stored in member `args' of struct input_event.
1918
1919 * w32term.c (construct_drag_n_drop): Likewise.
1920
1921 * macterm.c (mac_do_receive_drag): Likewise.
1922 (x_use_underline_position_properties): Undo 2005-07-13 change.
1923 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
1924 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
1925 (mac_pass_command_to_system, mac_pass_control_to_system):
1926 New boolean variables renamed from Lisp_Object ones
1927 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
1928 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
1929 All uses changed.
1930 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
1931 Make them user options.
1932 (mac_handle_command_event, mac_store_services_event):
1933 Call create_apple_event_from_event_ref without 5th argument.
1934 (backtranslate_modified_keycode): Mask off modifier keys that are
1935 mapped to some Emacs modifiers before passing it to KeyTranslate.
1936 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
1937 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
1938 Fix docstrings of `mac-*-modifier'.
1939
1940 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
1941 (do_applescript): Change argument types to Lisp_Object.
1942 All uses changed.
1943
1944 * macterm.h (create_apple_event_from_event_ref): Remove 5th
1945 argument from extern.
1946
1947 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
1948
1949 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
1950 the answer, return `lambda', not nil.
1951
1952 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1953
1954 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
1955 enclosed in $(ARGQUOTE)s should not be split between two lines, as
1956 that will break with GNU Make >3.80, when sh.exe is used and
1957 arg quoting is with '..'.
1958
1959 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
1960
1961 * print.c (print_preprocess): Just signal an error if print_depth
1962 is exceeded.
1963
1964 2005-12-17 Eli Zaretskii <eliz@gnu.org>
1965
1966 * .gdbinit: Set a breakpoint on w32_abort.
1967
1968 2005-12-16 Juri Linkov <juri@jurta.org>
1969
1970 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
1971 created from minibuffer_completion_contents.
1972 (minibuffer_completion_contents): Remove.
1973 (do_completion, Fminibuffer_complete_word)
1974 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
1975 with Fminibuffer_completion_contents.
1976 (syms_of_minibuf): Add Sminibuffer_completion_contents.
1977 (Fdisplay_completion_list): Doc fix.
1978 (display_completion_list_1): Use `nil' for second arg of
1979 `Fdisplay_completion_list'.
1980
1981 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1982
1983 * xfns.c (compute_tip_xy): Handle negative dx and dy.
1984
1985 * w32fns.c (compute_tip_xy): Ditto.
1986
1987 * macfns.c (compute_tip_xy): Ditto.
1988
1989 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
1990
1991 * print.c (print_preprocess): Go to a deeper print_depth to avoid
1992 print_object loop.
1993
1994 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
1995
1996 * coding.c (code_convert_region_unwind): GCPRO arg.
1997
1998 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1999
2000 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
2001 i.e. dy is offset from top of frame instead of bottom.
2002
2003 * macfns.c (compute_tip_xy): Ditto.
2004
2005 * w32fns.c (compute_tip_xy): Ditto.
2006
2007 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
2008 (xg_get_image_for_pixmap, xg_create_frame_widgets)
2009 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
2010
2011 * xmenu.c (menubar_selection_callback): Do nothing if the callback
2012 is for an unselected radio menu item.
2013
2014 2005-12-11 Richard M. Stallman <rms@gnu.org>
2015
2016 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
2017
2018 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
2019
2020 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
2021 (Flookup_key): Doc fix.
2022 (syms_of_keymap) <function-key-map>: Doc fix.
2023
2024 * fns.c (Frequire): Treat evaluating from a source file
2025 like loading the file.
2026
2027 * floatfns.c (Flog): Doc fix.
2028
2029 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
2030 when we change the buffer.
2031
2032 2005-12-11 Juri Linkov <juri@jurta.org>
2033
2034 * minibuf.c (display_completion_list_1):
2035 Call `minibuffer_completion_contents' instead of using `nil' as
2036 second arg of `Fdisplay_completion_list'.
2037 (keys_of_minibuf): Unbind SPC in
2038 Vminibuffer_local_filename_completion_map (see also related
2039 change on 2005-12-06).
2040
2041 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2042
2043 * emacs.c (main) [MAC_OS8]: Undo previous change.
2044
2045 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
2046 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
2047
2048 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2049
2050 * Makefile.in (macselect.o): Depend on keymap.h.
2051
2052 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
2053 syms_of_macselect.
2054
2055 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
2056 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
2057
2058 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
2059 (syms_of_keyboard) [MAC_OS]: Initialize it.
2060 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
2061
2062 * mac.c (Qundecoded_file_name): New variable.
2063 (syms_of_mac): Initialize it.
2064 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
2065 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
2066 (Fmac_coerce_ae_data): New defun.
2067 (syms_of_mac): Defsubr it.
2068
2069 * macselect.c: Include keymap.h.
2070 (mac_ready_for_apple_events): New variable.
2071 (Vmac_apple_event_map, Qmac_apple_event_class)
2072 (Qmac_apple_event_id): New variables.
2073 (syms_of_macselect): Initialize them.
2074 (Qundefined, mac_store_apple_event): Add externs.
2075 (struct apple_event_binding): New struct.
2076 (find_event_binding_fun, find_event_binding)
2077 (mac_find_apple_event_spec, defer_apple_events)
2078 (mac_handle_apple_event, init_apple_event_handler)
2079 (copy_scrap_flavor_data): New functions.
2080 (Fmac_process_deferred_apple_events): New defun.
2081 (syms_of_macselect): Defsubr it.
2082 (mac_store_services_event): Fix extern.
2083 (mac_handle_service_event): Don't allocate Lisp objects during
2084 asynchronous input processing. Use mac_store_services_event
2085 instead of mac_store_application_menu_event.
2086
2087 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
2088 (Qpreferences): Remove variables.
2089 (syms_of_macterm) : Don't initialize them.
2090 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
2091 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
2092 (init_required_apple_events, do_ae_open_application)
2093 (do_ae_print_documents, do_ae_open_documents)
2094 (do_ae_quit_application): Remove functions and prototypes.
2095 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
2096 (mac_find_apple_event_spec): Add externs.
2097 (mac_store_application_menu_event): Remove function.
2098 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
2099 (mac_handle_command_event): Create Apple event from Carbon event.
2100 Use mac_store_apple_event instead of mac_store_application_menu_event.
2101 [MAC_OSX] (mac_store_services_event): Likewise.
2102 (struct SelectionRange, SelectionRange): Remove struct and typedef.
2103 [MAC_OS8] (main): Call init_apple_event_handler instead of
2104 init_required_apple_events.
2105 (mac_initialize) [MAC_OSX]: Likewise.
2106 [!USE_CARBON_EVENTS] (mac_wait_next_event):
2107 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
2108
2109 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
2110 Add externs.
2111 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
2112 (Fmac_get_preference): Add EXFUN.
2113
2114 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
2115 event.
2116
2117 2005-12-09 Richard M. Stallman <rms@gnu.org>
2118
2119 * xfns.c (Fx_create_frame): Reinstate previous change.
2120
2121 2005-12-09 Eli Zaretskii <eliz@gnu.org>
2122
2123 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
2124 GDB to the abort dialog.
2125
2126 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
2127
2128 * indent.c (Fvertical_motion): Force move if starting on
2129 stretch glyph.
2130
2131 2005-12-08 Richard M. Stallman <rms@gnu.org>
2132
2133 * lread.c (read_escape) <\s>: Don't treat strings specially.
2134
2135 * xfns.c (Fx_create_frame): Comment out previous change.
2136
2137 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2138
2139 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
2140 when needed.
2141
2142 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
2143
2144 * minibuf.c (keys_of_minibuf): Just unbind SPC in
2145 Vminibuffer_local_filename_completion_map rather than forcing it
2146 explicitly to the same binding as the global map.
2147
2148 2005-12-06 Ken Raeburn <raeburn@gnu.org>
2149
2150 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
2151 * bytecode.c (Fbyte_code): Likewise.
2152 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
2153 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
2154 * undo.c (truncate_undo_list): Likewise.
2155
2156 2005-12-05 Richard M. Stallman <rms@gnu.org>
2157
2158 * window.c (enlarge_window): Eliminate arg preserve_before.
2159 Assume it is 0. All callers changed.
2160 (Fenlarge_window, Fshrink_window): Likewise.
2161
2162 2005-12-02 Eli Zaretskii <eliz@gnu.org>
2163
2164 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
2165 fit below.
2166
2167 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2168
2169 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
2170
2171 * xfns.c (x_real_positions): int ign => unsigned int.
2172 (xg_set_icon_from_xpm_data): Remove unused variable err.
2173 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
2174 to remove compiler warning.
2175 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
2176
2177 2005-12-02 David Reitter <david.reitter@gmail.com>
2178
2179 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
2180 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
2181 and Vminibuffer_local_must_match_filename_map keymaps.
2182 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
2183
2184 * keymap.c (Vminibuffer_local_filename_completion_map)
2185 (Vminibuffer_local_must_match_filename_map): New variables.
2186 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
2187 parent to be Vminibuffer_local_completion_map and
2188 Vminibuffer_local_must_match_map, respectively.
2189
2190 * commands.h (Vminibuffer_local_filename_completion_map)
2191 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
2192
2193 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
2194
2195 * window.c (Fset_window_configuration): Don't accidentally copy the
2196 window-point of one window to another.
2197
2198 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2199
2200 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
2201
2202 2005-11-30 Kim F. Storm <storm@cua.dk>
2203
2204 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
2205 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
2206 passing it to `emacs_write'.
2207
2208 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
2209
2210 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
2211
2212 2005-11-27 Richard M. Stallman <rms@gnu.org>
2213
2214 * window.c (adjust_window_trailing_edge): New function.
2215 (Fadjust_window_trailing_edge): New function.
2216 (syms_of_window): Defsubr it.
2217 (window_deletion_count): New variable.
2218 (delete_window): Update window_deletion_count.
2219
2220 2005-11-26 Eli Zaretskii <eliz@gnu.org>
2221
2222 * minibuf.c (syms_of_minibuf): Mention the extension of
2223 `completion-auto-help's meaning by complete.el.
2224
2225 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
2226
2227 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
2228 Handle :inherit property as a lisp expression.
2229
2230 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2231
2232 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
2233 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
2234 Qsuper, and Qmodifier_value.
2235 (Vmac_control_modifier, Vmac_option_modifier)
2236 (Vmac_command_modifier, Vmac_function_modifier)
2237 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
2238 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
2239 (Vmac_charset_info_alist): Doc fixes.
2240
2241 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2242
2243 * emacs.c (main) [MAC_OSX]: Change working directory to home
2244 directory if `-psn_*' option is specified.
2245
2246 * mac.c (DECODE_UTF_8): Remove macro.
2247 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
2248 created from cfstring_to_lisp.
2249 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
2250 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
2251
2252 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
2253 Add prototype.
2254
2255 2005-11-21 Ken Raeburn <raeburn@gnu.org>
2256
2257 * keymap.c (shadow_lookup): Use make_number to pass a number to
2258 Fsubstring.
2259
2260 2005-11-21 Juri Linkov <juri@jurta.org>
2261
2262 * puresize.h (BASE_PURESIZE): Increment to 1180000.
2263
2264 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
2265
2266 * xfaces.c (Finternal_set_lisp_face_attribute):
2267 Use :ignore-defface for new frame defaults when `unspecified' is
2268 supplied.
2269 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
2270 (merge_face_vectors): Don't do :ignore-defface overwriting here.
2271 (Finternal_merge_in_global_face): Do it here.
2272
2273 2005-11-20 Juri Linkov <juri@jurta.org>
2274
2275 * charset.c (invalid_character): Use Lisp-readable syntax
2276 for octal and hex. Reorder decimal, octal and hex values.
2277
2278 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
2279
2280 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
2281 this type is recognised when debugging.
2282
2283 2005-11-19 Andreas Schwab <schwab@suse.de>
2284
2285 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
2286 Lisp_Cons and Lisp_Float.
2287
2288 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2289
2290 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
2291 New variable.
2292 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
2293 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
2294 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
2295 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
2296
2297 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
2298
2299 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
2300
2301 * xfaces.c (Qignore_defface): New variable.
2302 (syms_of_xfaces): Provide `:ignore-defface'.
2303 (IGNORE_DEFFACE_P): New macro.
2304 (check_lface_attrs, lface_fully_specified_p)
2305 (Finternal_set_lisp_face_attribute)
2306 (Fface_attribute_relative_p, Fmerge_face_attribute):
2307 Handle Qignore_defface as a possible value.
2308 (merge_face_vectors): The merged face is `unspecified' if the
2309 mergee specifies `:ignore-defface'.
2310
2311 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2312
2313 * lread.c (readevalloop): Add missing GCPROs.
2314
2315 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
2316
2317 * xfns.c (xg_set_icon_from_xpm_data): New function.
2318
2319 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
2320 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
2321
2322 * xterm.c (x_bitmap_icon): Use the xpm if available.
2323
2324 * image.c (x_create_bitmap_from_xpm_data): New function.
2325 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
2326
2327 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
2328
2329 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
2330
2331 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
2332
2333 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
2334
2335 2005-11-15 Andreas Schwab <schwab@suse.de>
2336
2337 * lisp.h (struct Lisp_Cons): Make cdr a union.
2338 (XCDR_AS_LVALUE): Adjust.
2339 (struct Lisp_Float): Make data a union.
2340 (XFLOAT_DATA): Adjust.
2341
2342 * alloc.c (free_float): Make free list chaining aliasing-safe.
2343 (make_float): Likewise.
2344 (free_cons): Likewise.
2345 (Fcons): Likewise.
2346 (check_cons_list): Likewise.
2347 (Fmake_symbol): Likewise.
2348 (allocate_misc): Likewise.
2349 (free_misc): Likewise.
2350 (gc_sweep): Likewise.
2351
2352 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2353
2354 * mac.c (HASHKEY_QUERY_CACHE): New define.
2355 (xrm_create_database, xrm_q_put_resource): Empty query cache.
2356 (xrm_get_resource): Use query cache.
2357
2358 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
2359 inhibit_window_system is set.
2360
2361 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2362
2363 * macgui.h (USE_CG_TEXT_DRAWING): New define.
2364 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
2365 and cg_glyphs.
2366
2367 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
2368 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
2369 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
2370 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
2371 not used and font substitution never occurs for ASCII and Latin-1
2372 characters.
2373 (XLoadQueryFont): Maximum and minimum metrics are now those among
2374 ASCII characters.
2375 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
2376 height adjustments for Courier, Helvetica, and Times.
2377
2378 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
2379
2380 2005-11-11 David Reitter <david.reitter@gmail.com>
2381
2382 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
2383 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
2384 Vmac_control_modifier / mac-control-modifier,
2385 Vmac_option_modifier / mac-option-modifier,
2386 Vmac_command_modifier / mac-command-modifier.
2387 (mac_to_emacs_modifiers): Use the new style modifier
2388 variables. Return UInt32 (modifiers are longs now.)
2389 (backtranslate_modified_keycode): New function (refactoring).
2390 (XTread_socket): Use new modifier variables and refactored function.
2391 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
2392 no dedicated meta key. Not in use anyway.)
2393 (convert_fn_keycode): Map Fn-keys to their original keycode
2394 using a table (english keyboard only).
2395
2396 2005-11-11 Kim F. Storm <storm@cua.dk>
2397
2398 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
2399 Add post hook to "backtrace" to always dump lisp call stack to
2400 increase chance of people sending it to us when reporting bugs.
2401
2402 * doc.c (Fsubstitute_command_keys): Doc fix.
2403
2404 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
2405
2406 * xdisp.c (handle_stop): Skip overlay string handling if
2407 ignore_overlay_strings_at_pos_p is set.
2408 (set_iterator_to_next): At end of display vector, set
2409 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
2410 string, so we skip those overlay strings at current pos.
2411
2412 2005-11-10 Lars Hansen <larsh@soem.dk>
2413
2414 * fileio.c (file-regular-p): Doc fix.
2415
2416 2005-11-10 Kim F. Storm <storm@cua.dk>
2417
2418 * alloc.c (valid_lisp_object_p): New function to validate that
2419 an object is really a valid Lisp_Object.
2420
2421 * lisp.h (valid_lisp_object_p): Add prototype.
2422
2423 * print.c (safe_debug_print): New function to be called from gdb
2424 to print Lisp objects; use valid_lisp_object_p to avoid crashing
2425 if user tries to print something which is not a Lisp object.
2426
2427 * .gdbinit (pp, pp1): Use safe_debug_print.
2428 (pv, pv1): New commands to print value of a lisp variable.
2429
2430 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
2431
2432 * .gdbinit (pp1): New user-defined function.
2433
2434 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2435
2436 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
2437
2438 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
2439 related variables for dumped executable.
2440
2441 * unexmacosx.c (unexec_write_zero): New function.
2442 (copy_data_segment): Clear uninitialized local variables in
2443 statically linked libraries.
2444
2445 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
2446
2447 2005-11-09 Juri Linkov <juri@jurta.org>
2448
2449 * keymap.c (shadow_lookup): If Flookup_key returns a number,
2450 call it again with a sub-key-sequence, and if its return value
2451 is non-nil (sub-key is bound), return nil.
2452
2453 2005-11-08 Kim F. Storm <storm@cua.dk>
2454
2455 * process.c (Fsignal_process): Recognize signal names with and
2456 without SIG prefix, e.g. SIGHUP and HUP.
2457
2458 * search.c (search_buffer): No need to initialize base_pat.
2459
2460 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
2461
2462 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
2463 Don't abuse the `mini' arg. Use the `obj' arg instead.
2464
2465 2005-11-04 Kim F. Storm <storm@cua.dk>
2466
2467 * xdisp.c (show_mouse_face): Clear mouse face to eol.
2468
2469 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
2470
2471 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
2472 font-lock.elc and jit-lock.elc.
2473
2474 2005-11-03 Richard M. Stallman <rms@gnu.org>
2475
2476 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
2477 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
2478 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
2479
2480 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
2481
2482 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
2483
2484 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2485
2486 * window.c (Fdisplay_buffer): Fix last change to not use
2487 a dedicated window.
2488
2489 2005-11-01 Kim F. Storm <storm@cua.dk>
2490
2491 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
2492 Instead, rotate the bottom angle bitmap 180 degrees to indicate
2493 that the bottom row does not end in a newline.
2494
2495 2005-11-01 Andreas Schwab <schwab@suse.de>
2496
2497 * unexelf.c (unexec): Handle .plt section in BSS segment.
2498
2499 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2500
2501 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
2502
2503 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
2504 determine whether to consider dedicated windows as well.
2505 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
2506 (Fdisplay_buffer): Do consider dedicated windows in those cases where
2507 we will split the window rather than reuse it.
2508 Don't try to use windows on other displays.
2509
2510 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
2511
2512 * puresize.h (BASE_PURESIZE): Increment to 1170000.
2513
2514 2005-10-31 Romain Francoise <romain@orebokech.com>
2515
2516 * macfns.c: Update copyright year.
2517 * m/gould.h: Likewise.
2518
2519 2005-10-30 Kim F. Storm <storm@cua.dk>
2520
2521 * xdisp.c (display_line): Restore it->current_x and call
2522 extend_face_to_end_of_line when last glyph doesn't fit on line.
2523 (set_glyph_string_background_width): Remove specific tests here
2524 to see if face background should extend to end of line. Simplify.
2525
2526 2005-10-30 Richard M. Stallman <rms@gnu.org>
2527
2528 * alloc.c (BYTES_USED): Use uordblks, not arena.
2529 (bytes_used_when_reconsidered): New variable.
2530 (emacs_blocked_free): Set that.
2531
2532 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
2533
2534 * alloc.c (emacs_blocked_free): Fix typo.
2535
2536 2005-10-29 Richard M. Stallman <rms@gnu.org>
2537
2538 * data.c (Fmake_variable_frame_local): Doc fix.
2539
2540 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
2541 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
2542 controls whether to save and restore mode_line_proptrans_alist.
2543 Callers changed.
2544 (unwind_format_mode_line): Work with that feature.
2545 (redisplay_internal): Don't call prepare_menu_bars if memory full.
2546 (move_elt_to_front): New function.
2547 (display_mode_element): Use move_elt_to_front.
2548 Don't bother munging text props on a null string.
2549 Delete obsolete elts from mode_line_proptrans_alist.
2550 (decode_mode_spec): Test Vmemory_full, not spare_memory.
2551 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
2552
2553 * lisp.h (memory_full_cons_threshold): Declare.
2554 (internal_lisp_condition_case): Declare.
2555
2556 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
2557 (Fmemory_full_p): Function deleted.
2558 (syms_of_alloc): Don't defsubr it.
2559 (memory_full_cons_threshold): New variable.
2560 (spare_memory): Now a vector of 7 elts.
2561 (buffer_memory_full): Don't set Vmemory_full here.
2562 (xfree): Don't try to refill here.
2563 (emacs_blocked_free): Record BYTES_USED in local var.
2564 (memory_full): Now free all the slots in spare_memory.
2565 (refill_memory_reserve): Allocate each slot in spare_memory.
2566 (init_alloc_once): Call refill_memory_reserve.
2567
2568 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
2569
2570 * eval.c (internal_lisp_condition_case): New function.
2571 (Fcondition_case): Use internal_lisp_condition_case.
2572 (Feval): Test Vmemory_full and memory_full_cons_threshold.
2573 (Ffuncall): Likewise.
2574
2575 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
2576
2577 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
2578
2579 * syntax.c (Fparse_partial_sexp): Fix docstring.
2580
2581 2005-10-28 Romain Francoise <romain@orebokech.com>
2582
2583 * puresize.h (BASE_PURESIZE): Increment to 1130000.
2584
2585 2005-10-28 Richard M. Stallman <rms@gnu.org>
2586
2587 * xfns.c (syms_of_xfns): Provide `x' as feature.
2588
2589 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
2590
2591 * editfns.c (Fformat): Don't include string padding
2592 between info[n].start and info[n].end.
2593
2594 * alloc.c (spare_memory): No longer static.
2595 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
2596
2597 * puresize.h (BASE_PURESIZE): Increment to 1120000.
2598
2599 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
2600
2601 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
2602
2603 * fringe.c (update_window_fringes): Handle case where buffer ends
2604 with a newline.
2605
2606 2005-10-27 Kenichi Handa <handa@m17n.org>
2607
2608 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
2609
2610 2005-10-24 Kenichi Handa <handa@m17n.org>
2611
2612 * charset.h (charset_mule_unicode_0100_24ff)
2613 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2614 Extern them.
2615
2616 * charset.c (charset_mule_unicode_0100_24ff)
2617 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2618 New variables.
2619 (Fsetup_special_charsets): Initialize them.
2620
2621 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
2622 supported Unicode characters.
2623
2624 2005-10-25 Jason Rumney <jasonr@gnu.org>
2625
2626 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
2627
2628 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2629
2630 * image.c [MAC_OS] (image_load_qt_1): Check image size.
2631 Use GraphicsImportGetImageDescription instead of
2632 GraphicsImportGetNaturalBounds.
2633 [MAC_OSX] (image_load_quartz2d): Check image size.
2634 [MAC_OS] (xpm_load_image): Likewise.
2635
2636 * macterm.c (last_mouse_glyph_frame): New var.
2637 (note_mouse_movement): Say mouse moved if current frame differs
2638 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2639 (XTmouse_position): Set last_mouse_glyph_frame.
2640 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
2641 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
2642 Use EndianU16_BtoN.
2643 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
2644 (x_per_char_metric, XLoadQueryFont)
2645 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
2646 glyph bounds.
2647 (mac_to_x_fontname, mac_do_list_fonts)
2648 (mac_initialize_display_info): Change screen resolutions to 72dpi.
2649
2650 2005-10-25 Masatake YAMATO <jet@gyve.org>
2651
2652 * minibuf.c (Fdisplay_completion_list): Small doc fix.
2653
2654 2005-10-24 Kim F. Storm <storm@cua.dk>
2655
2656 * xterm.c: Undo 2005-10-23 change.
2657 (last_mouse_glyph_frame): New var.
2658 (note_mouse_movement): Say mouse moved if current frame differs
2659 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2660 (XTmouse_position): Set last_mouse_glyph_frame.
2661 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
2662 last_mouse_glyph] on mouse up/down event.
2663
2664 * editfns.c (Fcompare_buffer_substrings): Fix last change.
2665
2666 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2667
2668 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
2669
2670 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2671
2672 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
2673 so tool tips don't interfere with press on tool bar button.
2674
2675 2005-10-23 Richard M. Stallman <rms@gnu.org>
2676
2677 * casetab.c (Fset_case_table): Doc fix.
2678
2679 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
2680 (readevalloop): Compute ENTIRE properly.
2681 (syms_of_lread) <load-history>: Doc fix.
2682
2683 2005-10-21 Richard M. Stallman <rms@gnu.org>
2684
2685 * lread.c (Fload): Simplify gcpro structure.
2686 Gcpro FOUND as well as FILE, but not EFOUND.
2687 Unless preloading, record FOUND instead of FILE in Vload_history.
2688 Rename repeat local FILE to MSG_FILE.
2689 (syms_of_lread) <load-history>: Doc fix.
2690
2691 2005-10-21 Kenichi Handa <handa@m17n.org>
2692
2693 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
2694
2695 2005-10-20 Kim F. Storm <storm@cua.dk>
2696
2697 * buffer.c (clone_per_buffer_values): Remove unused var tem.
2698 (init_buffer): Remove unused vars dotstat, pwdstat.
2699
2700 * ccl.c (check_ccl_update): Remove unused var vp.
2701
2702 * fileio.c (auto_save_error): Call SAFE_FREE.
2703
2704 * fns.c (Fchar_table_range): Remove unused var i.
2705
2706 * minibuf.c (display_completion_list_1): New wrapper function
2707 for Fdisplay_completion_list.
2708 (Fminibuffer_completion_help): Use it.
2709
2710 * term.c (encode_terminal_code): Remove unused var src_start.
2711
2712 * window.c (Fwindow_tree): Remove unused var alist.
2713
2714 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
2715
2716 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
2717
2718 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
2719
2720 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
2721
2722 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
2723
2724 2005-10-20 Andreas Schwab <schwab@suse.de>
2725
2726 * minibuf.c (Fdisplay_completion_list): Doc fix.
2727
2728 2005-10-19 Kim F. Storm <storm@cua.dk>
2729
2730 * image.c (check_image_size): Handle integer Vmax_image_size value
2731 directly as max pixel value. Use default frame size for null frame.
2732 (syms_of_image) <max-image-size>: Describe integer value.
2733
2734 2005-10-19 Romain Francoise <romain@orebokech.com>
2735
2736 * emacs.c (main): Update copyright year.
2737
2738 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
2739
2740 * image.c (Vmax_image_size): New variable.
2741 (check_image_size): New function.
2742 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
2743 (gif_load, gs_load): Use it.
2744 (lookup_image): Try loading again if previous load failed.
2745 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
2746 to display in, NULL if none.
2747 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
2748 argument.
2749
2750 2005-10-18 Richard M. Stallman <rms@gnu.org>
2751
2752 * search.c (Fstring_match): Doc fix.
2753
2754 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2755
2756 * macterm.c (note_mouse_movement): Use PtInRect.
2757 (XTread_socket): Also ignore mouse motion just before a button
2758 release event. Don't process button release event when mouse is
2759 not grabbed.
2760
2761 2005-10-16 Masatake YAMATO <jet@gyve.org>
2762
2763 * minibuf.c (Fdisplay_completion_list): Add new optional
2764 argument COMMON_SUBSTRING. Bind `completion-common-substring'
2765 to the optional argument during running `completion-setup-hook'.
2766
2767 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2768
2769 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
2770 Allow nil as argument.
2771 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
2772 for encoding arguments as UTF-16 in native byte order, no BOM.
2773
2774 * macfns.c (Fx_create_frame): Add debugging code.
2775 (Fx_show_tip): Set frame pixel width and height.
2776
2777 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
2778 (FRAME_NORMAL_GC): New macro.
2779 (mac_draw_line, mac_clear_area, mac_clear_window)
2780 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
2781 (mac_draw_image_string, mac_draw_image_string_16): Rename from
2782 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
2783 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
2784 All uses changed.
2785 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
2786 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
2787 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
2788 (mac_draw_string_16, mac_draw_image_string)
2789 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
2790 (mac_scroll_area): Drawing functions now take frame as destination.
2791 All uses changed.
2792 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
2793 (x_draw_fringe_bitmap): Set clipping area in face->gc.
2794
2795 * macterm.h (mac_clear_area): Add extern.
2796
2797 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2798
2799 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
2800 changes for xterm.c.
2801
2802 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
2803
2804 2005-10-14 Kenichi Handa <handa@m17n.org>
2805
2806 * search.c (search_buffer): Give up BM search on case-fold-search
2807 if one of a target character has a case-equivalence of different
2808 charset even if that target charcter is an ASCII.
2809
2810 * casefiddle.c (casify_object): Fix for the case that case
2811 conversion change the byte length.
2812
2813 2005-10-14 Kim F. Storm <storm@cua.dk>
2814
2815 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
2816 (handle_one_xevent): Only clear help_echo_string; restore it if
2817 note_mouse_movement didn't record any mouse movement.
2818
2819 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
2820 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
2821
2822 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
2823 (Fposn_at_x_y): Fix calculation of x coordinate.
2824 (Fposn_at_point): Return nil if point is hscrolled out of view.
2825
2826 2005-10-13 Andreas Schwab <schwab@suse.de>
2827
2828 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
2829 non-interactive mode.
2830
2831 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2832
2833 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
2834
2835 2005-10-12 Kim F. Storm <storm@cua.dk>
2836
2837 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
2838
2839 2005-10-12 Romain Francoise <romain@orebokech.com>
2840
2841 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
2842
2843 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2844
2845 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
2846 get end of text rows. Obtain header-line/mode-line rows directly.
2847
2848 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
2849 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
2850
2851 2005-10-12 Kim F. Storm <storm@cua.dk>
2852
2853 * xdisp.c (remember_mouse_glyph): New generic version based on
2854 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
2855 properly handle all different window areas.
2856
2857 * dispextern.h (remember_mouse_glyph): Add prototype.
2858
2859 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
2860 (note_mouse_movement, XTmouse_position): Use generic
2861 remember_mouse_glyph, add last_mouse_glyph arg.
2862
2863 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
2864 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
2865 (note_mouse_movement, w32_mouse_position): Use generic
2866 remember_mouse_glyph, add last_mouse_glyph arg.
2867
2868 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
2869 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
2870 (XTmouse_position): Adapt to use generic remember_mouse_glyph
2871 instead of pixel_to_glyph_coords.
2872
2873 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
2874 Fix x position for ON_TEXT when left margin width > 0.
2875
2876 2005-10-11 Kim F. Storm <storm@cua.dk>
2877
2878 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
2879
2880 * keyboard.c (make_lispy_position): Fix buffer calculations for
2881 mouse click or movement in right fringe and the margins.
2882
2883 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
2884
2885 * image.c (fn_jpeg_stdio_src): Don't define it.
2886 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
2887 (our_common_init_source): Rename from `our_init_source'.
2888 (our_common_term_source): Rename from `our_term_source'.
2889 (our_memory_fill_input_buffer): Rename from
2890 `our_fill_input_buffer'.
2891 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
2892 (jpeg_memory_src): Use the new names.
2893 (struct jpeg_stdio_mgr): New struct.
2894 (JPEG_STDIO_BUFFER_SIZE): New constant.
2895 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
2896 (jpeg_file_src): New functions.
2897 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
2898
2899 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2900
2901 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
2902 (fm_font_family_alist): New variable.
2903 (syms_of_macterm): Initialize and staticpro it.
2904 (decode_mac_font_name): Replace '-' in family name with '_' if it
2905 occurs just once. Lower family name.
2906 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
2907 All uses changed. Remove argument MF and code conversion for it.
2908 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
2909 to CHARSET. Parse font size. Lower family name. Return integer
2910 value for status of parsing.
2911 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
2912 Don't use Fdowncase because family name is already lowered by
2913 decode_mac_font_name.
2914 (init_font_name_table): Always call decode_mac_font_name.
2915 Add pair of family name and its reference to fm_font_family_alist.
2916 (mac_clear_font_name_table): Clear fm_font_family_alist.
2917 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
2918 Lookup fm_font_family_alist to get font family reference.
2919 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
2920 name is already lowered by parse_x_font_name.
2921
2922 2005-10-11 Kim F. Storm <storm@cua.dk>
2923
2924 * xterm.c (glyph_rect): Return 0 if position is outside text area.
2925
2926 * keyboard.c (make_lispy_position): Fix buffer position calculation for
2927 mouse click or movement in fringe.
2928
2929 2005-10-10 Jason Rumney <jasonr@gnu.org>
2930
2931 * xterm.c (remember_mouse_glyph): New function.
2932 (note_mouse_movement): Use it to remember the current glyph if changed.
2933 (XTmouse_position): Fix calculation of fake glyph under mouse.
2934 Move code to calculate glyph under mouse into remember_mouse_glyph.
2935
2936 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2937
2938 * emacs.c (USAGE3, standard_args): -nb => -nbi.
2939
2940 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
2941
2942 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
2943 (next_frame, prev_frame, set_term_frame_name): Make static.
2944
2945 * window.c (Fwindow_tree): Fix spelling.
2946
2947 2005-10-09 Romain Francoise <romain@orebokech.com>
2948
2949 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
2950
2951 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2952
2953 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
2954 Add options -nb, --no-bitmap-icon.
2955
2956 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
2957
2958 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2959
2960 * macgui.h (MAX_CLIP_RECTS): New define.
2961 (struct _XGC): New member clip_region.
2962 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
2963 clip_rects.
2964
2965 * macterm.c (GC_CLIP_REGION): New macro.
2966 (saved_port_clip_region): New variable.
2967 (mac_begin_clip, mac_end_clip): New functions.
2968 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
2969 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
2970 (mac_copy_area_with_mask, mac_scroll_area): Use them.
2971 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
2972 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
2973 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
2974 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
2975 rectangles stored in gc.
2976 (XFreeGC): Dispose of clipping region.
2977 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
2978 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
2979 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
2980 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
2981 (x_draw_bar_cursor): Use them.
2982 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
2983 get multiple clipping rectangles.
2984
2985 * macterm.h (mac_term_init): Add types to extern.
2986 (struct mac_output): Remove members mWP and pending_menu_activation.
2987 Put members scroll_bar_foreground_pixel and
2988 scroll_bar_background_pixel in #if 0.
2989 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
2990
2991 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
2992 Add debugging code.
2993
2994 2005-10-08 Kim F. Storm <storm@cua.dk>
2995
2996 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
2997
2998 2005-10-07 Kim F. Storm <storm@cua.dk>
2999
3000 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
3001 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
3002 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
3003
3004 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3005
3006 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
3007 to for_overlaps. Now occupy 3 bits.
3008 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
3009 (OVERLAPS_ERASED_CURSOR): New defines.
3010 (struct redisplay_interface): Add new OVERLAPS arg to member
3011 fix_overlapping_area.
3012 (x_fix_overlapping_area): Add new OVERLAPS arg.
3013 (get_glyph_string_clip_rects): Add extern.
3014
3015 * dispnew.c (redraw_overlapping_rows):
3016 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
3017
3018 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
3019 for_overlaps.
3020 (get_glyph_string_clip_rects): New function created from
3021 get_glyph_string_clip_rect. Set clipping rectangles according to the
3022 value of for_overlaps. Enable to store multiple clipping rectangles.
3023 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
3024 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
3025 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
3026 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
3027 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
3028 calculating clipping rectangles later. Call x_fix_overlapping_area
3029 with new OVERLAPS arg to draw only erased cursor area.
3030 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
3031 to draw overlaps in both preceding and succeeding rows.
3032
3033 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
3034 struct glyph_string to for_overlaps.
3035
3036 2005-10-04 Richard M. Stallman <rms@gnu.org>
3037
3038 * alloc.c (refill_memory_reserve): Conditionalize the body,
3039 not the function's existence.
3040
3041 2005-10-04 Kim F. Storm <storm@cua.dk>
3042
3043 * window.c (window_split_tree): New function.
3044 (Fwindow_split_tree): New defun.
3045 (syms_of_window): Defsubr it.
3046
3047 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3048
3049 * macterm.c (mac_invert_rectangle): New function.
3050 (XTflash): Use it.
3051
3052 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
3053
3054 * regex.h (re_char): Don't expose it in the interface.
3055 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
3056
3057 * regex.c (re_char): Move it back here.
3058 (re_set_whitespace_regexp): Change the arg's type to not use it.
3059
3060 * keyboard.c (make_lispy_event): If point has moved between down and up
3061 event, make it a drag, not a click, to mirror what
3062 mouse-drag-region expects.
3063
3064 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3065
3066 * lisp.h (fatal): Undo previous change.
3067 * term.c (fatal): Undo previous change.
3068
3069 2005-10-01 Richard M. Stallman <rms@gnu.org>
3070
3071 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
3072
3073 2005-10-01 Kim F. Storm <storm@cua.dk>
3074
3075 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
3076
3077 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3078
3079 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
3080
3081 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
3082 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
3083 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
3084 Try ATSUI-compatible 12pt Monaco font first.
3085
3086 * macgui.h (struct _XCharStruct): New member valid_p.
3087 (STORE_XCHARSTRUCT): Set valid_p.
3088 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
3089
3090 * macterm.c (mac_draw_string_common, x_per_char_metric)
3091 (mac_compute_glyph_string_overhangs, init_font_name_table)
3092 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
3093 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
3094 (x_draw_glyph_string_background)
3095 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
3096 XDrawImageString. Always draw background and foreground separately.
3097 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
3098 functions for one-byte chars when using ATSUI-compatible fonts.
3099 (atsu_font_id_hash) [USE_ATSUI]: New variable.
3100 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
3101 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
3102 max_char_or_byte2 more in detail.
3103 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
3104
3105 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
3106
3107 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
3108 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
3109
3110 * unexelf.c (fatal): Fix prototype.
3111
3112 * term.c (fatal): Implement using varargs.
3113
3114 * regex.c (re_char): Move typedef ...
3115 * regex.h (re_char): ... here.
3116 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
3117
3118 * emacs.c (malloc_set_state): Fix return type.
3119 (endif): Fix type.
3120
3121 * lisp.h (fatal): Add argument types.
3122
3123 * dispextern.h (fatal): Delete prototype.
3124
3125 * systime.h (make_time): Prototype moved from ...
3126 * editfns.c (make_time): ... here.
3127
3128 * editfns.c: Move systime.h include after lisp.h.
3129 * dired.c:
3130 * xsmfns.c:
3131 * process.c: Likewise.
3132
3133 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
3134 Add parameter types.
3135 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
3136 (emacs_blocked_free): Change definition to match __free_hook.
3137 (emacs_blocked_malloc): Change definition to match __malloc_hook.
3138 (emacs_blocked_realloc): Change definition to match __realloc_hook.
3139
3140 2005-09-30 Romain Francoise <romain@orebokech.com>
3141
3142 * minibuf.c (Fread_buffer): Follow convention for reading from the
3143 minibuffer with a default value. Doc fix.
3144
3145 2005-09-29 Juri Linkov <juri@jurta.org>
3146
3147 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
3148 Rename argument name `string' to `format-string'.
3149 (Fformat): Doc fix.
3150
3151 2005-09-28 Kim F. Storm <storm@cua.dk>
3152
3153 * image.c (gif_load): Fix size of allocated image buffer
3154 for images where a sub-image may be larger than the image's
3155 total height/width specifications.
3156
3157 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3158
3159 * macgui.h (struct _XCharStruct): Each member now takes short value.
3160
3161 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
3162
3163 * xfaces.c (lookup_derived_face): Add parameter type.
3164
3165 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
3166
3167 * marker.c (verify_bytepos): Add parameter type.
3168
3169 * process.c (get_operating_system_release): Move prototype ...
3170
3171 * systime.h (get_operating_system_release): ... here.
3172
3173 * xterm.c (handle_one_xevent): Refer to union field to match the
3174 type required by the function definition.
3175 (set_vertical_scroll_bar): Move prototype ...
3176
3177 * xterm.h: ... here.
3178
3179 * fns.c (internal_equal, seed_random): Fix prototypes.
3180 (internal_equal): Add missing parameter.
3181
3182 2005-09-25 Richard M. Stallman <rms@gnu.org>
3183
3184 * keyboard.c (update_menu_bindings): Variable deleted.
3185 (syms_of_keyboard): Don't defvar it.
3186 (parse_menu_item): Don't test it.
3187
3188 2005-09-23 Richard M. Stallman <rms@gnu.org>
3189
3190 * editfns.c (Fformat): Explicitly test for end of format string
3191 and don't use `index'.
3192
3193 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
3194
3195 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
3196 Define BROKEN_GET_CURRENT_DIR_NAME.
3197
3198 * sysdep.c (get_current_dir_name): Also define if
3199 BROKEN_GET_CURRENT_DIR_NAME.
3200
3201 * m/ibmrs6000.h: Test for USG5, not USG5_4.
3202
3203 2005-09-22 Kim F. Storm <storm@cua.dk>
3204
3205 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
3206 (message2): Fix commentary. Ok to use alloca'ed memory.
3207 Still not ok to use Lisp string data (because of GC).
3208 (set_message): Add comment why GC cannot happen.
3209
3210 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3211
3212 * macterm.c (xlfdpat_block_match_1): Fix assertion.
3213 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
3214 variants for a scalable font multiple times.
3215
3216 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3217
3218 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
3219 Setup slave tty options before forking.
3220
3221 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3222
3223 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
3224 positions have been set for the frame (as is done for frames in
3225 special-display-buffer-names).
3226
3227 2005-09-19 Kim F. Storm <storm@cua.dk>
3228
3229 * editfns.c (Fformat): Don't scan past end of format string that
3230 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
3231
3232 2005-09-18 Andreas Schwab <schwab@suse.de>
3233
3234 * window.h (struct window): Remove height_fixed_p, no longer set.
3235
3236 * window.c (make_window): Don't initialize height_fixed_p.
3237 (window_fixed_size_p): Don't use it.
3238
3239 2005-09-18 John Paul Wallington <jpw@pobox.com>
3240
3241 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
3242
3243 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3244
3245 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
3246
3247 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
3248 New variables.
3249 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
3250 file selection.
3251
3252 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
3253
3254 2005-09-17 Eli Zaretskii <eliz@gnu.org>
3255
3256 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
3257 (obj): Use XMENU_OBJ, not a literal xmenu.o.
3258
3259 2005-09-16 Romain Francoise <romain@orebokech.com>
3260
3261 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
3262
3263 2005-09-15 Richard M. Stallman <rms@gnu.org>
3264
3265 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
3266 (display_mode_element): Instead of `lisp_string' and `this',
3267 record `offset' and increment that.
3268 `last_offset' replaces `last'.
3269
3270 * Makefile.in (XMENU_OBJ): Variable deleted.
3271 (obj): Use xmenu.o unconditionally.
3272 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
3273
3274 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
3275
3276 2005-09-15 Kim F. Storm <storm@cua.dk>
3277
3278 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
3279 (reseat_at_next_visible_line_start): Likewise (in xassert).
3280
3281 2005-09-14 Romain Francoise <romain@orebokech.com>
3282
3283 * fileio.c (write_region_inhibit_fsync): New variable.
3284 (Fwrite_region): Use it to skip call to fsync.
3285 (syms_of_fileio): Initialize it.
3286
3287 2005-09-14 Kenichi Handa <handa@m17n.org>
3288
3289 * coding.c (code_convert_region_unwind): Argument format changed.
3290 (run_pre_post_conversion_on_str): If pre-write-conversion function
3291 changed the current buffer, delete the new buffer.
3292 (run_pre_write_conversin_on_c_str): Likewise.
3293
3294 * fileio.c (Fexpand_file_name): Check multibyteness of
3295 default_directory.
3296
3297 2005-09-13 Kenichi Handa <handa@m17n.org>
3298
3299 * composite.c (compose_chars_in_text): Delete it.
3300
3301 * composite.h (compose_chars_in_text): Delete extern.
3302
3303 2005-09-13 Kim F. Storm <storm@cua.dk>
3304
3305 * print.c (print_error_message): Fix last change.
3306
3307 2005-09-12 Kim F. Storm <storm@cua.dk>
3308
3309 * composite.c (compose_chars_in_text): Fix setup of `pend'.
3310 Unconditionally reload `ptr' and `pend' after eval.
3311
3312 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
3313
3314 * print.c (print_error_message): Pass copy of caller name to
3315 message_dolog.
3316
3317 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
3318
3319 2005-09-12 Kenichi Handa <handa@m17n.org>
3320
3321 * xdisp.c (display_mode_element): Be sure to make variables THIS
3322 and LISP_STRING point into a string data of ELT.
3323
3324 2005-09-12 Kim F. Storm <storm@cua.dk>
3325
3326 * editfns.c (Ftranslate_region_internal): Reload `tt' after
3327 signal_after_change that may have GC'ed.
3328 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
3329
3330 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
3331 after insert while runs signal_after_change.
3332
3333 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
3334 declaration to where it is used.
3335
3336 * w32.c (check_windows_init_file): Fix allocation of error buffer.
3337
3338 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
3339 (x_set_name_internal): Call x_encode_text with new FREEP arg to
3340 know if xfree is needed instead of guessing.
3341
3342 * xterm.h (x_encode_text): Remove prototype.
3343
3344 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
3345
3346 * w32term.c (x_bitmap_icon): Load small icons too.
3347
3348 2005-09-10 Romain Francoise <romain@orebokech.com>
3349
3350 * buffer.c (init_buffer): Grow buffer to add directory separator
3351 and terminal zero. Fix typos.
3352
3353 2005-09-10 Eli Zaretskii <eliz@gnu.org>
3354
3355 * buffer.c (init_buffer): Fix error message for failed call to
3356 get_current_dir_name.
3357 (get_current_dir_name): Remove prototype.
3358
3359 * xsmfns.c (get_current_dir_name): Remove prototype.
3360
3361 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3362 Add prototype.
3363
3364 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
3365 Don't #undef NULL after including blockinput.h.
3366
3367 * config.in: Regenerated.
3368
3369 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
3370
3371 Remove the MAXPATHLEN limitations:
3372
3373 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3374 New function.
3375
3376 * buffer.c (init_buffer): Use it.
3377
3378 * xsmfns.c (smc_save_yourself_CB): Ditto.
3379
3380 2005-09-09 Kim F. Storm <storm@cua.dk>
3381
3382 * doc.c (Fsubstitute_command_keys): Lookup key binding for
3383 commands that are remapped from some other command.
3384
3385 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
3386 flag in disabled rows below the window.
3387
3388 * frame.h (struct frame): New member updated_p.
3389
3390 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
3391 member. Remove local `updated' array and associated variables.
3392
3393 2005-09-07 Kim F. Storm <storm@cua.dk>
3394
3395 * xdisp.c (handle_display_prop): Respect overlay window property.
3396
3397 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
3398 Fixes crash reported by YAMAMOTO Mitsuharu.
3399
3400 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3401
3402 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
3403 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
3404 (xlfdpat_block_match_1, xlfdpat_match): New functions.
3405 (xlfdpat_block_match): New macro.
3406 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
3407 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
3408 (add_font_name_table_entry): Increase font_name_table_size more
3409 rapidly.
3410 (mac_c_string_match): Remove function.
3411 (mac_do_list_fonts): Use XLFD pattern match instead of regular
3412 expression match.
3413
3414 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
3415
3416 2005-09-03 Richard M. Stallman <rms@gnu.org>
3417
3418 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
3419 (move_it_in_display_line_to): Stop after last char on line even
3420 on a windowing terminal, if that's the specified stop position.
3421
3422 * fns.c (Fsort): Doc fix.
3423
3424 * editfns.c (Fpropertize): Don't insist that properties be symbols.
3425
3426 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
3427
3428 * dired.c (directory_files_internal_unwind, directory_files_internal)
3429 (file_name_completion): Use a Save_Value object rather than a cons of
3430 two 16bit ints to store the DIR*.
3431 (directory_files_internal, file_name_completion): Handle both EINTR and
3432 EAGAIN consistently after `readdir'.
3433
3434 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
3435
3436 * intervals.c (update_interval): Add position info in error.
3437
3438 * dispnew.c (window_to_frame_hpos, update_window):
3439 Avoid gcc warning about unused variable `f'.
3440
3441 2005-08-31 Jason Rumney <jasonr@gnu.org>
3442
3443 * w32menu.c (add_menu_item): If unicode_append_menu returns an
3444 error, revert to using AppendMenu.
3445
3446 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3447
3448 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
3449 All uses changed.
3450 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
3451 cases.
3452 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
3453 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
3454 Use posix_pathname_to_fsspec.
3455 [MAC_OS] (xpm_load_image): Fill in background_transparent field
3456 while we have mask.
3457
3458 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
3459
3460 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
3461
3462 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3463
3464 * syntax.c (update_syntax_table): Properly reproduce the special +1
3465 setting of e_property at the end of the buffer when bumping into the
3466 INTERVALS_AT_ONCE limit.
3467
3468 2005-08-27 Eli Zaretskii <eliz@gnu.org>
3469
3470 * emacs.c (USAGE1): Fix the description of the -Q option.
3471
3472 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
3473
3474 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
3475
3476 2005-08-26 Kim F. Storm <storm@cua.dk>
3477
3478 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
3479 Don't move PT to new window start.
3480
3481 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3482
3483 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
3484 ICONIFY/DEICONIFY_EVENT.
3485
3486 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
3487 Restore background color.
3488 (mac_handle_visibility_change): New function.
3489 (x_make_frame_invisible, x_iconify_frame)
3490 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
3491 [USE_CARBON_EVENTS] (mac_handle_window_event)
3492 (install_window_handler): Handle visibility change events.
3493 (x_make_frame_visible): Don't reposition window if it is iconified
3494 or asked for visible before. Select and uncollapse window when it
3495 is made visible.
3496 (x_make_frame_invisible): Don't reset x_highlight_frame.
3497 (x_iconify_frame): Likewise. Make invisible frame visible before
3498 it is iconified.
3499 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
3500 (do_window_update): Don't change visibility of invisible frame.
3501
3502 2005-08-22 Juri Linkov <juri@jurta.org>
3503
3504 * term.c (turn_on_face): Check for TS_set_foreground and
3505 TS_set_background depending on standout_mode. Simplify.
3506
3507 2005-08-21 Kim F. Storm <storm@cua.dk>
3508
3509 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
3510 bitmaps on fully visible rows.
3511
3512 * fringe.c (update_window_fringes): Replace FORCE_P arg with
3513 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
3514 and return 0.
3515
3516 * xdisp.c (redisplay_window): Call update_window_fringes with
3517 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
3518
3519 2005-08-20 Richard M. Stallman <rms@gnu.org>
3520
3521 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
3522 (resize_mini_window): Set w->start, and PT, so as to display the tail
3523 end of the buffer, if it doesn't all fit.
3524
3525 2005-08-18 Kim F. Storm <storm@cua.dk>
3526
3527 * xdisp.c (calc_pixel_width_or_height): Use actual display
3528 resolution when available instead of Vdisplay_pixels_per_inch.
3529
3530 2005-08-17 Kim F. Storm <storm@cua.dk>
3531
3532 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
3533
3534 * dispnew.c (buffer_posn_from_coords): Check that target row is
3535 within matrix.
3536
3537 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3538
3539 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
3540 xg_set_frame_icon and call it.
3541
3542 * gtkutil.c (xg_set_frame_icon): New function.
3543
3544 * gtkutil.h (xg_set_frame_icon): Declare it.
3545
3546 2005-08-16 Kim F. Storm <storm@cua.dk>
3547
3548 * dispnew.c (increment_row_positions): Skip non-enabled rows.
3549
3550 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
3551 (Fcurrent_window_configuration): Use VECSIZE macro instead.
3552
3553 2005-08-15 Richard M. Stallman <rms@gnu.org>
3554
3555 * xdisp.c (message3_nolog): Clear echo_message_buffer.
3556
3557 2005-08-15 Kim F. Storm <storm@cua.dk>
3558
3559 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
3560
3561 * process.c (deactivate_process, status_notify, read_process_output)
3562 (update_status, status_convert, decode_status, allocate_pty)
3563 (make_process, remove_process, list_processes_1)
3564 (create_process_1, unwind_request_sigio, read_process_output)
3565 (send_process, keyboard_bit_set): Declare static.
3566 (Fdelete_process): Simplify. Pass process to status_notify, so we
3567 don't try to read output from it.
3568 (status_notify): New arg deleting_process--don't try to read
3569 output from that process.
3570
3571 * lisp.h (deactivate_process, status_notify, read_process_output):
3572 Remove prototypes.
3573
3574 2005-08-14 Richard M. Stallman <rms@gnu.org>
3575
3576 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
3577 define_image_type.
3578
3579 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3580
3581 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
3582 (xg_get_image_for_pixmap): Move some code to
3583 xg_get_pixbuf_from_pix_and_mask, and call it.
3584
3585 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
3586
3587 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
3588 to get an GTK icon and set it with GTK functions to avoid having GTK
3589 override an icon set with just X functions.
3590
3591 2005-08-11 Richard M. Stallman <rms@gnu.org>
3592
3593 * image.c (syms_of_image): Init image_types here, and call
3594 define_image_type.
3595 (init_image): Not here.
3596
3597 2005-08-09 Richard M. Stallman <rms@gnu.org>
3598
3599 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
3600
3601 * lisp.h (QUIT): Throw t to Vthrow_on_input.
3602
3603 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
3604
3605 * floatfns.c (Fexpt): Use floats for negative exponent.
3606
3607 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3608
3609 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
3610 should not be there, causing menu display errors with GTK 2.6.9.
3611
3612 2005-08-07 Richard M. Stallman <rms@gnu.org>
3613
3614 * floatfns.c (Fexpt): Undo previous change.
3615
3616 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
3617 so it can be used with various state vectors.
3618
3619 * emacs.c (endif): Convert -script into -scriptload.
3620 (standard_args): Add -scriptload. Allow -basic-display with one dash.
3621
3622 * fns.c (syms_of_fns): Add `emacs' to features.
3623
3624 * term.c (set_terminal_modes): If no TS_termcap_modes string,
3625 output newlines to scroll the old screen contents off the screen.
3626
3627 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
3628
3629 * floatfns.c (Fexpt): Use floats for negative exponent.
3630 Reported by D Goel.
3631
3632 2005-08-02 Richard M. Stallman <rms@gnu.org>
3633
3634 * frame.c (Fframe_char_width): Doc fix.
3635
3636 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
3637
3638 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
3639 Defvar it.
3640
3641 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
3642
3643 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
3644 (my_create_window, my_create_tip_window): Make static.
3645
3646 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
3647 (my_set_foreground_window, my_destroy_window): Make static.
3648
3649 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
3650
3651 Merge gnulib getopt implementation into Emacs.
3652
3653 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
3654 now part of lib-src.
3655
3656 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
3657
3658 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
3659
3660 2005-07-25 Jason Rumney <jasonr@gnu.org>
3661
3662 * w32menu.c (w32_menu_display_help): Suppress tooltip when
3663 navigating menus with the keyboard.
3664
3665 2005-07-23 Richard M. Stallman <rms@gnu.org>
3666
3667 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
3668
3669 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
3670 gc_relative_threshold, one by one.
3671
3672 * keyboard.c (read_char): Test gc_cons_threshold.
3673 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
3674
3675 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
3676 gc_relative_threshold, one by one.
3677
3678 * alloc.c (gc_cons_threshold): Not static.
3679 (gc_cons_combined_threshold): Var deleted.
3680 (gc_relative_threshold): New variable.
3681 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
3682 instead of gc_cons_combined_threshold.
3683
3684 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
3685 (gc_cons_combined_threshold): Declaration deleted.
3686
3687 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3688
3689 * mac.c: Don't include stdlib.h or string.h.
3690 (Fdo_applescript, Fmac_file_name_to_posix)
3691 (Fmac_file_name_to_posix): Doc fixes.
3692 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
3693 (Fmac_code_convert_string): Likewise.
3694 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
3695 if the executable is not contained in a bundle.
3696
3697 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
3698 (gray_width, gray_height): Remove defines.
3699 (gray_bits, gray_bitmap_width, gray_bitmap_height)
3700 (gray_bitmap_bits): Remove variables.
3701 (lispy_function_keys): Remove extern.
3702 (free_frame_menubar): Add extern.
3703 (x_window_to_frame): Remove function.
3704 (unwind_create_tip_frame): Add declaration.
3705 (x_set_name_internal): New function.
3706 (x_set_name, x_set_title): Use it.
3707 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
3708 (Fx_display_pixel_height, Fx_display_planes)
3709 (Fx_display_color_cells, Fx_server_max_request_size)
3710 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3711 (Fx_display_mm_height, Fx_display_mm_width)
3712 (Fx_display_backing_store, Fx_display_visual_class)
3713 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
3714
3715 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3716
3717 * macselect.c (Fx_own_selection_internal): Follow error conventions.
3718 (Fx_get_selection_internal, Fx_selection_owner_p)
3719 (Fx_selection_exists_p): Doc fixes.
3720 (syms_of_macselect) <selection-converter-alist>: Likewise.
3721
3722 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
3723
3724 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
3725
3726 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
3727 (Fccl_execute_on_string): Likewise; add usage info.
3728
3729 * composite.c (Fcompose_region_internal)
3730 (Fcompose_string_internal):
3731 Improve argument/docstring consistency.
3732
3733 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
3734 Fix typos in docstrings.
3735
3736 * textprop.c (Fnext_char_property_change)
3737 (Fprevious_char_property_change): Doc fixes.
3738
3739 * window.c (Fset_window_margins, Fset_window_fringes):
3740 Improve argument/docstring consistency.
3741
3742 * xfaces.c (Finternal_lisp_face_p): Doc fix.
3743
3744 2005-07-21 Andreas Schwab <schwab@suse.de>
3745
3746 * eval.c (restore_stack_limits): Return a value.
3747
3748 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
3749
3750 * eval.c (Fdefvar): Doc fix.
3751
3752 2005-07-20 Kim F. Storm <storm@cua.dk>
3753
3754 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
3755 Use make_save_value to unwind protect stream.
3756
3757 * lread.c (Fload, load_unwind):
3758 Use make_save_value to unwind protect stream.
3759
3760 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
3761
3762 * eval.c (Fprog2, Fcalled_interactively_p),
3763 (syms_of_eval) <debug-on-quit>: Doc fixes.
3764 (syms_of_eval) <max-specpdl-size>:
3765 (Finteractive_p): Fix typos in docstrings.
3766
3767 2005-07-19 Kim F. Storm <storm@cua.dk>
3768
3769 * w32fns.c (Vx_hand_shape): Variable removed.
3770 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
3771
3772 2005-07-19 Kenichi Handa <handa@m17n.org>
3773
3774 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
3775
3776 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
3777
3778 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
3779
3780 2005-07-18 Kim F. Storm <storm@cua.dk>
3781
3782 * frame.h (struct frame): New member already_hscrolled_p.
3783
3784 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
3785 to avoid redisplay looping hscrolling back and forth ad infinitum.
3786
3787 2005-07-18 Juri Linkov <juri@jurta.org>
3788
3789 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
3790 * keymap.c (Fminor_mode_key_binding):
3791 * macterm.c (mac-emulate-three-button-mouse):
3792 Delete duplicate duplicate words.
3793
3794 2005-07-18 Ken Raeburn <raeburn@gnu.org>
3795
3796 * minibuf.c (Ftest_completion): Fix odd syntax in test.
3797
3798 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3799
3800 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
3801
3802 * macgui.h (struct _XGC): New struct.
3803 (GC): Use it.
3804 (GCForeground, GCBackground, GCFont): Use X11 mask values.
3805 (XCreateGC, XParseGeometry): Move externs to macterm.h.
3806
3807 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
3808 (XSetFont): Add declaration.
3809 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
3810 Remove functions.
3811 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
3812 New defines.
3813 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
3814 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
3815 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
3816 Use them.
3817 (mac_erase_rectangle): New function.
3818 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
3819 (x_draw_stretch_glyph_string): Use it.
3820 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
3821 (XSetBackground, XSetFont): Adjust for new GC implementation.
3822 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
3823 (XTset_vertical_scroll_bar): Clear area under scroll bar.
3824
3825 * macterm.h (struct mac_display_info): Change types of
3826 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
3827 (XCreateGC, XParseGeometry): Move externs from macgui.h.
3828
3829 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
3830
3831 2005-07-16 Richard M. Stallman <rms@gnu.org>
3832
3833 * buffer.c (Fmake_overlay): Doc fix.
3834
3835 2005-07-16 Eli Zaretskii <eliz@gnu.org>
3836
3837 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
3838 Vw32_valid_locale_ids, and Vw32_valid_codepages.
3839
3840 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3841
3842 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
3843 Use Fstring_as_unibyte instead of string_make_unibyte.
3844
3845 2005-07-15 Richard M. Stallman <rms@gnu.org>
3846
3847 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
3848
3849 2005-07-15 Kim F. Storm <storm@cua.dk>
3850
3851 * xdisp.c: Fix redisplay loop in last change.
3852 (IT_POS_VALID_AFTER_MOVE_P): New macro.
3853 (move_it_vertically_backward, move_it_by_lines): Use it.
3854
3855 2005-07-14 Jason Rumney <jasonr@gnu.org>
3856
3857 * w32.c (init_environment): Default HOME directory to user's
3858 appdata directory if possible.
3859
3860 2005-07-14 Kim F. Storm <storm@cua.dk>
3861
3862 * .gdbinit (pitx): Fix output format. Print string charpos.
3863
3864 * lread.c (syms_of_lread): Initialize seen_list.
3865
3866 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
3867
3868 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
3869 Staticpro re_match_object.
3870
3871 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3872
3873 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
3874 dereference.
3875
3876 * macterm.c (mac_window_to_frame): Remove duplicate define.
3877
3878 2005-07-14 Kenichi Handa <handa@m17n.org>
3879
3880 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
3881 (code_convert_region): Adjust for the above change.
3882 (set_conversion_work_buffer): If the work buffer is already in
3883 use, generate a new buffer and return it. Otherwise return Qnil.
3884 (run_pre_post_conversion_on_str): Adjust for the above change.
3885 (run_pre_write_conversin_on_c_str): Likewise.
3886
3887 2005-07-13 Kim F. Storm <storm@cua.dk>
3888
3889 * xdisp.c (start_display): Don't reseat to next visible line start
3890 if current start position is in a string or image.
3891 (move_it_vertically_backward): Be sure to move out of strings and
3892 images when moving it2 forward.
3893 (move_it_by_lines): When moving forward, move to next buffer
3894 position if we end up in a string or image. When moving backward,
3895 count rows moved over when moving to start of current row in case
3896 row starts in middle of a string or image. Also move further
3897 backward if we end up in a string or image.
3898 (try_cursor_movement): If overlay string spans multiple lines,
3899 move backward to set cursor on start of an overlay string.
3900 (cursor_row_p): Row is ok if cursor is at newline from string, but
3901 string starts on this line (so we always position cursor at start
3902 of string).
3903
3904 * indent.c (Fvertical_motion): If start position is on an image,
3905 don't move back if we move too far (that's almost certain to happen).
3906
3907 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
3908 row in minibuffer windows.
3909 (try_window): Don't check margins in minibuffer windows.
3910
3911 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3912
3913 * macterm.c: Don't include stdlib.h or composite.h.
3914 (x_use_underline_position_properties, last_mouse_press_frame)
3915 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
3916 (syms_of_macterm, mac_initialize): Don't initialize them.
3917 (waiting_for_input, initial_argv, initial_argc)
3918 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
3919 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
3920 (extra_keyboard_modifiers): Fix type in extern.
3921 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
3922 (x_scroll_bar_report_motion): Add argument types to declaration.
3923 (mac_compute_glyph_string_overhangs): Add declaration.
3924 (disable_mouse_highlight): Remove unused variable.
3925 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
3926 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
3927 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
3928 All callers changed.
3929 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
3930 timestamp.
3931 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
3932 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
3933 only when its width is less than the height.
3934 (XTredeem_scroll_bar): Sync with xterm.c.
3935 (font_name_table, font_name_table_size, font_name_count):
3936 Make static.
3937 (drag_and_drop_file_list): Remove variable. Previous use is now
3938 local to function.
3939 (do_ae_open_documents): Move DRAG_N_DROP event construction part
3940 from XTread_socket.
3941 (XTread_socket): Consolidate setting of event timestamp.
3942 Move DRAG_N_DROP event construction part to do_ae_open_documents.
3943 Support extra_keyboard_modifiers.
3944
3945 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
3946 beginning with that for ASCII.
3947
3948 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
3949
3950 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
3951 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
3952 (syms_of_alloc): Declare gc-cons-percentage.
3953
3954 * eval.c (Feval, Ffuncall):
3955 * keyboard.c (read_char):
3956 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
3957
3958 * lisp.h (gc_cons_combined_threshold): Declare.
3959
3960 2005-07-12 Kim F. Storm <storm@cua.dk>
3961
3962 * coding.c (Qprocess_argument):
3963 * coding.h (Qprocess_argument): Remove unused var.
3964
3965 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
3966
3967 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3968
3969 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
3970 Endian.h.
3971 [!MAC_OSX] (fchmod, fchown): New functions.
3972 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
3973 Use SBYTES and EndianU32_BtoN.
3974 (mac_get_object_from_code): Return 4 byte string even if argument
3975 is 0. Use make_unibyte_string and EndianU32_NtoB.
3976 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
3977 (Fmac_set_file_type): Fix documents and argument declarations.
3978 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
3979
3980 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
3981
3982 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
3983
3984 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3985
3986 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
3987 Lucid if X_I18N, font otherwise.
3988
3989 2005-07-10 Steven Tamm <steventamm@mac.com>
3990
3991 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
3992 (Fmac_set_file_type, Fmac_set_file_creator): Add.
3993 (mac_get_object_from_code, mac_get_code_from_arg): Add.
3994
3995 2005-07-10 Richard M. Stallman <rms@gnu.org>
3996
3997 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
3998 (syms_of_lread): Set up eval-buffer-list.
3999 (Feval_buffer, Feval_region): Bind eval-buffer-list.
4000
4001 2005-07-08 Richard M. Stallman <rms@gnu.org>
4002
4003 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
4004
4005 2005-07-08 Kim F. Storm <storm@cua.dk>
4006
4007 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
4008 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
4009
4010 2005-07-07 Kim F. Storm <storm@cua.dk>
4011
4012 * window.c (Frecenter): Fix last change (set iarg before use).
4013
4014 2005-07-06 Richard M. Stallman <rms@gnu.org>
4015
4016 * window.c (Frecenter): When arg is inside the scroll margin,
4017 move it out of the margin.
4018
4019 2005-07-06 Jason Rumney <jasonr@gnu.org>
4020
4021 * w32console.c (initialize_w32_display): Detect when the console
4022 dimensions are insane, and default to 80x25 instead.
4023 (w32_use_full_screen_buffer): Default to NIL.
4024
4025 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4026
4027 * macterm.c (mac_draw_vertical_window_border): Use foreground of
4028 VERTICAL_BORDER_FACE_ID for vertical border line.
4029 (mac_encode_char): Call check_ccl_update in advance.
4030 (mac_to_x_fontname, x_font_name_to_mac_font_name)
4031 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
4032 Don't assume that font family length is less than 32.
4033 (x_compute_min_glyph_bounds): Make static.
4034 (x_load_font): Never set fonts_changed_p to zero.
4035
4036 2005-07-04 Lute Kamstra <lute@gnu.org>
4037
4038 * Update FSF's address in GPL notices.
4039
4040 2005-07-03 Richard M. Stallman <rms@gnu.org>
4041
4042 * xdisp.c (try_window): Fix previous change in how it handles
4043 a partially-visible line or one only partly past the margin.
4044
4045 * window.c (window_scroll_pixel_based): Take account
4046 of this_scroll_margin when finding point when scrolling up.
4047
4048 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
4049
4050 * window.c (window_scroll_pixel_based, window_scroll_line_based):
4051 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
4052 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4053
4054 2005-07-02 Juri Linkov <juri@jurta.org>
4055
4056 * w32term.c (w32_draw_vertical_window_border): Use foreground of
4057 VERTICAL_BORDER_FACE_ID for vertical border line.
4058
4059 2005-07-02 Eli Zaretskii <eliz@gnu.org>
4060
4061 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
4062 fchmod so that chmod doesn't get called on MSDOS before the file
4063 is closed.
4064
4065 2005-07-01 Jason Rumney <jasonr@gnu.org>
4066
4067 * w32term.c (cleartype_active): New flag for enabling sub-pixel
4068 workaround.
4069 (w32_initialize): Initialize it.
4070 (w32_native_per_char_metric): Allow a couple of extra pixels when
4071 Cleartype is active.
4072
4073 * w32term.c (w32_initialize): Move check for screen reader here
4074 from syms_of_w32term.
4075
4076 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4077
4078 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
4079 is not zero.
4080
4081 2005-07-01 Masatake YAMATO <jet@gyve.org>
4082
4083 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
4084
4085 2005-06-30 Juri Linkov <juri@jurta.org>
4086
4087 * xdisp.c (x_draw_vertical_border): If left fringe is not present
4088 decrease x coord of vertical border by 1 pixel to not occupy text
4089 area of the right window.
4090
4091 * xterm.c (x_draw_vertical_window_border): Use foreground of
4092 VERTICAL_BORDER_FACE_ID for vertical border line.
4093
4094 * term.c (turn_on_face): In standout mode apply specified
4095 fg to bg, and specified bg to fg (this makes the logic of
4096 inversion on terminal consistent with X).
4097
4098 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
4099
4100 * eval.c (user_variable_p_eh): New function.
4101 (Fuser_variable_p): Use it. Clarify docstring.
4102 Return t for aliases of user options, nil for alias loops.
4103
4104 2005-06-27 Richard M. Stallman <rms@gnu.org>
4105
4106 * eval.c (Fdefvar): Improve error message.
4107
4108 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4109
4110 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
4111 change.
4112
4113 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
4114
4115 * eval.c (Fdefvar): Don't try to set constant symbols.
4116
4117 2005-06-25 Richard M. Stallman <rms@gnu.org>
4118
4119 * macfns.c (Fx_show_tip): Pass new arg to try_window.
4120
4121 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
4122
4123 * xfns.c (Fx_show_tip): Pass new arg to try_window.
4124
4125 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
4126 (redisplay_window): Handle try_window reporting point in scroll margin.
4127
4128 * dispextern.h (try_window): Declare new arg.
4129
4130 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
4131 Use fchmod to copy the file modes.
4132 (Frename_file): Don't copy UID and GID here;
4133 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
4134
4135 * eval.c (call_debugger): Take full care of extending stack limits
4136 to make space for the debugger, and restore the change afterward.
4137 Bind debug-on-error to nil.
4138 (restore_stack_limits): New subroutine.
4139 (Fsignal): Extend specpdl bound along with eval depth bound,
4140 for calling edebug. Don't do either one, for calling debugger.
4141 (find_handler_clause): Don't bind debug-on-error here.
4142 Don't unbind anything either.
4143 Temporarily advance max_specpdl_size for calling
4144 internal_with_output_to_temp_buffer.
4145 (grow_specpdl): Don't alter max_specpdl_size before signaling
4146 an error.
4147 (syms_of_eval) <max-specpdl-size>: Doc fix.
4148
4149 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
4150
4151 2005-06-24 Eli Zaretskii <eliz@gnu.org>
4152
4153 * fileio.c (Frename_file): Undo last change: no need to ifdef away
4154 chown on DOS_NT platforms.
4155
4156 * w32.c (sys_chown): New function.
4157
4158 * s/ms-w32.h (chown): New; define to sys_chown.
4159
4160 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
4161
4162 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
4163 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
4164
4165 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
4166
4167 2005-06-23 Richard M. Stallman <rms@gnu.org>
4168
4169 * xdisp.c (get_next_display_element): Finish reversing the tests of
4170 Vnobreak_char_display.
4171
4172 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
4173 All uses changed.
4174 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
4175 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
4176
4177 * fileio.c (Frename_file): Preserve owner and group, if possible,
4178 when copying.
4179
4180 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
4181
4182 * abbrev.c (Funexpand_abbrev):
4183 * category.c (Fmake_category_set):
4184 * dispnew.c (Fsleep_for, Fsit_for):
4185 * editfns.c (Fsubst_char_in_region):
4186 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
4187 * frame.c (make_frame_without_minibuffer):
4188 * lread.c (read_vector):
4189 * macfns.c (check_x_frame):
4190 * process.c (Fstop_process, Fcontinue_process):
4191 * search.c (Freplace_match):
4192 * syntax.c (Fstring_to_syntax):
4193 * w32fns.c (check_x_frame, check_x_display_info):
4194 * xfaces.c (x_supports_face_attributes_p):
4195 * xselect.c (Fx_own_selection_internal): Follow error conventions.
4196
4197 * image.c (fn_png_init_io): Don't define it.
4198 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
4199 (png_read_from_file): New function, based on png_read_from_memory.
4200 (png_load): Use it, instead of fn_png_init_io.
4201
4202 2005-06-23 Kim F. Storm <storm@cua.dk>
4203
4204 * search.c (Fmatch_data): Remove evaporate option.
4205 (Fset_match_data): Do not mention evaporate option in doc string.
4206 Add commentary explaining evaporate arg (for internal use only).
4207 (unwind_set_match_data): Add comment on evaporate use.
4208
4209 2005-06-22 Miles Bader <miles@gnu.org>
4210
4211 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
4212 (realize_basic_faces, syms_of_xfaces): Update references to it.
4213 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
4214 to `VERTICAL_BORDER_FACE_ID'.
4215 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
4216
4217 2005-06-21 Juri Linkov <juri@jurta.org>
4218
4219 * dispextern.h: Add extern Qframe_set_background_mode.
4220
4221 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
4222 Qframe_set_background_mode.
4223
4224 * frame.c (Fmodify_frame_parameters):
4225 Call frame-set-background-mode after changing the background color
4226 on non-window non-dos branch.
4227
4228 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
4229
4230 * fns.c (Fchar_table_range):
4231 * process.c (Fmake_network_process): Fix spellings.
4232
4233 2005-06-20 Kim F. Storm <storm@cua.dk>
4234
4235 * fns.c (Fsort): Doc fix.
4236
4237 2005-06-20 Miles Bader <miles@gnu.org>
4238
4239 * xfaces.c (Qvertical_divider): New variable.
4240 (realize_basic_faces): Realize its face.
4241 (syms_of_xfaces): Initialize it.
4242
4243 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
4244
4245 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
4246 window-separator on ttys using `vertical-divider' face by default.
4247
4248 2005-06-17 Richard M. Stallman <rms@gnu.org>
4249
4250 * xdisp.c (get_next_display_element):
4251 Reverse test of Vshow_nonbreak_escape.
4252
4253 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
4254 (Ftty_no_underline): New function.
4255 (syms_of_term): defsubr it.
4256
4257 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
4258
4259 * dispnew.c (spec_glyph_lookup_face): New function.
4260 (build_frame_matrix_from_leaf_window): Use it.
4261
4262 * dispextern.h (spec_glyph_lookup_face): Add declaration.
4263
4264 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
4265
4266 2005-06-12 Richard M. Stallman <rms@gnu.org>
4267
4268 * keyboard.c (read_char): After catching a longjmp,
4269 call restore_getcjmp.
4270
4271 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
4272
4273 * xselect.c (lisp_data_to_selection_data): Fix spelling.
4274
4275 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4276
4277 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
4278 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
4279 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
4280 events.
4281 (XTread_socket): Don't pass keyboard events with the option
4282 modifier to the system when Vmac_command_key_is_meta is nil or
4283 Vmac_option_modifier is non-nil.
4284 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
4285 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
4286 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
4287 handler function.
4288 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
4289 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
4290 handler part to mac_handle_mouse_event.
4291
4292 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
4293
4294 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
4295 NEW-ALIAS and BASE-VARIABLE, respectively.
4296
4297 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4298
4299 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4300 (get_phys_cursor_geometry, format_mode_line_unwind_data)
4301 (get_line_height_property, x_produce_glyphs): Remove unused vars.
4302
4303 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
4304
4305 2005-06-13 Eli Zaretskii <eliz@gnu.org>
4306
4307 * w32term.c (x_use_underline_position_properties): New variable.
4308 (x_draw_glyph_string): Remind in a comment to change doc string of
4309 x-use-underline-position-properties if/when underline positioning
4310 is implemented.
4311 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
4312 and initialize it to nil.
4313
4314 2005-06-12 Jason Rumney <jasonr@gnu.org>
4315
4316 * w32fns.c (NEWOPENFILENAME): New struct.
4317 (Fx_file_dialog): Use it to trick the system into giving us up to
4318 date dialogs on systems that are documented to support it.
4319 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
4320
4321 2005-06-12 Eli Zaretskii <eliz@gnu.org>
4322
4323 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
4324 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
4325
4326 2005-06-11 Eli Zaretskii <eliz@gnu.org>
4327
4328 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
4329 to CreateDIBSection to avoid a compiler warning.
4330 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
4331 warning.
4332 (png_load): Cast return values of fn_png_create_read_struct and
4333 fn_png_create_info_struct, to avoid compiler warnings on W32.
4334 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
4335 to avoid compiler warnings.
4336 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
4337 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
4338 avoid a compiler warning.
4339 (tiff_load): Cast return values of fn_TIFFOpen and
4340 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
4341 to IMAGE_BACKGROUND to avoid a compiler warning.
4342 (gif_load): Cast return values of fn_DGifOpenFileName and
4343 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
4344 IMAGE_BACKGROUND to avoid a compiler warning.
4345 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
4346 before redefining.
4347
4348 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
4349 the call to CreateDIBSection, to avoid a compiler warning.
4350
4351 2005-06-11 Jason Rumney <jasonr@gnu.org>
4352
4353 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
4354 minibuffer.
4355 * macfns.c (Fx_file_dialog): Likewise.
4356
4357 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4358
4359 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
4360
4361 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4362
4363 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
4364 * w32fns.c (syms_of_w32fns): Fix spellings.
4365
4366 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4367
4368 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
4369 `verbose'; print diagnostic messages only if it is non-zero.
4370 All callers changed to pass a zero value unless DEBUG_DUMP is defined
4371 in the environment.
4372 (copy_executable_and_dump_data): Print section names with %.8s.
4373
4374 2005-06-10 Masatake YAMATO <jet@gyve.org>
4375
4376 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
4377 when mouse_face is not given.
4378
4379 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
4380
4381 * window.c (Fselect_window): Adapt call to Fselect_frame.
4382
4383 * lisp.h: Update EXFUN of Fselect_frame.
4384
4385 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
4386
4387 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
4388 no_enter.
4389 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
4390 Adapt to above change.
4391
4392 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4393
4394 * fns.c (Fmemq, Fmaphash): Doc fixes.
4395
4396 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
4397
4398 * xfaces.c (Fdisplay_supports_face_attributes_p):
4399 Fix typo in docstring.
4400
4401 2005-06-08 Steven Tamm <steventamm@mac.com>
4402
4403 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
4404 used by gcc4 on intel mac.
4405
4406 2005-06-09 Kim F. Storm <storm@cua.dk>
4407
4408 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
4409 in REUSE list if non-nil; free them if equal to evaporate.
4410 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
4411 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
4412 (restore_search_regs): Rename from restore_match_data. Uses changed.
4413 (unwind_set_match_data): New function.
4414 (record_unwind_save_match_data): New function like save-match-data.
4415
4416 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
4417 (record_unwind_save_match_data): Add prototype.
4418 (restore_search_regs): Rename from restore_match_data.
4419
4420 * composite.c (compose_chars_in_text):
4421 * eval.c (do_autoload):
4422 * macmenu.c (set_frame_menubar):
4423 * process.c (read_process_output, exec_sentinel):
4424 * xmenu.c (set_frame_menubar):
4425 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
4426 * w32menu.c (set_frame_menubar):
4427 Use record_unwind_save_match_data.
4428
4429 2005-06-08 Richard M. Stallman <rms@gnu.org>
4430
4431 * xdisp.c (get_next_display_element): Alter previous change:
4432 Distinguish Vshow_nonbreak_escape = t or not t.
4433 For t, use escape_glyph once again, as before previous change.
4434 Use space or hyphen for display, instead of the non-ASCII char.
4435 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
4436
4437 * process.c (Fstart_process): Don't touch command_channel_p slot.
4438
4439 * process.h (struct process): Delete command_channel_p.
4440
4441 2005-06-07 Masatake YAMATO <jet@gyve.org>
4442
4443 * xdisp.c (note_mode_line_or_margin_highlight):
4444 Check the overlapping of re-rendering area to avoid flickering.
4445 (note_mouse_highlight): Call clear_mouse_face if PART
4446 is not ON_MODE_LINE nor ON_HEADER_LINE.
4447
4448 2005-06-07 Kim F. Storm <storm@cua.dk>
4449
4450 * process.c: Improve commentary for adaptive read buffering.
4451
4452 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
4453
4454 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
4455 if available.
4456
4457 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4458
4459 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
4460 New functions for popping down menus on C-g.
4461 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
4462
4463 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
4464 non-static.
4465
4466 * config.in: Add HAVE_CANCELMENUTRACKING.
4467
4468 2005-06-06 Eli Zaretskii <eliz@gnu.org>
4469
4470 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
4471
4472 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
4473
4474 * w32proc.c (RVA_TO_PTR): New macro.
4475
4476 * w32heap.c (RVA_TO_PTR): No need to #undef now.
4477
4478 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
4479 Depend on w32heap.h.
4480
4481 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
4482
4483 * keyboard.c (command_loop_1): Update Vthis_original_command.
4484
4485 2005-06-06 Richard M. Stallman <rms@gnu.org>
4486
4487 * xmenu.c (popup_get_selection): Undo previous change.
4488
4489 2005-06-06 Juri Linkov <juri@jurta.org>
4490
4491 * xdisp.c (Qno_break_space): New variable.
4492 (syms_of_xdisp): Initialize it.
4493 (get_next_display_element): Add no-break space and soft hypen
4494 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
4495 Use `no-break-space' face for no-break spaces.
4496
4497 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4498
4499 * window.c (delete_window): Handle the case where a h/vchild has
4500 a h/vchild.
4501
4502 2005-06-05 Eli Zaretskii <eliz@gnu.org>
4503
4504 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
4505 call to pfn_setsockopt, cast optval to `const char *'.
4506
4507 2005-06-04 Eli Zaretskii <eliz@gnu.org>
4508
4509 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
4510 (open_unc_volume): Cast return value of map_w32_filename, to avoid
4511 compiler warnings.
4512
4513 * s/ms-w32.h (fileno): Don't define if already defined.
4514
4515 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
4516
4517 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
4518
4519 2005-06-04 Richard M. Stallman <rms@gnu.org>
4520
4521 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
4522
4523 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4524
4525 * macmenu.c (cleanup_popup_menu): New function.
4526 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
4527 mac_menu_show Quit:s.
4528 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
4529 a dialog).
4530
4531 2005-06-04 Kim F. Storm <storm@cua.dk>
4532
4533 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
4534
4535 * callproc.c (Fcall_process): Don't use alloca to gradually
4536 increase size of buf, as it effectively uses twice the necessary
4537 space on the stack. Instead, pre-allocate buf of full size, and
4538 gradually increase the read size.
4539
4540 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
4541
4542 * eval.c (unbind_to): Preserve value of Vquit_flag.
4543
4544 * xterm.c (handle_one_xevent): Also ignore mouse motion just
4545 before a button release event.
4546
4547 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
4548
4549 * xfaces.c (Finternal_lisp_face_equal_p): Really report
4550 on faces in a frame, if the argument FRAME is non-nil.
4551 Improve argument/docstring consistency.
4552
4553 2005-06-02 Kim F. Storm <storm@cua.dk>
4554
4555 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
4556 (x_consider_frame_title, Fformat_mode_line): Save offset into
4557 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
4558
4559 2005-06-01 Kim F. Storm <storm@cua.dk>
4560
4561 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
4562
4563 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4564
4565 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
4566 resolution fields for scalable fonts to 0.
4567
4568 * xfaces.c (build_scalable_font_name): Round pixel size to the
4569 nearest integer.
4570
4571 2005-06-01 Kim F. Storm <storm@cua.dk>
4572
4573 * xdisp.c (display_mode_line): Support nested calls to redisplay
4574 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
4575
4576 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
4577
4578 * fileio.c (Finsert_file_contents):
4579 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4580
4581 2005-05-31 Kim F. Storm <storm@cua.dk>
4582
4583 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
4584 (mode_line_noprop_ptr): Rename from frame_title_*.
4585 (store_mode_line_noprop_char): Rename from store_frame_title_char.
4586 (store_mode_line_noprop): Rename from store_frame_title.
4587 (mode_line_target): New enum to specify current output target
4588 for mode line formatting.
4589 (display_mode_element): Test it rather than frame_title_ptr and
4590 mode_line_string_list to determine where output should go.
4591 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
4592 (Vmode_line_unwind_vector): New variable.
4593 (format_mode_line_unwind_data, unwind_format_mode_line):
4594 New functions for unwind protection in mode line formatting.
4595 (x_consider_frame_title): Use them and new local var 'title_start'
4596 to support nested calls to format-mode-line and redisplay.
4597 Set mode_line_target to MODE_LINE_TITLE.
4598 (Fformat_mode_line): Use them and new local var 'string_start' to
4599 support nested calls to format-mode-line and redisplay.
4600 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
4601 Don't trim trailing dashes.
4602 (decode_mode_spec): Don't make infinite number of trailing dashes
4603 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
4604 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
4605 mode_line_string_face_prop, and Vmode_line_unwind_vector.
4606 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
4607 Initialize mode_line_target to MODE_LINE_DISPLAY.
4608
4609 2005-05-29 Richard M. Stallman <rms@gnu.org>
4610
4611 * buffer.c (Fbuffer_local_value): Call indirect_variable.
4612
4613 2005-05-28 Masatake YAMATO <jet@gyve.org>
4614
4615 * xdisp.c (note_mode_line_or_margin_highlight): Change the
4616 pointer to a hand cursor when hoovering over a mouse-face.
4617
4618 2005-05-27 Kenichi Handa <handa@m17n.org>
4619
4620 * xterm.c (x_encode_char): Call check_ccl_update in advance.
4621
4622 * ccl.c: Now an element of Vccl_program_table is a vector of
4623 length 4, not 3.
4624 (ccl_get_compiled_code): New arg idx. Caller changed.
4625 Adjust for the change of Vccl_program_table.
4626 (setup_ccl_program): Adjust for the change of Vccl_program_table.
4627 (check_ccl_update): New function.
4628 (Fregister_ccl_program): Use ASET to set an element of a vector.
4629 Adjusted for the change of Vccl_program_table.
4630
4631 * ccl.h (struct ccl_program): New member idx.
4632 (check_ccl_update): Extern it.
4633
4634 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
4635
4636 * image.c (Vimage_library_alist): Move from image.el.
4637 (syms_of_image): Defvar it.
4638 (lookup_image_type): Use it.
4639
4640 * buffer.c (Fbuffer_local_value): Make argument name match its use
4641 in docstring.
4642
4643 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
4644
4645 * keyboard.c (Frecursive_edit): Fix typo in docstring.
4646 (Fposn_at_x_y): Make argument name match its use in docstring.
4647
4648 2005-05-26 Lute Kamstra <lute@gnu.org>
4649
4650 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
4651
4652 2005-05-24 Masatake YAMATO <jet@gyve.org>
4653
4654 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
4655 as loop sentinels.
4656
4657 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
4658
4659 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
4660 select frame title ("Question"/"Information").
4661 (xdialog_show): Use it.
4662
4663 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
4664
4665 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
4666
4667 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
4668 a third argument (Qnil).
4669
4670 * lisp.h: x-popup-dialog can have three arguments.
4671
4672 * editfns.c (Fmessage_box): Use "Information" for frame title.
4673
4674 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
4675
4676 * termcap.c [VMS]: Include <starlet.h>.
4677
4678 2005-05-23 Masatake YAMATO <jet@gyve.org>
4679
4680 * xdisp.c (note_mode_line_or_margin_highlight): Add code
4681 for mouse-face. Change the type of the first argument from `window'
4682 to `Lisp_Object'.
4683 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
4684 window instead of w.
4685
4686 2005-05-22 Andreas Schwab <schwab@suse.de>
4687
4688 * process.c (send_process): Move misplaced volatile.
4689
4690 2005-05-21 Richard M. Stallman <rms@gnu.org>
4691
4692 * xdisp.c (display_mode_element): If we're processing a list and
4693 padding is specified, put it after the last element.
4694
4695 2005-05-21 Eli Zaretskii <eliz@gnu.org>
4696
4697 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
4698 "superroot" on DOS_NT systems.
4699
4700 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
4701
4702 * process.c (send_process): Restore the SIGPIPE handler if we
4703 catch a SIGPIPE.
4704
4705 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
4706
4707 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
4708 misleading comments).
4709 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
4710
4711 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4712
4713 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
4714 Correct the right value.
4715
4716 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
4717
4718 * keyboard.c (syms_of_keyboard): Remove Lisp variables
4719 post-command-idle-hook and post-command-idle-delay.
4720 (command_loop_1): Don't try to execute post-command-idle-hook.
4721
4722 2005-05-16 Kim F. Storm <storm@cua.dk>
4723
4724 * xdisp.c (handle_display_prop): Handle empty replacement.
4725 (handle_single_display_spec): Return -1 for empty replacement.
4726
4727 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
4728
4729 * .gdbinit (pitx): Print more info about iterator.
4730
4731 2005-05-16 Andreas Schwab <schwab@suse.de>
4732
4733 * unexmacosx.c (unexec_realloc): Move declarations before statements.
4734
4735 2005-05-14 Richard M. Stallman <rms@gnu.org>
4736
4737 * xdisp.c (message3): Call cancel_echoing.
4738
4739 * alloc.c (Fmemory_full_p): New function.
4740 (syms_of_alloc): defsubr it.
4741
4742 * process.c (send_process_trap): Unblock SIGPIPE.
4743 (send_process): Reset SIGPIPE handler before reporting error.
4744
4745 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
4746
4747 * emacs.c (syms_of_emacs): Fix doc string for system-type.
4748
4749 2005-05-13 Richard M. Stallman <rms@gnu.org>
4750
4751 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
4752 (Finsert_file_contents): If we read 0 bytes from a special file,
4753 unlock the visited file if we locked it.
4754 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
4755 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
4756
4757 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4758
4759 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
4760
4761 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
4762 Regard toolkit scroll bar thumb drag events as squeezable and prevent
4763 redisplay from being paused by them.
4764
4765 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
4766 [!MAC_OSX] (target_ticks): Remove variable.
4767 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
4768 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
4769 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
4770 event occurs before timeout, behave as if the function were interrupted.
4771 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
4772 handling using Time Manager routines.
4773 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
4774 New variables.
4775 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
4776 (setitimer): New functions.
4777
4778 * macfns.c, macmenu.c: Don't include signal.h.
4779
4780 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
4781 Rename from get_control_part_bound. All callers changed.
4782 (x_scroll_bar_clear): New function.
4783 (x_clear_frame): Use it.
4784 (XTset_vertical_scroll_bar): Don't call Draw1Control.
4785 (x_scroll_bar_handle_click): Change type of second argument from
4786 int to ControlPartCode.
4787 (check_alarm): Remove declaration.
4788 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
4789 (XTread_socket): Use ControlPartCode instead of SInt16.
4790
4791 2005-05-13 Nozomu Ando <nand@mac.com>
4792
4793 * unexmacosx.c: Include assert.h.
4794 (MACOSX_MALLOC_MULT16): New define.
4795 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
4796 ptr is in unexec regions by checking it is multiple of 16.
4797 (unexec_malloc_header_t): New typedef.
4798 (unexec_malloc, unexec_realloc, unexec_free): Store and use
4799 allocated size information in unexec_malloc_header.
4800
4801 2005-05-10 Richard M. Stallman <rms@gnu.org>
4802
4803 * xterm.c (noinclude): Add #undef.
4804
4805 * image.c, xfns.c, xmenu.c: Don't include signal.h.
4806
4807 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
4808
4809 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
4810 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
4811 Doc fixes.
4812
4813 * dired.c (Ffile_name_completion): Make argument name
4814 match its use in docstring.
4815
4816 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
4817
4818 * eval.c (Fdefvaralias): Remove any pre-existing
4819 variable-documentation property of the alias.
4820
4821 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
4822
4823 * xfns.c (start_hourglass): Do nothing when running on a tty.
4824
4825 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
4826
4827 * fns.c (Fchar_table_range): Fix typos in docstring.
4828
4829 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
4830
4831 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
4832
4833 2005-05-06 Eli Zaretskii <eliz@gnu.org>
4834
4835 * lread.c (Flocate_file_internal): Doc fix.
4836
4837 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
4838
4839 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4840
4841 * macselect.c (x_own_selection): Accept Lisp string as result of
4842 selection converter function.
4843 (x_clear_frame_selections): Don't call x-lost-selection-functions
4844 if Emacs is not owner of the selection.
4845 (Vmac_services_selection): Put variable and initialization in
4846 #ifdef MAC_OSX.
4847 (syms_of_macselect) [MAC_OSX]: Set default value of
4848 Vmac_services_selection to PRIMARY.
4849
4850 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
4851 (mac_handle_tool_bar_click): Remove unused function and declaration.
4852 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
4853 (install_scroll_bar_timer, set_scroll_bar_timer)
4854 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
4855 (get_control_part_bound, x_scroll_bar_handle_press)
4856 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
4857 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
4858 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
4859 (scroll_bar_timer_event_posted_p): New variables.
4860 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
4861 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
4862 (x_scroll_bar_create): Set control reference with NewControl.
4863 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
4864 Initialize track_top and track_height to nil.
4865 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
4866 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
4867 (XTset_vertical_scroll_bar): Don't make space between scroll bar
4868 and associated window.
4869 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
4870 from window config.
4871 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4872 Set track_top and track_height to nil when scroll bar size is changed.
4873 Recalculate them if they are nil.
4874 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
4875 clicked control is a scroll bar.
4876 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
4877 event handler functions. Don't add modifiers to scroll bar click
4878 events. Call scroll bar release handler when window is deactivated.
4879 (mac_initialize): Remove unused code for X toolkit.
4880 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
4881 Initialize Vx_toolkit_scroll_bars to nil.
4882
4883 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
4884 New members track_top and track_height.
4885
4886 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
4887 init_process when including sys/select.h.
4888
4889 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
4890
4891 * eval.c (Fdefvaralias): Doc fix.
4892
4893 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
4894
4895 2005-05-05 Kim F. Storm <storm@cua.dk>
4896
4897 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
4898 default value.
4899 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
4900 Fix type of cursor-in-non-selected-windows.
4901
4902 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4903
4904 * mac.c: #undef init_process so not to conflict with system headers.
4905
4906 2005-05-02 Richard M. Stallman <rms@gnu.org>
4907
4908 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
4909
4910 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
4911
4912 * xdisp.c (Vcursor_in_non_selected_windows)
4913 (Qcursor_in_non_selected_windows): Vars deleted.
4914 (syms_of_xdisp): Don't initialize them.
4915 (get_window_cursor_type): Use cursor_in_non_selected_windows
4916 buffer slot.
4917
4918 2005-05-02 Kim F. Storm <storm@cua.dk>
4919
4920 * macros.c (executing_kbd_macro_index): Rename from
4921 executing_macro_index. All uses changed.
4922 (executing_kbd_macro_iterations): Rename from
4923 executing_macro_iterations. All uses changed.
4924 (executing_kbd_macro): Rename from executing_macro.
4925 All uses changed.
4926 (syms_of_macros): Rename Lisp var executing-macro-index to
4927 executing-kbd-macro-index.
4928
4929 * xdisp.c (move_it_in_display_line_to): Fix last change.
4930
4931 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4932
4933 * xmenu.c (Fx_popup_menu): Doc fix.
4934
4935 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
4936
4937 2005-05-02 Jason Rumney <jasonr@gnu.org>
4938
4939 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
4940
4941 2005-05-02 Nozomu Ando <nand@mac.com>
4942
4943 * sysselect.h: Fix typo.
4944
4945 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
4946
4947 * charset.c (Fchars_in_region): Remove as obsolete.
4948
4949 2005-05-01 Kim F. Storm <storm@cua.dk>
4950
4951 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
4952 TO_CHARPOS. This may happen if last glyphs was an image or stretch
4953 glyph.
4954
4955 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
4956
4957 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
4958
4959 2005-05-01 Richard M. Stallman <rms@gnu.org>
4960
4961 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
4962 If user cancels the menu, quit unless FOR_CLICK.
4963
4964 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
4965 All uses changed.
4966 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
4967 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
4968 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
4969 * commands.h (Vexecuting_kbd_macro): Likewise.
4970
4971 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
4972
4973 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
4974
4975 2005-04-30 Richard M. Stallman <rms@gnu.org>
4976
4977 * fileio.c (Ffind_file_name_handler): Handle the `operations'
4978 property of the file name handler.
4979 (Qoperations): New variable.
4980 (syms_of_fileio): Initialize and staticpro it.
4981
4982 * xdisp.c (set_message_1): Delete xassert.
4983
4984 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4985
4986 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
4987
4988 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
4989
4990 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
4991 before/after including Carbon.h if there is a working mktime.
4992
4993 2005-04-28 Kim F. Storm <storm@cua.dk>
4994
4995 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
4996 Fix cyclic alias check. If alias loop is detected, signal
4997 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
4998
4999 2005-04-28 Lute Kamstra <lute@gnu.org>
5000
5001 * eval.c (do_autoload): Record only autoloads in the autoload
5002 property of symbols.
5003
5004 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
5005
5006 * emacs.c (USAGE1): Add --basic-display and --quick options.
5007
5008 2005-04-27 Kim F. Storm <storm@cua.dk>
5009
5010 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
5011
5012 2005-04-26 Richard M. Stallman <rms@gnu.org>
5013
5014 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
5015 (syms_of_window): Doc fixes.
5016
5017 * indent.c (Fvertical_motion): Undo previous change.
5018
5019 2005-04-26 Kenichi Handa <handa@m17n.org>
5020
5021 * fns.c (char_table_range): New function.
5022 (Fchar_table_range): Signal an error if characters in the range
5023 have inconsistent values. Don't check the parent.
5024
5025 2005-04-25 Kenichi Handa <handa@m17n.org>
5026
5027 * fontset.c (fontset_set): Fix previous change.
5028
5029 2005-04-24 Richard M. Stallman <rms@gnu.org>
5030
5031 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
5032
5033 2005-04-24 Eli Zaretskii <eliz@gnu.org>
5034
5035 * regex.c (re_search_2, re_match_2_internal): Convert second arg
5036 of RE_TRANSLATE to int, to shut up GCC warnings.
5037
5038 * fileio.c (Fcopy_file): Doc fix.
5039 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
5040 not needed.
5041
5042 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5043
5044 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
5045 (SOME_MACHINE_OBJECTS): Likewise.
5046 (mac.o): Depend on ccl.h.
5047 (macselect.o): New target.
5048
5049 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
5050 Call syms_of_macselect.
5051
5052 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
5053
5054 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
5055 (QCLIPBOARD): Remove variable.
5056 (syms_of_mac): Don't initialize it.
5057 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
5058 Remove functions.
5059 (syms_of_mac): Don't defsubr them.
5060 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
5061 (QHFS_plus_D, QHFS_plus_C): New variables.
5062 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5063 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
5064 (cfstring_create_normalized): New functions.
5065 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
5066 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5067
5068 * macterm.c (handling_window_update, terminate_flag):
5069 Remove variables.
5070 (do_window_update, do_ae_quit_application, XTread_socket):
5071 Don't use them.
5072 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
5073 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
5074 (init_service_handler): Move to macselect.c. Remove declarations.
5075 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
5076 (Qapplication, Qabout): New variables.
5077 (syms_of_mac): Initialize them.
5078 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
5079 (Qperform): New variables.
5080 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
5081 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
5082 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
5083 (mac_store_application_menu_event, init_menu_bar): New functions.
5084 [USE_CARBON_EVENTS] (mac_handle_command_event)
5085 (init_command_handler): New functions.
5086 (mac_handle_window_event): Return noErr on window update event.
5087 (do_ae_quit_application): Call mac_store_application_menu_event.
5088 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
5089 and init_menu_bar.
5090
5091 * macterm.h (x_clear_frame_selections): Add extern.
5092
5093 * macselect.c: New file for selection processing on Mac OS.
5094
5095 2005-04-23 Richard M. Stallman <rms@gnu.org>
5096
5097 * fileio.c (Fcopy_file): New arg MUSTBENEW.
5098 (Frename_file): Pass new arg to Fcopy_file.
5099
5100 * window.c (window_size_fixed): Variable deleted.
5101 (syms_of_window): Initialize window-size-fixed to nil.
5102 But don't DEFVAR window_size_fixed.
5103
5104 2005-04-23 Andreas Schwab <schwab@suse.de>
5105
5106 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
5107 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
5108 use lib64 instead of lib.
5109 (_LP64) [_ARCH_PPC64]: Define if not defined.
5110
5111 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
5112
5113 * s/ms-w32.h (HAVE_PWD_H): Define.
5114
5115 2005-04-22 Kenichi Handa <handa@m17n.org>
5116
5117 * fns.c (copy_sub_char_table): Explicitly copy the default value
5118 of the sub-chartable.
5119
5120 * fontset.c (fontset_set): When a sub-chartable is created,
5121 explicitly sets the defalt value.
5122
5123 2005-04-22 Kim F. Storm <storm@cua.dk>
5124
5125 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
5126 (Fsafe_plist_get): Rename to Fplist_get.
5127 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
5128 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
5129
5130 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
5131
5132 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
5133 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5134 Use Fplist_get instead of Fsafe_plist_get.
5135
5136 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
5137
5138 2005-04-21 Miles Bader <miles@gnu.org>
5139
5140 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
5141
5142 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
5143
5144 * sysdep.c: Remove reference to defunct vms-pwd.h.
5145 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
5146 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
5147
5148 * config.in: Regenerate.
5149
5150 2005-04-20 Kenichi Handa <handa@m17n.org>
5151
5152 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
5153 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
5154 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
5155
5156 * alloc.c (make_sub_char_table): Argument changed to initial
5157 value of the slots.
5158
5159 * data.c (Faref): Handle special slots used as default values of
5160 ascii, eight-bit-control, eight-bit-control. Don't ignore a
5161 default value set for a group of characters.
5162 (Faset): Signal an error if IDXVAL is not a valid character code.
5163 Make a sub-chartable with correct initial value.
5164
5165 * fns.c (Fset_char_table_range): Don't set slots used as default
5166 values for ascii, eight-bit-control, eight-bit-graphic.
5167 Don't call Faref with charset-id.
5168 (Fset_char_table_default): Document how to treat normal character
5169 argument. Handle special slots used as default values of ascii,
5170 eight-bit-control, eight-bit-control. Make a sub chartable if
5171 necessary.
5172
5173 2005-04-20 Kenichi Handa <handa@m17n.org>
5174
5175 * search.c (boyer_moore): Fix previous change.
5176
5177 2005-04-19 Kim F. Storm <storm@cua.dk>
5178
5179 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
5180 face unless last visible char and first invisible char have the
5181 same face. Also use default face if saved_face_id is undefined.
5182
5183 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5184
5185 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
5186 `full_name'.
5187 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
5188 mac_scriptcode member.
5189
5190 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
5191 (syms_of_mac): Don't initialize them.
5192 (Vmac_charset_info_alist): New variable.
5193 (syms_of_mac): Defvar it.
5194 (create_text_encoding_info_alist): New function.
5195 (decode_mac_font_name, mac_to_x_fontname)
5196 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
5197 code the correspondence among XLFD charsets, Mac script codes, and
5198 Emacs coding systems. Use Vmac_charset_info_alist and result of
5199 create_text_encoding_info_alist instead.
5200 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
5201 routines also on Mac OS Classic.
5202 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
5203 Use add_font_name_table_entry.
5204 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
5205 specified. Derive unspecified scalable fields from specified one.
5206 (x_list_fonts): Consider Valternate_fontname_alist.
5207 (kDefaultFontSize): Change value from 9 to 12.
5208 (XLoadQueryFont): Get decoded font family, font face, and charset
5209 from x_font_name_to_mac_font_name. Set full name of loaded font.
5210 (mac_unload_font): Free `full_name' member.
5211 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
5212 NULL. Copy full_name member of struct MacFontStruct to that of
5213 struct font_info.
5214
5215 2005-04-19 Kim F. Storm <storm@cua.dk>
5216
5217 * xdisp.c (handle_stop): Set saved_face_id to current face if
5218 selective_display_ellipsis_p so ellipsis will be shown in same
5219 face as preceding text.
5220 (setup_for_ellipsis): Don't set saved_face_id here.
5221 (next_element_from_display_vector): Default to saved_face_id.
5222
5223 * fns.c (Fsafe_get): New function.
5224 (syms_of_fns): Defsubr it.
5225
5226 * lisp.h (Fsafe_get): EXFUN it.
5227
5228 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
5229 loops in case of bad face property lists. Limit number of face
5230 alias lookups to 10 (in case of face alias loops).
5231
5232 2005-04-18 Kim F. Storm <storm@cua.dk>
5233
5234 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
5235 It replaces the corresponding member from struct window, as a
5236 window may now show multiple overlay arrows.
5237 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
5238
5239 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
5240 Compare overlay_arrow_bitmap than overlay_arrow_p members.
5241
5242 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
5243 rather than from window.
5244 (update_window_fringes): Compare overlay_arrow_bitmap rather than
5245 overlay_arrow_p members.
5246 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
5247 if not default.
5248
5249 * window.h (struct window): Remove member overlay_arrow_bitmap.
5250
5251 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
5252
5253 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
5254 Calls changed. Don't check for overlay-arrow-bitmap property here.
5255 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
5256 fringe is present, return Lisp integer for bitmap (or -1 for default).
5257 Fix value of overlay-arrow-bitmap property to be a symbol, use
5258 lookup_fringe_bitmap to parse it.
5259 (display_line): Change call to overlay_arrow_at_row. Store integer
5260 return value as overlay bitmap in row rather than window.
5261 Only show overlay arrow if row displays text, or if no other overlay
5262 arrow is seen in window (if overlay marker is at point-max).
5263
5264 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
5265
5266 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
5267
5268 2005-04-18 Lute Kamstra <lute@gnu.org>
5269
5270 * lread.c (Vloads_in_progress): Static.
5271 * fns.c (Vloads_in_progress): Remove extern.
5272 (load_in_progress): Add extern.
5273 (Frequire): Use load_in_progress instead of Vloads_in_progress.
5274
5275 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
5276
5277 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
5278
5279 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5280
5281 * macterm.c (XTread_socket): Don't beep on keyboard input even if
5282 no frame is visible.
5283
5284 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
5285
5286 * term.c (struct keys): Add support for shifted keys.
5287
5288 2005-04-16 Richard M. Stallman <rms@gnu.org>
5289
5290 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
5291 (set_message): Call with_echo_area_buffer with WHICH = 0.
5292 (set_message_1): Erase the echo area buffer first thing.
5293 (echo_area_display): Don't clear echo_message_buffer.
5294
5295 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5296
5297 * Makefile.in (mac.o): Depend on charset.h and coding.h.
5298
5299 * mac.c: Include charset.h and coding.h.
5300 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
5301 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
5302 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
5303
5304 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
5305
5306 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
5307
5308 * macterm.c (x_autoselect_window_p): Remove variable.
5309 (last_window): New variable.
5310 (XTreassert_line_highlight, x_change_line_highlight):
5311 Remove declarations.
5312 (mac_focus_changed, x_detect_focus_change): New functions and
5313 declarations.
5314 (XTextExtents16, front_emacs_window): Remove function.
5315 (mac_focus_frame): New function.
5316 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
5317 (mac_check_for_quit_char): Use it instead of front_emacs_window.
5318 (x_scroll_bar_report_motion): Obtain window from control owner.
5319 (x_make_frame_invisible): Set window manager size hint.
5320 (do_mouse_moved): Remove function.
5321 (XTread_socket): Move its contents here. Generate select-window
5322 event on mouse movement if needed. Use x_detect_focus_change on
5323 activate/deactivate events. Don't deiconify frame or invalidate
5324 window rectangle when dnd items are dropped.
5325 Don't activate/deactivate root control.
5326 (frame_highlight, frame_unhighlight): Activate/deactivate root
5327 control here.
5328 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
5329
5330 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
5331 New extern.
5332
5333 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
5334
5335 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
5336 (lisp): Use it.
5337 (SOME_MACHINE_LISP): Add tooltip.
5338
5339 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5340
5341 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
5342 Don't include TextEncodingConverter.h.
5343 (mac_system_script_code, Vmac_system_locale): New variables.
5344 (syms_of_mac): Defvar them.
5345 (mac_get_system_locale): New function.
5346
5347 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
5348 Use ENCODE_SYSTEM to encode title bar string.
5349 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
5350 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
5351 Use CFStringGetSystemEncoding to get system default string encoding.
5352
5353 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
5354 TextEncodingConverter.h.
5355
5356 2005-04-13 Steven Tamm <steventamm@mac.com>
5357
5358 * macterm.c (syms_of_macterm): Remove redundant definition of
5359 mac-pass-control-to-system.
5360
5361 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
5362
5363 * window.c (Fset_window_configuration): Be careful when you choose
5364 among several possible points for the new_current_buffer.
5365
5366 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5367
5368 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
5369 poll_for_input_1. Set interrupt_input_pending to 1 instead.
5370 (Qlanguage_change) [MAC_OS]: New variable.
5371 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
5372 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
5373
5374 * macterm.c (mac_keyboard_text_encoding)
5375 (current_mac_keyboard_text_encoding): Remove variables.
5376 (XTread_socket): Store language-change event if keyboard script change
5377 is detected. Don't convert input to `mac_keyboard_text_encoding'.
5378 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
5379
5380 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
5381
5382 2005-04-10 Richard M. Stallman <rms@gnu.org>
5383
5384 * emacs.c (standard_args): Rename --bare-bones to --quick.
5385 Add -D aka --basic-display.
5386
5387 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
5388
5389 2005-04-09 Richard M. Stallman <rms@gnu.org>
5390
5391 * keymap.c (where_is_internal): Convert a string used as event type
5392 into "(any string)".
5393
5394 * lread.c (Vloads_in_progress): Not static.
5395 * fns.c (Vloads_in_progress): Add extern.
5396 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
5397
5398 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
5399
5400 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
5401
5402 2005-04-09 Lute Kamstra <lute@gnu.org>
5403
5404 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
5405 within the accessible part of the buffer.
5406
5407 2005-04-09 Kim F. Storm <storm@cua.dk>
5408
5409 * lread.c (readevalloop): Add args START and END as region in
5410 current buffer to read. Callers changed.
5411 When specified, narrow to this region only when reading,
5412 not during eval. Track next point to read from during eval.
5413 Also restore point to "real" buffer position before eval.
5414 (Feval_region): Don't save excursion and restriction here, and
5415 don't narrow to region. Just pass region to readevalloop.
5416 Note: Point is now preserved even when PRINTFLAG is nil.
5417
5418 2005-04-08 Kim F. Storm <storm@cua.dk>
5419
5420 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
5421
5422 2005-04-06 Kim F. Storm <storm@cua.dk>
5423
5424 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
5425
5426 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5427
5428 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
5429 (Fmac_get_preference): Doc fix.
5430
5431 * macfns.c (Fx_create_frame, x_create_tip_frame):
5432 Add "fontset-mac" to fallback font/fontsets.
5433
5434 2005-04-04 Kim F. Storm <storm@cua.dk>
5435
5436 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
5437
5438 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
5439 Call it again after autoload.
5440
5441 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5442
5443 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
5444 mallopt.
5445
5446 * ralloc.c (r_alloc_init): Ditto.
5447
5448 2005-04-01 Kenichi Handa <handa@m17n.org>
5449
5450 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
5451 (Vascii_eqv_table): Extern them.
5452
5453 * casetab.c (set_case_table): If standard is nonzero, setup
5454 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
5455
5456 * search.c (looking_at_1): Use current_buffer->case_canon_table,
5457 not DOWNCASE_TABLE.
5458 (string_match_1): Likewise.
5459 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
5460 Vascii_downcase_table.
5461 (fast_string_match_ignore_case): Likewise.
5462 (search_buffer): Fix checking of boyer-moore usability.
5463 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
5464 No need of tranlating characters in PAT. Fix calculation of
5465 simple_translate.
5466
5467 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
5468
5469 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
5470 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
5471 Use XtNtopShadowPixel and XtNbottomShadowPixel.
5472 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
5473 really work and that breaks with some versions of Xaw3d.
5474
5475 2005-03-31 Kenichi Handa <handa@m17n.org>
5476
5477 * coding.c (syms_of_coding): Fix previous change.
5478
5479 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
5480
5481 * fileio.c (search_embedded_absfilename): Fix last change.
5482
5483 2005-03-25 Kenichi Handa <handa@m17n.org>
5484
5485 * coding.c (syms_of_coding): Suggest to use set-coding-category in
5486 the docstring of coding-category-list.
5487
5488 2005-03-31 Kim F. Storm <storm@cua.dk>
5489
5490 * keyboard.c (Qmouse_fixup_help_message): New var.
5491 (syms_of_keyboard): Intern and staticpro it.
5492 (show_help_echo): Apply mouse-fixup-help-message to help string.
5493
5494 2005-03-30 Kim F. Storm <storm@cua.dk>
5495
5496 * xdisp.c (display_line): Allow multiple overlay arrows in window.
5497
5498 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5499
5500 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
5501 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
5502 (Ffile_name_absolute_p): Use it.
5503 (search_embedded_absfilename): New fun, extracted from
5504 Fsubstitute_in_file_name. Use file_name_absolute_p.
5505 Free the pw data after use.
5506 (Fsubstitute_in_file_name): Use it.
5507 After cutting a prefix, re-check file-name-handler.
5508
5509 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
5510
5511 * w32term.h (x_output): Add focus_state.
5512
5513 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
5514 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
5515
5516 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
5517
5518 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
5519 Use Fexit_minibuffer.
5520 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
5521
5522 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5523
5524 * dired.c (Ffile_attributes): Add a missing gcpro.
5525
5526 * alloc.c (make_number): The arg can be bigger than `int'.
5527 * lisp.h (make_number): Make prototype more precise.
5528
5529 * process.c, dired.c (Vfile_name_coding_system)
5530 (Vdefault_file_name_coding_system):
5531 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
5532 (Vdefault_file_name_coding_system): Remove unused declarations.
5533
5534 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5535
5536 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
5537 if it failed to pop up (Gnome "show pointer on ctrl" option makes
5538 menus fail to pop up).
5539
5540 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5541
5542 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
5543 Just prepend a backslash without replacing the NBSP by an SPC.
5544
5545 2005-03-22 Kim F. Storm <storm@cua.dk>
5546
5547 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
5548 * dispextern.h (lookup_derived_face): Fix prototype.
5549 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
5550
5551 * xdisp.c (handle_single_display_spec): Derive left-fringe and
5552 right-fringe face from fringe face.
5553
5554 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
5555 Derive face from fringe face.
5556
5557 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5558
5559 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
5560
5561 2005-03-22 David Kastrup <dak@gnu.org>
5562
5563 * textprop.c (Fnext_char_property_change)
5564 (Fprevious_char_property_change): Allow marker as limit.
5565 (Fnext_single_char_property_change)
5566 (Fprevious_single_char_property_change): Check that limit is a
5567 number in strings.
5568 (Fnext_single_char_property_change): Coerce position to integer.
5569 (Fprevious_single_char_property_change): Same here.
5570
5571 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
5572
5573 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
5574
5575 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
5576
5577 * frame.c (Fignore_event): Remove.
5578 (syms_of_frame): Don't defsubr it.
5579
5580 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
5581 redundant `ignore-event'.
5582
5583 2005-03-19 Eli Zaretskii <eliz@gnu.org>
5584
5585 * unexec.c (write_segment, unexec): Move these functions to avoid
5586 forward references (which cause errors with "gcc -gcoff").
5587
5588 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5589
5590 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
5591 that it doesn't become "tooltip". The specbind is enough.
5592
5593 * xrdb.c (x_load_resources): Use different char *helv when I18N
5594 is present.
5595
5596 2005-03-17 Kenichi Handa <handa@m17n.org>
5597
5598 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
5599
5600 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5601
5602 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
5603 Use xic_create_fontsetname even for non-Motif menus.
5604 Don't forget to free the fontsetname.
5605
5606 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
5607
5608 2005-03-17 Richard M. Stallman <rms@gnu.org>
5609
5610 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
5611
5612 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
5613 (Fmake_symbolic_link): Use G to read the new file name.
5614
5615 * callint.c (Finteractive): Document G option.
5616 (Fcall_interactively): Implement G option.
5617
5618 * buffer.c (buffer_lisp_local_variables): New function,
5619 broken out from Fbuffer_local_variables.
5620 (clone_per_buffer_values): Use buffer_lisp_local_variables.
5621
5622 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5623
5624 * xfns.c (xic_create_fontsetname): Add `motif' argument.
5625 Always return a freshly allocated string.
5626 (xic_create_xfontset): Adjust call.
5627
5628 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
5629 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
5630 (dump_realized_face): Fix warning.
5631
5632 * emacs.c (Fkill_emacs): YAILOM.
5633
5634 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
5635
5636 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5637
5638 * mac.c (HASHKEY_TERMINAL): Remove.
5639 (HASHKEY_MAX_NID): New macro.
5640 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
5641 argument.
5642 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
5643 (xrm_create_database, xrm_q_put_resource)
5644 (xrm_merge_string_database, xrm_q_get_resource_1)
5645 (xrm_q_get_resource): Change resource database representation so
5646 that it may not use multiple hash tables for a single database.
5647 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
5648
5649 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
5650
5651 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
5652
5653 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
5654 locale-coding-system, as was already done for WINDOWSNT.
5655
5656 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
5657 translation for chars in the 0-255 range.
5658
5659 2005-03-16 Lute Kamstra <lute@gnu.org>
5660
5661 * floatfns.c (Ffloor): Doc fix.
5662
5663 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5664
5665 * mac.c: Include macterm.h instead of directly including Carbon.h.
5666 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
5667 (Qarray, Qdictionary): New variables.
5668 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5669 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
5670 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
5671 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
5672 in callback for CFDictionaryApplyFunction.
5673 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5674 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5675 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
5676 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
5677 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
5678 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5679 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
5680 (skip_white_space, parse_comment, parse_include_file)
5681 (parse_binding, parse_component, parse_resource_name, parse_value)
5682 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
5683 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
5684 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
5685 New functions.
5686
5687 * macfns.c (mac_get_rdb_resource): Remove function.
5688 (x_get_string_resource): Use xrm_get_resource.
5689
5690 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
5691
5692 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
5693 name_list_element.
5694 (mac_make_rdb): Create resource database from preferences and
5695 argument string.
5696 (mac_term_init): Save resource database to cddr part of
5697 name_list_element.
5698
5699 * macterm.h (xrm_merge_string_database, xrm_get_resource)
5700 (xrm_get_preference_database): Add externs.
5701 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5702 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5703 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
5704
5705 * process.c (init_process): Change `#ifdef DARWIN' to `#if
5706 defined (DARWIN) || defined (MAC_OSX)'
5707
5708 * s/darwin.h (DARWIN): Don't define.
5709
5710 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5711
5712 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
5713 Remove unused variables.
5714 (syms_of_macfns): Don't initialize them. Likewise for
5715 Qface_set_after_frame_default. Defvar and initialize
5716 Vx_window_horizontal_drag_shape.
5717 (x_set_mouse_color): Change mouse pointer shape.
5718 (mac_window) [!MAC_OSX]: Create root control.
5719 (Fx_create_frame): Remove initializations of mouse pointer shapes.
5720 (hourglass_started): New function (from xfns.c).
5721 (start_hourglass, cancel_hourglass): Put function body in #ifdef
5722 MAC_OSX.
5723 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
5724 indicator for each non-tooltip frame if needed, and show it.
5725 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
5726
5727 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
5728 Controls.h. Use ThemeCursor instead of CursHandle.
5729
5730 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
5731 Remove functions and declarations.
5732 (mac_set_colors): Take argument for saving background color.
5733 All callers changed.
5734 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
5735 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
5736 background color.
5737 (x_update_end, mac_do_track_drag): Don't reset background color.
5738 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
5739 Use SetThemeCursor.
5740 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
5741 indicator control to the upper-right corner of the window.
5742 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
5743 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
5744 (do_window_update): Update controls after updating content area.
5745 (mac_handle_window_event): Remove unused extern.
5746 (XTread_socket): Check both control handle and control part code
5747 to determine whether a scroll bar is clicked. Activate/deactivate
5748 root control instead of contained scroll bar controls.
5749 (make_mac_terminal_frame): Use ThemeCursor constants.
5750
5751 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
5752 New member hourglass_control.
5753 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
5754 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
5755
5756 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5757
5758 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
5759 coincides with that in Apple X11 except `clear', `enter' on
5760 laptops, and fn + `enter' on laptops.
5761
5762 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
5763
5764 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
5765 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
5766 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
5767
5768 * xfns.c (xic_defaut_fontset): New constant.
5769 (xic_create_fontsetname): New function.
5770 Extracted from create_frame_xic. Try to generate a slightly
5771 better fontset.
5772 (xic_create_xfontset): Use it.
5773 (create_frame_xic): Simplify.
5774
5775 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
5776
5777 * fileio.c (Fmake_symbolic_link): Fix last change.
5778
5779 2005-03-11 Richard M. Stallman <rms@gnu.org>
5780
5781 * fileio.c (Frename_file, Fadd_name_to_file)
5782 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
5783 expand the basename of FILE relative to it.
5784
5785 2005-03-11 Kenichi Handa <handa@m17n.org>
5786
5787 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
5788 before calling setup_coding_system so that autoloading of a coding
5789 system work.
5790
5791 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5792
5793 * xfns.c (hourglass_started): New function.
5794
5795 * dispextern.h: Declare hourglass_started.
5796
5797 * keyboard.c (Fexecute_extended_command): Restart hourglass
5798 after call to Fcompleting_read if already started.
5799
5800 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
5801 GTK main loop is entered in xterm.c, thus doing the redraw.
5802
5803 2005-03-10 Kim F. Storm <storm@cua.dk>
5804
5805 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
5806
5807 2005-03-08 Kenichi Handa <handa@m17n.org>
5808
5809 * frame.c (x_set_font): Call set_default_ascii_font if an
5810 available font is found.
5811
5812 * fontset.c (set_default_ascii_font): New function.
5813 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
5814
5815 * fontset.h (set_default_ascii_font): Extern it.
5816
5817 2005-03-07 Kim F. Storm <storm@cua.dk>
5818
5819 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
5820 (clear_image_cache_count): New var.
5821 (redisplay_internal): Don't clear face and image caches in the
5822 middle of redisplay; do it afterwards.
5823
5824 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
5825
5826 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
5827 is valid. If not, clear phys_cursor_on_p and return.
5828
5829 2005-03-07 Andreas Schwab <schwab@suse.de>
5830
5831 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
5832
5833 2005-03-06 Richard M. Stallman <rms@gnu.org>
5834
5835 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
5836
5837 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
5838 (Feval, Ffuncall): Use CHECK_CONS_LIST.
5839
5840 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
5841
5842 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
5843 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
5844
5845 2005-03-05 Juri Linkov <juri@jurta.org>
5846
5847 * emacs.c (USAGE1): Replace Info node name "command arguments"
5848 with "emacs invocation".
5849 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
5850 allow arguments `--color' and `MODE' to be separated by space.
5851 Add --no-blinking-cursor, -nbc.
5852 (standard_args): Add -nbc, --no-blinking-cursor.
5853
5854 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5855
5856 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
5857 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
5858 * fileio.c (Fexpand_file_name) [VMS]:
5859 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
5860 * doc.c (munge_doc_file_name) [VMS]: Likewise.
5861 (Fsnarf_documentation): Call munge_doc_file_name.
5862
5863 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
5864
5865 * s/vms.h (FILE_SYSTEM_CASE): New macro.
5866 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
5867 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
5868
5869 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5870
5871 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
5872 defined (MAC_OSX) && defined (HAVE_CARBON)'.
5873
5874 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
5875
5876 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5877 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
5878 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
5879 (mac_clear_font_name_table): Move extern to macterm.h.
5880
5881 * macfns.c (install_window_handler): Move extern to macterm.h.
5882 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
5883 valid. Don't check !NILP (dir) because it is already checked with
5884 CHECK_STRING.
5885 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
5886 specifying the default location and obtaining the selected filename.
5887
5888 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
5889
5890 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
5891 are included via Carbon.h.
5892
5893 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
5894 Define USE_CARBON_EVENTS to 1.
5895 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
5896 (x_free_frame_resources): Call remove_window_handler for
5897 non-tooltip windows.
5898 [TARGET_API_MAC_CARBON]: Don't include headers that are included
5899 via Carbon.h.
5900 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
5901 (mac_do_receive_dragUPP): New variables.
5902 (mac_handle_service_event, init_service_handler): Put declarations
5903 and definitions in #ifdef MAC_OSX.
5904 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
5905 drag-and-drop handler functions and register them.
5906 (remove_window_handler): New function.
5907 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
5908 Use fsspec_to_posix_pathname.
5909 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
5910 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
5911 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
5912 Set default cursors.
5913 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
5914 init_service_handler or init_quit_char_handler.
5915 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
5916
5917 * macterm.h (install_window_handler, remove_window_handler)
5918 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
5919 (mac_clear_font_name_table): New externs.
5920
5921 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5922
5923 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
5924 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
5925 (Fexpand_file_name): Likewise.
5926
5927 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
5928
5929 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
5930 no longer special-case VMS. Add bogus return value.
5931
5932 2005-03-02 Kim F. Storm <storm@cua.dk>
5933
5934 * dispextern.h (XASSERTS): Define to 0 if not already defined.
5935 (xassert) [!XASSERTS]: Define dummy version.
5936
5937 2005-03-02 Kim F. Storm <storm@cua.dk>
5938
5939 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
5940 Reported by David Kastrup.
5941
5942 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
5943
5944 * xdisp.c (get_next_display_element): Fix control and escape
5945 glyph from display vector.
5946
5947 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
5948
5949 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
5950
5951 2005-02-27 Richard M. Stallman <rms@gnu.org>
5952
5953 * xdisp.c (fast_find_position): Rename END to BEG.
5954 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
5955
5956 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5957
5958 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
5959 gtk_window_resize and x_wm_set_size_hint.
5960
5961 2005-02-25 Kim F. Storm <storm@cua.dk>
5962
5963 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
5964
5965 * xdisp.c (init_from_display_pos): Don't read past end of
5966 it->overlay_strings array.
5967
5968 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
5969
5970 * buffer.c (syms_of_buffer): Fix typo.
5971
5972 2005-02-23 Lute Kamstra <lute@gnu.org>
5973
5974 * buffer.c (Foverlay_buffer): Doc fix.
5975
5976 2005-02-22 Kim F. Storm <storm@cua.dk>
5977
5978 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
5979 and symbol keys in alists and hash tables.
5980
5981 * xdisp.c (fast_find_position): Fix search for start of overlay.
5982
5983 2005-02-21 Kim F. Storm <storm@cua.dk>
5984
5985 * window.c (window_scroll_pixel_based): When scrolling backwards,
5986 handle partial visible line at end of window even when we hit PT.
5987
5988 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
5989
5990 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
5991
5992 2005-02-21 Kim F. Storm <storm@cua.dk>
5993
5994 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
5995 I think those asserts are bogus if buffer contains invisible text
5996 or images.
5997
5998 2005-02-21 David Kastrup <dak@gnu.org>
5999
6000 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
6001
6002 2005-02-20 Kim F. Storm <storm@cua.dk>
6003
6004 * xdisp.c (pos_visible_p): Be sure to move to the specified
6005 position. Always get the full ascent / descent of the
6006 corresponding row, to return reliable rtop and rbot values.
6007 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
6008 Must look one character back, as back_to_previous_line_start
6009 returns position after the newline.
6010 (move_it_vertically_backward): Fix heuristic for when to move further
6011 back in case line_height * 2/3 is larger than window height.
6012 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
6013 as it does not do anything anymore. Add arg current_matrix_p to
6014 use current matrix rather than desired matrix when set.
6015 (try_cursor_movement): Don't scroll to make cursor row fully
6016 visible if cursor didn't move. This avoids unexpected recentering
6017 in case of blinking cursor or accepting process output.
6018 Use current matrix to check cursor row visibility.
6019 (redisplay_window): Fix whether to recenter or move to top in case
6020 cursor line is taller than window height.
6021 (find_first_unchanged_at_end_row): Stop search if we reach a row
6022 which not enabled (instead of abort).
6023
6024 2005-02-18 Kim F. Storm <storm@cua.dk>
6025
6026 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
6027 to be nil in a :box attribute value list; customize prints that
6028 as lisp value when no box color is specified.
6029
6030 * .gdbinit (pitx, pit): Pretty print display iterator.
6031 (prowx, prow): Pretty print glyph row.
6032 (pcursorx, pcursor): Pretty print a window cursor.
6033 (pwinx, pwin): Pretty print struct window.
6034
6035 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
6036
6037 * alloc.c (BLOCK_BYTES): Harmless typo.
6038
6039 2005-02-17 Andreas Schwab <schwab@suse.de>
6040
6041 * xfns.c (hack_wm_protocols): Use correct type for last parameter
6042 of XGetWindowProperty to avoid aliasing issues.
6043 (Fx_window_property): Likewise.
6044
6045 * xselect.c (Fx_disown_selection_internal): Use union of struct
6046 input_event and struct selection_input_event to avoid aliasing issues.
6047
6048 * xterm.c (handle_one_xevent): Use union of struct input_event and
6049 struct selection_input_event to avoid aliasing issues.
6050 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
6051
6052 2005-02-17 Kim F. Storm <storm@cua.dk>
6053
6054 * dispextern.h (enum it_method): New enum.
6055 (GET_FROM_*): Its members.
6056 (struct it): Change member method from function pointer to enum.
6057
6058 * xdisp.c (check_it, init_from_display_pos, handle_stop)
6059 (setup_for_ellipsis, handle_single_display_spec)
6060 (handle_composition_prop, next_overlay_string)
6061 (get_overlay_strings, reseat_1, reseat_to_string)
6062 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
6063 (in_display_vector_p, display_line, get_next_display_element):
6064 Change it->method from function pointer to enum.
6065 (get_next_element): New array to map it->method to function.
6066 (get_next_display_element): Use it.
6067 (set_iterator_to_next): Use switch instead of if/else chain.
6068
6069 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6070
6071 * w32select.c: Summary: Thorough rework to implement Unicode
6072 clipboard operations and delayed rendering.
6073
6074 Drop last_clipboard_text and related code, keep track of
6075 ownership via clipboard_owner instead. Drop old #if0 sections.
6076
6077 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
6078 (clipboard_owner, modifying_clipboard, cfg_coding_system)
6079 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
6080 (current_coding_system, current_requires_encoding)
6081 (current_num_nls, current_clipboard_type, current_lcid):
6082 New static variables.
6083
6084 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
6085 (render, render_all, run_protected, lisp_error_handler)
6086 (owner_callback, create_owner, setup_config)
6087 (enum_locale_callback, cp_from_locale, coding_from_cp):
6088 New local functions.
6089
6090 (term_w32select, globals_of_w32select): New global functions.
6091
6092 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
6093 clipboard_owner instead. Use delayed rendering and provide
6094 all text formats. Provide CF_LOCALE if necessary.
6095
6096 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
6097 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
6098 available. Force DOS line-ends for decoding.
6099
6100 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
6101
6102 (syms_of_w32select): Init and register new variables.
6103
6104 * w32.h: Add prototypes for globals_of_w32select and
6105 term_w32select. Make the neighboring K&R declarations into
6106 prototypes, too.
6107
6108 * emacs.c: Include w32.h to get function prototypes.
6109 (main): Call globals_of_w32select.
6110
6111 * w32.c (term_ntproc): Call term_w32select.
6112
6113 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
6114
6115 2005-02-16 Kim F. Storm <storm@cua.dk>
6116
6117 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
6118 at end of display vector.
6119
6120 2005-02-15 Richard M. Stallman <rms@gnu.org>
6121
6122 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
6123 for mode and header lines.
6124
6125 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
6126
6127 * keymap.h (describe_map_tree): Change decl.
6128
6129 * keyboard.c (command_loop_1): Always use safe_run_hooks
6130 to run Qdeferred_action_function.
6131
6132 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
6133 (describe_map, describe_vector): Likewise. When it's 1,
6134 don't omit shadowed bindings, instead mark them as shadowed.
6135
6136 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
6137 for describe_map_tree. Pass 1 for MENTION_SHADOW.
6138
6139 * data.c (Fsetq_default): Allow no arg case.
6140
6141 2005-02-14 Kenichi Handa <handa@m17n.org>
6142
6143 * coding.c (encode_coding_string): Always return a unibyte string.
6144 If NOCOPY is nonzero and there's no need of encoding, make STR
6145 unibyte directly.
6146
6147 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
6148 multibyte string, signal an error instead of aborting.
6149
6150 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
6151
6152 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
6153
6154 2005-02-12 Kim F. Storm <storm@cua.dk>
6155
6156 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
6157
6158 2005-02-10 Kim F. Storm <storm@cua.dk>
6159
6160 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
6161 if it moves outside window or it doesn't display text.
6162
6163 2005-02-09 Kim F. Storm <storm@cua.dk>
6164
6165 * undo.c (Fprimitive_undo): Check that undo function does not
6166 switch buffer.
6167
6168 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6169
6170 * xselect.c (selection_data_to_lisp_data): For the special case
6171 type == XA_ATOM, data contains array of int, not array of Atom.
6172 (x_property_data_to_lisp, selection_data_to_lisp_data):
6173 Comment update: data must be array of int for format == 32.
6174
6175 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
6176
6177 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
6178
6179 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6180
6181 * xfns.c (Fx_change_window_property): Use long array when format is 32.
6182 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
6183 convert long array returned from XGetWindowProperty to an int array.
6184 (x_set_tool_bar_lines): Check that width and height is greater than
6185 zero before clearing area.
6186
6187 * xselect.c (x_reply_selection_request): Pass long array to
6188 XChangeProperty so that 64 bit longs are handeled correctly.
6189 (x_get_window_property): If format is 32 and long is bigger than 32
6190 bits convert data from XGetWindowProperty from long array to int array.
6191 (lisp_data_to_selection_data): When the input is a vector and the
6192 format is 32, allocate a long array even if long is bigger than 32 bits.
6193 (x_fill_property_data): Use char, short and long as the man page
6194 for XChangeProperty specifies. This way the data returned is OK for
6195 both 32 and 64 bit machines.
6196 (x_handle_dnd_message): Calculate size correctly even for 64 bit
6197 machines.
6198 (Fx_send_client_event): Undo change from 2005-02-05,
6199 x_fill_property_data now handles that case.
6200
6201 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
6202 reason for the approach in the code.
6203
6204 2005-02-07 Kim F. Storm <storm@cua.dk>
6205
6206 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
6207
6208 2005-02-06 Richard M. Stallman <rms@gnu.org>
6209
6210 * eval.c (Frun_hook_with_args)
6211 (Frun_hook_with_args_until_success)
6212 (Frun_hook_with_args_until_failure): Doc fixes.
6213
6214 2005-02-05 Andreas Schwab <schwab@suse.de>
6215
6216 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
6217
6218 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6219
6220 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
6221 the longs in a XClientMessageEvent correctly when long is 64 bits.
6222
6223 2005-02-05 Eli Zaretskii <eliz@gnu.org>
6224
6225 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
6226 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
6227
6228 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6229
6230 * xmenu.c (menubar_selection_callback): Force out GTK buffered
6231 events so the menu event comes after them. This is to prevent sit-for
6232 from exiting on buffered events directly after a menu selection,
6233 lisp code for Help => About Emacs uses sit-for.
6234
6235 * gtkutil.c (create_menus): Connect selection-done event instead of
6236 the deactivate event to deactivate_cb. This will make the last
6237 leave event come before the call to deactivate_cb, so the leave
6238 event does not make sit-for exit after a menu selection.
6239
6240 2005-02-03 Kim F. Storm <storm@cua.dk>
6241
6242 * dispnew.c (build_frame_matrix_from_leaf_window)
6243 [!GLYPH_DEBUG]: Fix xassert.
6244
6245 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
6246
6247 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
6248
6249 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6250
6251 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
6252 the compiling OS version.
6253
6254 * macfns.c (x_create_tip_frame): Likewise.
6255
6256 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
6257
6258 2005-02-03 Richard M. Stallman <rms@gnu.org>
6259
6260 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
6261
6262 * xdisp.c (echo_area_display): Clear echo_message_buffer.
6263
6264 * buffer.c (Fbury_buffer): Doc fix.
6265
6266 2005-02-02 Steven Tamm <steventamm@mac.com>
6267
6268 * macfns.c (unwind_create_frame): Fix compile error due to
6269 xassert being uncondition, but predicate is.
6270 * dispnew.c (update_window): Fix compile error due to
6271 xassert being uncondition, but predicate is.
6272
6273 2005-02-02 Miles Bader <miles@gnu.org>
6274
6275 * dispextern.h (xassert): Enable unconditionally.
6276
6277 2005-02-02 Kim F. Storm <storm@cua.dk>
6278
6279 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
6280
6281 2005-02-02 Kenichi Handa <handa@m17n.org>
6282
6283 * casefiddle.c (casify_object): Enable changing characters of
6284 different byte length.
6285 (casify_region): Fix loop condition, args to replace_range_2, and
6286 update opoint_byte.
6287
6288 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
6289
6290 2005-02-01 Kim F. Storm <storm@cua.dk>
6291
6292 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
6293 stack before calling handle_display_prop.
6294
6295 2005-01-31 Kim F. Storm <storm@cua.dk>
6296
6297 * undo.c (Qapply): New lisp var.
6298 (syms_of_undo): Intern and staticpro it.
6299 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
6300 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
6301
6302 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6303
6304 2005-01-30 Jesper Harder <harder@phys.au.dk>
6305
6306 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
6307 <mac-emulate-three-button-mouse>: Fix docstring indentation.
6308
6309 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
6310
6311 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6312 Increase value to 3 Meg.
6313
6314 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6315
6316 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
6317 button events are not received otherwise.
6318
6319 2005-01-29 Richard M. Stallman <rms@gnu.org>
6320
6321 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6322
6323 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
6324
6325 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
6326
6327 * keymap.c (access_keymap): YAILOM.
6328
6329 2005-01-27 Kim F. Storm <storm@cua.dk>
6330
6331 * xdisp.c (get_phys_cursor_geometry): New function to calculate
6332 phys cursor position and size for hollow cursor. Position is
6333 aligned with get_glyph_string_clip_rect and ensures that a hollow
6334 cursor is shown, even when the actual glyph is not visible.
6335
6336 * dispextern.h (get_phys_cursor_geometry): Add prototype.
6337
6338 * xterm.c (x_clip_to_row): Ensure y >= 0.
6339 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6340
6341 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6342
6343 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6344
6345 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
6346
6347 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
6348
6349 2005-01-27 Kim F. Storm <storm@cua.dk>
6350
6351 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
6352 glyph, even when row is only partially visible and actual cursor
6353 position is not visible.
6354
6355 2005-01-24 Richard M. Stallman <rms@gnu.org>
6356
6357 * xterm.c (x_error_quitter): No longer static, and moved after
6358 x_error_handler.
6359
6360 2005-01-24 Kim F. Storm <storm@cua.dk>
6361
6362 * xdisp.c (move_it_by_lines): If we move forward after going too
6363 far back, cancel move if end position is same as start position.
6364
6365 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6366
6367 * dispextern.h (struct glyph_string): New members clip_head and
6368 clip_tail.
6369
6370 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
6371 region to the area between clip_head and clip_tail.
6372 (draw_glyphs): Record the area that need to be actually redrawn to
6373 the new variables clip_head and clip_tail when there are
6374 overhangs. Set values of these variables to the corresponding
6375 members in struct glyph_string. Refine x coordinates for
6376 notice_overwritten_cursor using clip_head and clip_tail.
6377
6378 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
6379
6380 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
6381 QDTextBounds.
6382 (x_draw_glyph_string): Don't fill the background of the successor
6383 of a glyph with a right overhang if the successor will draw a cursor.
6384 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6385 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
6386
6387 2005-01-24 Kim F. Storm <storm@cua.dk>
6388
6389 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
6390 direction if window height was smaller than next-screen-context-lines.
6391 Now always scroll at least one line in the requested direction.
6392 Ensure that we actually do scroll backwards when requested to do so.
6393
6394 * xdisp.c (redisplay_window): Only try to make cursor line fully
6395 visible once (to avoid redisplay loop).
6396
6397 2005-01-23 Kim F. Storm <storm@cua.dk>
6398
6399 * window.c (Fpos_visible_in_window_p): Simplify return value for
6400 partially visible rows.
6401 (window_scroll_pixel_based): Adapt to that change.
6402
6403 * window.c (window_scroll_pixel_based): Force moving to next line
6404 if scrolling doesn't move start point, e.g. if looking at tall image.
6405
6406 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
6407 Clear last_height before calling line_bottom_y to get real height.
6408 Fix calculation of y.
6409
6410 2005-01-22 Steven Tamm <steventamm@mac.com>
6411
6412 * s/darwin.h: Removed PTY_ITERATION from here.
6413 (DARWIN): Define.
6414
6415 * process.c (init_process): Default process-connection-type to
6416 nil on darwin 6 or less, t if it is 7 or higher. This way the
6417 broken pty behavior is still allowed on darwin 6 for interactive
6418 processes for people that know what they are doing.
6419
6420 2005-01-22 Kim F. Storm <storm@cua.dk>
6421
6422 * window.c (auto_window_vscroll_p): New boolean.
6423 (syms_of_window): DEFVAR_BOOL it.
6424 (Fpos_visible_in_window_p): Extend return value to include RTOP
6425 and RBOT values if FULLY is nil.
6426 (window_scroll_pixel_based): Adjust vscroll for partially visible
6427 rows if auto_window_vscroll_p is set.
6428 (Fset_window_vscroll): Do nothing if vscroll is not modified.
6429
6430 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
6431 to return number of partially invisible pixels at top and bottom
6432 of the dislay row at POS.
6433
6434 * lisp.h (pos_visible_p): Fix prototype.
6435
6436 2005-01-21 Richard M. Stallman <rms@gnu.org>
6437
6438 * fileio.c (Fcopy_file): Doc fix.
6439
6440 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6441
6442 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
6443 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
6444 start of function for older compilers.
6445
6446 2005-01-20 Richard M. Stallman <rms@gnu.org>
6447
6448 * editfns.c (Fmessage): If arg is "", return "" (as before).
6449
6450 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
6451
6452 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
6453 variable.
6454
6455 2005-01-20 Steven Tamm <steventamm@mac.com>
6456
6457 * editfns.c (Voperating_system_release): Add.
6458 (init_editfns): Assign new variable operating-system-release
6459 based on call to uname if available.
6460 (get_operating_system_release): Add function to
6461 allow c-level access to operating system release.
6462
6463 * config.h: Regenerated.
6464
6465 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
6466 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
6467 using ptys as '7'.
6468
6469 2005-01-20 Kim F. Storm <storm@cua.dk>
6470
6471 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
6472
6473 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
6474 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
6475
6476 * macterm.c (x_draw_glyph_string_box): Likewise.
6477
6478 * w32term.c (x_draw_glyph_string_box): Likewise.
6479
6480 * indent.c (Fvertical_motion): Temporarily disable selective display.
6481
6482 2005-01-19 Kim F. Storm <storm@cua.dk>
6483
6484 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
6485 image property.
6486
6487 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
6488
6489 2005-01-18 Kim F. Storm <storm@cua.dk>
6490
6491 * xdisp.c (fast_find_position): Backtrack to find first row if
6492 charpos is inside a display overlay that spans multiple lines.
6493
6494 2005-01-18 Kenichi Handa <handa@m17n.org>
6495
6496 * coding.c (decode_coding_iso2022): Translate invalid codes if
6497 translation-table is specified.
6498
6499 2005-01-18 Kim F. Storm <storm@cua.dk>
6500
6501 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
6502 change. If handle_display_prop indicates newline is replaced by
6503 image or text, move back to start of relevant overlay or interval
6504 and continue scan from there. Simplify.
6505
6506 2005-01-17 Kim F. Storm <storm@cua.dk>
6507
6508 * dispnew.c (mode_line_string, marginal_area_string):
6509 Fix off-by-one error in search for glyph.
6510
6511 2005-01-16 Kim F. Storm <storm@cua.dk>
6512
6513 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
6514
6515 2005-01-16 Steven Tamm <steventamm@mac.com>
6516
6517 * macterm.c (mac_to_x_fontname): Remove spurious argument.
6518
6519 2005-01-16 Andreas Schwab <schwab@suse.de>
6520
6521 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
6522
6523 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6524
6525 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
6526 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
6527
6528 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6529
6530 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
6531 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
6532 New flags for readable_events.
6533 (get_filtered_input_pending, readable_filtered_events): Remove.
6534 (tracking_off): Call readable_events and get_input_pending with
6535 flag READABLE_EVENTS_DO_TIMERS_NOW.
6536 (readable_events): Move code from old readable_filtered_events here,
6537 but check new READABLE_EVENTS_* in argument flags instead of previous
6538 two boolean arguments do_timers_now and filter_events.
6539 If we are doing mouse tracking and the mouse moved, return only if
6540 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
6541 (swallow_events): Call get_input_pending with flag
6542 READABLE_EVENTS_DO_TIMERS_NOW.
6543 (get_input_pending): Move code from old get_filtered_input_pending
6544 here. Replace boolean arguments do_timers_now, filter_events with
6545 flags, and pass flags to readable_events. Document new
6546 READABLE_EVENTS_* flags.
6547 (detect_input_pending_ignore_squeezables): New function.
6548 (detect_input_pending_run_timers): Call get_input_pending with flag
6549 READABLE_EVENTS_DO_TIMERS_NOW.
6550 (Finput_pending_p): Call get_input_pending with flags
6551 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
6552
6553 * dispnew.c (update_window, update_frame_1): Replace calls to
6554 detect_input_pending with detect_input_pending_ignore_squeezables
6555 so that redisplay is not paused if the event queue contains only
6556 mouse movements.
6557
6558 * lisp.h: Declare detect_input_pending_ignore_squeezables.
6559
6560 2005-01-15 Steven Tamm <steventamm@mac.com>
6561
6562 * macterm.c (Vmac_use_core_graphics): Declare variable for
6563 mac-allow-anti-aliasing.
6564 (syms_of_macterm): DEFVAR_LISP and initialize it.
6565 (mac_draw_string_common): Use core graphics text rendering if
6566 mac-allow-anti-aliasing is enabled.
6567
6568 * macfns.c (Fx_file_dialog): Save As dialog includes only the
6569 file name in the text box.
6570
6571 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6572
6573 * macfns.c (x_set_foreground_color, x_set_background_color):
6574 Sync with xfns.c.
6575 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
6576 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
6577 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
6578
6579 2005-01-14 Kim F. Storm <storm@cua.dk>
6580
6581 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
6582
6583 2005-01-13 Richard M. Stallman <rms@gnu.org>
6584
6585 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
6586 if Voverriding_terminal_local_map is non-nil.
6587
6588 * keyboard.c (syms_of_keyboard): Doc fix.
6589
6590 2005-01-13 Kim F. Storm <storm@cua.dk>
6591
6592 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
6593 (specify 0 for FACE instead). Reorder arg list. Doc fix.
6594
6595 2005-01-12 Richard M. Stallman <rms@gnu.org>
6596
6597 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
6598 face property for characters that don't specify one.
6599
6600 * fns.c (Frequire): Record in load-history unconditionally.
6601
6602 2005-01-10 Kim F. Storm <storm@cua.dk>
6603
6604 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
6605
6606 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
6607 Callers changed.
6608 Add support to merge with lisp face id too (if face_name is t).
6609
6610 * xdisp.c (get_next_display_element, next_element_from_display_vector):
6611 Don't lookup lface_id from display table glyphs here; instead use
6612 merge_faces to merge the lisp face id into current face.
6613
6614 2005-01-09 Kim F. Storm <storm@cua.dk>
6615
6616 * dispextern.h (struct it): New member dpvec_face_id.
6617 (merge_into_realized_face): Add prototype.
6618
6619 * xfaces.c (merge_into_realized_face): New function. Used to
6620 merge escape-glyph face or face from display table into current face.
6621
6622 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
6623 (syms_of_xdisp): DEFVAR_LISP it.
6624 (escape_glyph_face): Remove var.
6625 (redisplay_window): Don't initialize it.
6626 (setup_for_ellipsis, get_next_display_element):
6627 Set it->dpvec_face_id to -1.
6628 (get_next_display_element): Test Vshow_nonbreak_escape.
6629 Do not setup escape_glyph_face.
6630 Properly merge escape-glyph face or face from display table with
6631 current face for escape and control characters.
6632 Set it->dpvec_face_id to relevant face id instead of adding it to each
6633 element of display vector.
6634 (next_element_from_display_vector): If it->dpvec_face_id is set,
6635 use that instead of lface_id from glyph itself.
6636
6637 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6638
6639 * xterm.h (struct x_output): New member, toolbar_detached.
6640
6641 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
6642 38.
6643 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
6644 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
6645 (xg_create_tool_bar): Initialize toolbar_detached.
6646 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
6647 toolbar_detached is zero.
6648
6649 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6650
6651 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
6652 gtk_menu_popup if not for_click, so callbacks for the menu are called.
6653
6654 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
6655 (xg_tool_bar_callback, xg_tool_bar_help_callback)
6656 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
6657
6658 * xselect.c (x_get_foreign_selection, x_fill_property_data)
6659 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
6660 XFLOAT_DATA to get extract number from Lisp object.
6661
6662 2005-01-07 Kim F. Storm <storm@cua.dk>
6663
6664 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
6665 Set stop_charpos to current charpos instead of 0.
6666
6667 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
6668
6669 * xdisp.c (Fformat_mode_line): First arg now required.
6670
6671 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6672
6673 * macterm.c (XLoadQueryFont): Correctly handle 0 size
6674 font widths that are returned from some Japanese fonts.
6675
6676 2005-01-06 Kim F. Storm <storm@cua.dk>
6677
6678 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
6679 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
6680 (destroy_fringe_bitmap): Set fringe_faces element to nil.
6681 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
6682 fringe_faces array and init elements to nil.
6683 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
6684 non-persistent face id.
6685 (mark_fringe_data): New function for GC.
6686
6687 * alloc.c (mark_fringe_data): Declare extern.
6688 (Fgarbage_collect): Call mark_fringe_data.
6689
6690 * alloc.c (overrun_check_free): Invalidate freed memory if
6691 XMALLOC_CLEAR_FREE_MEMORY is defined.
6692
6693 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6694
6695 * macfns.c: Include sys/param.h.
6696 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
6697 and function.
6698 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
6699 of filename string. Set event callback function when creating
6700 dialog boxes. Add code conversions for filenames. Don't dispose
6701 of apple event descriptor record if failed to create it.
6702
6703 * macterm.c: Include sys/param.h.
6704 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
6705 kEventWindowUpdate.
6706 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
6707 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
6708 of FSSpec from apple event descriptor record.
6709 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
6710 size of filename string.
6711 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
6712 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
6713 file dialog is in action.
6714 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
6715 Reject only when there are no filename items. Set background color
6716 before (un)highlighting the window below the dragged items.
6717 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
6718
6719 2005-01-05 Romain Francoise <romain@orebokech.com>
6720
6721 * term.c (encode_terminal_code): Fix buffer size computation.
6722
6723 2005-01-04 Richard M. Stallman <rms@gnu.org>
6724
6725 * xdisp.c (Fformat_mode_line): Doc fix.
6726
6727 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
6728
6729 * alloc.c (refill_memory_reserve): Move.
6730 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
6731 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
6732
6733 2005-01-03 Richard M. Stallman <rms@gnu.org>
6734
6735 * window.c (window_scroll_pixel_based): Don't correct preserve_y
6736 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
6737
6738 2005-01-03 Jason Rumney <jasonr@gnu.org>
6739
6740 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
6741 fontp->space_width to FONT_WIDTH so they are valid.
6742
6743 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
6744 average width. Set fontp->average_width and fontp->space_width to
6745 their appropriate values.
6746
6747 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6748 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6749 fontp->space_width.
6750
6751 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6752
6753 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
6754 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
6755 metrics for max and min bounds.
6756 (x_load_font): Correctly calculate average font width metrics.
6757
6758 2005-01-02 Richard M. Stallman <rms@gnu.org>
6759
6760 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
6761
6762 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6763
6764 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
6765
6766 2004-12-31 Richard M. Stallman <rms@gnu.org>
6767
6768 * xdisp.c (setup_for_ellipsis, get_next_display_element):
6769 Set it->ellipsis_p to 1 or 0.
6770 (display_line): Record whether row ends in mid-ellipsis.
6771 (set_cursor_from_row): If ends in ellipsis, find start of it.
6772 (cursor_row_p): If PT's at the end of the ellipsis the row
6773 ends within, don't display cursor on this row.
6774
6775 * dispextern.h (struct it): New element ellipsis_p.
6776 (struct glyph_row): New element ends_in_ellipsis_p.
6777
6778 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
6779 position if we're reading from something other than the buffer.
6780
6781 * window.c (window_scroll_pixel_based): Only look at
6782 Vscroll_preserve_screen_position if the old PT can't be kept.
6783 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
6784
6785 2004-12-30 Kim F. Storm <storm@cua.dk>
6786
6787 * xdisp.c (get_line_height_property): New function extracted from
6788 original calc_line_height_property.
6789 (calc_line_height_property): Rework. Handle t and (nil . ratio).
6790 (x_produce_glyphs): Use them to handle line-height and
6791 line-spacing according to new height spec.
6792 (Qtotal): Remove.
6793 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
6794
6795 2004-12-30 Kenichi Handa <handa@m17n.org>
6796
6797 * fileio.c (Finsert_file_contents): Don't use
6798 current_buffer->buffer_file_coding_system even if REPLACE is
6799 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
6800
6801 * fontset.h (struct font_info): New members space_width and
6802 average_width.
6803
6804 * frame.h (struct frame): New member space_width.
6805 (FRAME_SPACE_WIDTH): New macro.
6806
6807 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
6808
6809 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
6810 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
6811 fontp->space_width.
6812 (x_load_font): Calculate fontp->space_width and fontp->average_width.
6813 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
6814
6815 * xdisp.c (x_produce_glyphs): Calculate tab width by
6816 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
6817
6818 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
6819
6820 * macterm.c (SelectionRange): Add Xcode position apple event struct.
6821 (do_ae_open_documents): Handle Xcode-style file position open events.
6822
6823 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
6824
6825 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
6826
6827 2004-12-29 Richard M. Stallman <rms@gnu.org>
6828
6829 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
6830
6831 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6832
6833 * macfns.c (install_window_handler): Modify extern to return OSErr
6834 value.
6835 (mac_window): Handle return value of install_window_handler.
6836
6837 * macterm.c (reflect_byte): Remove function.
6838 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
6839 Lookup table instead.
6840 (mac_do_font_lists): Simplify calculation of the longest
6841 nonspecial string.
6842 (init_mac_drag_n_drop): Remove function and declaration.
6843 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
6844 init_mac_drag_n_drop.
6845 (mac_do_track_drag): New function and declaration.
6846 (install_window_handler): Return OSErr value.
6847 (install_window_handler) [TARGET_API_MAC_CARBON]:
6848 Register handlers for tracking/receiving drag-and-drop items.
6849 (do_ae_open_documents): Generate unibyte strings for filenames.
6850 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
6851 Reject only non-filename items. Set event modifiers, and return value.
6852
6853 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6854
6855 * coding.c (decode_coding): Fix previous change.
6856
6857 2004-12-28 Richard M. Stallman <rms@gnu.org>
6858
6859 * xdisp.c (back_to_previous_visible_line_start):
6860 Don't call handle_display_prop.
6861
6862 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
6863
6864 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
6865 (decode_coding_emacs_mule, encode_coding_emacs_mule)
6866 (decode_coding_iso2022, encode_designation_at_bol)
6867 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
6868 (decode_coding): Constify arguments and local vars.
6869
6870 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6871
6872 * xmenu.c (popup_get_selection): Only pop down dialogs
6873 on C-g and Escape.
6874 (popup_get_selection): Remove parameter down_on_keypress.
6875 (create_and_show_popup_menu, create_and_show_dialog):
6876 Remove parameter down_on_keypress to popup_get_selection.
6877
6878 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6879
6880 * dispextern.h: Change HAVE_CARBON to MAC_OS.
6881 (struct glyph_string): Likewise.
6882
6883 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
6884 mac_initialize.
6885
6886 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
6887 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
6888
6889 * fns.c (vector): Change MAC_OSX to MAC_OS.
6890
6891 * frame.c (x_set_frame_parameters, x_report_frame_params)
6892 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
6893 (x_set_border_width, Vdefault_frame_scroll_bars):
6894 Change HAVE_CARBON to MAC_OS.
6895
6896 * image.c [MAC_OS]: Include sys/stat.h.
6897 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
6898 QuickTimeComponents.h.
6899
6900 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
6901 [!MAC_OSX] (select): Use mac_wait_next_event.
6902 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
6903 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
6904 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6905 (mac_clear_font_name_table): Add extern.
6906 (Fmac_clear_font_name_table): New defun.
6907 (syms_of_mac): Defsubr it.
6908 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
6909 [MAC_OSX] (select_and_poll_event): New function.
6910 [MAC_OSX] (sys_select): Use it.
6911 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
6912 [MAC_OSX && SELECT_USE_CFSOCKET]
6913 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
6914 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
6915 RunLoop for simultaneously monitoring two kinds of inputs, window
6916 events and process outputs, without periodically polling.
6917
6918 * macfns.c (mac_initialized): Remove extern.
6919 (stricmp): Put in #if 0. All callers changed to use xstricmp in
6920 xfaces.c.
6921 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
6922 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
6923 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
6924 (mac_get_rdb_resource): New function (from w32reg.c).
6925 (x_get_string_resource): Use it.
6926 (install_window_handler): Add extern.
6927 (mac_window): New function.
6928 (Fx_create_frame): Use it instead of make_mac_frame.
6929 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
6930 (Fx_open_connection, Fx_close_connection): New defuns.
6931 (syms_of_macfns): Defsubr them.
6932 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
6933 Add kWindowNoUpdatesAttribute to the window attribute.
6934 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
6935 (x_create_tip_frame): Don't call ShowWindow.
6936 (Fx_show_tip): Call ShowWindow.
6937 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
6938 TARGET_API_MAC_CARBON'.
6939 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
6940 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
6941
6942 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
6943 (Window): Typedef to WindowPtr and move outside `#if
6944 TARGET_API_MAC_CARBON'.
6945 (XSizeHints): New struct.
6946
6947 * macterm.c (x_update_begin, x_update_end)
6948 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
6949 frame.
6950 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
6951 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
6952 (construct_mouse_click): Put in #if 0.
6953 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
6954 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
6955 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
6956 (activate_scroll_bars, deactivate_scroll_bars)
6957 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
6958 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
6959 if the position is neither user-specified nor program-specified.
6960 (x_free_frame_resources): Free size_hints.
6961 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
6962 (mac_clear_font_name_table): New function.
6963 (mac_do_list_fonts): Initialize font_name_table if needed.
6964 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
6965 around mac_do_list_fonts.
6966 (mac_unload_font): New function.
6967 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
6968 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
6969 and definitions with #if TARGET_API_MAC_CARBON.
6970 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
6971 (install_window_handler): Add decl.
6972 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
6973 window. Use UpdateControls. Get the rectangle that should be
6974 updated and restrict the target of expose_frame to it.
6975 (do_grow_window): Set minimum height/width according to size_hints.
6976 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
6977 (do_zoom_window): Don't use x_set_window_size.
6978 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
6979 (install_window_handler): New function.
6980 [!USE_CARBON_EVENTS] (mouse_region): New variable.
6981 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
6982 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
6983 GetEventDispatcherTarget inside BLOCK_INPUT.
6984 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
6985 Update mouse_region when mouse is moved.
6986 (make_mac_frame): Remove.
6987 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
6988 Initialize mouse pointer shapes. Change values of f->left_pos and
6989 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
6990 Don't call ShowWindow.
6991 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
6992 Vinvocation_name and Vsystem_name.
6993 (mac_make_rdb): New function (from w32term.c).
6994 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
6995 already been opened. Don't pass argument to
6996 mac_initialize_display_info. Don't set dpyinfo->height/width.
6997 Add entries to x_display_list and x_display_name_list.
6998 (x_delete_display): New function.
6999 (mac_initialize): Don't call mac_initialize_display_info.
7000 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
7001
7002 * macterm.h (check_mac): Add extern.
7003 (struct mac_output): New member size_hints.
7004 (FRAME_SIZE_HINTS): New macro.
7005 (mac_unload_font): Add extern.
7006
7007 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
7008
7009 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
7010
7011 2004-12-27 Richard M. Stallman <rms@gnu.org>
7012
7013 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
7014 (syms_of_buffer): Don't defsubr it.
7015
7016 * process.c (list_processes_1): Set undo_list instead
7017 of calling Fbuffer_disable_undo.
7018
7019 * xdisp.c (single_display_spec_string_p): Rename from
7020 single_display_prop_string_p.
7021 (single_display_spec_intangible_p): Rename from
7022 single_display_prop_intangible_p.
7023 (handle_single_display_spec): Rename from handle_single_display_prop.
7024 Rewritten to be easier to understand.
7025
7026 Change in load-history format. Functions now get (defun . NAME),
7027 and variables get just NAME.
7028
7029 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
7030
7031 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
7032 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
7033 (Qdefvar): Var deleted.
7034 (syms_of_eval): Don't initialze it.
7035
7036 * lread.c (syms_of_lread) <load-history>: Doc fix.
7037
7038 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7039
7040 * xmenu.c (popup_get_selection): Pop down on C-g.
7041 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
7042 pops down menu on C-g.
7043 (xdialog_show): If dialog popped down and no button in the dialog was
7044 pushed, call Fsignal to quit.
7045 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
7046 Fsignal to quit.
7047
7048 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
7049
7050 * gtkutil.c (xg_initialize): Install bindings for C-g so that
7051 dialogs and menus pop down.
7052
7053 2004-12-27 Kenichi Handa <handa@m17n.org>
7054
7055 * coding.c (code_convert_region): Fix calculation of `ratio'.
7056
7057 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7058
7059 * gtkutil.c (update_frame_tool_bar): Make the value of
7060 tool-bar-button-margin control margins of images in tool bar.
7061
7062 * alloc.c (check_depth): New variable.
7063 (overrun_check_malloc, overrun_check_realloc): Only add
7064 overhead and write check pattern if check_depth is 1 (to handle
7065 recursive calls). Increase/decrease check_depth in entry/exit.
7066 (overrun_check_free): Only check for overhead if check_depth is 1.
7067 Increase/decrease check_depth in entry/exit.
7068
7069 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7070
7071 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
7072 before touching input_available_clear_time, to avoid accessing it
7073 from multiple threads.
7074
7075 2004-12-23 Jason Rumney <jasonr@gnu.org>
7076
7077 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
7078 of JPEG library.
7079
7080 2004-12-22 Richard M. Stallman <rms@gnu.org>
7081
7082 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
7083
7084 * lisp.h (Vundo_outer_limit): Fix decl.
7085
7086 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
7087 Uses changed.
7088 (syms_of_undo): Initialize appropriately.
7089 (truncate_undo_list): If it's nil, there's no limit.
7090
7091 2004-12-22 Kenichi Handa <handa@m17n.org>
7092
7093 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
7094
7095 2004-12-21 Richard M. Stallman <rms@gnu.org>
7096
7097 * eval.c (unwind_to_catch): Clear immediate_quit.
7098
7099 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
7100 specially as `\ ' and `\-'.
7101
7102 * keyboard.c (kbd_buffer_store_event_hold):
7103 In the code for while-no-input, handle immediate_quit.
7104
7105 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
7106 Call that at the very start.
7107 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
7108 (syms_of_alloc): Don't define undo-limit,
7109 undo-strong-limit and undo-outer-limit here.
7110
7111 * undo.c (truncate_undo_list): Return void.
7112 Take just one argument, the buffer.
7113 Make it current, and inhibit recursive GC.
7114 Access and update the undo list directly; return void.
7115 Refer to the undo...limit variables directly.
7116 Test undo_outer_limit only after counting the whole current command.
7117 When it's exceeded, call the function in undo-outer-limit-function.
7118 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
7119 (Vundo_outer_limit_function): New variable.
7120 (syms_of_undo): Define undo-limit, undo-strong-limit
7121 and undo-outer-limit here, and undo-outer-limit-function.
7122 Doc fixes.
7123
7124 * lisp.h (truncate_undo_list): Update decl.
7125
7126 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
7127
7128 * fileio.c (Fread_file_name): Delete duplicates in
7129 file-name-history when history_delete_duplicates is true.
7130
7131 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7132
7133 * macterm.c (mac_do_list_fonts): Fix memory leak
7134
7135 2004-12-20 Richard M. Stallman <rms@gnu.org>
7136
7137 * regex.c (re_match_2_internal) <symend, wordend>:
7138 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
7139
7140 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7141
7142 * macterm.c (endif, x_font_name_to_mac_font_name):
7143 Use maccentraleurroman instead of maccentraleuropean
7144 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
7145 quickly finding a specific font without needing regexps.
7146
7147 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7148
7149 * syssignal.h: Declare main_thread.
7150 (SIGNAL_THREAD_CHECK): New macro.
7151
7152 * keyboard.c (input_available_signal): Move thread checking code
7153 to macro SIGNAL_THREAD_CHECK and call that macro.
7154 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
7155
7156 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
7157
7158 * emacs.c: Define main_thread.
7159 (main): Initialize main_thread.
7160 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
7161 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
7162
7163 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
7164
7165 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
7166
7167 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
7168
7169 * process.c (send_process_trap, sigchld_handler):
7170 Call SIGNAL_THREAD_CHECK.
7171
7172 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
7173
7174 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
7175
7176 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
7177 returning when xg_ignore_gtk_scrollbar is true.
7178
7179 2004-12-14 Kim F. Storm <storm@cua.dk>
7180
7181 * keyboard.c (read_char): Save and restore echo_string when
7182 handling input method.
7183
7184 2004-12-13 Richard M. Stallman <rms@gnu.org>
7185
7186 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
7187
7188 * keyboard.c (Vthrow_on_input): New variable.
7189 (syms_of_keyboard): Defvar and initialize it.
7190 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
7191
7192 * lisp.h (QUIT): Check for Vthrow_on_input.
7193 (Vthrow_on_input): Declare it.
7194
7195 2004-12-13 Kim F. Storm <storm@cua.dk>
7196
7197 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
7198 vector.
7199
7200 2004-12-12 Richard M. Stallman <rms@gnu.org>
7201
7202 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
7203
7204 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
7205 (Ftry_completion): Really use outer `zero'; eliminate inner one.
7206
7207 2004-12-12 Kenichi Handa <handa@m17n.org>
7208
7209 * term.c (encode_terminal_code): Fix previous change.
7210
7211 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
7212
7213 * keyboard.c (handle_async_input): Remove pthread mutex handling.
7214 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
7215
7216 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
7217 in macro arguments.
7218
7219 * minibuf.c (Ftry_completion, Fall_completions): Don't use
7220 XFASTINT blindly.
7221
7222 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
7223
7224 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7225
7226 * w32term.c (x_calc_absolute_position): Remove calculation of
7227 difference between inner and outer window. Don't subtract difference
7228 for left and top calculations.
7229
7230 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
7231 for left and top calculations. Remove call to x_real_positions.
7232 [Bug report by Drew Adams in November]
7233 (x_check_expected_move): Do not set change_gravity to 1 when calling
7234 x_set_offset.
7235
7236 2004-12-08 Richard M. Stallman <rms@gnu.org>
7237
7238 * xdisp.c (get_next_display_element): Use `escape-glyph' for
7239 control chars and escaped octal codes.
7240 (Qescape_glyph): New variable.
7241 (syms_of_xdisp): Initialize it.
7242 (escape_glyph_face): New variable.
7243 (redisplay_window): Initialize it.
7244
7245 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
7246
7247 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
7248 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
7249
7250 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7251
7252 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
7253 reset_malloc_hooks.
7254
7255 * keyboard.c (handle_async_input, input_available_signal):
7256 Add ! defined (SYSTEM_MALLOC) around thread code.
7257
7258 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
7259
7260 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
7261
7262 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
7263
7264 * config.in: Regenerate.
7265
7266 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7267
7268 * xmenu.c (Fx_popup_menu): Correct documentation about position.
7269 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
7270 if not given by a mouse click to correspond with x-popup-menu
7271 documentation.
7272
7273 * config.in: Regenerate.
7274
7275 * gtkutil.c: Include signal.h and syssignal.h.
7276 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
7277
7278 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
7279 new variables main_thread and alloc_mutex,
7280 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
7281 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
7282 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
7283 (UN)BLOCK_INPUT.
7284 (emacs_blocked_free, emacs_blocked_malloc)
7285 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
7286 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
7287 (reset_malloc_hooks): New function.
7288
7289 * lisp.h: Declare reset_malloc_hooks.
7290
7291 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
7292
7293 * keyboard.c: Conditionally include pthread.h
7294 (handle_async_input, input_available_signalt): If not in the main
7295 thread, block signal, send signal to main thread and return.
7296
7297 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
7298 Set current folder in file chooser if default_filename is a directory.
7299
7300 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
7301
7302 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
7303 Remove redundant correctness checks.
7304 (regex_compile): Fix up error codes for \{..\} expressions.
7305
7306 2004-12-05 Richard M. Stallman <rms@gnu.org>
7307
7308 * regex.c (regex_compile): Fix end-of-pattern case for space.
7309
7310 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7311
7312 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
7313 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
7314 crashes with invalid characters.
7315 * macmenu.c (add_menu_item): Use it.
7316 * image.c (image_load_quartz2d): Likewise.
7317 * macfns.c (x_set_name, x_set_title): Likewise.
7318 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
7319 creating them each time for labels.
7320
7321 2004-12-02 Richard M. Stallman <rms@gnu.org>
7322
7323 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
7324 don't use it here.
7325
7326 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
7327 (interactive_p): Skip Scalled_interactively_p frames
7328 like Sinteractive_p frames.
7329 (unwind_to_catch): Clear handling_signal.
7330
7331 * data.c (Fmake_variable_buffer_local): Doc fix.
7332 (Fmake_local_variable): Doc fix.
7333
7334 * insdel.c (insert_from_string_before_markers)
7335 (insert_from_string): Don't modify buffer on empty insertion.
7336
7337 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
7338
7339 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7340
7341 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
7342 menu text as UTF8 fails.
7343
7344 2004-12-01 Kim F. Storm <storm@cua.dk>
7345
7346 * alloc.c: Add commentary for last change.
7347 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
7348 sizeof(size_t) != 4.
7349 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
7350 Use them. Also clear header and trailer of freed memory.
7351 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
7352 (string_overrun_cookie): Rename from string_overrun_pattern.
7353 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
7354
7355 2004-12-01 Andreas Schwab <schwab@suse.de>
7356
7357 * lisp.h: Declare string_to_multibyte.
7358
7359 2004-12-01 Kenichi Handa <handa@m17n.org>
7360
7361 * w32console.c (w32con_write_glyphs): Decide coding here.
7362 Adjusted for the change of encode_terminal_code.
7363
7364 * term.c (encode_terminal_code): Don't make it "static".
7365
7366 2004-11-30 Kenichi Handa <handa@m17n.org>
7367
7368 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
7369 (encode_terminal_code): Argument changed. Encode all
7370 characters at once, and return a pointer to the result of encoding.
7371 (write_glyphs): Decide coding here. Adjusted for the above change.
7372 (insert_glyphs): Likewise.
7373 (term_init): Initialize encode_terminal_bufsize to 0.
7374
7375 * coding.c (Vcode_conversion_workbuf_name): New variable.
7376 (syms_of_coding): Initialize and staticpro it.
7377 (set_conversion_work_buffer): New function.
7378 (run_pre_post_conversion_on_str): Use it.
7379 (run_pre_write_conversin_on_c_str): New function.
7380
7381 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
7382
7383 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7384
7385 * keyboard.c: Don't undef SIGIO
7386 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
7387 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
7388 (macfns.o): Don't depend on ccl.h.
7389 * macfns.c (mac_frame_parm_handlers): Set handlers for
7390 Qleft_fringe and Qright_fringe.
7391 * macterm.c (mac_fill_rectangle_to_pixmap)
7392 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
7393 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
7394 Put in #if 0.
7395 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
7396 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
7397 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
7398 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
7399 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
7400 XDrawImageString. Always draw background and foreground separately.
7401 (x_draw_image_foreground): Use clipping instead of computing the
7402 intersection rectangle.
7403 (x_draw_image_glyph_string): Don't draw an image with mask to a
7404 pixmap.
7405 (x_redisplay_interface): Set flush_display_optional member to 0.
7406 (XTread_socket): Correctly reset the TEConverter
7407 object.
7408
7409 2004-11-30 Kim F. Storm <storm@cua.dk>
7410
7411 * lisp.h: New defines to enable buffer overrun checking.
7412 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
7413 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
7414
7415 * alloc.c: Add more checks for buffer overruns.
7416 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
7417 xmalloc_overrun_check_trailer, overrun_check_malloc)
7418 overrun_check_realloc, overrun_check_free): Add.
7419 (GC_STRING_EXTRA, string_overrun_pattern): Add.
7420 (check_sblock, allocate_string_data, compact_small_strings):
7421 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
7422 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
7423 (check_string_free_list): Add.
7424 (allocate_string, sweep_strings): Call check_string_free_list.
7425
7426 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
7427 XMALLOC_OVERRUN_CHECK to avoid crash during load.
7428
7429 2004-11-29 Kim F. Storm <storm@cua.dk>
7430
7431 * fns.c (concat): Use SAFE_ALLOCA.
7432
7433 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
7434
7435 * sysdep.c (emacs_write): Don't use QUIT.
7436
7437 2004-11-29 Kenichi Handa <handa@m17n.org>
7438
7439 * buffer.c (init_buffer): Set current_buffer->directory to a
7440 multibyte string made by string_to_multibyte.
7441
7442 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
7443
7444 2004-11-27 Andreas Schwab <schwab@suse.de>
7445
7446 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
7447
7448 * s/gnu-linux.h: Enable no-op gcpros on ia64.
7449 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
7450
7451 * filelock.c (lock_file_1): Call get_boot_time early.
7452 Increase buffer size.
7453
7454 2004-11-27 Eli Zaretskii <eliz@gnu.org>
7455
7456 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
7457 is not defined.
7458
7459 2004-11-27 Kim F. Storm <storm@cua.dk>
7460
7461 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
7462 marker out of doc string.
7463
7464 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
7465
7466 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
7467 which was not mentioned in the log.
7468
7469 2004-11-26 Kim F. Storm <storm@cua.dk>
7470
7471 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
7472 angle bitmaps at top/bottom line.
7473
7474 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
7475 set it when it->method is set to next_element_from_display_vector.
7476 (setup_for_ellipsis): Add LEN argument. Callers changed.
7477 Set it->saved_face_id.
7478 (get_next_display_element): Use loop instead of recursion.
7479 Set it->saved_face_id. Combine duplicate code for ctr chars.
7480 (next_element_from_display_vector): Do not set it->saved_face_id.
7481 (next_element_from_ellipsis): Use setup_for_ellipsis.
7482
7483 2004-11-26 Eli Zaretskii <eliz@gnu.org>
7484
7485 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
7486 prevent compiler warnings.
7487
7488 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
7489
7490 * keyboard.c (command_loop_1): Print a message describing the key
7491 the user just pressed when this key has no binding.
7492
7493 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
7494 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
7495
7496 * lread.c (readchar): Check QUIT when `getc' is interrupted.
7497
7498 2004-11-24 Richard M. Stallman <rms@gnu.org>
7499
7500 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
7501
7502 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
7503
7504 2004-11-24 Kim F. Storm <storm@cua.dk>
7505
7506 * xdisp.c (move_it_in_display_line_to, display_line):
7507 Restore saved_face_id also when truncate-lines or hscrolled.
7508
7509 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7510
7511 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
7512 x-use-old-gtk-file-dialog.
7513
7514 * xfns.c: Define x_use_old_gtk_file_dialog.
7515 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
7516 outside ifdef USE_GTK.
7517
7518 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
7519
7520 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
7521 Don't use XFASTINT blindly.
7522
7523 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
7524
7525 * indent.c (skip_invisible): Avoid non-idempotent side-effects
7526 in macro arguments.
7527
7528 * keymap.c (Flookup_key): Check INTEGERP before XINT.
7529
7530 * lread.c (oblookup): Don't use XFASTINT blindly.
7531
7532 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
7533 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
7534
7535 2004-11-23 Kim F. Storm <storm@cua.dk>
7536
7537 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
7538 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
7539
7540 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
7541 signal_p is zero and face name is unknown.
7542 (Fx_list_fonts): Don't signal error in lookup_named_face.
7543 (Fface_font): Signal error in lookup_named_face.
7544 (ascii_face_of_lisp_face): Likewise.
7545
7546 * dispextern.h (lookup_named_face): Fix prototype.
7547
7548 * xdisp.c (handle_single_display_prop): Don't signal error in
7549 lookup_named_face for unknown fringe face name.
7550 (highlight_trailing_whitespace): Don't signal error in
7551 lookup_named_face if trailing-whitespace face unknown.
7552 (calc_line_height_property): Don't signal error in
7553 lookup_named_face if specified face name is unknown.
7554
7555 * fringe.c (update_window_fringes): Show top row indicator if
7556 window has header-line. Don't show arrow at bob and eob
7557 if the boundary indicators are not used.
7558 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
7559
7560 * window.c (set_window_buffer): Clear display_error_modiff.
7561
7562 2004-11-22 Kim F. Storm <storm@cua.dk>
7563
7564 * fringe.c (update_window_fringes): Provide sensible fall-back
7565 value for non-nil indicate-buffer-boundaries setting.
7566
7567 2004-11-22 Markus Rost <rost@ias.edu>
7568
7569 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
7570
7571 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
7572
7573 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
7574
7575 2004-11-21 Kim F. Storm <storm@cua.dk>
7576
7577 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
7578
7579 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
7580 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7581
7582 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
7583 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7584
7585 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
7586 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7587
7588 * xdisp.c (move_it_in_display_line_to, display_line):
7589 Restore saved_face_id if overflow-newline-into-fringe is enabled and
7590 line is continued before or in middle of element from display vector.
7591
7592 * indent.c (Fvertical_motion): Fix last change. Use another
7593 method to detect if iterator moved too far ahead after reseat.
7594
7595 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
7596 expand matrix width for overflow in zero-width area.
7597 (append_glyph, append_composite_glyph, produce_image_glyph)
7598 (append_stretch_glyph): Use it to avoid loop in redisplay.
7599 (note_mode_line_or_margin_highlight): Don't let help-echo from
7600 string override help-echo from image map.
7601
7602 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
7603
7604 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
7605 * callint.c (Fcall_interactively): Ditto.
7606
7607 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
7608
7609 * minibuf.c (Fminibuffer_complete_and_exit):
7610 Fixup the case of the completed value, for case-indep completion.
7611
7612 2004-11-20 Richard M. Stallman <rms@gnu.org>
7613
7614 * lisp.h (Fread_from_minibuffer): Add arg in decl.
7615
7616 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
7617 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
7618
7619 * search.c (Vsearch_spaces_regexp):
7620 Rename from Vsearch_whitespace_regexp. All uses changed.
7621
7622 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
7623
7624 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
7625
7626 2004-11-19 Richard M. Stallman <rms@gnu.org>
7627
7628 * search.c (Vsearch_whitespace_regexp): New variable.
7629 (syms_of_search): Defvar it.
7630 (compile_pattern_1): Call re_set_whitespace_regexp with it.
7631 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
7632 is non-nil.
7633 (struct regexp_cache): New element whitespace_regexp.
7634 (syms_of_search): Initialize whitespace_regexp elements.
7635 (compile_pattern): Compare whitespace_regexp elements.
7636 (compile_pattern_1): Set whitespace_regexp elements.
7637
7638 * regex.c (regex_compile): Substitute whitespace_regexp
7639 for spaces, if it is nonzero.
7640 (whitespace_regexp): New variable.
7641 (re_set_whitespace_regexp): New function.
7642
7643 2004-11-19 Kim F. Storm <storm@cua.dk>
7644
7645 * indent.c (Fvertical_motion): Fix last change.
7646
7647 2004-11-18 Kim F. Storm <storm@cua.dk>
7648
7649 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
7650 Instead, move back again if reseating moves too far ahead.
7651
7652 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
7653
7654 * xdisp.c (message3): Call clear_message.
7655
7656 2004-11-17 Kim F. Storm <storm@cua.dk>
7657
7658 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
7659
7660 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7661
7662 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
7663
7664 * xmenu.c (x_menu_in_use): Remove.
7665 (x_menu_set_in_use): Also set popup_activated_flag.
7666
7667 * xfns.c (Fx_file_dialog): Call popup_activated instead of
7668 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
7669
7670 * xterm.h (x_menu_in_use): Remove.
7671
7672 2004-11-16 Richard M. Stallman <rms@gnu.org>
7673
7674 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
7675 Use map-keymap-internal to implement that.
7676
7677 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
7678
7679 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
7680
7681 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
7682 a window before using XWINDOW.
7683
7684 * window.c (make_window, Fselect_window, make_dummy_parent)
7685 (save_window_save):
7686 * frame.c (make_frame):
7687 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
7688
7689 * lisp.h (NILP): Use EQ rather than XFASTINT.
7690
7691 2004-11-16 Kim F. Storm <storm@cua.dk>
7692
7693 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
7694
7695 * indent.c (Fvertical_motion): Fix last change. Only reseat when
7696 moving backwards.
7697
7698 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
7699
7700 * dispextern.h: Extern reseat_at_previous_visible_line_start.
7701
7702 2004-11-16 Kenichi Handa <handa@m17n.org>
7703
7704 * xdisp.c (display_mode_element): Fix previous change (calculate
7705 end position of substring to display correctly).
7706
7707 2004-11-16 Kim F. Storm <storm@cua.dk>
7708
7709 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
7710 Reported by Andrew M. Scott.
7711
7712 2004-11-15 Kim F. Storm <storm@cua.dk>
7713
7714 * fns.c (Fsafe_plist_get): New defun.
7715 (syms_of_fns): Defsubr it.
7716
7717 * lisp.h (Fsafe_plist_get): Add EXFUN.
7718
7719 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
7720 Use Fsafe_plist_get.
7721 (note_mode_line_or_margin_highlight, note_mouse_highlight):
7722 Fix image map element parsing. Use Fsafe_plist_get.
7723
7724 2004-11-15 Richard M. Stallman <rms@gnu.org>
7725
7726 * xdisp.c (get_next_display_element): Fix previous change.
7727
7728 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7729
7730 * window.c (shrink_windows): Handle special case of one window left
7731 when trying to shrink the final reminder. Grow windows if
7732 total_removed is less than total_shrink.
7733
7734 * xmenu.c (pop_down_menu): Remove global variable current_menu,
7735 extract pointer from arg with XSAVE_VALUE.
7736 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
7737 Construct arg to record_unwind_protect with make_save_value.
7738
7739 2004-11-13 Richard M. Stallman <rms@gnu.org>
7740
7741 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
7742 (get_next_display_element): Fix previous change to apply only to \n.
7743
7744 * indent.c (Fvertical_motion): Scan to PT from start of line to
7745 make iterator consistent.
7746
7747 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
7748
7749 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7750
7751 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
7752
7753 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
7754 Record unwind with clean_up_file_dialog.
7755
7756 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
7757 Declare.
7758
7759 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
7760
7761 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7762
7763 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
7764 (xg_file_sel_destroy): Remove.
7765 (xg_file_response_cb, pop_down_file_dialog)
7766 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
7767 New functions.
7768 (xg_get_file_with_chooser, xg_get_file_with_selection):
7769 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
7770 Move common code to xg_get_file_name. Return widget created.
7771 (xg_get_file_name): Set name, transient for, modal and destroy
7772 with parent here. Connect response signal to xg_file_response_cb,
7773 connect delete-event to gtk_true. Record pop_down_file_dialog
7774 for unwind. Do event loop and call x_menu_wait_for_event in loop.
7775 (xg_create_widget): Make dialogs modal.
7776
7777 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
7778 Lisp_Object.
7779 (popup_get_selection): Move unwind protect ...
7780 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7781 Move destroy of widget to pop_down_menu.
7782 (popup_widget_loop): Move unwind protect ...
7783 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
7784 Move destroy of widget to pop_down_menu.
7785 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
7786 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
7787 x_mouse_leave and grabbed = 0 to pop_down_menu.
7788
7789 2004-11-13 Kim F. Storm <storm@cua.dk>
7790
7791 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
7792 (syms_of_xdisp): DEFVAR_BOOL it.
7793 (make_cursor_line_fully_visible, try_cursor_movement)
7794 (try_window_id): Use it.
7795
7796 2004-11-12 Kim F. Storm <storm@cua.dk>
7797
7798 * dispextern.h (struct glyph_row): New member extra_line_spacing.
7799 (struct it): New member max_extra_line_spacing.
7800 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
7801 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
7802 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
7803 part of last line is only extra line spacing (so the text on the
7804 line is fully visible). Use helper macros.
7805 Add W arg (to use them). All callers changed.
7806 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
7807 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
7808
7809 * window.c (window_scroll_pixel_based, Frecenter):
7810 Use move_it_vertically_backward directly.
7811 (Frecenter): Fix calculation of new start pos for negative arg.
7812 Before, the new start pos was sometimes chosen too far back, so
7813 the last line became only partially visible, and thus would be
7814 either only semi-visible or automatically scrolled to the middle
7815 of the window by redisplay.
7816
7817 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
7818 (move_it_vertically_backward): Don't recure to move further back.
7819 (move_it_vertically): Remove superfluous condition.
7820 (move_it_by_lines): Clear last_height when moved 0 lines.
7821 (resize_mini_window): Use it.max_extra_line_spacing.
7822 (display_tool_bar_line): Clear row->extra_line_spacing.
7823 (try_scrolling): Use move_it_vertically_backward directly.
7824 (redisplay_window): Likewise.
7825 (compute_line_metrics): Set row->extra_line_spacing.
7826 (display_line, display_string): Likewise.
7827 (x_produce_glyphs): Update it->max_extra_line_spacing.
7828
7829 * xmenu.c (pop_down_menu): Return nil.
7830
7831 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7832
7833 * xmenu.c (x_menu_wait_for_event): New function.
7834 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
7835 to handle timers.
7836 (popup_widget_loop): Add argument do_timers.
7837 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
7838 do_timers to popup_widget_loop.
7839 (xmenu_show): Call XMenuActivateSetWaitFunction so that
7840 x_menu_wait_for_event is called by XMenuActivate.
7841 (create_and_show_popup_menu): Pass 1 for do_timers to
7842 popup_get_selection.
7843 (pop_down_menu): New function.
7844 (popup_get_selection, popup_widget_loop): Unwind protect to
7845 pop_down_menu.
7846 (popup_widget_loop): Add argument widget.
7847 (create_and_show_popup_menu, create_and_show_dialog): Pass new
7848 argument widget to popup_widget_loop.
7849
7850 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
7851
7852 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
7853
7854 2004-11-09 Kim F. Storm <storm@cua.dk>
7855
7856 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
7857 Fix various comments referring to XEvents instead of input events.
7858 (x_queue_event): Fix format strings.
7859 (x_stop_queuing_selection_requests): Likewise.
7860
7861 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
7862 (pint2hrstr): Add extra braces to silence compiler.
7863
7864 * print.c (print_object): Fix format string.
7865
7866 * lread.c (read1): Fix next_char matching.
7867
7868 * lisp.h (Fdelete): Add EXFUN.
7869 (replace_range_2): Add prototype.
7870
7871 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
7872
7873 * intervals.h (NULL_INTERVAL_P): Add separate version when
7874 ENABLE_CHECKING is not defined to silence compiler.
7875 (compare_string_intervals): Add prototype.
7876
7877 * fringe.c (destroy_fringe_bitmap): Fix return type.
7878 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
7879
7880 * emacs.c (Fdump_emacs): Fix format string.
7881
7882 * doc.c: Include <ctype.h>.
7883 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
7884
7885 * data.c (store_symval_forwarding): Remove unused variables.
7886
7887 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
7888
7889 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7890
7891 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
7892 to ${OLDXMENU}.
7893
7894 2004-11-09 Kim F. Storm <storm@cua.dk>
7895
7896 * process.c (Fmake_network_process): Remove kludge for interrupted
7897 connects on BSD. If connect is interrupted, just close socket and
7898 start over rather than sleeping and retry with same socket.
7899
7900 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7901
7902 * .cvsignore: Add buildobj.lst.
7903
7904 * doc.c: New variable Vbuild_files.
7905 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
7906 file names from buildobj.lst. Only attach docstrings from files
7907 that are in Vbuild_files.
7908 (syms_of_doc): Defvar Vbuild_files.
7909
7910 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
7911 and w32*.o.
7912 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
7913 (mostlyclean): Rm buildobj.lst
7914
7915 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
7916 is linked.
7917
7918 2004-11-09 Kim F. Storm <storm@cua.dk>
7919
7920 * fringe.c (update_window_fringes): Update fringe bitmaps if
7921 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
7922 also update previous row to get rid of misc. artifacts.
7923
7924 2004-11-08 Kim F. Storm <storm@cua.dk>
7925
7926 * xdisp.c (fast_find_position): Fix start pos if header line present.
7927 (note_mouse_highlight): Clear mouse face if we move out of text area.
7928
7929 2004-11-08 Eli Zaretskii <eliz@gnu.org>
7930
7931 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
7932 Don't include <sys/time.h> explicitly.
7933 Include <stdio.h> unconditionally, not just on MacOS.
7934
7935 2004-11-08 Kenichi Handa <handa@m17n.org>
7936
7937 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
7938 don't pay attention to '\' before '*'.
7939 (fontset_pattern_regexp): Change the meaning of the second arg.
7940 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
7941 (check_fontset_name): Try NAME as literal at first, and if it
7942 failes, try NAME as pattern.
7943
7944 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7945
7946 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
7947
7948 2004-11-07 Andreas Schwab <schwab@suse.de>
7949
7950 * lisp.h (Fmsdos_downcase_filename): Declare.
7951 * dired.c (Fmsdos_downcase_filename): Don't declare here.
7952 * fileio.c: Likewise.
7953
7954 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7955
7956 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
7957 comparisons with integers instead of Lisp_Object address.
7958 (Fmsdos_set_keyboard): Declare argument allkeys.
7959
7960 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
7961
7962 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
7963 int/Lisp_Object mixup.
7964
7965 * fileio.c: Ditto.
7966
7967 2004-11-06 Steven Tamm <steventamm@mac.com>
7968
7969 * editfns.c: Need to include sys/time.h before resource.h on darwin.
7970
7971 2004-11-06 Richard M. Stallman <rms@gnu.org>
7972
7973 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
7974
7975 * xfaces.c (merge_named_face): GCPRO the face_name in the
7976 named_merge_point struct that we make.
7977 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
7978
7979 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
7980 before deciding whether to inactivate mark.
7981
7982 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
7983
7984 * config.in: Regenerate (add HAVE_GETRUSAGE).
7985 * editfns.c (Fget_internal_run_time): New function.
7986 (syms_of_data): Defsubr it.
7987 * fns.c (sxhash): As far as possible, merge calculation of
7988 hash code for symbols and strings.
7989
7990 2004-11-06 Eli Zaretskii <eliz@gnu.org>
7991
7992 * frame.c (syms_of_frame): Fix the example in the doc string.
7993
7994 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7995
7996 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
7997
7998 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
7999 (create_and_show_dialog): Revert change from 2004-10-31.
8000
8001 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
8002
8003 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
8004
8005 2004-11-05 Kim F. Storm <storm@cua.dk>
8006
8007 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
8008
8009 * fileio.c (Ffile_modes): Doc fix.
8010 (auto_save_1): Check for Ffile_modes nil value.
8011
8012 2004-11-05 Kim F. Storm <storm@cua.dk>
8013
8014 * xselect.c (struct selection_event_queue, selection_queue)
8015 (x_queue_selection_requests, x_queue_event)
8016 (x_start_queuing_selection_requests)
8017 (x_stop_queuing_selection_requests): Add new queue for selection
8018 input events to replace previous XEvent queue in xterm.c.
8019 (queue_selection_requests_unwind): Adapt to new queue.
8020 (x_reply_selection_request): Adapt to new queue.
8021 Unexpect wait_object in case of x errors (memory leak).
8022 (x_handle_selection_request, x_handle_selection_clear): Make static.
8023 (x_handle_selection_event): New function. May queue selection events.
8024 (wait_for_property_change_unwind): Use save_value instead of cons.
8025 Clear property_change_reply_object.
8026 (wait_for_property_change): Abort if already waiting.
8027 Use save_value instead of cons for unwind data.
8028 (x_handle_property_notify): Skip events already arrived, but don't
8029 free them, as "arrived" field is checked by wait_for_property_change,
8030 and it will be freed by unwind or explicit unexpect_property_change.
8031 (x_get_foreign_selection): Add to new queue.
8032 (receive_incremental_selection): Don't unexpect wait_object when done
8033 as it has already been freed by previous wait_for_property_change.
8034
8035 * xterm.h (x_start_queuing_selection_requests)
8036 (x_stop_queuing_selection_requests, x_handle_selection_request)
8037 (x_handle_selection_clear): Remove prototypes.
8038 (x_handle_selection_event): Add prototype.
8039
8040 * xterm.c (handle_one_xevent): Don't queue X selection events
8041 here, it may be too late if we start queuing after we have already
8042 stored some selection events into the kbd buffer.
8043 (struct selection_event_queue, queue, x_queue_selection_requests)
8044 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
8045 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
8046 (x_catch_errors_unwind): Block input around final XSync.
8047
8048 * keyboard.h (kbd_buffer_unget_event): Add prototype.
8049
8050 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
8051 (kbd_buffer_unget_event): New function.
8052 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
8053 and use x_handle_selection_event.
8054 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
8055
8056 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8057
8058 * xselect.c (TRACE3): New debug macro.
8059 (x_reply_selection_request): Use it.
8060 (receive_incremental_selection): In call to TRACE0, the name of
8061 a symbol is in xname.
8062
8063 2004-11-05 Kim F. Storm <storm@cua.dk>
8064
8065 * fontset.c (fontset_pattern_regexp): Use unsigned char.
8066
8067 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8068
8069 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
8070
8071 * gtkutil.h (use_old_gtk_file_dialog): Declare.
8072
8073 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
8074 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
8075 * xfns.c (syms_of_xfns): ... to here.
8076
8077 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
8078 it doesn't start with /.
8079
8080 2004-11-04 Kenichi Handa <handa@m17n.org>
8081
8082 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
8083 treat it as a literal character.
8084
8085 2004-11-03 Kim F. Storm <storm@cua.dk>
8086
8087 * .gdbinit (ppt): New function.
8088
8089 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8090
8091 * xterm.c (x_window_to_scroll_bar): Only call
8092 xg_get_scroll_id_for_window if toolkit scroll bars are used.
8093
8094 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
8095 of save.
8096
8097 2004-11-02 Andreas Schwab <schwab@suse.de>
8098
8099 * window.c (Fscroll_right): Fix last change.
8100
8101 2004-11-02 Kim F. Storm <storm@cua.dk>
8102
8103 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
8104
8105 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8106
8107 * callproc.c (Fcall_process): Block input around vfork.
8108
8109 2004-11-02 Kim F. Storm <storm@cua.dk>
8110
8111 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
8112 (syms_of_eval): Defsubr it.
8113
8114 2004-11-02 Richard M. Stallman <rms@gnu.org>
8115
8116 * insdel.c (replace_range_2): New function.
8117
8118 * casefiddle.c (casify_region): Handle changes in byte-length
8119 using replace_range_2.
8120
8121 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
8122
8123 * xdisp.c (back_to_previous_visible_line_start):
8124 Subtract 1 from pos when checking previous newline for invisibility.
8125
8126 * window.c (window_scroll_pixel_based): Update preserve_y
8127 for header line if any.
8128 (Fscroll_left, Fscroll_right): Don't call interactive_p;
8129 use a new second argument instead.
8130
8131 * eval.c (Fcall_interactive_p): New function.
8132 (interactive_p): Don't test INTERACTIVE here.
8133 (Finteractive_p): Doc fix.
8134
8135 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
8136
8137 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8138
8139 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
8140 comparing font names.
8141
8142 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8143
8144 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
8145 Fx_file_dialog if only directories should be read.
8146
8147 * lisp.h: Fx_file_dialog takes 5 parameters.
8148
8149 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
8150 Add parameter only_dir_p.
8151 In Motif version, don't put DEFAULT_FILENAME in filter part of the
8152 dialog, just text field part. Do not add DEFAULT_FILENAME
8153 to list of files if it isn't there.
8154 In GTK version, pass only_dir_p parameter to xg_get_file_name.
8155
8156 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
8157 Check only_dir_p instead of comparing prompt to "Dired". When using
8158 a save dialog, add option kNavDontConfirmReplacement, change title
8159 to "Enter name", change text for save button to "Ok".
8160
8161 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
8162 Check only_dir_p instead of comparing prompt to "Dired".
8163
8164 * gtkutil.c (xg_get_file_with_chooser)
8165 (xg_get_file_with_selection): New functions, only defined ifdef
8166 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
8167 respectively.
8168 (xg_get_file_name): Add parameter only_dir_p.
8169 Call xg_get_file_with_chooser or xg_get_file_with_selection
8170 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
8171 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
8172
8173 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
8174
8175 * config.in: Rebuild (added HAVE_GTK_FILE_*).
8176
8177 2004-11-01 Kim F. Storm <storm@cua.dk>
8178
8179 * process.c (connect_wait_mask, num_pending_connects):
8180 Only declare and use them if NON_BLOCKING_CONNECT is defined.
8181 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
8182 (IF_NON_BLOCKING_CONNECT): New helper macro.
8183 (wait_reading_process_output): Only declare and use local vars
8184 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
8185
8186 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
8187
8188 * w32term.c (x_scroll_run): Delete region objects after use.
8189
8190 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8191
8192 * xmenu.c: Add prototypes for forward function declarations.
8193 (popup_get_selection): Remove parameter do_timers, remove call to
8194 timer_check.
8195 (create_and_show_popup_menu, create_and_show_dialog):
8196 Remove parameter do_timers from call to popup_get_selection.
8197
8198 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
8199 tool_bar_items and assign the result to f->tool_bar_items if
8200 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
8201 tool_bar_items to assignment of result.
8202
8203 * atimer.c (alarm_signal_handler): Do not call set_alarm if
8204 pending_atmers is non-zero.
8205
8206 2004-10-31 Kim F. Storm <storm@cua.dk>
8207
8208 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
8209
8210 2004-10-28 Will <will@glozer.net>
8211
8212 * macterm.c: Allow user to assign key modifiers to the Mac Option
8213 key via a 'mac-option-modifier' variable.
8214
8215 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
8216
8217 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
8218 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
8219 (x_handle_selection_request, x_handle_selection_clear)
8220 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
8221
8222 2004-10-28 Richard M. Stallman <rms@gnu.org>
8223
8224 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
8225
8226 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
8227
8228 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
8229
8230 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
8231 comment-starter over a 1-char one.
8232
8233 2004-10-27 Richard M. Stallman <rms@gnu.org>
8234
8235 * xdisp.c (get_next_display_element): In mode lines,
8236 treat newline and tab like other control characters.
8237
8238 * editfns.c (Fmessage): Doc fix.
8239
8240 * indent.c (vmotion): When moving up, check the newline before.
8241 Make prevline an int, not a Lisp_Object.
8242
8243 2004-10-27 Kim F. Storm <storm@cua.dk>
8244
8245 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
8246 Only allocate info and discarded tables once.
8247
8248 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
8249 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
8250 (SAFE_FREE): Test it to determine if we need to unwind to free.
8251 Remove size arg. All users changed.
8252 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
8253
8254 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8255
8256 * gtkutil.c: Put empty line between comment and function body.
8257 (xg_destroy_widgets): Rename from remove_from_container.
8258 Just destroy all widgets in list. Argument wcont removed.
8259 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
8260 instead of remove_from_container.
8261 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
8262 (free_frame_tool_bar): Add comment.
8263
8264 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
8265 is not NULL before strcmp.
8266
8267 2004-10-26 Kim F. Storm <storm@cua.dk>
8268
8269 * callint.c (Fcall_interactively): Add 'U' code to get the
8270 up-event discarded by a previous 'k' or 'K' argument.
8271
8272 2004-10-26 David Kastrup <dak@gnu.org>
8273
8274 * buffer.c (syms_of_buffer): Fix a few typos.
8275
8276 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8277
8278 * xsmfns.c: Put empty line between comment and function body.
8279 Use two spaces before comment end.
8280
8281 2004-10-25 Kenichi Handa <handa@m17n.org>
8282
8283 * fontset.c (fontset_pattern_regexp): Optimize for the case that
8284 PATTERN is full XLFD.
8285
8286 2004-10-24 Kenichi Handa <handa@m17n.org>
8287
8288 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
8289
8290 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
8291 (regex_compile): Return REG_ERANGEX if appropriate.
8292
8293 2004-10-22 Kenichi Handa <handa@m17n.org>
8294
8295 * editfns.c (Ftranslate_region_internal): New function.
8296 (syms_of_editfns): Defsubr it.
8297
8298 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8299
8300 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
8301
8302 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8303
8304 * xterm.h (x_output): New member `xic_base_fontname'.
8305 (FRAME_XIC_BASE_FONTNAME): New macro.
8306 (xic_free_xfontset): Declare.
8307
8308 * xfns.c (xic_create_xfontset): Share fontsets between frames
8309 based on base_fontname.
8310 (xic_free_xfontset): New function.
8311 (free_frame_xic): Use it.
8312 (xic_set_xfontset): Ditto.
8313
8314 * xterm.c (xim_destroy_callback): Ditto.
8315
8316
8317 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
8318
8319 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
8320
8321 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8322
8323 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
8324 XSync.
8325
8326 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
8327 New variables and constant.
8328 (main): Calculate heap_bss_diff. If we are dumping and the
8329 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
8330 and exec ourself again.
8331 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
8332 print a warning.
8333
8334 * lastfile.c: Make my_endbss and my_endbss_static available on all
8335 platforms.
8336
8337 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
8338 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
8339
8340 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
8341
8342 * data.c (Flocal_variable_if_set_p): Doc fix.
8343
8344 2004-10-19 Jason Rumney <jasonr@gnu.org>
8345
8346 * w32.c (init_environment): Set emacs_dir correctly when running
8347 emacs from the build directory.
8348
8349 2004-10-19 Richard M. Stallman <rms@gnu.org>
8350
8351 * editfns.c (Fdelete_and_extract_region):
8352 If region is empty, return null string.
8353
8354 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8355
8356 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
8357 and canon_width.
8358 (xg_frame_cleared): Remove.
8359
8360 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
8361 (xg_find_top_left_in_fixed): Remove.
8362 (xg_create_scroll_bar): Put an event box widget between
8363 the scroll bar widget and the edit widget.
8364 (xg_show_scroll_bar): Show the parent widget (the event box).
8365 (xg_remove_scroll_bar): Destroy parent (the event box) also.
8366 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
8367 Move the parent (the event box) widget inside the fixed widget.
8368 Move window clear to xterm.c.
8369
8370 * gtkutil.h (xg_frame_cleared): Remove.
8371
8372 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
8373 (x_scroll_bar_create, XTset_vertical_scroll_bar):
8374 Remove arguments left and width to xg_update_scrollbar_pos.
8375 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
8376
8377 2004-10-19 Kenichi Handa <handa@m17n.org>
8378
8379 * xdisp.c (display_mode_element): Fix display of wide chars.
8380
8381 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8382
8383 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
8384 gdk_window_clear and move gdk_window_process_all_updates after
8385 clear so events are sent to the X server in correct order.
8386
8387 2004-10-18 Kenichi Handa <handa@m17n.org>
8388
8389 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
8390 comparing font names.
8391 (fs_query_fontset): Use fast_string_match for comparing fontset names.
8392 (list_fontsets): Likewise.
8393
8394 * search.c (fast_string_match_ignore_case): New function.
8395
8396 * lisp.h (fast_string_match_ignore_case): Extern it.
8397
8398 2004-10-17 Kim F. Storm <storm@cua.dk>
8399
8400 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
8401 than bitmap if there is not left fringe.
8402 (get_overlay_arrow_glyph_row): Also used on windows system.
8403 (display_line): Display overlay string if no left fringe.
8404
8405 2004-10-16 Jason Rumney <jasonr@gnu.org>
8406
8407 * w32fns.c (w32_font_match): Encode font name being matched.
8408
8409 2004-10-16 Richard M. Stallman <rms@gnu.org>
8410
8411 * window.c (Fspecial_display_p): Doc fix.
8412
8413 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
8414
8415 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
8416 Don't ignore menus, because where-is-internal already does it for us.
8417
8418 2004-10-15 Kim F. Storm <storm@cua.dk>
8419
8420 * xdisp.c (redisplay_window): Only update fringes and vertical
8421 border on window frames.
8422
8423 2004-10-14 Andreas Schwab <schwab@suse.de>
8424
8425 * m/ia64.h (DATA_SEG_BITS): Don't define.
8426
8427 2004-10-14 Kim F. Storm <storm@cua.dk>
8428
8429 * xterm.h: Include Xutil.h after keysym.h to work around bug
8430 in some X versions.
8431
8432 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8433
8434 * fns.c (map_char_table): Add missing gcpros.
8435
8436 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8437
8438 * keymap.c (get_keymap): An autoload form is not a keymap.
8439
8440 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
8441
8442 2004-10-13 Kim F. Storm <storm@cua.dk>
8443
8444 * callproc.c (Fcall_process): Simplify handling of display arg.
8445 Resume `display_on_the_fly' once a coding system is determined.
8446
8447 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
8448
8449 2004-10-12 Kim F. Storm <storm@cua.dk>
8450
8451 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
8452 caller, such as call-process, is not going to poll for input.
8453 (calc_line_height_property): Handle case where it->object is nil.
8454
8455 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
8456
8457 2004-10-12 Kenichi Handa <handa@m17n.org>
8458
8459 * xdisp.c (get_next_display_element):
8460 If unibyte_display_via_language_environment is zero, display 8-bit
8461 chars in octal in unibyte buffer.
8462
8463 2004-10-12 Kim F. Storm <storm@cua.dk>
8464
8465 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
8466 are no ordinary bindings.
8467
8468 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8469
8470 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
8471
8472 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8473
8474 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
8475 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
8476 (make_mac_frame): Add BLOCK_INPUT around the making of a
8477 terminal frame.
8478 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
8479 * macgui.h (mktime): Use emacs_mktime.
8480 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
8481 Make a cancel file-open dialog be like C-g.
8482 * mac.c (mktime): Use emacs_mktime.
8483 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
8484 (Fmac_paste_function): Add better error handling for carbon cut/paste.
8485
8486 2004-10-10 Kim F. Storm <storm@cua.dk>
8487
8488 * keyboard.c (timer_resume_idle): New function to resume idle
8489 timer without resetting timers on the idle list.
8490 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
8491 (timer_start_idle, timer_stop_idle): Declare static.
8492 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
8493
8494 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
8495
8496 2004-10-08 Steven Tamm <steventamm@mac.com>
8497
8498 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
8499 * macterm.c (mac_check_for_quit_char): Remove warning for using
8500 NULL where 0 should be used.
8501 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
8502 objc/malloc.h
8503 * mac.c: Include time.h for Tiger compatibility.
8504
8505 2004-10-07 Kim F. Storm <storm@cua.dk>
8506
8507 * xdisp.c (redisplay_window): Fix flicker on vertical line between
8508 windows. Update vertical line after drawing window fringes, but
8509 only if actually drawing any bitmaps--or there is no fringe.
8510
8511 * xterm.c (x_update_window_end): Likewise.
8512 * macterm.c (x_update_window_end): Likewise.
8513 * w32term.c (x_update_window_end): Likewise.
8514
8515 * fringe.c (draw_window_fringes): Return value now indicates if
8516 any fringe bitmaps were redrawn (or there are no fringes).
8517
8518 * dispextern.h (draw_window_fringes): Update prototype.
8519
8520 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8521
8522 * macfns.c (mac_get_window_bounds): Add extern.
8523 (x_real_positions): Use mac_get_window_bounds.
8524
8525 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
8526 xmenu.c (YAILOM).
8527
8528 * macterm.c [!MAC_OSX]: Include Windows.h.
8529 (front_emacs_window): Rename from mac_front_window. All uses
8530 changed. Return the frontmost non-tooltip emacs window.
8531 (mac_get_window_bounds): New function.
8532 (x_calc_absolute_position): Use the difference of width and height
8533 between the inner and outer window.
8534 (x_set_offset): Specify window position by the coordinae of the
8535 outer window. Adjust the position if the title bar is completely
8536 outside the screen.
8537 (app_is_suspended, app_sleep_time): Remove unused variables.
8538 (do_app_resume, do_app_suspend): Remove their contents because
8539 window-activate/deactivate events will do the job.
8540 (do_zoom_window): Remove unused variables. Make compliant to the
8541 standard way of zooming. Set f->left_pos and f->top_pos.
8542 (XTread_socket): Don't use argument `expected'. Don't use
8543 FrontWindow to determine the clicked window. Exclude unprocessed
8544 mouseUp cases in the early stage. Add parentheses to fix operator
8545 precedence.
8546 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
8547
8548 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
8549
8550 * config.in: Regenerate.
8551
8552 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
8553 HAVE_EXECSHIELD.
8554
8555 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8556
8557 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
8558 a row if Alt or Meta has been found for that row. Also stop scanning
8559 for Keysyms for that row.
8560
8561 2004-10-04 Kim F. Storm <storm@cua.dk>
8562
8563 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
8564 to list. Include overlay arrow bitmap in return value.
8565
8566 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
8567 bars with fractional column width. If scroll bar separates two
8568 windows, move it towards the window it belongs to. Only update
8569 the padding area below the scroll bar widget when necessary,
8570 i.e. when scroll bar widget is created, moved, or resized.
8571
8572 * xdisp.c (define_frame_cursor1): Do not change frame cursor
8573 while tracking/dragging mouse.
8574 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
8575
8576 * window.c (coordinates_in_window): Relax check for cursor
8577 on vertial border between mode lines.
8578 (Fset_window_fringes): Do not allow negative widths.
8579 (Fset_window_scroll_bars): Likewise.
8580
8581 * .gdbinit (pp): Shorthand for p ARG + pr.
8582 (ff): New command: flush frame updates (X only).
8583
8584 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
8585
8586 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
8587
8588 2004-09-30 Kenichi Handa <handa@m17n.org>
8589
8590 * process.c (send_process): Free composition data.
8591
8592 * fileio.c (Finsert_file_contents): Free composition data.
8593
8594 * coding.c (code_convert_region): Don't skip ASCIIs if there are
8595 compositions to encode.
8596 (encode_coding_string): Likewise. Free composition data.
8597
8598 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
8599
8600 * coding.c (code_convert_region): Free composition data.
8601
8602 2004-09-29 Kim F. Storm <storm@cua.dk>
8603
8604 * fringe.c: Remove limit on number of bitmaps.
8605 (fringe_bitmaps, fringe_faces): Change to pointers.
8606 (max_fringe_bitmaps): New var.
8607 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
8608 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
8609
8610 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
8611 (struct glyph_row): Reorder fringe_bitmap related fields.
8612 (struct it): Likewise.
8613
8614 * w32term.c (fringe_bmp): Change to pointer.
8615 (max_fringe_bmp): New var.
8616 (w32_define_fringe_bitmap): Expand fringe_bmp.
8617 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
8618 (w32_destroy_fringe_bitmap): Likewise.
8619
8620 2004-09-29 Kim F. Storm <storm@cua.dk>
8621
8622 * fringe.c: Simplify last change.
8623 (lookup_fringe_bitmap): New function.
8624 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
8625 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
8626 Keep standard bitmaps in Vfringe_bitmaps.
8627 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
8628 (Fset_fringe_bitmap_face): Likewise.
8629
8630 * dispextern.h (lookup_fringe_bitmap): Add prototype.
8631 (valid_fringe_bitmap_p): Remove prototype.
8632
8633 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
8634
8635 2004-09-29 Kim F. Storm <storm@cua.dk>
8636
8637 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
8638 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
8639
8640 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
8641
8642 * fringe.c (Vfringe_bitmaps): New variable.
8643 (syms_of_fringe): DEFVAR_LISP it.
8644 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
8645 Change arg to Lisp_Object and fail if not an integer.
8646 (get_fringe_bitmap_name, resolve_fringe_bitmap)
8647 (destroy_fringe_bitmap): New functions.
8648 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
8649 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
8650 clear its fringe property.
8651 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
8652 Fdestroy_fringe_bitmap.
8653 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
8654 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
8655 and set fringe property. Signal error if no free slots.
8656 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
8657 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
8658
8659 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
8660 symbols with a fringe property.
8661
8662 2004-09-27 Kim F. Storm <storm@cua.dk>
8663
8664 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
8665 Doc fix. Format may now be a symbol or alist, not a cons.
8666
8667 * fringe.c (update_window_fringes): Handle new formats of
8668 indicate-buffer-boundaries (symbol or alist). No longer
8669 allow a simple cons.
8670 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
8671
8672 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8673
8674 * config.in: Rebuild.
8675
8676 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8677
8678 * config.in: Rebuild.
8679
8680 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
8681
8682 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
8683
8684 * xterm.c (x_term_init): Work around a bug in some X servers.
8685
8686 2004-09-18 Richard M. Stallman <rms@gnu.org>
8687
8688 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
8689
8690 * xdisp.c (try_window_reusing_current_matrix):
8691 Handle the case where we reach the old displayed text,
8692 out of sync with the old line boundary.
8693
8694 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
8695
8696 * fileio.c (Finsert_file_contents): Fix case of replacement in a
8697 narrowed buffer.
8698
8699 2004-09-14 Kim F. Storm <storm@cua.dk>
8700
8701 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
8702
8703 * xfaces.c (Qface_no_inherit): New var.
8704 (syms_of_xfaces): Intern and staticpro it.
8705 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
8706 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
8707 Don't increment face_change_count when face has non-nil
8708 face-no-inherit property.
8709
8710 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
8711
8712 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
8713 (Fbyte_code): Remove dead code after `wrong_type_argument'.
8714
8715 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
8716 before doing the mark_stack_check_gcpros since they're not on the stack.
8717
8718 2004-09-12 Kim F. Storm <storm@cua.dk>
8719
8720 * editfns.c (Fformat): Handle format strings with multiple text
8721 properties. Reverse text property list from the format string,
8722 so the positions are in increasing order.
8723
8724 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8725
8726 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
8727 x_uncatch_errors so that possible protocol errors are delivered.
8728
8729 2004-09-10 Eli Zaretskii <eliz@gnu.org>
8730
8731 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
8732 blockinput.h.
8733 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
8734 charset.h, and coding.h
8735 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
8736 (term.o): Depend on window.h and keymap.h.
8737 (abbrev.o): Depend on syntax.h.
8738 (callint.o): Depend on keymap.h.
8739 (casefiddle.o): Depend on charset.h and keymap.h.
8740 (category.o): Depend on keymap.h.
8741 (coding.o): Depend on dispextern.h.
8742 (cmds.o): Depend on keyboard.h and keymap.h.
8743 (dispnew.o): Depend on indent.h and intervals.h.
8744 (doc.o): Depend on keymap.h.
8745 (editfns.o): Depend on frame.h.
8746 (emacs.o): Depend on dispextern.h.
8747 (fileio.o): Don't depend on ccl.h.
8748 (filelock.o): Depend on charset.h and coding.h.
8749 (frame.o): Depend on w32term.h and macterm.h.
8750 (insdel.o): Depend on region-cache.h.
8751 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
8752 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
8753 (search.o): Depend on $(INTERVALS_SRC).
8754 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
8755 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
8756 xterm.h, w32term.h, and macterm.h.
8757 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
8758 w32term.h, and macterm.h.
8759 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
8760 region-cache.h, xterm.h, w32term.h, and macterm.h.
8761 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
8762 (data.o): Depend on frame.h.
8763 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
8764 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
8765 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
8766 (intervals.o): Depend on keymap.h.
8767
8768 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
8769 Add debugging print-out to termscript.
8770
8771 2004-09-09 Richard M. Stallman <rms@gnu.org>
8772
8773 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
8774
8775 2004-09-08 Richard M. Stallman <rms@gnu.org>
8776
8777 * window.c (Fset_window_buffer): Doc fix.
8778
8779 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
8780
8781 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
8782
8783 * minibuf.c (history_delete_duplicates): New variable.
8784 (read_minibuf): Use it.
8785 (syms_of_minibuf): Create the corresponding lisp variable.
8786
8787 2004-09-08 Kim F. Storm <storm@cua.dk>
8788
8789 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
8790 overlay just before point.
8791
8792 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
8793
8794 * buffer.h (struct buffer): Add auto_save_file_format field.
8795 * buffer.c (reset_buffer, init_buffer_once):
8796 Handle auto_save_file_format field.
8797 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
8798 `buffer-auto-save-file-format'.
8799 * fileio.c: Delete declaration for removed Vauto_save_file_format.
8800 (build_annotations): Adapt to replacement of
8801 `auto-save-file-format' with the new buffer-local variable
8802 `buffer-auto-save-file-format'.
8803 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
8804
8805 2004-09-07 Jason Rumney <jasonr@gnu.org>
8806
8807 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
8808
8809 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
8810 Handle Unicode menu titles.
8811
8812 2004-09-07 Kim F. Storm <storm@cua.dk>
8813
8814 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
8815 property from text property or overlay strings at point.
8816
8817 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
8818
8819 * xmenu.c (update_submenu_strings): YAILOM.
8820 (set_frame_menubar): Make sure last_i is initialized.
8821
8822 2004-09-03 Jason Rumney <jasonr@gnu.org>
8823
8824 * w32menu.c (_widget_value): Add lname and lkey.
8825 (digest_single_submenu): Set lname and lkey in widget_value
8826 instead of name and key.
8827 (update_submenu_strings): New function.
8828 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8829 call update_submenu_strings.
8830
8831 * w32menu.c (globals_of_w32menu): Check for Unicode API.
8832 (digest_single_submenu, w32_menu_show): Encode menu strings as
8833 UTF-8 if Unicode API is available.
8834 (utf8to16): New function.
8835 (add_menu_item): Use it when calling Unicode API.
8836
8837 2004-09-03 Kim F. Storm <storm@cua.dk>
8838
8839 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
8840 in overlay or text-property strings; set cursor on corresponding
8841 glyph rather than at end of the string.
8842
8843 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8844
8845 * macfns.c (x_real_positions): Save the current window port and
8846 set a new one before obtaining the global coordinate.
8847 Use FRAME_MAC_WINDOW.
8848 (x_set_name, x_set_title): Encode title to UTF8.
8849 Use SetWindowTitleWithCFString.
8850 (Fx_server_version): Get correct OS version.
8851
8852 * macmenu.c (add_menu_item): Remove unused variable `i'.
8853 Don't let separator items destroy refence constants of other menu items.
8854
8855 * macterm.c (x_update_end): Move SetPortWindowPort to inside
8856 BLOCK_INPUT.
8857 (x_set_offset): Use FRAME_MAC_WINDOW.
8858
8859 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
8860 nontext_cursor if it is on a scroll bar.
8861
8862 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
8863 Carbon support.
8864 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
8865 Use LIBS_CARBON.
8866
8867 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8868
8869 * xfns.c (x_set_name_internal): New function. Check if we shall call
8870 xfree before ENCODE_UTF_8.
8871 (x_set_name, x_set_title): Call x_set_name_internal.
8872
8873 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
8874
8875 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
8876 reload it.
8877
8878 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8879
8880 * macmenu.c (_widget_value): Add lname and lkey.
8881 (single_submenu): Set lname and lkey in widget_value
8882 instead of name and key.
8883 (update_submenu_strings): New function.
8884 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8885 call update_submenu_strings.
8886
8887 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
8888 instead of name and key.
8889 (update_submenu_strings): New function.
8890 (set_frame_menubar): Remove call to inhibit_garbage_collection,
8891 call update_submenu_strings.
8892
8893 * gtkutil.h (_widget_value): Added lname and lkey.
8894
8895 2004-08-30 Steven Tamm <steventamm@mac.com>
8896
8897 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
8898 by using different names for inner loop variables.
8899
8900 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8901
8902 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
8903 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
8904
8905 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
8906 tool bar items is 0.
8907
8908 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8909
8910 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
8911 strings in menu items.
8912 (single_submenu): Use ENCODE_MENU_STRING
8913 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
8914 button release isn't passed to event loop
8915 (add_menu_item): Use SetMenuItemWithCFString
8916
8917 2004-08-26 Steven Tamm <steventamm@mac.com>
8918
8919 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
8920 tool-bar/menu click.
8921 * macfns.c (Fx_file_dialog): Implement using NavServices.
8922
8923 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8924
8925 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
8926
8927 * xfns.c (x_window_to_frame, x_any_window_to_frame)
8928 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
8929 (x_top_window_to_frame): Return 0 if wdesc is None.
8930
8931 2004-08-22 Richard M. Stallman <rms@gnu.org>
8932
8933 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
8934 HAVE_TERMIOS]: If there's no char for this signal, drop through
8935 and use system calls.
8936
8937 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
8938
8939 2004-08-20 Kim F. Storm <storm@cua.dk>
8940
8941 * process.c (wait_reading_process_output): Rename from
8942 wait_reading_process_input. All uses changed.
8943 (wait_reading_process_output_1): Rename from
8944 wait_reading_process_input_1. All uses changed.
8945
8946 * dispnew.c (Fsleep_for): Remove obsolete code.
8947
8948 2004-08-20 Kenichi Handa <handa@m17n.org>
8949
8950 * syntax.c (skip_chars): Fix for unibyte case.
8951
8952 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
8953
8954 * syntax.c (char_quoted): Mixup byte/char pos.
8955 (back_comment): Fixup globals in all cases.
8956
8957 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8958
8959 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
8960 passing it to gtk_window_set_title.
8961
8962 2004-08-19 Kim F. Storm <storm@cua.dk>
8963
8964 * process.c (wait_reading_process_input): Clean up.
8965 Add wait_for_cell, wait_proc, and just_wait_proc args
8966 to avoid overloading `read_kbd' and `do_display' args.
8967 Change read_kbd arg to int. All callers changed.
8968
8969 * process.c (process_send_signal): Use CDISABLE.
8970
8971 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
8972
8973 2004-08-18 Kim F. Storm <storm@cua.dk>
8974
8975 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
8976 forward to wait_reading_process_input via DO_DISPLAY arg.
8977 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
8978 object, only process output from that process; also inhibit
8979 running timers if DO_DISPLAY==-2.
8980
8981 2004-08-17 Kim F. Storm <storm@cua.dk>
8982
8983 * process.c (process_send_signal): Fix last change--use
8984 _POSIX_VDISABLE instead of CVDISABLE when available.
8985
8986 2004-08-16 Richard M. Stallman <rms@gnu.org>
8987
8988 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
8989 Set VQUIT and VINTR chars to the standard ones if they are unset.
8990 [AIX]: Don't do that here. And don't force VINTR to standard
8991 when SIGNALS_VIA_CHARACTERS.
8992
8993 * process.c (process_send_signal)
8994 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
8995 Do nothing if the character is CVDISABLE.
8996
8997 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
8998
8999 * intervals.c (move_if_not_intangible):
9000 Force POSITION to be between BEGV and ZV.
9001
9002 2004-08-14 John Paul Wallington <jpw@gnu.org>
9003
9004 * buffer.c (Frestore_buffer_modified_p): Doc fix.
9005
9006 * fileio.c (Fread_file_name): Doc fix.
9007
9008 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
9009
9010 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
9011
9012 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
9013
9014 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
9015
9016 * keyboard.c: Declare Qdisabled_command_function instead of
9017 Qdisabled_command_hook.
9018 (Fcommand_execute): Use Qdisabled_command_function instead of
9019 Qdisabled_command_hook.
9020 (syms_of_keyboard): Ditto.
9021
9022 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
9023
9024 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
9025 (syms_of_keymap) <key-translation-map>: Doc fixes.
9026
9027 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
9028
9029 * window.c (window_list_1): YAILOM.
9030
9031 * fileio.c (make_temp_name): Handle multibyte prefixes.
9032
9033 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
9034
9035 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
9036 Doc fix.
9037
9038 2004-08-03 Kenichi Handa <handa@m17n.org>
9039
9040 * coding.c (decode_coding_string): Adjust coding->consumed, and
9041 etc. with shrinked_bytes.
9042
9043 2004-08-03 Kim F. Storm <storm@cua.dk>
9044
9045 * indent.c (compute_motion): Fix check for full width window
9046 in non-window case. Do not count left truncation glyph on
9047 window systems.
9048
9049 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
9050
9051 * data.c (Finteractive_form): Doc fix.
9052
9053 2004-08-02 Kim F. Storm <storm@cua.dk>
9054
9055 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
9056 properly accounting for continuation glyph on non-window systems.
9057 (Fcompute_motion): Use actual window width if WIDTH is nil, and
9058 actual window width/height if TOPOS is nil, properly accounting for
9059 continuation glyphs on non-window systems, and optional header lines.
9060 (vmotion): Let compute_motion calculate actual window width.
9061
9062 * window.c (window_scroll_line_based): Let compute_motion
9063 calculate actual window width.
9064
9065 2004-08-02 Kim F. Storm <storm@cua.dk>
9066
9067 * process.c (read_process_output): Use whole read buffer.
9068 Don't trigger adaptive read buffering on errors.
9069
9070 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
9071
9072 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
9073
9074 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
9075
9076 * callint.c (Fcall_interactively): Doc fix.
9077
9078 2004-07-30 Richard M. Stallman <rms@gnu.org>
9079
9080 * abbrev.c (Fexpand_abbrev): Undo previous change.
9081
9082 2004-07-30 Kim F. Storm <storm@cua.dk>
9083
9084 * editfns.c (Fformat): Allocate extra (dummy) element in info.
9085
9086 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
9087
9088 * eval.c (Fdefvar, Fdefconst): Doc fixes.
9089
9090 2004-07-27 Kim F. Storm <storm@cua.dk>
9091
9092 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
9093 we have ensured that the glyph fits on the current line (or returned
9094 MOVE_LINE_CONTINUED otherwise).
9095
9096 2004-07-26 Kim F. Storm <storm@cua.dk>
9097
9098 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
9099 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
9100 if target position is at end of display line but char is not a newline.
9101
9102 2004-07-25 Richard M. Stallman <rms@gnu.org>
9103
9104 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
9105 instead of ON_VERTICAL_BORDER, when on scroll bar.
9106 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
9107
9108 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
9109
9110 * window.c (Fcoordinates_in_window_p):
9111 Take account of FRAME_INTERNAL_BORDER_WIDTH.
9112
9113 * alloc.c (check_cons_list): New function (contents commented out).
9114
9115 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
9116
9117 * xfaces.c (Fcolor_supported_p): Doc fix.
9118
9119 * frame.c (Fselect_frame, Fset_frame_selected_window)
9120 (Fframe_visible_p, Fraise_frame): Doc fixes.
9121
9122 2004-07-24 Richard M. Stallman <rms@gnu.org>
9123
9124 * keyboard.h (not_single_kboard_state): Declare.
9125
9126 * fileio.c (Fwrite_region): Doc fix.
9127
9128 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
9129
9130 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
9131 only when a real abbrev is present.
9132
9133 * xfns.c (x_icon_verify): New function.
9134 (Fx_create_frame): Use it.
9135
9136 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
9137
9138 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
9139
9140 2004-07-21 Kim F. Storm <storm@cua.dk>
9141
9142 * window.h (struct glyph_matrix): New members nrows_scale_factor
9143 and ncols_scale_factor.
9144
9145 * window.c (make_window): Initialize nrows_scale_factor and
9146 ncols_scale_factor members.
9147
9148 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
9149 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
9150 (required_matrix_height): Apply nrows_scale_factor.
9151 (required_matrix_width): Apply ncols_scale_factor.
9152
9153 * xdisp.c (display_line): Increment nrows_scale_factor and set
9154 fonts_changed_p if past last allocated row.
9155 (append_glyph, append_composite_glyph, produce_image_glyph)
9156 (append_stretch_glyph): Increment ncols_scale_factor and set
9157 fonts_changed_p if current area is full.
9158
9159 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9160
9161 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
9162
9163 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
9164
9165 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
9166 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
9167 (Fset_window_start, Fscroll_up, Fscroll_down)
9168 (Fother_window_for_scrolling, Fscroll_other_window)
9169 (Fsave_window_excursion, Fset_window_vscroll)
9170 (syms_of_window) <window-size-fixed>: Doc fixes.
9171
9172 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9173
9174 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
9175 ENCODE_SYSTEM for filenames.
9176
9177 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9178
9179 * mac.c (sys_select): Block input around call to
9180 ReceiveNextEvent to prevent breakage. Correctly handle
9181 blocking on event queue only by calling ReceiveNextEvent
9182 instead of select (since GUI events aren't on an fd).
9183 (sys_read): Remove function
9184 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
9185
9186 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9187
9188 * mac.c (sys_select): Redo sys_select to use alarm-based
9189 polling instead of 1 sec timeouts (like solaris).
9190
9191 * macterm.c (x_make_frame_visible): Comment in polling on
9192 frame creation.
9193
9194 * keyboard.c: Undef SIGIO on Carbon
9195
9196 * atimer.c (alarm_signal_handler): Call alarm handlers after
9197 scheduling.
9198
9199 * eval.c (Feval): Remove quit_char test
9200
9201 * process.c (wait_reading_process_input): Remove clearing
9202 stdin for select call on process input.
9203
9204 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
9205
9206 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
9207 capitalization error in docstring.
9208
9209 2004-07-17 Juanma Barranquero <lektu@terra.es>
9210
9211 * keyboard.c (not_single_kboard_state): Do nothing unless
9212 MULTI_KBOARD is defined.
9213
9214 2004-07-17 Richard M. Stallman <rms@gnu.org>
9215
9216 * window.c (coordinates_in_window): Inside the window but outside
9217 its box to the L or R, return ON_VERTICAL_BORDER.
9218 (window_list_1): Rotate the list to start with WINDOW.
9219
9220 * print.c (print_preprocess): Test for print_depth at limit
9221 before entering in being_printed.
9222
9223 * keyboard.c (not_single_kboard_state): New function.
9224 (stuff_buffered_input): Now no-op only if no SIGTSTP.
9225
9226 * frame.c (Fdelete_frame): If we're in single_bboard_state on
9227 this kboard, and we delete its last frame, go to any_kboard_state.
9228
9229 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
9230
9231 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9232
9233 * w32fns.c (Fx_file_dialog): Encode strings in system coding
9234 system before passing them to OS functions for display.
9235
9236 2004-07-15 David Kastrup <dak@gnu.org>
9237
9238 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
9239 Apparently fixes an abort condition.
9240
9241 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
9242
9243 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
9244 instead of a cons.
9245
9246 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9247
9248 * keyboard.c (echo_dash): Do nothing if there already is a dash
9249 at the end of the echo string.
9250
9251 2004-07-12 Kim F. Storm <storm@cua.dk>
9252
9253 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
9254 if GC_MARK_STACK.
9255
9256 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
9257
9258 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
9259
9260 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
9261 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
9262 (Freplace_buffer_in_windows, Fset_window_buffer)
9263 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
9264 (syms_of_window): Expand docstring of `display-buffer-function'.
9265
9266 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
9267
9268 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
9269 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
9270 that time values of the type (HIGH . LOW) are considered obsolete.
9271
9272 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
9273
9274 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
9275 docstring.
9276
9277 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
9278
9279 2004-07-06 John Paul Wallington <jpw@gnu.org>
9280
9281 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
9282
9283 * fns.c (Fclear_string): Signal an error if STRING is not a string.
9284
9285 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9286
9287 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
9288 instead of CGMainDisplayID (only in OSX 10.2 and later).
9289
9290 2004-07-04 John Paul Wallington <jpw@gnu.org>
9291
9292 * fileio.c (read_file_name_completion_ignore_case): New variable.
9293 (syms_of_fileio): Declare and initialise it.
9294 (Fread_file_name): Bind `completion-ignore-case' to respect it.
9295
9296 2004-07-03 Eli Zaretskii <eliz@gnu.org>
9297
9298 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
9299 for event.x and event.y.
9300
9301 2004-07-01 Kenichi Handa <handa@m17n.org>
9302
9303 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
9304 after getting a new string by pre-write-conversion.
9305
9306 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
9307
9308 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
9309 (x_calc_absolute_position): Remove unused var `child'.
9310
9311 * xfaces.c (x_supports_face_attributes_p)
9312 (Fdisplay_supports_face_attributes_p): YAILOM.
9313 (tty_supports_face_attributes_p): Remove unused var `i'.
9314
9315 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
9316 back_unibyte_ok.
9317
9318 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
9319
9320 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
9321
9322 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
9323
9324 2004-06-30 Andreas Schwab <schwab@suse.de>
9325
9326 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
9327 (Finit_image_library): Pass LIBRARIES through to
9328 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
9329 (lookup_image_type): Pass Qnil as second argument to
9330 Finit_image_library.
9331
9332 * lisp.h (Finit_image_library): Declare.
9333
9334 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9335
9336 * macterm.c (do_window_activate, do_window_deactivate): Remove.
9337 (XTread_socket): Send mouse button events to the toolbox
9338 dispatcher even when the mouse is grabbed. Don't process window
9339 activate events for non-Emacs windows. Replace function calls to
9340 do_window_activate and do_window_deactivate with their contents.
9341 Reset mouse grabbing status when a window is deactivated.
9342
9343 2004-06-29 Steven Tamm <steventamm@mac.com>
9344
9345 * macterm.c (mac_get_emulated_btn)
9346 (mac_event_to_emacs_modifiers): Fix emulated mouse button
9347 support to correctly mask out modifiers.
9348
9349 2004-06-29 David Kastrup <dak@gnu.org>
9350
9351 * search.c (Fset_match_data): Allow buffer before end of list
9352 which can happen if set-match-data is using a pre-consed list.
9353
9354 2004-06-28 Steven Tamm <steventamm@mac.com>
9355
9356 * macterm.c (XTread_socket): Correctly set the frame position
9357 after the window is moved.
9358
9359 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9360
9361 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
9362 gpix and gmask just before return to avoid memory leak.
9363 (xg_get_image_for_pixmap): Add workaround for monochrome displays
9364 so insensitive and activated icons look ok.
9365
9366 2004-06-27 Jason Rumney <jasonr@gnu.org>
9367
9368 * w32fns.c (file_dialog_callback): Disable edit control if set
9369 to directories only on CDN_INITDONE message.
9370 (Fx_file_dialog): Default to directories only when prompt starts
9371 with "Dired".
9372
9373 2004-06-25 Kim F. Storm <storm@cua.dk>
9374
9375 * alloc.c (allocate_misc): Update total_free_markers.
9376 (free_misc): New function.
9377 (safe_alloca_unwind, free_marker): Use it.
9378
9379 * lisp.h (free_misc): Add prototype.
9380
9381 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
9382
9383 2004-06-24 Richard M. Stallman <rms@gnu.org>
9384
9385 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
9386 (syms_of_emacs): Lisp variables deleted.
9387
9388 2004-06-23 David Kastrup <dak@gnu.org>
9389
9390 * search.c (Freplace_match): Adjust the match-data more thoroughly
9391 when replacing strings in the buffer.
9392 (Fmatch_data): When INTEGERS is non-nil and the last match was in
9393 a buffer, add the buffer as last element to the match data.
9394 (Fset_match_data): If an additional element of the match-data is a
9395 buffer, restore it to last_thing_searched.
9396 (save_search_regs): Save last_thing_searched as part of the match data.
9397 (restore_match_data): Restore it again.
9398
9399 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
9400
9401 * keymap.c (Ftext_char_description): Doc fix.
9402 * doc.c (Fsnarf_documentation): Doc fix.
9403
9404 2004-06-22 Kim F. Storm <storm@cua.dk>
9405
9406 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
9407
9408 * lisp.h (struct Lisp_Save_Value): New member dogc.
9409 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
9410 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
9411 (SAFE_FREE_LISP): New macro.
9412
9413 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
9414 (make_save_value): Init new dogc member.
9415 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
9416
9417 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
9418 SAFE_FREE_LISP macros.
9419
9420 2004-06-22 Kim F. Storm <storm@cua.dk>
9421
9422 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
9423 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
9424 in that memory area are unknown to GC. Add comments.
9425
9426 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
9427
9428 2004-06-21 Kim F. Storm <storm@cua.dk>
9429
9430 * lisp.h (MAX_ALLOCA): Define here.
9431 (safe_alloca_unwind): Add prototype.
9432 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
9433
9434 * alloc.c (safe_alloca_unwind): New function.
9435
9436 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
9437
9438 * charset.c (Fstring): Use SAFE_ALLOCA.
9439
9440 * coding.c (MAX_ALLOCA): Remove define.
9441
9442 * data.c (MAX_ALLOCA): Remove define.
9443 (Faset): Use SAFE_ALLOCA.
9444
9445 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
9446
9447 * fns.c (string_make_multibyte, string_to_multibyte)
9448 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
9449 (MAX_ALLOCA): Remove define.
9450 (Fbase64_encode_region, Fbase64_encode_string)
9451 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
9452 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
9453 memory leak if encoding fails.
9454
9455 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
9456
9457 2004-06-21 Eli Zaretskii <eliz@gnu.org>
9458
9459 * print.c (Fwith_output_to_temp_buffer): Doc fix.
9460
9461 2004-06-20 Richard M. Stallman <rms@gnu.org>
9462
9463 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
9464
9465 * search.c (match_limit): Cleaner err msg when no match data available.
9466
9467 * window.c (syms_of_window): Doc fix.
9468
9469 * keyboard.c (command_loop_1): Handle values `only' and `identity'
9470 for Vtransient_mark_mode.
9471
9472 * buffer.c (syms_of_buffer): Doc fix.
9473
9474 2004-06-21 David Kastrup <dak@gnu.org>
9475
9476 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
9477 and unbinding of `case-fold-search' according to
9478 `completion-ignore-case' around calls of string-match and
9479 predicates, respectively. Should give satisfactory performance
9480 in all relevant cases.
9481
9482 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9483
9484 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
9485 clip_x/y_origin.
9486
9487 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
9488
9489 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
9490
9491 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
9492 on Mac OSX.
9493
9494 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
9495
9496 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
9497
9498 2004-06-16 Kim F. Storm <storm@cua.dk>
9499
9500 * dispextern.h (Vimage_types): Remove extern.
9501
9502 2004-06-16 Miles Bader <miles@gnu.org>
9503
9504 * image.c (lookup_image_type): Initialize image type if necessary.
9505
9506 2004-06-15 Kim F. Storm <storm@cua.dk>
9507
9508 * xdisp.c (try_cursor_movement): Exclude header line from scroll
9509 margin at top of window.
9510 (try_window_reusing_current_matrix): Calculate proper cursor position
9511 after scrolling up with non-zero scroll margin, as the old cursor
9512 position corresponds to value of PT before executing this command.
9513 (try_window_id): Consider scroll margin at bottom of window too;
9514 otherwise we fail to scroll when hl-line-mode is enabled.
9515
9516 * syntax.c (skip_chars): Only recognize [:class:] when it has the
9517 proper format and class is a lower-case word.
9518
9519 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9520
9521 * gtkutil.c (xg_get_image_for_pixmap): New function.
9522 (xg_get_gdk_pixmap_and_mask): Remove.
9523 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
9524 xg_get_gdk_pixmap_and_mask.
9525
9526 * xterm.h (struct x_display_info): Typo in comment fixed.
9527
9528 2004-06-14 Juanma Barranquero <lektu@terra.es>
9529
9530 * dispextern.h (Vimage_types): Make it conditional on
9531 HAVE_WINDOW_SYSTEM.
9532
9533 * image.c (Vimage_types): Move from xdisp.c.
9534 (Vimage_type_cache): New variable.
9535 (define_image_type): New argument indicating whether an image
9536 library was loaded; cache loaded status and return t on success,
9537 nil otherwise.
9538 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
9539 (w32_delayed_load): New function to load an image library from a
9540 list of possible filenames.
9541 (init_xpm_functions, init_png_functions, init_jpeg_functions)
9542 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
9543 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
9544 (Finit_image_library): New function, extracted from `init_image'.
9545 Try to initialize an image library on demand and cache whether we
9546 were successful or not.
9547 (syms_of_image): Initialize `Vimage_types' and
9548 `Vimage_type_cache'. Add recognized image types to Vimage_types.
9549 Export `init-image-library'.
9550 (init_image): Remove initialization of all image types, except xbm
9551 and pbm.
9552
9553 * xdisp.c (Vimage_types): Delete (moved to image.c).
9554
9555 2004-06-14 Andreas Schwab <schwab@suse.de>
9556
9557 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9558 Avoid calling specbind when completion-regexp-list is empty.
9559
9560 2004-06-13 Richard M. Stallman <rms@gnu.org>
9561
9562 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9563 (re_wctype, re_iswctype, re_wctype_to_bit):
9564 Non-function definitions moved here from regex.c.
9565
9566 * regex.c (re_wctype, re_iswctype): Function defs longer static.
9567 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9568 (re_wctype, re_iswctype, re_wctype_to_bit):
9569 Non-function definitions moved to regex.h.
9570
9571 * window.c (Fselect_window): Doc fix.
9572
9573 * syntax.c: Include regex.h.
9574 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
9575 If requested, make a list of classes, then check the scanned
9576 chars for membership in them.
9577 (in_classes): New function.
9578 Doc fix.
9579
9580 * keyboard.c (cmd_error): Don't call any_kboard_state
9581 if inside a recursive edit level.
9582
9583 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9584
9585 * keyboard.c (command_loop): Call any_kboard_state before
9586 command_loop_2 when at top level.
9587
9588 2004-06-13 Andreas Schwab <schwab@suse.de>
9589
9590 * print.c (print_object): Always use %ld for printing EMACS_INT.
9591
9592 * keyboard.c (cancel_hourglass_unwind): Return a value.
9593 (modify_event_symbol): Always use %ld for printing EMACS_INT.
9594 (Fexecute_extended_command): Likewise.
9595
9596 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
9597 avoid clashes.
9598 (SYNTAX): Likewise.
9599 (SYNTAX_WITH_FLAGS): Likewise.
9600 (SYNTAX_MATCH): Likewise.
9601
9602 * syntax.c (char_quoted): Avoid warning about undefined operation.
9603 (find_defun_start): Likewise.
9604 (scan_lists): Likewise.
9605 (INC_FROM): Likewise.
9606 (scan_sexps_forward): Likewise.
9607
9608 * image.c: Include <ctype.h>.
9609
9610 * xfaces.c (face_attr_equal_p): Declare parameters.
9611
9612 2004-06-13 Kenichi Handa <handa@m17n.org>
9613
9614 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
9615
9616 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
9617
9618 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
9619
9620 2004-06-12 Kenichi Handa <handa@m17n.org>
9621
9622 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
9623 ccl_prog_stack_struct and update it.
9624 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
9625 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
9626 ccl->eof_ic on EOF.
9627 (ccl_debug_hook): New function.
9628 (struct ccl_prog_stack): New member eof_ic.
9629 (ccl_driver): Handle EOF in subrountine call correctly.
9630
9631 2004-06-11 Kenichi Handa <handa@m17n.org>
9632
9633 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
9634
9635 2004-06-11 Kim F. Storm <storm@cua.dk>
9636
9637 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
9638
9639 2004-06-11 Juanma Barranquero <lektu@terra.es>
9640
9641 * keyboard.c (Fposn_at_point): Doc fix.
9642
9643 2004-06-11 David Kastrup <dak@gnu.org>
9644
9645 * search.c (match_limit): Don't flag an error if match-data
9646 exceeding the allocated search_regs.num_regs gets requested, just
9647 return Qnil.
9648
9649 2004-06-08 Miles Bader <miles@gnu.org>
9650
9651 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
9652
9653 2004-06-07 Juanma Barranquero <lektu@terra.es>
9654
9655 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
9656 (Fcurrent_time_string, Fcurrent_time_zone)
9657 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
9658
9659 2004-06-07 Miles Bader <miles@gnu.org>
9660
9661 * xfaces.c (struct named_merge_point): New type.
9662 (push_named_merge_point): New function.
9663 (merge_named_face): New function.
9664 (merge_face_ref, face_at_buffer_position, face_at_string_position):
9665 Use `merge_named_face'.
9666 (merge_face_inheritance): Function removed.
9667 (merge_face_ref): Rename from `merge_face_vector_with_property'.
9668 Add new `err_msgs' and `named_merge_points' args. Return error
9669 status. Only print error messages if ERR_MSGS is true. Don't try to
9670 do :inherit attribute validation.
9671 (merge_face_heights): Handle `unspecified' in both directions.
9672 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
9673 Call `merge_face_ref' instead of `merge_face_inheritance'.
9674 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
9675 (compute_char_face, face_at_buffer_position)
9676 (face_at_string_position): Call `merge_face_ref' instead of
9677 `merge_face_vector_with_property'.
9678
9679 2004-06-07 Kenichi Handa <handa@m17n.org>
9680
9681 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
9682 the necessary places.
9683
9684 2004-06-07 Kim F. Storm <storm@cua.dk>
9685
9686 * process.c (Fdelete_process): Undo 2004-05-28 change.
9687 Instead, call status_notify also for network process.
9688 (status_message): Use process instead of status as arg.
9689 Give messages "deleted" or "connection broken by remote peer" for
9690 an exited network process.
9691 (status_notify): Change call to status_message.
9692 (read_process_output): Increase readmax to 4096. Do not increase
9693 buffer size for datagram channels (default is now large enough).
9694
9695 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9696
9697 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
9698 problem due to newly defined variable.
9699
9700 2004-06-06 Miles Bader <miles@gnu.org>
9701
9702 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
9703 immediately if non-interactive or not initialized.
9704
9705 2004-06-05 Richard M. Stallman <rms@gnu.org>
9706
9707 * minibuf.c (Fcompleting_read): Doc fix.
9708
9709 2004-06-05 Andreas Schwab <schwab@suse.de>
9710
9711 * macfns.c (x_create_tip_frame): Fix declaration after statement.
9712
9713 2004-06-05 Juanma Barranquero <lektu@terra.es>
9714
9715 * keymap.c (Fdescribe_vector): Fix docstring.
9716 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
9717
9718 2004-06-05 Miles Bader <miles@gnu.org>
9719
9720 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
9721 attributes have different values than the default face.
9722
9723 2004-06-04 Eli Zaretskii <eliz@gnu.org>
9724
9725 * xfaces.c (x_supports_face_attributes_p): Make this function
9726 conditional on HAVE_WINDOW_SYSTEM.
9727 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
9728 Don't call x_supports_face_attributes_p if it was not compiled in.
9729
9730 2004-06-04 Miles Bader <miles@gnu.org>
9731
9732 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
9733 from Ftty_supports_face_attributes_p.
9734 (x_supports_face_attributes_p): New function.
9735 (Ftty_supports_face_attributes_p): Function deleted.
9736 (Fdisplay_supports_face_attributes_p): New function.
9737 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
9738 (face_attr_equal_p): New function.
9739 (lface_equal_p): Use it.
9740
9741 2004-06-03 Juanma Barranquero <lektu@terra.es>
9742
9743 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
9744 (Vw32_color_map): Fix typo in docstring.
9745 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
9746 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
9747 Make argument names match their use in docstring.
9748
9749 2004-06-02 Juanma Barranquero <lektu@terra.es>
9750
9751 Work around bugs/problems with MinGW builds of graphics libraries
9752 called from MSVC builds of Emacs.
9753
9754 * image.c (lookup_image): Make pointer to img static.
9755 (png_read_from_memory): Disable "global" optimization.
9756
9757 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
9758
9759 * eval.c (Fcondition_case): Fix usage. Simplify.
9760
9761 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
9762
9763 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9764
9765 * macfns.c: Don't include ccl.h.
9766 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
9767 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
9768 TextUtils.h.
9769 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
9770 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
9771 display height/width.
9772 (compute_tip_xy, Vx_max_tooltip_size): Declare.
9773 (unwind_create_tip_frame, compute_tip_xy): New functions.
9774 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
9775 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
9776 and last_show_tip_args.
9777
9778 * macgui.h [!MAC_OSX]: Include Gestalt.h.
9779 (Cursor, No_Cursor): New defines.
9780 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
9781 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
9782
9783 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
9784
9785 * macterm.c: Don't include Gestalt.h.
9786 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
9787 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
9788 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
9789 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
9790 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
9791 (construct_mouse_click, XTmouse_position)
9792 (x_scroll_bar_report_motion, x_calc_absolute_position)
9793 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
9794 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
9795 (note_mouse_movement): Clear the mouse face and reset the pointer
9796 shape when the pointer goes outside the frame without grabbing.
9797 (mac_front_window): New function.
9798 (mac_window_to_frame): New macro.
9799 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
9800 (do_window_activate, do_window_deactivate, do_app_resume)
9801 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
9802 (do_zoom_window, mac_do_receive_drag, XTread_socket)
9803 (mac_check_for_quit_char): Use mac_front_window and/or
9804 mac_window_to_frame.
9805 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
9806 scroll-bar click event.
9807 (mac_define_frame_cursor): Change the pointer shape.
9808 (x_free_frame_resources): Reset tip_window to NULL when it is
9809 disposed of.
9810 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
9811 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
9812 (do_window_update): Don't do anything if the updated window is the
9813 tooltip window.
9814 (do_mouse_moved): Handle mouse movement events here (previously in
9815 XTread_socket). Clear the mouse face if
9816 dpyinfo->mouse_face_hidden is set.
9817 (do_os_event, do_events): Remove (now in XTread_socket).
9818 (XTread_socket): Immediately return if interrupt_input_blocked.
9819 Loop until all the events in the queue are processed.
9820 Rearrange codes for mouse grabbing. Add tooltip support. Include the
9821 contents of do_os_event and do_events. Remove mouse movement
9822 handling (now in do_mouse_moved). Add the case where
9823 Vmouse_highlight has an integer value.
9824 (NewMacWindow): Remove.
9825 (make_mac_frame): Do what NewMacWindow previously did. Don't do
9826 excess initializations.
9827 (make_mac_terminal_frame): Previous initializations in
9828 make_mac_frame are moved here.
9829 (mac_initialize_display_info):
9830 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
9831
9832 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
9833 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
9834
9835 2004-05-29 Richard M. Stallman <rms@gnu.org>
9836
9837 * lisp.h (truncate_undo_list): Update decl.
9838
9839 * alloc.c (undo_outer_limit): New variable.
9840 (syms_of_alloc): Defvar it.
9841 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
9842
9843 * undo.c (truncate_undo_list): New arg LIMITSIZE.
9844
9845 * alloc.c (lisp_align_malloc): Check for base == 0
9846 regardless of HAVE_POSIX_MEMALIGN.
9847 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
9848
9849 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9850
9851 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
9852 (marker_blocks_pending_free): Remove.
9853 (Fgarbage_collect): Sweep after cleaning up undo-lists.
9854 Mark the undo lists after claning them up.
9855 Don't free block in marker_blocks_pending_free.
9856 (mark_buffer): Don't mark undo_list.
9857 (gc_sweep): Sweep hash-tables and strings first.
9858 Do free marker blocks that are empty.
9859
9860 2004-05-28 Jim Blandy <jimb@redhat.com>
9861
9862 * regex.c (print_partial_compiled_pattern): Add missing 'break'
9863 after 'case wordend'. For symbeg and symend, print to stderr,
9864 like the other cases.
9865
9866 2004-05-28 Noah Friedman <friedman@splode.com>
9867
9868 * process.c (Fdelete_process): Do not call remove_process.
9869
9870 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
9871
9872 * alloc.c (struct backtrace): Remove.
9873 (Fgarbage_collect): Use the new mark_backtrace.
9874
9875 * eval.c (mark_backtrace): New function.
9876
9877 * minibuf.c (run_exit_minibuf_hook): New function.
9878 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
9879 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
9880
9881 2004-05-27 Kim F. Storm <storm@cua.dk>
9882
9883 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
9884 over display properties, e.g. images, that replace buffer text.
9885
9886 2004-05-25 Kim F. Storm <storm@cua.dk>
9887
9888 * alloc.c (marker_blocks_pending_free): New var.
9889 (gc_sweep): Store free marker blocks on that list.
9890 (Fgarbage_collect): Free them after undo-list cleanup.
9891
9892 * process.c (wait_reading_process_input): Check connect_wait_mask
9893 before actually accepting connection in case it has already been
9894 accepted due to recursion.
9895
9896 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9897
9898 * coding.c (Fset_safe_terminal_coding_system_internal):
9899 Set suppress_error in safe_terminal_coding, not terminal_coding.
9900
9901 2004-05-22 Richard M. Stallman <rms@gnu.org>
9902
9903 * alloc.c (Fmake_string): Doc fix.
9904
9905 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
9906 and the alist pairs too.
9907
9908 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
9909
9910 * emacs.c (main): Update copyright year.
9911
9912 * fileio.c (Fread_file_name): Expand DIR if not absolute.
9913
9914 * insdel.c (del_range_2, replace_range): Don't write an anchor
9915 if the gap is empty.
9916
9917 * xdisp.c (try_scrolling): If scroll-up-aggressively or
9918 scroll-down-aggressively is small but positive, put point
9919 near the screen edge.
9920
9921 2004-05-22 Juanma Barranquero <lektu@terra.es>
9922
9923 * keymap.c (Fdefine_key): Doc fix.
9924
9925 2004-05-22 Kim F. Storm <storm@cua.dk>
9926
9927 * alloc.c (struct backtrace): Add debug_on_exit member.
9928 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
9929 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
9930 the removed cons cells.
9931 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
9932 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
9933 any cons cells pointing to unallocated stings.
9934 Do not lisp_free any marker blocks, as there may still be pointers
9935 to them from buffer undo lists at this stage of GC.
9936
9937 * keyboard.c (struct backtrace): Add debug_on_exit member.
9938 (Fcommand_execute): Clear it.
9939
9940 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
9941
9942 * intervals.c (lookup_char_property): Do not prematurely return nil.
9943
9944 2004-05-19 Jim Blandy <jimb@redhat.com>
9945
9946 Add support for new '\_<' and '\_>' regexp operators, matching the
9947 beginning and end of symbols.
9948
9949 * regex.c (enum syntaxcode): Add Ssymbol.
9950 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
9951 (re_opcode_t): New opcodes `symbeg' and `symend'.
9952 (print_partial_compiled_pattern): Print the new opcodes properly.
9953 (regex_compile): Parse the new operators.
9954 (analyse_first): Skip sym(beg|end) (they match only the empty string).
9955 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
9956 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
9957 (re_match_2_internal): Match symbeg and symend.
9958
9959 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
9960
9961 2004-05-19 Kim F. Storm <storm@cua.dk>
9962
9963 * .gdbinit (xsymbol): Fix last change.
9964
9965 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
9966
9967 * .gdbinit (xprintstr): New fun.
9968 (xstring, xprintsym): Use it.
9969
9970 * w32proc.c (create_child): Use INTMASK.
9971
9972 * alloc.c (Fgarbage_collect): Do all the marking before flushing
9973 unmarked elements of the undo list.
9974
9975 2004-05-18 David Ponce <david@dponce.com>
9976
9977 * print.c (print): Reset print_depth before to call print_object.
9978
9979 2004-05-18 Jason Rumney <jasonr@gnu.org>
9980
9981 * w32console.c: Prefix RIF functions with w32con_ to avoid
9982 namespace clash with functions in term.c and w32term.c.
9983
9984 * w32menu.c (add_menu_item, w32_menu_display_help)
9985 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
9986
9987 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
9988
9989 2004-05-18 Eli Zaretskii <eliz@gnu.org>
9990
9991 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
9992
9993 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
9994 with make_number.
9995 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
9996 with XINT.
9997
9998 2004-05-18 Kim F. Storm <storm@cua.dk>
9999
10000 * blockinput.h (INPUT_BLOCKED_P): New macros.
10001
10002 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
10003 (Ftop_level): Unblock input if blocked.
10004
10005 * buffer.h (GET_OVERLAYS_AT): New macro.
10006 * msdos.c (IT_note_mouse_highlight): Use it.
10007 * textprop.c (get_char_property_and_overlay): Use it.
10008 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
10009 * xfaces.c (face_at_buffer_position): Use it.
10010
10011 * print.c (print_object): Increase buf size.
10012
10013 2004-05-17 Jason Rumney <jasonr@gnu.org>
10014
10015 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
10016 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
10017 Lisp_Object using i member.
10018 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
10019 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
10020 consistently.
10021
10022 * w32proc.c (create_child): Use make_number instead of masking pid.
10023
10024 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
10025 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
10026 Use EQ to compare Lisp_Objects.
10027 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
10028
10029 * w32term.c (w32_num_mouse_buttons): Rename from
10030 Vw32_num_mouse_buttons and make it an int.
10031
10032 * w32.c (init_environment): Use it.
10033
10034 * w32fns.c (w32_wnd_proc): Likewise.
10035
10036 * w32proc.c (w32_pipe_read_delay): Rename from
10037 Vw32_pipe_read_delay and make it an int.
10038
10039 * w32.c (_sys_read_ahead): Use it.
10040
10041 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
10042
10043 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
10044
10045 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
10046 (key_event): Don't mix Lisp_Object and int.
10047
10048 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
10049
10050 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
10051 modifiers in language change event.
10052
10053 2004-05-17 Kim F. Storm <storm@cua.dk>
10054
10055 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
10056 Such objects may be freed markers which still exist on an undo list.
10057
10058 2004-05-16 Juanma Barranquero <lektu@terra.es>
10059
10060 * data.c (Fset_default): Make argument names match their use in
10061 docstring.
10062
10063 2004-05-15 Andreas Schwab <schwab@suse.de>
10064
10065 * emacs.c (gdb_array_mark_flag): Define.
10066 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
10067
10068 2004-05-15 Eli Zaretskii <eliz@gnu.org>
10069
10070 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
10071 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
10072 defined for the MS-DOS build.
10073
10074 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
10075
10076 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
10077
10078 2004-05-14 Kenichi Handa <handa@m17n.org>
10079
10080 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
10081
10082 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10083
10084 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
10085 section to frame.c section.
10086 (Fxw_display_color_p, Fx_file_dialog): Declare if
10087 HAVE_WINDOW_SYSTEM defined.
10088
10089 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
10090
10091 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
10092
10093 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
10094 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
10095 (XTread_socket): Fix int/Lisp_Object mixup.
10096 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
10097
10098 * macterm.h (struct frame, struct face, struct image)
10099 (display_x_get_resource, Fx_display_color_p)
10100 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
10101 Add prototypes.
10102
10103 2004-05-14 Kim F. Storm <storm@cua.dk>
10104
10105 * process.c (wait_reading_process_input): Make reentrant.
10106 Make Available and Connecting non-static. Save and restore value
10107 of waiting_for_user_input_p.
10108
10109 2004-05-13 Kim F. Storm <storm@cua.dk>
10110
10111 * keyboard.c (mark_kboards): Don't mark x and y members
10112 that are overloaded in selection request events.
10113
10114 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10115
10116 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
10117
10118 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
10119
10120 * window.c (Fdisplay_buffer, Fsplit_window)
10121 (split-height-threshold): Doc fix.
10122
10123 2004-05-13 Juanma Barranquero <lektu@terra.es>
10124
10125 * xfaces.c (Ftty_supports_face_attributes_p)
10126 (Finternal_copy_lisp_face): Fix typo in docstring.
10127 (Finternal_get_lisp_face_attribute): Fix docstring.
10128
10129 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10130
10131 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
10132
10133 2004-05-11 Steven Tamm <steventamm@mac.com>
10134
10135 * macfns.c (Fx_create_frame): Default to using tool-bar by
10136 setting tool-bar-lines to 1 in default-frame-alist.
10137
10138 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10139
10140 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
10141 (xpm_get_color_table_v, xpm_make_color_table_h)
10142 (xpm_put_color_table_h, xpm_get_color_table_h)
10143 (xpm_str_to_color_key, xpm_load_image, xpm_load)
10144 (syms_of_image): Support XPM on Carbon Emacs. Does not
10145 depend on libXpm, but only supports XPM version 3 without extensions.
10146
10147 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10148
10149 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
10150 instead of FRAME_X_P
10151
10152 2004-05-11 Kim F. Storm <storm@cua.dk>
10153
10154 * process.c (read_process_output): Grow decoding_buf when needed;
10155 this could cause a crash in allocate_string and compact_small_strings.
10156
10157 2004-04-29 Jim Blandy <jimb@redhat.com>
10158
10159 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
10160 against proper opcode.
10161
10162 2004-05-10 Juanma Barranquero <lektu@terra.es>
10163
10164 * process.c (Fstart_process): Fix docstring.
10165
10166 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
10167 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
10168 (Fsplit_char, Fchar_charset): Make argument names match their use
10169 in docstring.
10170
10171 2004-05-10 Richard M. Stallman <rms@gnu.org>
10172
10173 * print.c (print_preprocess): Use being_printed, loop_count and
10174 halftail to detect overdeep nesting and cyclic cdr chains.
10175
10176 2004-05-10 Andreas Schwab <schwab@suse.de>
10177
10178 * lisp.h (Fmake_symbolic_link): Declare.
10179
10180 * fileio.c (Frename_file): Remove extra argument in call to
10181 Fmake_symbolic_link.
10182
10183 2004-05-10 Kim F. Storm <storm@cua.dk>
10184
10185 * xdisp.c (calc_line_height_property): Use string position when
10186 object is a string.
10187
10188 2004-05-10 Kenichi Handa <handa@m17n.org>
10189
10190 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
10191 inhibit-modification-hooks to t temporarily before calling
10192 Ferase_buffer.
10193
10194 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
10195 inhibit-modification-hooks to t temporarily before calling
10196 Ferase_buffer.
10197
10198 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
10199 inhibit-modification-hooks to t temporarily before calling
10200 Ferase_buffer.
10201
10202 * fns.c (count_combining): Delete it.
10203 (concat): Don't check combining bytes.
10204
10205 2004-05-09 Jason Rumney <jasonr@gnu.org>
10206
10207 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
10208 (globals_of_w32fns): Set it.
10209
10210 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
10211
10212 * data.c (Fquo): Simplify.
10213
10214 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
10215
10216 * data.c (Fquo): If any argument is float, do the computation in
10217 floating point.
10218
10219 2004-05-08 Juanma Barranquero <lektu@terra.es>
10220
10221 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
10222 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
10223 Fix spelling of Emacs on docstring.
10224 (Fset_process_coding_system, Fprocess_coding_system)
10225 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
10226 Make argument names match their use in docstring.
10227 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
10228 Fix docstring.
10229
10230 * editfns.c (Finsert_buffer_substring): Make argument names match their
10231 use in docstring.
10232
10233 * syntax.c (Fmodify_syntax_entry): Fix docstring.
10234
10235 2004-05-07 Steven Tamm <steventamm@mac.com>
10236
10237 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
10238 around call to ReceiveEvent to avoid certain crashes.
10239
10240 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10241
10242 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
10243 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
10244 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
10245 Save/restore the current graphics port and device handle when
10246 drawing into an offscreen graphics world.
10247
10248 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
10249 (gif_load): Likewise.
10250
10251 2004-05-07 Juanma Barranquero <lektu@terra.es>
10252
10253 * window.c (Fset_window_buffer): Fix docstring.
10254
10255 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
10256
10257 * emacs.c (main) [VMS]: Fix var ref.
10258
10259 2004-05-06 Romain Francoise <romain@orebokech.com>
10260
10261 * data.c (Fsetq_default): Fix docstring.
10262
10263 2004-05-06 Jason Rumney <jasonr@gnu.org>
10264
10265 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
10266 to avoid name clash.
10267
10268 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10269
10270 * fileio.c (barf_or_query_if_file_exists): Use lstat.
10271 (Frename_file): Handle renaming of symlinks across file systems.
10272 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
10273
10274 2004-05-04 Kim F. Storm <storm@cua.dk>
10275
10276 * xdisp.c (Qtotal): New var.
10277 (syms_of_xdisp): Intern and staticpro it.
10278 (calc_line_height_property): New arg total. Set it if
10279 line-spacing property has format (total . VALUE).
10280 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
10281 Handle total line-spacing property.
10282
10283 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10284
10285 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
10286 "under" scroll bar when size/position changes.
10287
10288 2004-05-03 Jason Rumney <jasonr@gnu.org>
10289
10290 * makefile.nt: Remove.
10291
10292 2004-05-02 Eli Zaretskii <eliz@gnu.org>
10293
10294 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
10295 Avoid compiler warnings.
10296
10297 * Makefile.in (region-cache.o): Depend on config.h.
10298
10299 2004-05-02 Romain Francoise <romain@orebokech.com>
10300
10301 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
10302 with continuation lines, too.
10303
10304 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
10305
10306 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
10307
10308 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
10309
10310 * xdisp.c (calc_line_height_property): YAILOM (yet another
10311 int/Lisp_Object mixup).
10312
10313 2004-05-01 Eli Zaretskii <eliz@gnu.org>
10314
10315 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
10316 undo bad effect of pack(4) in some versions of system headers.
10317
10318 2004-05-01 Jason Rumney <jasonr@gnu.org>
10319
10320 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
10321
10322 2004-04-30 Kim F. Storm <storm@cua.dk>
10323
10324 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
10325 (syms_of_buffer) <cursor-type>: Doc fix.
10326
10327 * dispextern.h (struct it): Remove member use_default_face.
10328 Add members override_ascent, override_descent, override_boff.
10329
10330 * xdisp.c (init_iterator): Handle line-spacing float value.
10331 Initialize override_ascent member.
10332 (append_space_for_newline): Reset override_ascent.
10333 Remove use_default_face.
10334 (calc_line_height_property): New function to calculate value of
10335 line-height and line-spacing properties. Look at overlays, too.
10336 Set override_ascent, override_descent, override_boff members when
10337 using another face than the current face. Float values are now
10338 relative to the frame default font, by default; accept a cons
10339 of ratio and face name to specify value relative to a specific face.
10340 (x_produce_glyphs): Use calc_line_height_property.
10341 Use override_ascent etc. when set to handle different face heights.
10342 A negative line-spacing property value is interpreted as a total
10343 line height, rather than inter-line spacing.
10344 (note_mouse_highlight): Allocate room for 40 overlays initially.
10345
10346 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
10347
10348 * data.c (Fsubr_name): New fun.
10349 (syms_of_data): Defsubr it.
10350
10351 2004-04-29 Kim F. Storm <storm@cua.dk>
10352
10353 * xdisp.c (null_glyph_slice): New var.
10354 (append_glyph, append_composite_glyph, append_stretch_glyph):
10355 Use it to initialize glyph slice.
10356
10357 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
10358
10359 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
10360 (on_hot_spot_p): Make sure we always return a value.
10361 (Flookup_image_map): Remove unused var ix and iy.
10362 (note_mode_line_or_margin_highlight): Remove unused var `image'.
10363
10364 2004-04-27 Eli Zaretskii <eliz@gnu.org>
10365
10366 * msdos.c (init_environment): If one of the TMP... environment
10367 variables is set to a drive letter without a trailing slash,
10368 append a slash.
10369
10370 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
10371
10372 * editfns.c (lisp_time_argument): Provide externally.
10373
10374 * fileio.c (Fset_file_times): New function.
10375 (syms_of_fileio): Intern and staticpro it.
10376
10377 2004-04-27 Kim F. Storm <storm@cua.dk>
10378
10379 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
10380 header line strings.
10381
10382 * dispextern.h (struct it): New member use_default_face.
10383
10384 * xdisp.c (Qline_height): New variable.
10385 (syms_of_xdisp): Intern and staticpro it.
10386 (append_space_for_newline): Partially undo 2004-04-25 change;
10387 add default_face_p arg, and restore callers.
10388 Clear it->use_default_face after use.
10389 (x_produce_glyphs): Set default font for ascii char if
10390 it->use_default_font is set. Change line-spacing property to set
10391 just extra line spacing. Handle new line-height property.
10392
10393 2004-04-26 Andreas Schwab <schwab@suse.de>
10394
10395 * print.c (print_object): Print non-ascii characters in bool
10396 vector representation as octal escapes.
10397
10398 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
10399 * print.c (print_object): Use it instead of BITS_PER_CHAR for
10400 bool vectors.
10401 * lread.c (read1): Likewise.
10402 * alloc.c (Fmake_bool_vector): Likewise.
10403 * data.c (Faref, Faset): Likewise.
10404 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
10405 (mapcar1): Likewise.
10406
10407 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
10408
10409 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
10410
10411 2004-04-26 Miles Bader <miles@gnu.org>
10412
10413 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
10414
10415 2004-04-26 Juanma Barranquero <lektu@terra.es>
10416
10417 * buffer.c (Fpop_to_buffer): Fix docstring.
10418
10419 2004-04-26 Steven Tamm <steventamm@mac.com>
10420
10421 * lread.c (init_lread): Don't display missing lisp directory
10422 warnings with Carbon Emacs because self-contained bundled Emacs
10423 may be built without correct installation path.
10424
10425 2004-04-25 Kim F. Storm <storm@cua.dk>
10426
10427 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10428
10429 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10430
10431 * xdisp.c (append_space_for_newline): Rename from append_space.
10432 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
10433 (x_produce_glyphs): Handle line-spacing property on newline char.
10434 If value is t, adjust ascent and descent to fit current row height.
10435 If value is an integer or float, set extra_line_spacing to integer
10436 value, or to float value x current line height.
10437
10438 2004-04-23 Kenichi Handa <handa@m17n.org>
10439
10440 * fontset.c (Finternal_char_font): If POSITION is nil, return
10441 font for displaying CH with the default face.
10442
10443 2004-04-23 Juanma Barranquero <lektu@terra.es>
10444
10445 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
10446
10447 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10448
10449 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
10450 Don't make assumptions about the relative place of i and val.
10451 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
10452
10453 2004-04-21 Kim F. Storm <storm@cua.dk>
10454
10455 * dispextern.h (struct glyph_slice): New struct.
10456 (struct glyph): New member slice.
10457 (GLYPH_SLICE_EQUAL_P): New macro.
10458 (GLYPH_EQUAL_P): Use it.
10459 (struct glyph_string): New member slice.
10460 (struct it_slice): New struct.
10461 (struct it): New member slice, add member to stack too.
10462 New member constrain_row_ascent_descent_p.
10463 (image_ascent): Add prototype.
10464
10465 * dispnew.c (buffer_posn_from_coords): Return full image width
10466 and height even for image slices (posn is relative to full image).
10467 (marginal_area_string): Adjust x0,y0 for image slice.
10468
10469 * image.c (image_ascent): Add slice arg; calculate ascent for
10470 image slice (or full image).
10471
10472 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
10473 (syms_of_keyboard): Defsubr them.
10474
10475 * lisp.h (pos_visible_p): Fix prototype.
10476
10477 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10478 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10479 (x_draw_image_foreground, x_draw_image_relief)
10480 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10481 Draw sliced images.
10482
10483 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
10484 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10485 (x_draw_image_foreground, x_draw_image_relief)
10486 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
10487 Draw sliced images.
10488
10489 * w32term.h (image_ascent): Remove prototype.
10490
10491 * window.c (Fpos_visible_in_window_p): Return pixel position if
10492 PARTIALLY arg is non-nil. Simplify. Doc fix.
10493 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
10494 to return/set vscroll in pixels.
10495
10496 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
10497
10498 * xdisp.c (Qslice): New variable.
10499 (syms_of_xdisp): Intern and staticpro it.
10500 (pos_visible_p): Return pixel position in new x and y args.
10501 (init_iterator): Reset it->slice info.
10502 (handle_display_prop): Parse (slice ...) property.
10503 (push_it, pop_it): Save/restore slice info.
10504 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
10505 force repositioning of tall row if window is vscrolled, as that
10506 would reset vscroll.
10507 (append_space): Set it->constrain_row_ascent_descent_p to avoid
10508 increasing row height if row is non-empty.
10509 (fill_image_glyph_string): Copy slice info.
10510 (take_vertical_position_into_account): Simplify.
10511 (produce_image_glyph): Handle iterator slice info, setup glyph
10512 slice info. Do not force minimum line height.
10513 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
10514 do not increase height (ascent/descent) of non-empty row when
10515 adding normal character glyph; instead reduce glyph ascent/descent
10516 appropriately; if row is higher than current glyph, adjust glyph
10517 descent/ascent to reposition glyph within the existing row.
10518 Likewise, when char is newline, only set ascent/descent if row is
10519 currently empty.
10520 (note_mouse_highlight): Handle hotspots with sliced image.
10521
10522 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10523 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10524 (x_draw_image_foreground, x_draw_image_relief)
10525 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10526 Draw sliced images.
10527
10528 * xterm.h (image_ascent): Remove prototype.
10529
10530 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
10531
10532 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
10533
10534 2004-04-20 John Paul Wallington <jpw@gnu.org>
10535
10536 * fns.c (Fassoc, Feql): Fix indentation.
10537
10538 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
10539
10540 2004-04-19 John Paul Wallington <jpw@gnu.org>
10541
10542 * fns.c (Feql): New function.
10543 (syms_of_fns): Defsubr it.
10544
10545 2004-04-18 Jason Rumney <jasonr@gnu.org>
10546
10547 * w32select.c (Fw32_set_clipboard_data): Get sequence number
10548 after closing the clipboard.
10549
10550 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
10551
10552 * buffer.c (Fbuffer_base_buffer): Doc fix.
10553
10554 2004-04-17 Kim F. Storm <storm@cua.dk>
10555
10556 * keymap.c (Fkey_description): Add optional PREFIX arg.
10557 Combine prefix with KEYS to make up the full key sequence to describe.
10558 Correlate meta_prefix_char and following (simple) key to describe
10559 as meta modifier. All callers changed.
10560 (describe_map): Rename arg `keys' to `prefix'. Remove local
10561 `elt_prefix' var. Use Fkey_description with prefix instead of
10562 elt_prefix combined with Fsingle_key_description.
10563 (describe_vector): Declare static. Replace arg `elt_prefix' with
10564 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
10565 if !KEYMAP_P. Use Fkey_description with prefix instead of
10566 Fsingle_key_description.
10567
10568 * keymap.h (Fkey_description): Fix prototype.
10569 (describe_vector): Remove prototype.
10570
10571 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
10572
10573 * image.c (PNG_BG_COLOR_SHIFT): Remove.
10574 (png_load): Fix calculation of transparent background color on X
10575 and W32 platforms.
10576
10577 2004-04-16 Juanma Barranquero <lektu@terra.es>
10578
10579 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
10580 not too large before computing how much to scroll.
10581
10582 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
10583
10584 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
10585
10586 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
10587
10588 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
10589 Add hyperlink to Elisp manual to the docstring.
10590
10591 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
10592
10593 * callint.c (fix_command): Use XDCR.
10594
10595 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
10596
10597 * window.c (Fget_lru_window): Doc fix.
10598
10599 2004-04-14 Kim F. Storm <storm@cua.dk>
10600
10601 * editfns.c (Fformat): Fix allocation size of precision array.
10602
10603 * dispnew.c (update_window): Only set changed_p if
10604 scrolling_window actually did scroll.
10605 (scrolling_window): Only return 1 if we actually did scroll.
10606
10607 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
10608 height to glyph height when cursor row is not fully visible.
10609 (make_cursor_line_fully_visible): Add FORCE_P arg to return
10610 failure in case row is higher than window. Callers changed.
10611 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
10612 Try to scroll partially visible, higher-than-window cursor row.
10613 (redisplay_window): Always try to scroll partially visible,
10614 higher-than-window cursor row - both initially and again with
10615 centering_position = 0.
10616 Clear desired matrix before retrying with centering_position = 0.
10617
10618 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
10619
10620 * syntax.c (scan_lists): Simplify backward string scan.
10621 Fix off-by-one boundary check for string and comment fences.
10622
10623 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
10624
10625 * sheap.c, unexcw.c: New files.
10626
10627 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
10628
10629 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
10630 base buffer has been killed. Correct the error message if the
10631 base buffer does not exist.
10632
10633 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
10634
10635 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
10636 Cygwin itself. Add support for Xaw3d scrollbars.
10637
10638 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
10639
10640 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
10641
10642 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
10643 before Cygwin unexec.
10644
10645 * Makefile.in: Link changes for Cygwin unexec() support.
10646
10647 2004-04-12 Andreas Schwab <schwab@suse.de>
10648
10649 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
10650
10651 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
10652
10653 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
10654 IGNORE argument equals NAME. Doc fix.
10655
10656 2004-04-11 Masatake YAMATO <jet@gyve.org>
10657
10658 * buffer.c (fix_start_end_in_overlays): Make overlays
10659 empty if they are backwards.
10660
10661 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10662
10663 * xfaces.c (face_color_supported_p): Fix compilation without X11.
10664
10665 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
10666
10667 * doc.c (Fsnarf_documentation): Ignore new file name entries.
10668
10669 2004-04-06 Kim F. Storm <storm@cua.dk>
10670
10671 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10672 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
10673
10674 * w32term.c (w32_read_socket): Set mouse_face_hidden after
10675 clearing highlight.
10676
10677 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10678
10679 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
10680 clearing highlight.
10681
10682 * indent.c (vmotion): Do not reserve one column for continuation
10683 marks on window frames.
10684
10685 2004-04-04 Eli Zaretskii <eliz@gnu.org>
10686
10687 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
10688 from GCC.
10689
10690 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10691
10692 * .gdbinit-union: Remove.
10693
10694 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
10695 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
10696 ($nonvalbits): Remove.
10697 ($valmask): Set it by calling xreload to avoid redundancy.
10698
10699 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
10700 (gdb_emacs_intbits): Remove.
10701
10702 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10703
10704 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
10705
10706 2004-03-30 Kenichi Handa <handa@m17n.org>
10707
10708 * editfns.c (Fformat): Fix initialization of the array info.
10709
10710 2004-03-30 Kim F. Storm <storm@cua.dk>
10711
10712 * xterm.c (x_mouse_click_focus_ignore_position): New var.
10713 (syms_of_xterm): DEFVAR_BOOL it.
10714 (ignore_next_mouse_click_timeout): New var.
10715 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
10716 Use it to filter mouse clicks following focus event.
10717
10718 2004-03-29 David Ponce <david@dponce.com>
10719
10720 * callint.c (Fcall_interactively): Fix last change.
10721
10722 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
10723
10724 * eval.c (Fcommandp): Simplify.
10725
10726 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
10727 Extend to handle all kinds of functions.
10728
10729 * lisp.h (Finteractive_form): Declare.
10730
10731 * callint.c (Fcall_interactively): Use it.
10732
10733 2004-03-26 Kim F. Storm <storm@cua.dk>
10734
10735 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
10736 to catch errors in calc_pixel_width_or_height during redisplay.
10737
10738 2004-03-26 Masatake YAMATO <jet@gyve.org>
10739
10740 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
10741
10742 * lisp.h (fix_start_end_in_overlays): Likewise.
10743
10744 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
10745
10746 * editfns.c (Ftranspose_regions): Likewise.
10747
10748 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10749
10750 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
10751
10752 2004-03-19 Richard M. Stallman <rms@gnu.org>
10753
10754 * s/sol2-6.h: Delete previous change.
10755
10756 2004-03-19 Kim F. Storm <storm@cua.dk>
10757
10758 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
10759 to_charpos corresponds to newline in right fringe. Use local
10760 BUFFER_POS_REACHED_P macro.
10761
10762 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10763
10764 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
10765 to compile on non-window system.
10766
10767 2004-03-19 Kim F. Storm <storm@cua.dk>
10768
10769 * dispextern.h (calc_pixel_width_or_height): Add prototype.
10770
10771 * image.c (Qcenter): Move to xdisp.c.
10772
10773 * xdisp.c (Qcenter): Declare here.
10774 (syms_of_xdisp): Intern and staticpro it.
10775 (handle_single_display_prop): Allow space display property on all
10776 platforms.
10777 (display_mode_line): Set mode_line_p before displaying line.
10778 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
10779 handling. Remove complex cases for fringes and scroll-bars.
10780 Add left, right, and center alignment positions. Add text (area)
10781 width/height. Return width or height for image specs.
10782 (produce_stretch_glyph): Improve handling of :align-to. Is now
10783 relative to left of text area by default, but other base offsets
10784 can be specified -- also for text lines.
10785
10786 * term.c (produce_glyphs): Handle IT_STRETCH.
10787 (produce_stretch_glyph): New function to handle space width and
10788 align-to display properties on non-window systems.
10789
10790 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
10791
10792 * fileio.c (Fread_file_name): Set completion-ignore-case for
10793 case-insensitive systems.
10794
10795 2004-03-14 Masatake YAMATO <jet@gyve.org>
10796
10797 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
10798 when keymap and cursor are setup.
10799
10800 2004-03-14 Steven Tamm <steventamm@mac.com>
10801
10802 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
10803
10804 2004-03-14 Kim F. Storm <storm@cua.dk>
10805
10806 * dispextern.h (x_find_image_file): Add prototype.
10807
10808 * image.c (x_find_image_file): Make extern.
10809
10810 * xfns.c (x_find_image_file): Remove prototype.
10811
10812 2004-03-13 Eli Zaretskii <eliz@gnu.org>
10813
10814 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
10815
10816 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
10817
10818 2004-03-12 Richard M. Stallman <rms@gnu.org>
10819
10820 * fns.c (internal_equal): New arg PROPS controls comparing
10821 text properties. All callers changed.
10822 (Fequal_including_properties): New function.
10823 (syms_of_fns): defsubr it.
10824
10825 2004-03-12 Kim F. Storm <storm@cua.dk>
10826
10827 Fix image support on MAC. From YAMAMOTO Mitsuharu.
10828
10829 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
10830 (image_background, image_background_transparent): Fix prototypes.
10831
10832 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
10833
10834 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
10835 (x_query_font, x_find_ccl_program, x_set_window_size)
10836 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10837 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10838 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
10839
10840 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
10841 (x_query_font, x_find_ccl_program, x_set_window_size)
10842 (x_make_frame_visible, mac_initialize, XCreatePixmap)
10843 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
10844 (mac_draw_line_to_pixmap): Add prototypes.
10845
10846 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10847
10848 * macterm.c (XTread_socket): Fix mouse click on tool bar.
10849
10850 2004-03-11 Kim F. Storm <storm@cua.dk>
10851
10852 * dispextern.h: Move image related prototypes from xfns.c section
10853 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
10854 HAVE_X_WINDOWS.
10855
10856 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
10857 Move gtkutil.o to new GTK_OBJ list.
10858 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
10859 (GTK_OBJ) [USE_GTK]: New declaration.
10860 (obj): Add $(GTK_OBJ) to list.
10861
10862 2004-03-11 Steven Tamm <steventamm@mac.com>
10863
10864 * image.c [MAC_OSX]: Include sys/stat.h.
10865
10866 * macfns.c (syms_of_macfns): Remove definitions of things now
10867 defined in image.c.
10868
10869 2004-03-11 Kim F. Storm <storm@cua.dk>
10870
10871 The following changes consolidates the identical/similar image
10872 support code previously found in xfns.c, w32fns.c, and macfns.c
10873 into a new file image.c.
10874
10875 * makefile.w32-in (OBJ1): Add image.o.
10876 ($(BLD)/image.$(O)): Add dependencies.
10877
10878 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
10879 (image.o): Add dependencies.
10880
10881 * image.c: New file with consolidated image support code.
10882 (COLOR_TABLE_SUPPORT): New define to control whether
10883 color table support is available (X only).
10884 (Bitmap_Record): Common name for x_bitmap_record,
10885 w32_bitmap_record, and mac_bitmap_record.
10886 (XImagePtr): Common name for pointer to XImage or equivalent.
10887 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
10888 to XImagePtr on X+MAC, and to HDC on W32.
10889 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
10890 (NO_PIXMAP): Common name for "None" or equivalent.
10891 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
10892 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
10893 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
10894 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
10895 Define with suitable equivalents on W32 and MAC for code sharing.
10896 (XDrawLine): Define on MAC for code sharing.
10897 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
10898 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
10899 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10900 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10901 (x_reference_bitmap, x_create_bitmap_from_data)
10902 (x_create_bitmap_from_file, x_destroy_bitmap)
10903 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10904 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10905 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10906 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10907 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10908 (define_image_type, lookup_image_type, valid_image_p)
10909 (image_error, enum image_value_type, struct image_keyword)
10910 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10911 (make_image, free_image, prepare_image_for_display, image_ascent)
10912 (four_corners_best, image_background, image_background_transparent)
10913 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10914 (make_image_cache, free_image_cache, clear_image_cache)
10915 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10916 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10917 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10918 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10919 (init_image_func_pointer, image_load_quartz2d)
10920 (struct ct_color, init_color_table, free_color_table)
10921 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10922 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10923 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10924 (x_disable_image, x_build_heuristic_mask)
10925 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10926 (TIFF support, GIF support, Ghostscript support): Consolidate image
10927 code from xfns.c, w32fns.c, and macfns.c.
10928 (syms_of_image): Consolidate image related symbol setup here.
10929 (init_image): Consolidate image related initializations here.
10930
10931 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
10932 and init_image. Remove call to init_xfns.
10933
10934 * macterm.h (struct mac_bitmap_record): Add file member.
10935 Not currently used, but simplifies code sharing.
10936
10937 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10938 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10939 (x_reference_bitmap, x_create_bitmap_from_data)
10940 (x_create_bitmap_from_file, x_destroy_bitmap)
10941 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10942 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
10943 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10944 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10945 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10946 (define_image_type, lookup_image_type, valid_image_p)
10947 (image_error, enum image_value_type, struct image_keyword)
10948 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10949 (make_image, free_image, prepare_image_for_display, image_ascent)
10950 (four_corners_best, image_background, image_background_transparent)
10951 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10952 (make_image_cache, free_image_cache, clear_image_cache)
10953 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10954 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10955 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10956 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
10957 (init_image_func_pointer, image_load_quartz2d)
10958 (struct ct_color, init_color_table, free_color_table)
10959 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10960 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10961 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10962 (x_disable_image, x_build_heuristic_mask)
10963 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10964 (TIFF support, GIF support, Ghostscript support): Merge with image
10965 code from xfns.c and macfns.c into image.c.
10966 (syms_of_xfns): Move image related symbols to image.c.
10967 (init_external_image_libraries, init_xfns): Remove; initialization
10968 moved to init_image in image.c.
10969
10970 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
10971 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
10972 (x_reference_bitmap, x_create_bitmap_from_data)
10973 (x_create_bitmap_from_file, x_destroy_bitmap)
10974 (x_destroy_all_bitmaps, x_create_bitmap_mask)
10975 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
10976 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
10977 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
10978 (define_image_type, lookup_image_type, valid_image_p)
10979 (image_error, enum image_value_type, struct image_keyword)
10980 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
10981 (make_image, free_image, prepare_image_for_display, image_ascent)
10982 (four_corners_best, image_background, image_background_transparent)
10983 (x_clear_image_1, x_clear_image, x_alloc_image_color)
10984 (make_image_cache, free_image_cache, clear_image_cache)
10985 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
10986 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
10987 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
10988 (struct ct_color, init_color_table, free_color_table)
10989 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
10990 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
10991 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
10992 (x_disable_image, x_build_heuristic_mask)
10993 (XBM support, XPM support, PBM support, PNG support, JPEG support)
10994 (TIFF support, GIF support, Ghostscript support): Merge with image
10995 code from xfns.c and macfns.c into image.c.
10996 (syms_of_xfns): Move image related symbols to image.c.
10997 (init_external_image_libraries, init_xfns): Remove; initialization
10998 moved to init_image in image.c.
10999
11000 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
11001 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11002 (x_reference_bitmap, x_create_bitmap_from_data)
11003 (x_create_bitmap_from_file, x_destroy_bitmap)
11004 (x_destroy_all_bitmaps, x_create_bitmap_mask)
11005 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
11006 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
11007 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
11008 (define_image_type, lookup_image_type, valid_image_p)
11009 (image_error, enum image_value_type, struct image_keyword)
11010 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
11011 (make_image, free_image, prepare_image_for_display, image_ascent)
11012 (four_corners_best, image_background, image_background_transparent)
11013 (x_clear_image_1, x_clear_image, x_alloc_image_color)
11014 (make_image_cache, free_image_cache, clear_image_cache)
11015 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
11016 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
11017 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
11018 (struct ct_color, init_color_table, free_color_table)
11019 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
11020 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
11021 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
11022 (x_disable_image, x_build_heuristic_mask)
11023 (XBM support, XPM support, PBM support, PNG support, JPEG support)
11024 (TIFF support, GIF support, Ghostscript support): Merge with
11025 w32fns.c and macfns.c image code into image.c.
11026 (syms_of_xfns): Move image related symbols to image.c.
11027 (init_xfns): Remove; initialization moved to init_image in image.c.
11028
11029 * lisp.h (syms_of_image, init_image): Add protoypes.
11030 (init_xfns): Remove prototype.
11031
11032 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11033 (x_reference_bitmap, x_create_bitmap_from_data)
11034 (x_create_bitmap_from_file, x_destroy_bitmap)
11035 (x_create_bitmap_mask): Move prototypes from dispextern.h.
11036 (gamma_correct) [MAC_OS]: Add prototype.
11037
11038 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11039 (x_reference_bitmap, x_create_bitmap_from_data)
11040 (x_create_bitmap_from_file, x_destroy_bitmap)
11041 (x_create_bitmap_mask): Move prototypes to dispextern.h.
11042
11043 2004-03-09 Kenichi Handa <handa@etlken2>
11044
11045 * coding.c (decode_coding_emacs_mule): Handle insufficent source
11046 correctly.
11047
11048 2004-03-04 Richard M. Stallman <rms@gnu.org>
11049
11050 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
11051
11052 * window.c (Fdisplay_buffer): Doc fix.
11053
11054 * buffer.c (Fpop_to_buffer): Doc fix.
11055
11056 2004-03-03 Kim F. Storm <storm@cua.dk>
11057
11058 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
11059
11060 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
11061
11062 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
11063
11064 2004-03-02 Richard M. Stallman <rms@gnu.org>
11065
11066 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
11067
11068 2004-03-02 Kenichi Handa <handa@m17n.org>
11069
11070 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
11071
11072 2004-03-02 Kim F. Storm <storm@cua.dk>
11073
11074 * window.h (struct window): New member overlay_arrow_bitmap.
11075
11076 * window.c (make_window): Initialize overlay_arrow_bitmap.
11077
11078 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
11079 implement and integrate multiple overlay arrows with redisplay.
11080 (syms_of_xdisp): DEFVAR_LISP and initialize it.
11081 (last_arrow_position, last_arrow_string): Replace by properties.
11082 (Qlast_arrow_position, Qlast_arrow_string)
11083 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
11084 (syms_of_xdisp): Intern and staticpro them.
11085 (overlay_arrow_string_or_property, update_overlay_arrows)
11086 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
11087 (overlay_arrow_at_row): New functions for multiple overlay arrows.
11088 (redisplay_internal): Use them instead of directly accessing
11089 Voverlay_arrow_position etc. for multiple overlay arrows.
11090 (mark_window_display_accurate): Use update_overlay_arrows.
11091 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
11092 (try_window_id): Use overlay_arrows_changed_p.
11093 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
11094 (display_line): Use overlay_arrow_at_row to check multiple
11095 overlay arrows, and get relevant overlay-arrow-string and
11096 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
11097 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
11098 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
11099
11100 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
11101 (update_window_fringes): Remove unused code.
11102
11103 2004-03-01 Jason Rumney <jasonr@gnu.org>
11104
11105 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
11106
11107 2004-03-01 Juanma Barranquero <lektu@terra.es>
11108
11109 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
11110
11111 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
11112
11113 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11114
11115 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
11116 how many colors can be displayed.
11117
11118 2004-03-01 Kenichi Handa <handa@m17n.org>
11119
11120 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
11121 correctly.
11122
11123 2004-02-28 Kim F. Storm <storm@cua.dk>
11124
11125 * dispnew.c (update_window): Update header line also if there are
11126 no other changes in window (move code after set_cursor label).
11127
11128 * lisp.h (mark_window_display_accurate): Remove prototype.
11129
11130 * window.c (window_loop, Fforce_window_update): Force mode line
11131 updates by setting prevent_redisplay_optimizations_p and
11132 update_mode_lines.
11133
11134 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11135
11136 * xfns.c (x_window): Fix indentation.
11137
11138 * xterm.c (x_calc_absolute_position): Call x_real_positions
11139 to get WM window sizes and use those to calculate position.
11140 (x_set_offset): Remove code commented out.
11141
11142 2004-02-28 Miles Bader <miles@gnu.org>
11143
11144 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
11145
11146 2004-02-28 Kim F. Storm <storm@cua.dk>
11147
11148 * keyboard.c (kbd_buffer_store_event_hold): New function to store
11149 an event into kbd fifo, but with special handling of quit event;
11150 a quit event is saved for later, and further events are discarded
11151 until the saved quit event has been processed.
11152 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
11153 (gen_help_event): Store help event in kbd fifo.
11154 (NREAD_INPUT_EVENTS): Remove.
11155 (read_avail_input): Adapt to new read_socket_hook interface.
11156 Remove allocation and initialization of local input_event buffer,
11157 as read_socket_hook stores events directly in fifo. Allocate and
11158 initialize local hold_quit event to handle postponed quit event
11159 (and store it if set by kbd_buffer_store_event_hold).
11160
11161 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
11162 (gen_help_event): Fix prototype.
11163
11164 * macterm.c (XTread_socket): Remove bufp_r and
11165 numcharsp args. Add hold_quit arg.
11166 Rework to use just one, local, inev input_event. Store inev
11167 directly in fifo using kbd_buffer_store_event_hold.
11168
11169 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
11170 (read_input_waiting): Adapt to new read_socket_hook interface.
11171 Remove allocation and initialization of local input_event buffer,
11172 as read_socket_hook stores events directly in fifo. Allocate and
11173 initialize local hold_quit event to handle postponed quit event
11174 (and store it if set by kbd_buffer_store_event_hold).
11175
11176 * term.c (read_socket_hook): Fix arg list.
11177
11178 * termhooks.h (read_socket_hook): Fix prototype.
11179
11180 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
11181 numcharsp args. Add hold_quit arg.
11182 Rework to use just one, local, inev input_event. Store inev
11183 directly in fifo using kbd_buffer_store_event_hold.
11184
11185 * w32inevt.h (w32_console_mouse_position): Fix prototype.
11186
11187 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
11188 Add hold_quit arg. Rework to use just one, local, inev
11189 input_event. Store inev directly in fifo using
11190 kbd_buffer_store_event_hold. Update count in one place.
11191 Postpone call to gen_help_event until inev is stored; use new
11192 local do_help for this.
11193 Remove local emacs_event in handing of ButtonPress event; just use
11194 inev instead (so no reason to copy it later).
11195
11196 * xsmfns.c (x_session_check_input): Remove numchars arg.
11197
11198 * xterm.c (x_focus_changed, x_detect_focus_change):
11199 Remove numchars arg. Always store event into bufp arg.
11200 Return nothing. Callers changed accordingly.
11201 (glyph_rect): Simplify.
11202 (STORE_KEYSYM_FOR_DEBUG): New macro.
11203 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
11204 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
11205 (current_hold_quit) [USE_GTK]: Add.
11206 (event_handler_gdk): Adapt to new handle_one_xevent.
11207 (handle_one_xevent): Remove bufp_r and numcharsp args.
11208 Add hold_quit arg. Rework to use just one, local, inev
11209 input_event. Store inev directly in fifo using
11210 kbd_buffer_store_event_hold. Update count in one place.
11211 Postpone call to gen_help_event until inev is stored; use new
11212 local do_help for this.
11213 Simplify handling of keysyms (consolidate common code). Fix bug
11214 where count was updated with nchars instead of nbytes.
11215 Remove local emacs_event in handing of ButtonPress event; just use
11216 inev instead (so no reason to copy it later).
11217 Remove `out' label. Rename label `ret' to `done'; add various
11218 `goto done' to clarify code flow in deeply nested blocks.
11219 (x_dispatch_event): Simplify as handle_one_xevent now calls
11220 kbd_buffer_store_event itself.
11221 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
11222 arg. Call handle_one_xevent with new arglist. Store event from
11223 x_session_check_input in fifo.
11224 [USE_GTK]: Setup current_hold_quit.
11225 Decrement handling_signal before unblocking input.
11226 (x_initialize) [USE_GTK]: Initialize current_count.
11227
11228 * xterm.h (x_session_check_input): Fix prototype.
11229
11230 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11231
11232 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
11233
11234 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
11235 macgui.h).
11236
11237 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
11238
11239 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
11240 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
11241 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
11242 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
11243 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
11244 (Bitmap): Remove typedef.
11245 (Pixmap): Change int to GWorldPtr.
11246
11247 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11248
11249 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11250 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
11251 New #define to extract 16-bit depth color components from unsigned
11252 long representation.
11253 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
11254 colors used for masks.
11255 (struct mac_display_info): Add color_p. Remove n_cbits.
11256
11257 * macfns.c: Include sys/types.h and sys/stat.h.
11258 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
11259 Include QuickTime/QuickTime.h.
11260 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
11261 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
11262 functions defined in macterm.c.
11263 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
11264 (ZPixmap): New #define for compatibility with xfns.c.
11265 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11266 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
11267 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
11268 New functions.
11269 (four_corners_best, x_create_x_image_and_pixmap)
11270 (x_destroy_x_image, unwind_create_frame, x_disable_image)
11271 (x_edge_detection, init_color_table, colors_in_color_table)
11272 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
11273 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
11274 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
11275 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
11276 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
11277 long mixup.
11278 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
11279 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
11280 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
11281 (x_set_cursor_type, Fxw_color_values, valid_image_p)
11282 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
11283 (x_alloc_image_color, clear_image_cache, lookup_image)
11284 (x_find_image_file, xbm_read_bitmap_file_data)
11285 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
11286 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
11287 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
11288 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
11289 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
11290 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
11291 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
11292 #if 0.
11293 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
11294 #if 0. Free white_relief.gc and black_relief.gc.
11295 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
11296 New functions (from xfns.c).
11297 (Fx_create_frame): Record unwind_create_frame.
11298 (Fxw_display_color_p): Use dpyinfo->color_p.
11299 (Fx_display_grayscale_p, Fx_display_planes): Don't use
11300 dpyinfo->n_cbits.
11301 (Fx_display_color_cells): Use dpyinfo->n_planes;
11302 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
11303 (Qheuristic, cross_disabled_images, emboss_matrix)
11304 (laplace_matrix): New variables (from xfns.c).
11305 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
11306 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
11307 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
11308 (image_background_transparent): New function (from xfns.c).
11309 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11310 (image_load_quicktime): Add declaration.
11311 [MAC_OSX] (image_load_quartz2d): Likewise.
11312 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
11313 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
11314 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
11315 (xbm_load_image_from_file, x_laplace_read_row)
11316 (x_laplace_write_row, pbm_read_file): Remove functions.
11317 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
11318 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
11319 (colors_in_color_table): Sync with xfns.c (although not used).
11320 (lookup_rgb_color): Don't lookup color table. Just do gamma
11321 correction.
11322 (COLOR_INTENSITY): New #define (from xfns.c).
11323 (x_disable_image): New function (from xfns.c).
11324 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11325 (x_build_heuristic_mask): Sync with xfns.c.
11326 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11327 (HAVE_PBM): Remove #ifdef.
11328 (pbm_load): Sync with xfns.c. Set img->width and img->height
11329 before IMAGE_BACKGROUND.
11330 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
11331 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
11332 Don't enclose with #if HAVE_PNG.
11333 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
11334 symbol _CGImageCreateWithPNGDataProvider is defined.
11335 Otherwise use image_load_quicktime.
11336 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
11337 [HAVE_PNG] (png_load): Sync with xfns.c.
11338 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11339 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
11340 HAVE_JPEG.
11341 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
11342 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
11343 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
11344 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
11345 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
11346 (tiff_image_p, tiff_load): Don't enclose declarations with #if
11347 HAVE_TIFF.
11348 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
11349 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
11350 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
11351 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
11352 New functions (from xfns.c).
11353 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
11354 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
11355 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
11356 Don't enclose with #if HAVE_GIF.
11357 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
11358 animated gif. Otherwise use image_load_quicktime.
11359 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
11360 gif_DrawText to avoid conflict with QuickdrawText.h.
11361 [HAVE_GIF] (gif_load): Sync with xfns.c.
11362 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
11363 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
11364 Ghostscript is not supported yet).
11365 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
11366 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
11367 cross_disabled_images (from xfns.c). Remove #if 0 for supported
11368 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11369 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
11370 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11371 HAVE_PNG. Call EnterMovies to support animated gifs.
11372 Call init_image_func_pointer to bind a symbol
11373 _CGImageCreateWithPNGDataProvider if it is defined.
11374
11375 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11376 (x_draw_bar_cursor): Sync declaration with xterm.c.
11377 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
11378 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
11379 graphics).
11380 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
11381 (mac_draw_line_to_pixmap, XCreatePixmap)
11382 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
11383 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
11384 New functions.
11385 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
11386 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11387 Cast bits to char *.
11388 (reflect_byte): New function (from w32fns.c).
11389 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
11390 due to byte alignment.
11391 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
11392 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11393 (XSetForeground): Remove static (now used in macfns.c).
11394 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
11395 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
11396 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
11397 (x_draw_glyph_string_box, x_draw_image_foreground)
11398 (x_draw_image_foreground_1, x_draw_image_glyph_string)
11399 (x_draw_stretch_glyph_string, x_draw_glyph_string)
11400 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
11401 Sync with xterm.c.
11402 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
11403 than the xterm.c version when a strictly horizontal or vertical
11404 line is drawn.
11405 (XTset_terminal_window): Add static.
11406 (x_make_frame_visible): Add UNBLOCK_INPUT.
11407 (x_free_frame_resources): New funcion (from xterm.c).
11408 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
11409 occurs in tool bar area.
11410 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
11411 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
11412 Initialize image cache.
11413 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
11414 Enclose unused functions with #if 0.
11415 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
11416 (decode_mac_font_name): New function to apply code conversions
11417 from a mac font name to an XLFD font name according to its script code.
11418 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
11419 font name to a mac font name according to REGISTRY and ENCODING fields.
11420 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
11421 whose name starts with `.'.
11422 (init_font_name_table): Use decode_mac_font_name. Add both
11423 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
11424 of a font is smJapanese.
11425 (mac_do_list_fonts): New function to list fonts that match a given
11426 pattern.
11427 (x_list_fonts, XLoadQueryFont): Use it.
11428 (XLoadQueryFont): Set rbearing field for each variable width
11429 character to avoid needless redraw.
11430 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
11431
11432 2004-02-26 Kim F. Storm <storm@cua.dk>
11433
11434 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
11435 as read_socket_hook handler on X aborts if buffer is too small
11436 and W32 handler doesn't always check buffer limit.
11437
11438 * xdisp.c (handle_single_display_prop): Handle left-fringe and
11439 right-fringe similar to a display margin image. Specifically,
11440 the characters having the fringe prop are no longer shown, and
11441 we use IT_IMAGE/next_element_from_image with image_id = -1 to
11442 do this. Set fringe bitmap face_id in it->face_id.
11443 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
11444 still realize it->face (i.e. the fringe bitmap face).
11445
11446 2004-02-25 Miles Bader <miles@gnu.org>
11447
11448 * xdisp.c (check_it): Check string/string_pos consistency.
11449 (init_iterator): Initialize string-related fields properly.
11450
11451 2004-02-11 Miles Bader <miles@gnu.org>
11452
11453 * xdisp.c (produce_image_glyph): Force negative descents to zero.
11454
11455 2004-02-10 Miles Bader <miles@gnu.org>
11456
11457 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
11458 BLOCK_INPUT can be nested, so it doesn't make much sense.
11459
11460 2004-02-24 Michael Mauger <mmaug@yahoo.com>
11461
11462 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
11463 (xbm_read_bitmap_data): Use unsigned char for image data.
11464
11465 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
11466
11467 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
11468
11469 2004-02-22 Jason Rumney <jasonr@gnu.org>
11470
11471 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
11472 correctly over other bitmaps.
11473
11474 2004-02-21 Eli Zaretskii <eliz@gnu.org>
11475
11476 * emacs.c (USAGE1): Split into two halves.
11477 (USAGE2): Second half of the old USAGE1.
11478 (USAGE3): Rename from USAGE2.
11479 (USAGE4): Rename from USAGE3.
11480
11481 2004-02-21 Juri Linkov <juri@jurta.org>
11482
11483 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
11484 Fix --multibyte. Move --help, --version to USAGE2. Add alias
11485 --file. Fix -f, -l. Sort options. Untabify.
11486 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
11487
11488 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
11489
11490 * category.c (Fdefine_category, Fcategory_docstring)
11491 (Fget_unused_category, Fset_category_table)
11492 (Fcategory_set_mnemonics): Doc fixes.
11493
11494 2004-02-20 Kim F. Storm <storm@cua.dk>
11495
11496 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
11497 The following changes are relative to the 2004-01-21 revision.
11498 (NREAD_INPUT_EVENTS): Define as max number of input events to read
11499 in one call to read_socket_hook. Value is 8.
11500 (read_avail_input): Separate and rework handling of read_socket_hook
11501 and non-read_socket_hook cases. Use smaller input_event buffer
11502 in read_socket_hook case, and repeat if full buffer is read.
11503 Use new local variable 'discard' to skip input after C-g.
11504 In non-read_socket_hook case, just use a single input_event, and
11505 call kbd_buffer_store_event on the fly for each character.
11506
11507 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11508
11509 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
11510 Remove unused `gu' alternative.
11511
11512 2004-02-19 Andreas Schwab <schwab@suse.de>
11513
11514 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
11515 warning.
11516
11517 2004-02-18 Kim F. Storm <storm@cua.dk>
11518
11519 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
11520 Fix last change.
11521
11522 2004-02-17 Kim F. Storm <storm@cua.dk>
11523
11524 * xdisp.c (fast_find_position): Fix return value of new version;
11525 it was inverted compared to the 21.1 version.
11526 (get_window_cursor_type): Don't look at glyph if NULL.
11527 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
11528
11529 * keyboard.c: Rework previous change; it didn't consider that the
11530 buf array was allocated on the stack.
11531 (prev_read): Remove variable.
11532 (read_avail_input_buf): New static event buffer array.
11533 (in_read_avail_input): New static variable to handle re-entrancy.
11534 (read_avail_input): Change buf to pinter to read_avail_input_buf.
11535 Use in_read_avail_input to handle re-entrance; when re-entered,
11536 fully initialize and use tmp_buf array instead of read_avail_input_buf.
11537 Do not initialize read_avail_input_buf in full here; instead assume it
11538 is always cleared on entry. To ensure that, we clear (just) the
11539 entries that were used before we return.
11540 (init_keyboard): Initialize read_avail_input_buf here.
11541
11542 2004-02-16 Jesper Harder <harder@ifa.au.dk>
11543
11544 * cmds.c (Fend_of_line): Doc fix.
11545
11546 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
11547
11548 * keyboard.c (prev_read): New static variable.
11549 (read_avail_input): Use it to zero out only those slots in buf[]
11550 that were used last time we were called.
11551
11552 2004-02-16 Eli Zaretskii <eliz@gnu.org>
11553
11554 * Makefile.in (obj): Move fringe.o from here...
11555 (XOBJ, MAC_OBJ): ...to here.
11556
11557 2004-02-16 Stephen Eglen <stephen@gnu.org>
11558
11559 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
11560
11561 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
11562
11563 * data.c (Fbyteorder):
11564 * fringe.c (Fdefine_fringe_bitmap):
11565 * xdisp.c (handle_single_display_prop):
11566 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
11567
11568 2004-02-16 Jason Rumney <jasonr@gnu.org>
11569
11570 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
11571
11572 2004-02-15 Steven Tamm <steventamm@mac.com>
11573
11574 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
11575 controlling emulation of a three button mouse with option and
11576 command keys.
11577 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
11578 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
11579
11580 2004-02-15 Kim F. Storm <storm@cua.dk>
11581
11582 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
11583
11584 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
11585 Perform byte-swapping.
11586
11587 2004-02-14 Kim F. Storm <storm@cua.dk>
11588
11589 * dispextern.h (struct draw_fringe_bitmap_params): Change member
11590 bits from char to short to facilitate wider bitmaps.
11591 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
11592 member.
11593
11594 * fringe.c (struct fringe_bitmap): Change member bits from char to
11595 short to facilitate 16 bits wide bitmaps. Modify all standard
11596 bitmaps accordingly.
11597 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
11598 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
11599 (draw_fringe_bitmap): Ditto.
11600 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
11601 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
11602 handle up to 16 bits wide bitmaps.
11603 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
11604 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
11605
11606 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
11607 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
11608 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
11609
11610 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
11611 so it is no longer necessary to expand them here.
11612
11613 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
11614
11615 2004-02-12 Kim F. Storm <storm@cua.dk>
11616
11617 * window.c (Fwindow_fringes): Doc fix.
11618
11619 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11620
11621 * xselect.c (x_get_foreign_selection): Add new optional parameter
11622 time_stamp.
11623 (Fx_get_selection_internal): Ditto, pass time_stamp to
11624 x_get_foreign_selection.
11625
11626 * data.c (Fbyteorder): New function.
11627
11628 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11629
11630 * atimer.c: Move include stdio.h to same place as in other files.
11631
11632 * region-cache.c: Ditto.
11633
11634 * sysdep.c: Ditto.
11635
11636 * xfaces.c: Ditto.
11637
11638 2004-02-09 Sam Steingold <sds@gnu.org>
11639
11640 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
11641
11642 2004-02-09 Kim F. Storm <storm@cua.dk>
11643
11644 * fringe.c: New file. Move original fringe related declarations
11645 and code from dispextern.h and xdisp.c here.
11646 Rework code to support user defined fringe bitmaps, redefining
11647 standard bitmaps, ability to overlay user defined bitmap with
11648 overlay arrow bitmap, and add faces to bitmaps.
11649 (Voverflow_newline_into_fringe): Declare here.
11650 (enum fringe_bitmap_align): New enum.
11651 (..._bits): All bitmaps are now defined without bitswapping; that
11652 is now done in init_fringe_once (if necessary).
11653 (standard_bitmaps): New array with specifications for the
11654 standard fringe bitmaps.
11655 (fringe_faces): New array.
11656 (valid_fringe_bitmap_id_p): New function.
11657 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
11658 (draw_fringe_bitmap): New function which draws fringe bitmap,
11659 possibly overlaying bitmap with cursor in right fringe or the
11660 overlay arrow in the left fringe.
11661 (update_window_fringes): Do not handle overlay arrow here.
11662 Compare and copy fringe bitmap faces.
11663 (init_fringe_bitmap): New function.
11664 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
11665 define and destroy user defined fringe bitmaps.
11666 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
11667 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
11668 (syms_of_fringe): New function. Defsubr new DEFUNs.
11669 DEFVAR_LISP Voverflow_newline_into_fringe.
11670 (init_fringe_once, init_fringe): New functions.
11671 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
11672
11673 * Makefile.in (obj): Add fringe.o.
11674 (fringe.o): New dependencies.
11675
11676 * dispextern.h (FRINGE_ID_BITS): New definition for number of
11677 bits allocated to hold a fringe number. Increase number of bits
11678 from 4 to 8 to allow user defined fringe bitmaps.
11679 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
11680 left_user_fringe_face_id, right_user_fringe_bitmap,
11681 right_user_fringe_face_id.
11682 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
11683 Move to new file fringe.c.
11684 (MAX_FRINGE_BITMAPS): Define here.
11685 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
11686 and overlay_p. Change member which to int.
11687 (struct redisplay_interface): New members define_fringe_bitmap
11688 and destroy_fringe_bitmap.
11689 (valid_fringe_bitmap_id_p): Add prototype.
11690 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
11691
11692 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
11693 arrows.
11694 (update_frame): Do flush_display if force_flush_display_p to
11695 ensure display (specifically fringes) are updated in a timely
11696 manner when resizing the frame by dragging the mouse.
11697 (update_window_line): Update row if overlay arrow changed.
11698 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
11699 or overlay arrow changed.
11700
11701 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
11702 syms_of_fringe, and init_fringe.
11703
11704 * frame.h (struct frame): New member force_flush_display_p.
11705
11706 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
11707 Add prototypes.
11708
11709 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
11710 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
11711 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
11712 Use cursor color for displaying cursor in fringe.
11713 (x_redisplay_interface): Add null handlers for
11714 define_fringe_bitmap and destroy_fringe_bitmap functions.
11715
11716 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
11717 xterm.c to handle overlayed fringe bitmaps and to use cursor color
11718 for displaying cursor in fringe.
11719 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
11720 specific functions to define and destroy fringe bitmaps in fringe_bmp.
11721 (w32_redisplay_interface): Add them to redisplay_interface.
11722 (w32_term_init): Call w32_init_fringe instead of explicitly
11723 defining fringe bitmaps in fringe_bmp array.
11724 (x_delete_display): Call w32_reset_fringes instead of explicitly
11725 destroying fringe bitmaps in fringe_bmp array.
11726
11727 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
11728 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
11729 (continued_bits, continuation_bits, ov_bits, first_line_bits)
11730 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
11731 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
11732 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
11733 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
11734 Move fringe handling vars and code to new file fringe.c.
11735 (handle_display_prop): Handle left-fringe and right-fringe
11736 display properties; store user fringe bitmaps in iterator.
11737 (move_it_in_display_line_to): Handle cursor in fringe at eob.
11738 (clear_garbaged_frames): Set force_flush_display_p if resized.
11739 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
11740 (display_line): Handle cursor in fringe at eob.
11741 (display_line): Set row user fringe bitmaps from iterator.
11742
11743 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
11744 Use cursor color for displaying cursor in fringe.
11745 (x_redisplay_interface): Add null handlers for
11746 define_fringe_bitmap and destroy_fringe_bitmap functions.
11747
11748 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11749
11750 * macfns.c (Fx_change_window_property): Make doc string and
11751 parameters same as for X version.
11752
11753 * w32fns.c (Fx_change_window_property): Ditto.
11754
11755 2004-02-07 Kim F. Storm <storm@cua.dk>
11756
11757 * xdisp.c (hscroll_window_tree): Position cursor near to right
11758 margin in hscrolled window when jumping to end of line (rather
11759 than centering cursor).
11760
11761 * process.c (wait_reading_process_input): Don't do adaptive read
11762 buffering if waiting for a specific process.
11763
11764 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
11765
11766 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
11767 (Fread_minibuffer, Feval_minibuffer)
11768 (Fread_string, Fread_no_blanks_input)
11769 (Fcompleting_read): Doc fixes.
11770 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
11771 completion-regexp-list. Define Qcase_fold_search and staticpro it.
11772 (read_minibuf): Fix initial comment.
11773 (Ftry_completion, Fall_completions, Ftest_completion): Bind
11774 case-fold-search to the value of completion-ignore-case when
11775 checking completion-regexp-list.
11776 (Fdisplay_completion_list): Make it handle arguments that are
11777 symbols. Doc fix.
11778
11779 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11780
11781 * xterm.h: Add declaration of free_frame_menubar.
11782
11783 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
11784 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
11785 (Fx_change_window_property): Add declaration of parameters type and
11786 format. Remove unused variable cons.
11787
11788 * xselect.c: Include stdio.h.
11789
11790 2004-02-05 Kenichi Handa <handa@m17n.org>
11791
11792 * fns.c (Fset_char_table_range): Fix previous change.
11793
11794 * buffer.c (Fset_buffer_multibyte): Fix docstring.
11795
11796 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
11797
11798 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
11799
11800 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
11801
11802 * keymap.c (Vmouse_events): Rename from Vmenu_events.
11803 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
11804
11805 2004-02-04 Kenichi Handa <handa@m17n.org>
11806
11807 * fns.c (Fset_char_table_range): Handle charsets ascii,
11808 eight-bit-control, and eight-bit-graphic correctly.
11809
11810 2004-02-03 Jason Rumney <jasonr@gnu.org>
11811
11812 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
11813
11814 * w32fns.c (x_to_w32_font): Likewise.
11815
11816 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11817
11818 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
11819 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
11820
11821 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
11822 ClientMessages.
11823
11824 * xselect.c: Include termhooks.h and X11/Xproto.h
11825 (x_check_property_data, x_fill_property_data)
11826 (x_property_data_to_lisp, mouse_position_for_drop)
11827 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
11828 (Fx_send_client_event): Move here from xfns.c.
11829 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
11830
11831 * xfns.c (x-send-client-message): Move to xselect.c
11832 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
11833 OUTER_P.
11834 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
11835 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
11836 if vector_ret_p is true.
11837 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
11838
11839 2004-02-02 Eli Zaretskii <eliz@gnu.org>
11840
11841 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
11842 basename of FILE relative to it, not FILE itself.
11843
11844 2004-02-02 Kenichi Handa <handa@m17n.org>
11845
11846 * coding.c (coding_restore_composition): Check invalid
11847 composition data more rigidly.
11848
11849 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
11850
11851 * fileio.c (Fread_file_name_internal): Correctly handle the case
11852 where insert-default-directory is nil.
11853 (Fread_file_name): Always return an empty string if the user exits
11854 with an empty minibuffer. Adapt the docstring accordingly.
11855 (syms_of_fileio): Adapt the docstring of insert-default-directory
11856 to the change in Fread_file_name.
11857
11858 2004-01-29 Eli Zaretskii <eliz@gnu.org>
11859
11860 * alloca.c [!alloca]: Fix the prototype for xfree.
11861
11862 2004-01-29 Kenichi Handa <handa@m17n.org>
11863
11864 * fns.c (string_char_to_byte): Optimize for ASCII only string.
11865 (string_byte_to_char): Likewise.
11866
11867 2004-01-28 Peter Runestig <peter@runestig.com>
11868
11869 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
11870
11871 2004-01-27 Steven Tamm <steventamm@mac.com>
11872
11873 * unexmacosx.c (unexec_copy): Do not copy more than was
11874 requested to prevent overwriting during unexec.
11875
11876 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11877
11878 * process.c (sigchld_handler): Add comment about not calling malloc.
11879
11880 * process.h: Add extern to synch_process_termsig.
11881
11882 2004-01-27 Steven Tamm <steventamm@mac.com>
11883
11884 * macterm.c (make_mac_frame, make_mac_terminal_frame):
11885 Move setting of scroll bars from make_mac_frame to
11886 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
11887
11888 2004-01-26 Richard M. Stallman <rms@gnu.org>
11889
11890 * search.c (Freplace_match): Handle nonexistent
11891 back-references properly.
11892
11893 2004-01-03 Richard M. Stallman <rms@gnu.org>
11894
11895 * window.c (decode_any_window): New function.
11896 (Fwindow_height, Fwindow_width, Fwindow_edges)
11897 (Fwindow_pixel_edges, Fwindow_inside_edges)
11898 (Fwindow_inside_pixel_edges): Use decode_any_window.
11899
11900 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11901
11902 * process.h: synch_process_termsig new variable.
11903
11904 * callproc.c: Define synch_process_termsig.
11905 (Fcall_process): Initiate synch_process_termsig to zero and
11906 check if non-zero and get signal name after subprocess has ended.
11907
11908 * process.c (sigchld_handler): Set synch_process_termsig
11909 if terminated by a signal. synch_process_death setting removed.
11910
11911 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
11912
11913 2004-01-26 Andreas Schwab <schwab@suse.de>
11914
11915 * print.c (print_preprocess): Declare size as EMACS_INT to not
11916 lose bits.
11917 (print_object): Likewise.
11918 * alloc.c (Fpurecopy): Likewise.
11919
11920 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
11921
11922 * window.c (Fwindow_minibuffer_p): Doc fix.
11923
11924 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
11925
11926 * editfns.c (Fformat): Make both passes accept the same set of flags.
11927
11928 2004-01-23 Kenichi Handa <handa@m17n.org>
11929
11930 * fns.c (Fmd5): If OBJECT is a buffer different from the current
11931 one, set buffer to OBJECT temporarily.
11932
11933 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11934
11935 * keyboard.c (kbd_buffer_gcpro): Remove.
11936 (kbd_buffer_store_event, clear_event, Fdiscard_input)
11937 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
11938 Don't initialize and/or maintain the variable any more. It was made
11939 redundant by my commit of 2003-06-15.
11940
11941 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
11942
11943 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11944
11945 * lisp.h: Add undef DECL_ALIGN.
11946
11947 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
11948
11949 * process.c (wait_reading_process_input) [SYNC_INPUT]:
11950 Check interrupt_input_pending explicitly.
11951
11952 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
11953
11954 * keyboard.c (handle_async_input): New fun,
11955 extracted from input_available_signal.
11956 (input_available_signal, reinvoke_input_signal): Use it.
11957
11958 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
11959
11960 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
11961
11962 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
11963 manipulation macros for when tags are in the lower bits.
11964 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
11965 (DECL_ALIGN): New macro.
11966 (DEFUN): Use it.
11967
11968 * lisp.h [ENABLE_CHECKING]: Don't force union type.
11969
11970 * s/darwin.h (__attribute__): Remove outdated workaround.
11971
11972 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
11973
11974 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
11975 Don't check range of malloc address.
11976 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
11977
11978 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
11979
11980 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
11981
11982 2004-01-19 Kenichi Handa <handa@m17n.org>
11983
11984 * fontset.c (fontset_font_pattern): Fix previous change.
11985
11986 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
11987
11988 * xdisp.c (Voverflow_newline_into_fringe)
11989 (move_it_in_display_line_to, redisplay_internal)
11990 (update_window_fringes, redisplay_window, display_line, window):
11991 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
11992 that it compiles without a window-system.
11993 * dispnew.c (direct_output_for_insert, update_window): Likewise.
11994
11995 2004-01-16 Kim F. Storm <storm@cua.dk>
11996
11997 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
11998
11999 * buffer.c (init_buffer_once): Set buffer_defaults and
12000 buffer_local_flags for indicate_buffer_boundaries.
12001 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
12002 default- variable for it.
12003
12004 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
12005 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
12006 New members exact_window_width_line_p and cursor_in_fringe_p for
12007 overflowing newlines into right fringe.
12008 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
12009 and indicate_bottom_line_p for buffer boundaries and scrolling.
12010 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
12011 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
12012 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
12013 and HOLLOW_SQUARE_BITMAP.
12014 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
12015 Add prototypes.
12016
12017 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
12018 instead of related indicator fields.
12019 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
12020 (direct_output_for_insert): Handle exact width lines like
12021 contined lines. Call update_window_fringes.
12022 (update_window): Call update_window_fringes.
12023 (scrolling_window): Don't skip desired rows with changed bitmaps.
12024 Check if fringe bitmaps changes when assigning scrolled rows.
12025
12026 * xdisp.c (Voverflow_newline_into_fringe): New variable.
12027 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
12028 (move_it_in_display_line_to): Overflow newline into fringe for
12029 rows that are exactly as wide as the window.
12030 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
12031 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
12032 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
12033 (fringe_bitmaps): Add new bitmaps.
12034 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
12035 Select proper bitmap for cursor in fringe when appropriate.
12036 Handle alignment of bitmap to top or bottom of row.
12037 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
12038 done by update_window_fringes.
12039 (update_window_fringes, draw_window_fringes): New functions.
12040 (redisplay_internal): Call update_window_fringes in case only
12041 cursor row is updated.
12042 (redisplay_window): Call update_window_fringes.
12043 Explicitly call draw_window_fringes if redisplay was done using
12044 the current matrix or the overlay arrow is in the window.
12045 (try_window_reusing_current_matrix): Mark scrolled rows for
12046 fringe update (to update buffer-boundaries / scrolling icons).
12047 (find_last_unchanged_at_beg_row): Handle exact width lines line
12048 continued lines.
12049 (display_line): Overflow newline into fringe for rows that are
12050 exactly as wide as the window. Don't append space for newline
12051 in this case.
12052 (notice_overwritten_cursor): Explicitly clear cursor bitmap
12053 in fringe as if it had been overwritten.
12054 (erase_phys_cursor): Erase cursor bitmap in fringe.
12055 (syms_of_xdisp): Mark show-trailing-whitespace and
12056 void-text-area-pointer as user options.
12057 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
12058
12059 * xterm.c (x_update_window_end): Call draw_window_fringes.
12060 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12061 in row instead of actually drawing fringe bitmaps.
12062 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12063 (x_draw_window_cursor): Draw cursor in fringe.
12064
12065 * w32term.c (x_update_window_end): Call draw_window_fringes.
12066 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12067 in row instead of actually drawing fringe bitmaps.
12068 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12069 (w32_draw_window_cursor): Draw cursor in fringe.
12070
12071 * macterm.c (x_update_window_end): Call draw_window_fringes.
12072 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12073 in row instead of actually drawing fringe bitmaps.
12074 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12075 (mac_draw_window_cursor): Draw cursor in fringe.
12076
12077 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12078
12079 * xterm.c (handle_one_xevent): Don't handle characters that are part
12080 of an old style (XLookupString) compose sequence.
12081
12082 2004-01-15 Kenichi Handa <handa@m17n.org>
12083
12084 * search.c (Freplace_match): Use make_multibyte_string or
12085 make_unibyte_string according to the buffer multibyteness.
12086
12087 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
12088
12089 * alloc.c (struct interval_block, struct string_block)
12090 (struct symbol_block, struct marker_block, live_string_p)
12091 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
12092 Better preserve alignment for objects in blocks.
12093 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
12094
12095 * lread.c (defvar_per_buffer): Remove dead declaration.
12096
12097 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
12098 space size.
12099
12100 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12101
12102 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
12103 if a key press should pop down. Only pop down if a key is pressed
12104 outside the menu/dialog.
12105 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
12106 popup_get_selection.
12107 (create_and_show_dialog): Pass 1 for down_on_keypress to
12108 popup_get_selection.
12109
12110 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12111
12112 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
12113 BLOCK/UNBLOCK_INPUT.
12114
12115 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12116
12117 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
12118 specified.
12119
12120 2004-01-08 Kenichi Handa <handa@m17n.org>
12121
12122 * editfns.c (Fformat): Fix '&' to '&&'.
12123
12124 2004-01-08 Andreas Schwab <schwab@suse.de>
12125
12126 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
12127 size if PSEUDOVECTOR_FLAG is set.
12128
12129 2004-01-07 Kenichi Handa <handa@m17n.org>
12130
12131 * charset.c (Fdeclare_equiv_charset): Fix docstring.
12132
12133 * fontset.c (fontset_ref_via_base): Fix previous change.
12134
12135 2004-01-07 Kim F. Storm <storm@cua.dk>
12136
12137 * process.c (read_process_output): Only activate adaptive
12138 buffering if we read less than 256 bytes at a time.
12139
12140 2004-01-06 Kim F. Storm <storm@cua.dk>
12141
12142 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
12143 object and image object. Return glyph width and height.
12144 (mode_line_string, marginal_area_string): Ditto.
12145
12146 * dispextern.h (buffer_posn_from_coords, mode_line_string)
12147 (marginal_area_string): Fix prototypes.
12148
12149 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
12150 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
12151 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
12152
12153 * keyboard.c (make_lispy_position): Use modified mode_line_string,
12154 buffer_posn_from_coords, and marginal_area_string functions to
12155 include both string object and image object in the lispy position.
12156 Also add actual glyph width and height to position.
12157 (read_key_sequence): Use real buffer position from mouse
12158 event to find keymap property even when click is in marginal area.
12159
12160 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
12161 mode_line_string and marginal_area_string functions to handle
12162 both string object and image object properties.
12163
12164 2004-01-06 Andreas Schwab <schwab@suse.de>
12165
12166 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
12167 character.
12168
12169 2004-01-02 Andreas Schwab <schwab@suse.de>
12170
12171 * macterm.c (emacs_options, x_initialized, same_x_server):
12172 Remove unused (and duplicated) definitions.
12173
12174 2004-01-02 Kim F. Storm <storm@cua.dk>
12175
12176 * process.h (struct Lisp_Process): New members for adaptive read
12177 buffering: adaptive_read_buffering, read_output_delay, and
12178 read_output_skip.
12179
12180 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
12181 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
12182 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
12183 (process_output_delay_count, process_output_skip): New vars.
12184 (Vprocess_adaptive_read_buffering): New variable.
12185 (make_process): Initialize adaptive read buffering members.
12186 (Fstart_process): Set adaptive_read_buffering member.
12187 (deactivate_process): Cleanup adaptive read buffering.
12188 (wait_reading_process_input): Temporarily omit delayed
12189 subprocesses from the set of file descriptors to read from;
12190 adjust the select timeout if we skipped any subprocesses.
12191 (read_process_output): Increase adaptive read buffering delay if
12192 we read less than a full buffer; reduce delay when we read a
12193 full buffer.
12194 (send_process): Simplify using local Lisp_Process var.
12195 Reset adaptive read buffering delay after write.
12196 (init_process): Initialize process_output_delay_count and
12197 process_output_skip.
12198 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
12199
12200 2004-01-01 Jason Rumney <jasonr@gnu.org>
12201
12202 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
12203
12204 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
12205
12206 * print.c (Ferror_message_string): Add hyperlink in the docstring
12207 to the definition of `signal' in the Elisp manual.
12208 * eval.c (Fsignal): Ditto.
12209
12210 2003-12-29 James Clark <jjc@jclark.com>
12211
12212 * fns.c (internal_equal): Return t for two NaN arguments.
12213
12214 2003-12-29 Richard M. Stallman <rms@gnu.org>
12215
12216 * data.c (store_symval_forwarding): Handle setting
12217 default-fill-column, etc., by changing the value in
12218 buffers that use the default.
12219
12220 * minibuf.c (Fset_minibuffer_window): Doc fix.
12221
12222 * fileio.c (choose_write_coding_system): Ignore auto_saving
12223 if using the visited file for auto saves.
12224 (Fwrite_region): Don't update SAVE_MODIFF
12225 if auto-saving in visited file.
12226
12227 2003-12-29 Kenichi Handa <handa@m17n.org>
12228
12229 * dispextern.h (face_font_available_p): Extern it.
12230
12231 * fontset.c (Voverriding_fontspec_alist): New variable.
12232 (lookup_overriding_fontspec): New function.
12233 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
12234 (fontset_font_pattern): Likewise.
12235 (regulalize_fontname): New function.
12236 (Fset_fontset_font): Call regulalize_fontname.
12237 (Fset_overriding_fontspec_internal): New function.
12238 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
12239 Defsubr Sset_overriding_fontspec_internal.
12240
12241 * xfaces.c (face_font_available_p): New function.
12242
12243 2003-12-28 Richard M. Stallman <rms@gnu.org>
12244
12245 * buffer.c (Fother_buffer): Don't crash if BUF is nil
12246 or if its name is nil.
12247
12248 * buffer.c (Fkill_buffer): Don't delete auto-save file
12249 if it's the same as the visited file.
12250
12251 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
12252
12253 * coding.c (Fcheck_coding_system): Doc fix.
12254
12255 2003-12-28 Kim F. Storm <storm@cua.dk>
12256
12257 * Makefile.in (eval.o): Depend on dispextern.h.
12258
12259 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
12260 image glyph using image's ascent.
12261 (mode_line_string): Return image glyph as object clicked on.
12262 Adjust y0 for image glyph using image's ascent.
12263
12264 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
12265 (struct glyph): New members, ascent and descent. Used to save
12266 this glyph's ascent and descent, instead of having.
12267 (struct glyph): Declare member face_id using FACE_ID_BITS.
12268 (find_hot_spot): Add prototype.
12269
12270 * keyboard.c (Qimage): Remove extern (now in lisp.h).
12271 (QCmap): Declare extern.
12272 (make_lispy_position): When position is inside image hot-spot,
12273 use hot-spot element's id as posn element.
12274
12275 * lisp.h (IMAGEP): New macro to test for image object type.
12276 (Qimage): Declare extern.
12277
12278 * macfns.c (Qimage): Remove extern (now in lisp.h).
12279 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12280
12281 * macterm.c (Qface, Qmouse_face): Remove unused externs.
12282
12283 * w32fns.c (Qimage): Remove extern (now in lisp.h).
12284 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12285
12286 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
12287
12288 * w32term.c (Qface, Qmouse_face): Remove unused externs.
12289
12290 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
12291 pointer types.
12292 (Qrelative_width, Qalign_to): Remove unused variables.
12293 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
12294 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
12295 image maps.
12296 (x_y_to_hpos_vpos): Return glyph relative coordinates through
12297 new dx and dy args.
12298 Remove buffer_only_p arg (always 0). Simplify code accordingly.
12299 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
12300 than row's ascent and height, to get sensible height on tall rows.
12301 (build_desired_tool_bar_string): Remove Qimage extern.
12302 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
12303 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
12304 image glyph is alone on the last line.
12305 (append_glyph, append_composite_glyph, produce_image_glyph)
12306 (append_stretch_glyph): Set glyph's ascent and descent.
12307 (on_hot_spot_p): New function to check if position is inside an
12308 rectangular, circular, or polygon-shaped image hot-spot,
12309 (find_hot_spot): New function to search for image hot-spot.
12310 (Flookup_image_map): New defun to search for image hot-spot.
12311 (define_frame_cursor1): New aux function to determine frame pointer.
12312 (note_mode_line_or_margin_highlight, note_mouse_highlight):
12313 Handle `pointer' text property and :pointer image property to
12314 control frame pointer shape. Detect image hot-spots for pointer
12315 and help_echo properties. Use define_frame_cursor1.
12316 (note_mouse_highlight): Use Vvoid_text_area_pointer.
12317 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
12318 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
12319
12320 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
12321
12322 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
12323 (Qimage): Remove extern (now in lisp.h).
12324 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12325
12326 * xmenu.c (show_help_event): Remove unused code.
12327
12328 * xterm.c (Qface, Qmouse_face): Remove unused externs.
12329 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
12330 row's ascent and descent, to get a sensible height on tall rows.
12331
12332 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
12333
12334 * minibuf.c (Fcompleting_read): Undo previous change.
12335
12336 2003-12-25 Lars Hansen <larsh@math.ku.dk>
12337
12338 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
12339 Arguments GCPRO'ed in call to file name handler.
12340
12341 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
12342
12343 * termcap.c (tgetst1): Scan for "%pN"; if all
12344 N are continuous in [1,9], remove all "%pN".
12345
12346 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12347
12348 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
12349
12350 * xfaces.c (lface_fully_specified_p): Take into account that
12351 MAC OS always have unspecified stipple.
12352
12353 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12354
12355 * tparam.c (tparam1): Add handling for `%pN', which
12356 means use param N for the next substitution.
12357
12358 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12359
12360 * xfaces.c (Fcolor_gray_p): Fix omission bug:
12361 In case `frame' is nil, consult the selected frame.
12362 (Fcolor_supported_p): Likewise.
12363
12364 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
12365
12366 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
12367 Doc fixes.
12368
12369 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
12370 and an integer. Adapt the introductory comment accordingly.
12371 (Fread_from_minibuffer): Delete code moved into read_minibuf.
12372 Doc fix.
12373 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
12374 read_minibuf.
12375 (Fcompleting_read): Delete code moved into read_minibuf.
12376 (Ftest_completion): Make it handle obarrays and hash tables correctly.
12377
12378 2003-12-03 Kenichi Handa <handa@m17n.org>
12379
12380 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
12381 encoding sequence.
12382
12383 2003-12-01 Kenichi Handa <handa@m17n.org>
12384
12385 * composite.c (syms_of_composite): Don't make the compostion hash
12386 table week.
12387
12388 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
12389
12390 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
12391 * textprop.c (Fget_char_property_and_overlay): New function.
12392 (syms_of_textprop): Defsubr it.
12393
12394 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12395
12396 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
12397 to compile on terminal configuration.
12398
12399 * fileio.c (Fread_file_name): Check use_file_dialog also before
12400 calling Fx_file_dialog.
12401
12402 * fns.c (use_file_dialog): New variable.
12403 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
12404
12405 2003-11-29 Kim F. Storm <storm@cua.dk>
12406
12407 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
12408 (syms_of_msdos): Don't intern and staticpro them.
12409
12410 2003-11-27 Kim F. Storm <storm@cua.dk>
12411
12412 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
12413 coordinates relative to glyph at posn. If glyph is an image,
12414 return that as object at posn. Callers changed.
12415 (mode_line_string, marginal_area_string): Calculate and return
12416 pixel coordinates relative to glyph. Callers changed.
12417
12418 * dispextern.h (buffer_posn_from_coords, mode_line_string)
12419 (marginal_area_string): Fix prototypes.
12420 (window_box_left_offset, window_box_right_offset): Add prototypes.
12421
12422 * frame.h (get_specified_cursor_type, get_window_cursor_type):
12423 Remove prototypes.
12424
12425 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
12426
12427 * keyboard.c (make_lispy_position): Add x and y coordinates
12428 relative to the current glyph as 7th element of position.
12429 If glyph is an image, return it in the object element.
12430 (read_key_sequence): Skip checks for keymap property in cases
12431 where POSN_STRING is not a string (e.g. an image).
12432
12433 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
12434 (Vshow_text_cursor_in_void): New variable.
12435 (glyph_to_pixel_coords): Don't use negative hpos.
12436 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
12437 (append_stretch_glyph): Change ascent arg to be actual value
12438 in pixels rather than ratio to height. Callers changed.
12439 (calc_pixel_width_or_height): New aux function, implementing
12440 pixel based artihmetic for glyph widths and heights.
12441 (produce_stretch_glyph): Use calc_pixel_width_or_height for
12442 :width, :height, :align-to, and :ascent, thus allowing these to
12443 be specified in pixels as well as multiples of characters.
12444 Don't produce stretch glyphs with zero width or height.
12445 (get_specified_cursor_type): Declare static.
12446 (get_window_cursor_type): Declare static. Add glyph arg to be
12447 able to know when cursor is on an image; always substitute
12448 hollow-box cursor for filled-box cursor on images, to avoid
12449 negative images and flicker when blinking the cursor.
12450 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
12451 (note_mode_line_or_margin_highlight): Use non-text cursor rather
12452 than vertical scroll-bar cursor in display margins.
12453 (note_mouse_highlight): Use non-text cursor rather than text
12454 cursor in fringes and over images in the text area.
12455 Use non-text cursor when mouse pointer is outside editable text,
12456 i.e. in the void after end-of-line or end-of-buffer; this was
12457 already done for W32, but is now standard for all systems --
12458 user can toggle show-text-cursor-in-void to get old behaviour.
12459 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
12460 Vdisplay_pixels_per_inch.
12461
12462 2003-11-25 Andreas Schwab <schwab@suse.de>
12463
12464 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
12465 EMACS_INT to not lose bits.
12466 (Ffillarray): Don't set bits beyond the size of a bool vector.
12467
12468 2003-11-25 Kim F. Storm <storm@cua.dk>
12469
12470 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
12471 define this defun on systems that cannot use stderr as lvalue.
12472
12473 2003-11-24 Gerd Moellmann <gerd@gnu.org>
12474
12475 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
12476 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
12477 ld's default is incompatible with unexec.
12478
12479 2003-11-23 Kim F. Storm <storm@cua.dk>
12480
12481 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
12482 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
12483 (Fforce_window_update): New defun.
12484 (syms_of_window): Defsubr it.
12485 (Fset_window_margins, Fset_window_fringes): Doc fix.
12486
12487 * print.c (Fredirect_debugging_output): New defun.
12488 (syms_of_print): Defsubr it.
12489
12490 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
12491
12492 * fns.c (Fset_char_table_parent): Doc fix.
12493
12494 2003-11-22 Kim F. Storm <storm@cua.dk>
12495
12496 * dispnew.c (buffer_posn_from_coords): Return actual row/column
12497 for glyph clicked on, rather than (unused) pixel positions.
12498 (mode_line_string, marginal_area_string): Change X and Y args to
12499 pointers for returning actual row/column for glyph clicked on.
12500 Simplify and optimize loops.
12501
12502 * dispextern.h (mode_line_string, marginal_area_string):
12503 Update prototypes.
12504
12505 * keyboard.c (make_lispy_position): New function for generating
12506 mouse click positions from frame and pixel coordinates.
12507 Enhanced to return buffer position and actual row/column for
12508 events outside the text area using updated mode_line_string and
12509 marginal_area_string functions.
12510 Return left-fringe and right-fringe clicks as such, rather than
12511 clicks in text area.
12512 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
12513 pixel_to_glyph_coords, as we never use the results.
12514 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
12515 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
12516 Eliminate unused code in WHEEL_EVENT handling.
12517 (make_lispy_movement): Use make_lispy_position.
12518
12519 * window.c (coordinates_in_window): Remove redundant tests.
12520 Fix returned X pixel value for left-margin.
12521
12522 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
12523 mode_line_string and marginal_area_string parameters.
12524
12525 2003-11-22 Lars Hansen <larsh@math.ku.dk>
12526
12527 * w32.c (struct the_group, getgrgid): Add.
12528 * mac.c (struct my_group, getgrgid): Add.
12529
12530 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12531
12532 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
12533
12534 2003-11-21 Lars Hansen <larsh@math.ku.dk>
12535
12536 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
12537 include in call to file name handler. Optionally translate numeric
12538 UID and GID to strings. Update docstring.
12539 (directory_files_internal): Add parameter ID-FORMAT.
12540 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
12541 include in call to file name handler and call to
12542 directory_files_internal. Update Docstring.
12543 (Fdirectory_files): Add dummy parameter in call to
12544 directory_files_internal.
12545 * lisp.h (Qinteger): Add.
12546 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
12547 (Ffile_attributes): Add parameter.
12548 * data.c (Qinteger): Export.
12549
12550 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12551
12552 * fns.c (Freverse, Fnreverse): Doc fixes.
12553
12554 2003-11-19 Kim F. Storm <storm@cua.dk>
12555
12556 * xdisp.c (init_iterator): Initialize it->start to position
12557 before reseating (in case start position is invisible).
12558 (init_to_row_start): Set it->start to row-start.
12559 (redisplay_window): Accept optional_new_start if start position
12560 is invisible (in which case IT_CHARPOS overshoots PT).
12561 (display_line): Setup row->start from it->start (rather than
12562 it->current which is wrong if first char on line is invisible).
12563 When done, reseat it->start to it->current (= start of next row).
12564 (expose_area): Fix exposure of text area when first char (e.g. TAB)
12565 is only partially visible.
12566
12567 * dispextern.h (struct it): New member start.
12568
12569 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
12570
12571 * alloc.c (make_float, Fcons): Clear the markbit at init time.
12572 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
12573 of block_index outside of the macro call.
12574 (Fgarbage_collect): Remove null code.
12575
12576 * m/amdx86-64.h: Don't redefine XPNTR.
12577
12578 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
12579 of VALMASK.
12580
12581 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
12582 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
12583 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
12584
12585 * lisp.h (VALMASK): Only define for non-union type.
12586 (MARKBIT): Remove.
12587 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
12588 (XTYPE): Define unconditionally.
12589 (XSETTYPE): Remove one more remnant.
12590 (EQ): Define differently for the union and non-union cases.
12591 (INTMASK): New bit mask.
12592 (struct Lisp_Marker): Move down to prepare for upcoming patch.
12593 (GC_EQ): Delegate to EQ.
12594
12595 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
12596
12597 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12598
12599 * xterm.c (x_window_to_scroll_bar): Move check of display to
12600 where window_id is compared.
12601
12602 2003-11-17 Kim F. Storm <storm@cua.dk>
12603
12604 * dispextern.h (struct it): New member first_vpos.
12605
12606 * xdisp.c (start_display): Set it->first_vpos.
12607 (try_window_id): Use first_vpos to start display in first _text_
12608 line if no reusable lines at start of window with header line.
12609
12610 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12611
12612 * w32fns.c (XPutPixel):
12613 * w32bdf.c (w32_init_bdf_font):
12614 * sunfns.c (sel_read):
12615 * process.c (Fmake_network_process):
12616 * frame.c (store_frame_param):
12617 * fontset.c (Fset_fontset_font):
12618 * emacs.c (shut_down_emacs):
12619 * ccl.c (ccl_driver): Remove period at end of error message.
12620
12621 * config.in: Regenerate.
12622
12623 * xfns.c (x_window_to_frame, x_any_window_to_frame)
12624 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12625 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
12626 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
12627 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
12628
12629 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
12630
12631 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
12632 (XTmouse_position, handle_one_xevent): Pass Display* to
12633 x_window_to_scroll_bar.
12634 (x_window_to_scroll_bar): Take a Display* argument.
12635 Check that display for frame is equal to Display* argument.
12636 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
12637 x_display_info_for_display instead. Use Display in xev instead
12638 of GDK_DISPLAY.
12639 (x_dispatch_event): Call x_display_info_for_display.
12640 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
12641 (x_connection_closed): Call xg_display_close for GTK.
12642 (x_term_init): Call xg_display_open for additional displays.
12643 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
12644 for GTK.
12645
12646 * xmenu.c (single_menu_item, mouse_position_for_popup)
12647 (x_activate_menubar): Formatting adjustments.
12648
12649 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
12650 adjustments.
12651
12652 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
12653 (xg_display_close, xg_create_default_cursor)
12654 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
12655 handling.
12656 (xg_left_ptr_cursor): Remove.
12657 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
12658 cursor here.
12659 (xg_win_to_widget): Take Display* argument, call
12660 gdk_xid_table_lookup_for_display.
12661 (xg_create_frame_widgets, xg_get_file_name, create_menus)
12662 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
12663 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
12664 in FRAME_X_DISPLAY_INFO.
12665 (xg_get_scroll_id_for_window): Take Display* argument.
12666 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
12667 (xg_initialize): Remove xg_left_ptr_cursor.
12668
12669 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
12670 Display* argument.
12671 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
12672
12673 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12674
12675 * xterm.c (x_detect_focus_change): Do not change focus frame for
12676 Enter/LeaveNotify if the current focus frame has explicit focus.
12677
12678 2003-11-14 Kim F. Storm <storm@cua.dk>
12679
12680 * dispnew.c (update_text_area): Fix redisplay error when hscroll
12681 is active and first glyph is only partially visible.
12682
12683 2003-11-13 Kenichi Handa <handa@m17n.org>
12684
12685 * xdisp.c (select_frame_for_redisplay): New function.
12686 (redisplay_internal): Record also selected_frame for
12687 unwind_redisplay. Call select_frame_for_redisplay before
12688 redrawing each frame.
12689 (unwind_redisplay): Argument changed to a cons.
12690
12691 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
12692
12693 * fns.c (Fstring_to_multibyte): Doc fix.
12694
12695 2003-11-11 Kenichi Handa <handa@m17n.org>
12696
12697 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12698
12699 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12700
12701 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
12702 program specified positions.
12703
12704 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12705
12706 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
12707
12708 2003-11-08 Kenichi Handa <handa@m17n.org>
12709
12710 * Makefile.in (lisp): Add kannada.el.
12711 (shortlisp): Likewise.
12712
12713 2003-11-07 Kenichi Handa <handa@m17n.org>
12714
12715 * coding.c (coding_allocate_composition_data):
12716 Reset coding->composing to COMPOSITION_NO.
12717 (coding_restore_composition): Detect invalid composition data.
12718 Give Fstring and Fvector a Lispy integer, not C int.
12719
12720 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
12721
12722 * floatfns.c (Flogb): Don't use VALMASK.
12723
12724 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
12725 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
12726
12727 * lisp.h (XINT): Move the cast to clarify what is going on.
12728 (GCTYPEMASK, XSETTYPE): Remove.
12729 (XGCTYPE): Make it an alias of XTYPE.
12730
12731 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12732
12733 * xterm.c (x_term_init): Fix formatting.
12734
12735 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12736
12737 * gtkutil.h (xg_have_tear_offs): Declare.
12738 (xg_keep_popup, xg_did_tearoff): Remove.
12739
12740 * gtkutil.c: Remove variable xg_did_tearoff.
12741 (xg_have_tear_offs): New function.
12742 (tearoff_remove): Just decrease xg_detached_menus.
12743 (tearoff_activate): Increase xg_detached_menus and call
12744 tearoff_remove when tearoff is removed.
12745 (xg_keep_popup): Remove function.
12746 (create_menus): Give add_tearoff_p as argument to recursive
12747 call to create_menus.
12748 (xg_create_widget): Use variables instead of multiple
12749 strcmp. Tell create_menus to create tear off only for
12750 menu bar menus.
12751 (xg_update_menubar): Change title for a detached menu also.
12752 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
12753 of deep_p.
12754 (xg_initialize): Initialize xg_detached_menus, remove
12755 initialization of xg_did_tearoff.
12756
12757 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
12758 xg_have_tear_offs returns non-zero.
12759 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
12760 call to xg_keep_popup.
12761
12762 2003-11-01 Andrew Choi <akochoi@shaw.ca>
12763
12764 * macterm.c (XTread_socket): Handle menubar selection and grow
12765 window only for mouseDown events.
12766
12767 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12768
12769 * xterm.c (x_term_init): For GTK part, increase x_initialized
12770 to check for more than one display. Use error instead of return 0.
12771
12772 2003-10-31 Andrew Choi <akochoi@shaw.ca>
12773
12774 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
12775 (copy_dysymtab): Call it.
12776
12777 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
12778
12779 * eval.c (Fdefvaralias): Doc fix.
12780
12781 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
12782
12783 * data.c (Fsetplist): Doc fix.
12784
12785 2003-10-14 Lute Kamstra <lute@gnu.org>
12786
12787 * window.c (Fset_window_fringes): Clarify docstring.
12788
12789 2003-10-14 Kim F. Storm <storm@cua.dk>
12790
12791 * window.c (Fset_window_margins): Simplify arg checking.
12792
12793 2003-10-13 Richard M. Stallman <rms@gnu.org>
12794
12795 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
12796 (print_partial_compiled_pattern): Replace assert with a printout.
12797 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
12798
12799 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
12800
12801 * window.c (Fset_window_margins): Allow only integers as args.
12802 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
12803 Doc fixes.
12804
12805 2003-10-13 Lute Kamstra <lute@gnu.org>
12806
12807 * window.c (Fset_window_fringes): Elaborate docstring.
12808
12809 2003-10-12 Andrew Choi <akochoi@shaw.ca>
12810
12811 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
12812
12813 * s/darwin.h (GC_MARK_STACK): Define.
12814
12815 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12816
12817 * window.c (shrink_windows): New function.
12818 (size_window): Call shrink_windows to calculate window sizes when
12819 shrinking frame with more than one window.
12820
12821 2003-10-12 Kim F. Storm <storm@cua.dk>
12822
12823 * xdisp.c (compute_fringe_widths): Doc fix.
12824
12825 2003-10-08 Kenichi Handa <handa@m17n.org>
12826
12827 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
12828
12829 2003-10-07 Kenichi Handa <handa@m17n.org>
12830
12831 * coding.c (Qcoding_system_define_form): New variable.
12832 (syms_of_coding): Intern and staticpro it.
12833 (Fcheck_coding_system): Try to autoload the definition of
12834 CODING-SYSTEM.
12835
12836 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
12837
12838 * fns.c (Frequire): Doc fix.
12839
12840 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12841
12842 * xfns.c (Fx_send_client_event): New function as a base for
12843 manipulating extended window manager hints.
12844 (Fx_send_client_event): Remove unused variable s.
12845
12846 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
12847 that function is removed.
12848
12849 * xterm.c (x_set_offset): Use move_offset_left/top instead of
12850 x/y_pixels_outer_diff.
12851 (x_check_expected_move): Calculate move_offset_left/top.
12852
12853 * xterm.h (struct x_output): New members: move_offset_top/left.
12854
12855 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
12856 call x_set_offset directly.
12857
12858 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
12859
12860 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
12861
12862 * xterm.c (x_delete_display): Free font names and font_encoder
12863 in dpyinfo->font_table.
12864
12865 * xfns.c (Fx_close_connection): Only call XFreeFont here.
12866 Move xfree of font names to x_delete_display.
12867
12868 * xterm.h (struct x_display_info): New member, wm_type.
12869 (struct x_output): New members, expected_top/left and
12870 check_expected_move.
12871
12872 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
12873 is received.
12874 (handle_one_xevent): Rename x_check_expected_move from
12875 x_check_fullscreen_move.
12876 (x_set_offset): Only add WM decoration sizes to modified_top/left
12877 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
12878 (x_check_expected_move): Rename from x_check_fullscreen_move.
12879 Removed fullscreen specific code. Use check_expected_move,
12880 expected_left/top instead. Also, set wm_type.
12881 (x_term_init): Initialize wm_type to unknown.
12882
12883 * frame.c (x_fullscreen_move): Remove addition of WM decoration
12884 sizes to move_x/y.
12885
12886 2003-10-03 Kenichi Handa <handa@m17n.org>
12887
12888 * macterm.c (x_load_font): Clear all members of FONTP before start
12889 filling them.
12890
12891 2003-10-02 Kenichi Handa <handa@m17n.org>
12892
12893 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
12894 before calling find_ccl_program_func. Call find_ccl_program_func
12895 only when fontp->font_encoder is not NULL.
12896
12897 * xterm.c (x_load_font): Clear all members of FONTP before start
12898 filling them.
12899
12900 2003-10-03 John Paul Wallington <jpw@gnu.org>
12901
12902 * keymap.c (map_keymap): Don't abort when binding is a vector.
12903
12904 2003-10-02 Jason Rumney <jasonr@gnu.org>
12905
12906 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
12907 Sync dependencies with Makefile.in.
12908 (alloca.o): Remove.
12909
12910 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
12911 filling them.
12912
12913 * w32bdf.c (w32_load_bdf_font): Likewise.
12914
12915 2003-09-30 Richard M. Stallman <rms@gnu.org>
12916
12917 * term.c (set_tty_color_mode): Calculate current_mode_spec
12918 regardless of value of VAL.
12919
12920 * intervals.c (graft_intervals_into_buffer):
12921 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
12922 Handle over_used when splitting UNDER.
12923
12924 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
12925
12926 * regex.c (regex_compile): Free the stack when returning from function.
12927
12928 2003-09-28 Kenichi Handa <handa@m17n.org>
12929
12930 * fontset.c (Finternal_char_font): Change return value to
12931 cons (FONT-NAME . GLYPH-CODE).
12932
12933 2003-09-28 Eli Zaretskii <eliz@gnu.org>
12934
12935 * term.c (tty_setup_colors): Treat any negative argument as -1.
12936
12937 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
12938
12939 * process.c (send_process): Delete unused temp_buf.
12940
12941 2003-09-26 Dave Love <fx@gnu.org>
12942
12943 * xterm.c (x_bitmap_mask): Declare.
12944
12945 2003-09-25 Dave Love <fx@gnu.org>
12946
12947 * Makefile.in (fns.o): Depend on md5.h.
12948
12949 2003-09-25 Kim F. Storm <storm@cua.dk>
12950
12951 * window.c (set_window_buffer): Fix redisplay problems when
12952 switching between buffers with different display margin widths.
12953
12954 2003-09-23 Kim F. Storm <storm@cua.dk>
12955
12956 * process.c (set_socket_option): Fix :bindtodevice option.
12957 (Fset_network_process_option): Update process contact list when
12958 setting option succeeds.
12959 (Fmake_network_process): Doc fix.
12960
12961 2003-09-23 Dave Love <fx@gnu.org>
12962
12963 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
12964
12965 2003-09-22 Eli Zaretskii <eliz@gnu.org>
12966
12967 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
12968 color mode is an integer number (it could be -1).
12969
12970 2003-09-22 Richard M. Stallman <rms@gnu.org>
12971
12972 * intervals.c (graft_intervals_into_buffer): Correct the main loop
12973 in the case where OVER is longer than UNDER.
12974
12975 2003-09-22 Masatake YAMATO <jet@gyve.org>
12976
12977 * window.c (Fset_window_scroll_bars): Validate the value of
12978 `vertical_type'.
12979
12980 2003-09-21 Kim F. Storm <storm@cua.dk>
12981
12982 * frame.c (Vdefault_frame_scroll_bars): New variable.
12983 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
12984 (syms_of_frame): DEFVAR_LISP it, and initialize according to
12985 window-system default scroll bar position.
12986
12987 * window.c (Fwindow_scroll_bars): Doc fix.
12988
12989 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12990
12991 * xterm.c (x_set_offset): Take window manager decorations into account.
12992
12993 2003-09-19 Richard M. Stallman <rms@gnu.org>
12994
12995 * atimer.h: Don't include lisp.h.
12996 (P_): Define it here (as well as elsewhere).
12997
12998 * print.c (Fprin1_to_string): Move the PRINTPREPARE
12999 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
13000
13001 * data.c (Fvariable_binding_locus): New function.
13002 (syms_of_data): defsubr it.
13003 (Flocal_variable_p): Delete duplicate call to indirect_variable.
13004
13005 2003-09-18 Dave Love <fx@gnu.org>
13006
13007 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
13008
13009 * process.c (Fnetwork_interface_info): Fix type error.
13010 (Fnetwork_interface_list): Doc fix.
13011 (read_process_output, read_process_output): Delete unused var.
13012
13013 2003-09-17 Kim F. Storm <storm@cua.dk>
13014
13015 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
13016 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
13017 (Fnetwork_interface_info): Check that ifreq struct has required
13018 fields before accessing them; this requires that those fields are
13019 defined as macros, which may be too restrictive on some platforms,
13020 but it is better than failing on other platforms.
13021 (syms_of_process): Only defsubr above fns when included.
13022
13023 2003-09-17 Dave Love <fx@gnu.org>
13024
13025 * unexalpha.c: Don't include varargs.h.
13026
13027 2003-09-17 Kim F. Storm <storm@cua.dk>
13028
13029 * process.c (Fset_process_sentinel): Add sentinel to childp plist
13030 for network process.
13031 (socket_options): Add `:' prefix to option names. Add optbit field.
13032 (set_socket_option): Remove no_error arg and special handling of s < 0.
13033 Return 1<<optbit for known option, 0 for unknown.
13034 Do not interpret 0 as false for boolean option (only nil).
13035 Pass failed option and value to report_file_error.
13036 (Fset_network_process_options): Replace by Fset_network_process_option.
13037 (Fset_network_process_option): New function to set just one option.
13038 (Fmake_network_process): Allow :coding arg to be a cons.
13039 Allow :server arg to be an integer specifying backlog size.
13040 Remove :options arg, and allow options to be specified directly
13041 as :KEY, VALUE pairs. Parse these options before binding socket.
13042 As before, :reuseaddr t is default for a server process, but this
13043 can now be disabled by specifying :reuseaddr nil.
13044 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
13045 (init_process): Availability of network options is now checked with
13046 simpler syntax (featurep 'make-network-process :OPTION); use loop to
13047 setup features.
13048 (syms_of_process): Fix defsubr's for the replaced functions.
13049
13050 2003-09-16 Dave Love <fx@gnu.org>
13051
13052 * Makefile.in: Depend on coding.h.
13053
13054 2003-09-14 Kim F. Storm <storm@cua.dk>
13055
13056 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
13057 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
13058 (syms_of_process): Defsubr them.
13059
13060 * config.in: Regenerate.
13061
13062 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
13063
13064 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
13065 * m/news-r6.h (XUNMARK): Remove.
13066 * m/mips.h (XUNMARK): Remove.
13067 * m/mips-siemens.h (XUNMARK): Remove.
13068 * m/iris4d.h (XUNMARK): Remove.
13069 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
13070
13071 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
13072
13073 * lisp.h (VALBITS): Don't remove 1 for the markbit.
13074 (union Lisp_Object): Use unsigned int for types. Remove markbit.
13075 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
13076 (XTYPE): Use unsigned right-shift.
13077 (XMARKBIT, XMARK, XUNMARK): Remove.
13078
13079 * alloc.c (init_intervals, init_symbol, init_marker):
13080 Don't preallocate anything.
13081 (Fgarbage_collect, mark_object): Ignore the markbit.
13082
13083 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
13084
13085 2003-09-08 Lute Kamstra <lute@gnu.org>
13086
13087 * xdisp.c (pint2hrstr): New function.
13088 (decode_mode_spec): Add `%i' and `%I' specs.
13089 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
13090 for `mode-line-format'.
13091
13092 2003-09-07 Andreas Schwab <schwab@suse.de>
13093
13094 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
13095 avoid warning.
13096
13097 2003-09-07 Eli Zaretskii <eliz@gnu.org>
13098
13099 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
13100
13101 2003-09-03 Kim F. Storm <storm@cua.dk>
13102
13103 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
13104 change (superseded by 2002-08-30 change); the default blink-off
13105 cursor is now again "no cursor".
13106
13107 2003-09-01 Jason Rumney <jasonr@gnu.org>
13108
13109 * makefile.w32-in (alloca.o): Remove.
13110 (coding.o): Depend on intervals.h
13111 (emacs.o, bytecode.o): Depend on window.h
13112
13113 2003-09-01 Dave Love <fx@gnu.org>
13114
13115 * Makefile.in (alloca.o): Remove commands.
13116 (coding.o): Depend on intervals.h composite.h window.h.
13117 (emacs.o): Depend on window.h keyboard.h keymap.h.
13118 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
13119 (bytecode.o): Depend on window.h.
13120
13121 2003-08-31 Jason Rumney <jasonr@gnu.org>
13122
13123 * w32term.c (w32_per_char_metric): Allow cached metrics to be
13124 returned even when font_type is unknown.
13125
13126 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
13127
13128 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13129
13130 * xterm.c (x_term_init): Initialize new fields in x_display_info.
13131
13132 * xterm.h (struct x_display_info): Add red/green/blue_bits and
13133 *_offset.
13134
13135 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
13136 calculate pixel value.
13137
13138 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
13139
13140 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
13141 Don't tell redisplay display is accurate when it's actually been
13142 paused for pending input.
13143
13144 2003-08-29 Richard M. Stallman <rms@gnu.org>
13145
13146 * dispnew.c (adjust_glyph_matrix): Call window_box
13147 whenever W is nonzero.
13148
13149 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
13150 (Fkill_local_variable, Fmake_variable_frame_local)
13151 (Flocal_variable_p, Flocal_variable_if_set_p):
13152 Use indirect_variable to trace thru variable aliases.
13153
13154 * config.in: Updated.
13155
13156 * callint.c (Fcall_interactively): Save and restore
13157 Vthis_command, Vthis_original_command, real_this_command,
13158 and current_kboard->Vlast_command.
13159
13160 * abbrev.c (Fexpand_abbrev): Insert before deleting.
13161
13162 2003-08-29 Gerd Moellmann <gerd@gnu.org>
13163
13164 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
13165
13166 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
13167
13168 * coding.c (decode_coding_iso2022): Initialize local variable c2.
13169 (decode_coding_sjis_big5): Likewise.
13170
13171 2003-08-27 Jason Rumney <jasonr@gnu.org>
13172
13173 * w32.c (sys_pipe): Protect against file descriptor overflow.
13174
13175 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
13176
13177 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
13178
13179 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
13180
13181 * xfns.c (Vgtk_version_string): New variable.
13182 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
13183
13184 2003-08-24 Eli Zaretskii <eliz@gnu.org>
13185
13186 * term.c (term_init): Remove `const' from buffer_size's declaration.
13187
13188 * Makefile.in (msdos.o): Depend on intervals.h.
13189
13190 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
13191
13192 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13193
13194 * xterm.h (struct x_display_info): New fields: client_leader_window
13195 and Xatom_wm_client_leader.
13196
13197 * xterm.c (x_initialize): Move call to x_session_initialize to ...
13198 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
13199
13200 * xsmfns.c (create_client_leader_window): New function.
13201 (x_session_initialize): Call create_client_leader_window, take
13202 dpyinfo as argument.
13203
13204 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
13205
13206 * Makefile.in (xsmfns.o): Add more depenedencies.
13207
13208 2003-08-21 Dave Love <fx@gnu.org>
13209
13210 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
13211
13212 2003-08-21 Kenichi Handa <handa@m17n.org>
13213
13214 * term.c (term_init): Fix previous change; don't rely on the
13215 length of `buffer' if TERMINFO is defined.
13216
13217 2003-08-20 Dave Love <fx@gnu.org>
13218
13219 * atimer.h: Include lisp.h.
13220
13221 * lisp.h (EMACS_LISP_H): New.
13222 (popup_activated_flag): Don't declare.
13223
13224 * alloca.c: Some merging with gnulib. Change logic and doc
13225 concerning (x)malloc/(x)free -- no longer Emacs-specific.
13226 [DO_BLOCK_INPUT]: Don't include lisp.h.
13227 (xmalloc, xfree): Declare.
13228 (malloc): Don't declare.
13229
13230 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
13231 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
13232 atimer.h, blockinput.h.
13233
13234 * alloc.c (lisp_align_malloc): Change type of `aligned'.
13235
13236 * alloca.s: Remove.
13237
13238 2003-08-19 Gerd Moellmann <gerd@gnu.org>
13239
13240 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
13241 use -lncurses.
13242
13243 * term.c (term_init): Use a buffer of size 4096 for tgetent since
13244 FreeBSD returns something longer than 2044. Abort if the end of
13245 the buffer is overwritten.
13246
13247 2003-08-19 Miles Bader <miles@gnu.org>
13248
13249 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
13250
13251 2003-08-19 Gerd Moellmann <gerd@gnu.org>
13252
13253 * alloc.c (lisp_align_malloc): Check for memory full when
13254 allocating ablocks, which also avoids freeing a pointer into an
13255 ablocks structure.
13256
13257 * puresize.h (BASE_PURESIZE): Increase to 1100000.
13258
13259 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
13260
13261 2003-08-16 Richard M. Stallman <rms@gnu.org>
13262
13263 * editfns.c (Fencode_time): Doc fix.
13264
13265 2003-08-16 David Ponce <david@dponce.com>
13266
13267 * fileio.c (Fwrite_region): Fix conditional expression to issue
13268 the right message.
13269
13270 2003-08-16 Juri Linkov <juri@jurta.org>
13271
13272 * syntax.c (Fforward_word): Argument changed to optional.
13273 Set default value to 1.
13274
13275 2003-08-15 Kenichi Handa <handa@m17n.org>
13276
13277 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
13278 what autoscaled.
13279 (best_matching_font): Once we find a better scalable font, set
13280 non_scalable_has_exact_height_p to 1.
13281 (try_font_list): Call try_alternative_families to try any family
13282 with the given registry.
13283
13284 2003-08-09 Andreas Schwab <schwab@suse.de>
13285
13286 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
13287
13288 * print.c (print_string): Fix printing of multibyte string with
13289 nontrivial printcharfun.
13290
13291 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13292
13293 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
13294
13295 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
13296
13297 2003-07-31 Kenichi Handa <handa@m17n.org>
13298
13299 * process.c (read_process_output): Return the actually read bytes
13300 instead of the result of decoding.
13301
13302 2003-07-31 Kenichi Handa <handa@m17n.org>
13303
13304 * xterm.h (struct x_bitmap_record): New member have_mask.
13305
13306 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
13307 to 0.
13308 (x_create_bitmap_from_file): Likewise.
13309 (x_destroy_bitmap): Check have_mask member before freeing a mask.
13310 (x_destroy_all_bitmaps): Likewise.
13311 (x_create_bitmap_mask): Set have_mask member to 1.
13312
13313 2003-07-30 Richard M. Stallman <rms@gnu.org>
13314
13315 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
13316
13317 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13318
13319 * gtkutil.c (xg_mark_data): Update calls to mark_object.
13320
13321 2003-07-29 Richard M. Stallman <rms@gnu.org>
13322
13323 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
13324 Conditionalize XIM code on HAVE_XIM.
13325
13326 * fns.c (Fclear_string): New function.
13327 (syms_of_fns): defsubr it.
13328
13329 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13330
13331 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
13332
13333 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
13334
13335 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
13336
13337 * buffer.c (delete_all_overlays): New function.
13338 * buffer.h (delete_all_overlays): Declare.
13339 * coding.c (run_pre_post_conversion_on_str):
13340 * print.c (temp_output_buffer_setup):
13341 * fileio.c (Finsert_file_contents):
13342 * minibuf.c (get_minibuffer): Use it.
13343
13344 2003-07-22 Andrew Choi <akochoi@shaw.ca>
13345
13346 * unexmacosx.c (unexec_regions_sort_compare):
13347 (unexec_regions_merge): New functions. Sort and merge unexec
13348 regions before dumping them.
13349
13350 2003-07-22 Dave Love <fx@gnu.org>
13351
13352 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
13353
13354 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
13355
13356 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
13357 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
13358 MARKBIT as the gcmarkbit for strings.
13359
13360 2003-07-21 Richard M. Stallman <rms@gnu.org>
13361
13362 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
13363
13364 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
13365 (syms_of_fns): Corresponding change.
13366
13367 * alloc.c (syms_of_alloc): Doc fixes.
13368
13369 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
13370
13371 * s/netbsd.h: Use -Wl syntax.
13372
13373 2003-07-17 Richard M. Stallman <rms@gnu.org>
13374
13375 * xterm.c (xim_initialize): Redo 6/24 change.
13376
13377 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
13378
13379 * buffer.c (copy_overlays): Use EMACS_INT for positions.
13380 (Fswitch_to_buffer): Don't signal an error when switching to the same
13381 buffer in a dedicated window.
13382
13383 * alloc.c: Use bitmaps for cons, as was done for floats.
13384 (init_float, init_cons): Let the normal code allocate the first block.
13385 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
13386 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
13387 New macros.
13388 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
13389 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
13390 (live_cons_p): Check the pointer is not past the `conses' array.
13391 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
13392 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
13393 (survives_gc_p): Use CONS_MARKED_P and simplify.
13394 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
13395
13396 2003-07-13 Paul Eggert <eggert@twinsun.com>
13397
13398 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
13399 puts it into BSS instead, at least on Solaris 8 and 9.
13400 This is a valid optimization, and it may occur on other platforms,
13401 so Emacs should not assume that initializing a static variable to
13402 zero puts it into data.
13403 * alloc.c (pure, staticvec):
13404 Initialize these arrays to nonzero, so that they're not
13405 put into BSS by that optimization.
13406
13407 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
13408
13409 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
13410 (lisp_align_malloc): Use posix_memalign is available.
13411 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
13412 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
13413 for consistency. Update users.
13414
13415 2003-07-13 Richard M. Stallman <rms@gnu.org>
13416
13417 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
13418
13419 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
13420
13421 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
13422 and use the Gtk+ function gtk_window_icon_from_file if available.
13423
13424 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
13425 handle mask of bitmaps.
13426 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
13427 mask property.
13428 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
13429
13430 * xterm.h (xg_set_icon): New function.
13431
13432 2003-07-12 Paul Eggert <eggert@twinsun.com>
13433
13434 * unexelf.c (unexec): Consider a section to precede the .bss
13435 section if its addresses overlap that of .bss.
13436
13437 2003-07-12 Richard M. Stallman <rms@gnu.org>
13438
13439 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
13440
13441 * config.in (HAVE_CRTIN): Add #undef.
13442 (INLINE): Really inline only if OPTIMIZE is defined.
13443
13444 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
13445 END_FILES_1.
13446 (START_FILES_1, END_FILES_1): New macros (conditional).
13447 (LD_SWITCH_SYSTEM_TEMACS): Define.
13448
13449 * s/openbsd.h: Don't include bsd4-3.h.
13450 (TERMINFO): Define.
13451 (LIBS_TERMCAP): Define.
13452 (LD_SWITCH_SYSTEM): Define (two definitions).
13453
13454 * xfns.c: Include libpng/png.h instead of png.h.
13455
13456 2003-07-11 Andreas Schwab <schwab@suse.de>
13457
13458 * buffer.c (modify_overlay): Update prototype.
13459 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
13460 Likewise.
13461
13462 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13463
13464 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
13465 (struct interval): Move to intervals.h.
13466 (struct Lisp_Marker): Use EMACS_INT for position info.
13467 (forward_point): Remove prototype of defunct function.
13468 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
13469 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
13470 (syms_of_textprop, set_text_properties): Remove prototypes that are
13471 already in intervals.h.
13472
13473 * intervals.h (struct interval): Move from lisp.h.
13474 Use EMACS_INT for position and size info.
13475
13476 * coding.c: Include intervals.h for Fset_text_properties.
13477
13478 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13479 position and length information.
13480
13481 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13482
13483 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13484 position and length information.
13485
13486 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13487
13488 Change overlays_after and overlays_before so the overlays themselves
13489 are linked into lists, rather than using cons cells. After all each
13490 Lisp_Misc already occupies 5 words, so we can add a `next' field to
13491 Lisp_Overlay for free and save up one cons cell per overlay (not
13492 to mention one indirection when traversing the list of overlay).
13493
13494 * lisp.h (struct Lisp_Overlay): New field `next'.
13495
13496 * buffer.h (struct buffer): Change overlays_before and overlays_after
13497 from Lisp lists of overlays to pointers to overlays.
13498
13499 * buffer.c (overlay_strings, recenter_overlay_lists):
13500 Fix typo in eassert in last commit.
13501 (unchain_overlay): New function.
13502 (add_overlay_mod_hooklist): Use AREF.
13503 (copy_overlays, reset_buffer, overlays_at, overlays_in)
13504 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
13505 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
13506 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
13507 (report_overlay_modification, evaporate_overlays, init_buffer_once):
13508 Adjust to new type of overlays_(before|after).
13509
13510 * alloc.c (mark_object): Mark the new `next' field of overlays.
13511 (mark_buffer): Manually mark the overlays_(after|before) fields.
13512
13513 * coding.c (run_pre_post_conversion_on_str):
13514 * editfns.c (overlays_around):
13515 * xdisp.c (load_overlay_strings):
13516 * fileio.c (Finsert_file_contents):
13517 * indent.c (current_column):
13518 * insdel.c (signal_before_change, signal_after_change):
13519 * intervals.c (set_point_both):
13520 * print.c (temp_output_buffer_setup): Use new type for
13521 overlays_(before|after).
13522
13523 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
13524
13525 * buffer.c (report_overlay_modification): Don't run hooks while
13526 traversing the list of overlays.
13527
13528 * buffer.h (struct buffer): Use an int for overlay_center.
13529 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13530 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13531
13532 * buffer.c (reset_buffer, recenter_overlay_lists)
13533 (adjust_overlays_for_insert, adjust_overlays_for_delete)
13534 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
13535 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
13536 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13537 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13538
13539 * xdisp.c (fast_find_position): Remove unused var.
13540
13541 * cmds.c (Qexpand_abbrev): New sym.
13542 (syms_of_cmds): Initialize it.
13543 (internal_self_insert): Use it to call expand-abbrev.
13544
13545 2003-07-09 Kim F. Storm <storm@cua.dk>
13546
13547 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
13548 was configured with --without-xim.
13549 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
13550
13551 2003-07-07 Richard M. Stallman <rms@gnu.org>
13552
13553 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
13554
13555 * alloc.c (Fgarbage_collect): Doc fix.
13556
13557 2003-07-07 Nozomu Ando <nand@mac.com>
13558
13559 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
13560
13561 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13562
13563 * minibuf.c (read_minibuf): UNGCPRO before returning.
13564 (Ftry_completion, Fall_completions): Doc fix.
13565
13566 * alloc.c (live_float_p): Check that p is not past the `floats' array,
13567 now that `floats' is not the last element of the struct any more.
13568
13569 2003-07-06 Jason Rumney <jasonr@gnu.org>
13570
13571 * w32term.h (ClipboardSequence_Proc): New type.
13572
13573 * w32fns.c (clipboard_sequence_fn): New variable.
13574 (globals_of_w32fns): Initialize it.
13575
13576 * w32select.c (last_clipboard_sequence_number): New variable.
13577 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
13578 number if possible.
13579
13580 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13581
13582 * m/amdx86-64.h (MARKBIT):
13583 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
13584 MARKBIT and ARRAY_MARK_FLAG any more.
13585
13586 * m/hp800.h (XSETMARKBIT):
13587 * m/sr2k.h (XSETMARKBIT):
13588 * lisp.h (XSETMARKBIT): Remove unused macro.
13589
13590 * lisp.h (mark_object): Change prototype.
13591
13592 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
13593 (last_marked): Change accordingly.
13594 (mark_interval, mark_maybe_object, mark_maybe_pointer)
13595 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
13596 (mark_buffer): Update calls to mark_object.
13597
13598 * bytecode.c (mark_byte_stack):
13599 * fns.c (sweep_weak_table):
13600 * keyboard.c (mark_kboards): Update calls to mark_object.
13601
13602 2003-07-06 Jason Rumney <jasonr@gnu.org>
13603
13604 * alloc.c (struct ablock): Only include padding when there is some.
13605
13606 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
13607
13608 * alloc.c (ALIGN): Add casts to simplify usage.
13609 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
13610 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
13611 (struct ablock, struct ablocks): New types.
13612 (free_ablock): New global var.
13613 (lisp_align_malloc, lisp_align_free): New functions.
13614 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
13615 (struct float_block): Reorder and add gcmarkbits.
13616 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
13617 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
13618 (init_float, make_float): Use lisp_align_malloc.
13619 (free_float, live_float_p): Don't use `type' any more.
13620 (make_float): Use FLOAT_UNMARK to access to mark bit.
13621 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
13622 Use FLOAT_MARKED_P to access the mark bit.
13623 (pure_alloc): Simplify use of ALIGN.
13624 (mark_object): Use FLOAT_MARK to access the mark bit.
13625 (gc_sweep): Use new macros to access the float's mark bit.
13626 (init_alloc_once): Init free_ablock.
13627
13628 * lisp.h (struct Lisp_Float): Remove unused field `type'.
13629
13630 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
13631
13632 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
13633 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
13634 (allocate_buffer): Move.
13635 (string_bytes): Don't mask markbit of `size_byte'.
13636 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13637 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
13638 Use the `size' field of buffers (rather than the `name' field) for
13639 the mark bit, as is done for all other vectorlike objects.
13640 Use the new macros to access the mark bit of vectorlike objects.
13641
13642 2003-06-26 Richard M. Stallman <rms@gnu.org>
13643
13644 * puresize.h (BASE_PURESIZE): Increment base size.
13645
13646 * xdisp.c (fast_find_position): Enable Gerd's new definition.
13647
13648 * xterm.c (xim_initialize): Undo previous change.
13649
13650 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
13651
13652 * alloc.c (survives_gc_p): Simplify.
13653
13654 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
13655
13656 * window.c (Fset_window_dedicated_p): Simplify.
13657 (display_buffer_1): Don't raise the win from which minibuf was entered.
13658 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
13659 (Fminibuffer_selected_window): Simplify.
13660
13661 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
13662
13663 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
13664 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
13665
13666 * insdel.c (check_markers, adjust_markers_for_delete)
13667 (adjust_markers_for_insert, adjust_markers_for_replace)
13668 (prepare_to_modify_buffer, RESTORE_VALUE):
13669 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
13670 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
13671 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
13672 * alloc.c (Fmake_marker, free_marker, gc_sweep):
13673 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
13674 * editfns.c (save_excursion_restore, transpose_markers):
13675 * window.c (delete_window):
13676 * xdisp.c (message_dolog): Update for new types.
13677
13678 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13679
13680 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
13681 (realize_default_face): Use default_face_done_p for the force_p
13682 argument to set_lface_from_font_name. Set default_face_done_p to one.
13683
13684 * frame.c (make_frame): Initialize default_face_done_p.
13685
13686 * frame.h (struct frame): Add default_face_done_p.
13687
13688 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
13689 will be defined.
13690
13691 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
13692
13693 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
13694 Initialize the new field `gcmarkbit'.
13695 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
13696 (mark_interval_tree): Don't mark the tree separately from the nodes.
13697 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
13698 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13699 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
13700
13701 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
13702 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
13703 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
13704 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
13705 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
13706
13707 2003-06-24 Dave Love <fx@gnu.org>
13708
13709 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
13710
13711 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
13712 from gnulib.
13713
13714 2003-06-21 Richard M. Stallman <rms@gnu.org>
13715
13716 * fileio.c (Fwrite_region): Alternate messages
13717 for append and partial write.
13718
13719 * keyboard.c (read_key_sequence): When converting upcase fn key to
13720 downcase, update fkey and keytran so `backspace' gets translated.
13721
13722 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
13723
13724 * process.c (wait_reading_process_input): Don't signal SIGIO
13725 in batch mode.
13726
13727 2003-06-17 Kenichi Handa <handa@m17n.org>
13728
13729 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
13730 composite.h.
13731
13732 * xselect.c: Don't include charset.h, coding.h, composite.h.
13733 (Qforeign_selection): New variable.
13734 (syms_of_xselect): Intern and static it.
13735 (selection_data_to_lisp_data): Return a unibyte string made from
13736 data with `foreign-selection' text property.
13737
13738 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
13739
13740 * termhooks.h (EVENT_INIT): New macro.
13741
13742 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
13743
13744 * alloc.c (mark_kboards): Move to keyboard.c.
13745
13746 * keyboard.c (record_asynch_buffer_change, read_avail_input):
13747 * xterm.c (x_dispatch_event):
13748 * xmenu.c (find_and_call_menu_selection):
13749 * xdisp.c (handle_tool_bar_click):
13750 * w32menu.c (menubar_selection_callback):
13751 * sysdep.c (kbd_input_ast, read_input_waiting):
13752 * msdos.c (dos_rawgetc):
13753 * macterm.c (mac_check_for_quit_char):
13754 * macmenu.c (menubar_selection_callback):
13755 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
13756 data to kbd_buffer_store_event.
13757
13758 2003-06-15 Kim F. Storm <storm@cua.dk>
13759
13760 * xdisp.c (x_fix_overlapping_area): Always use area relative X
13761 to fix redisplay problem with tall characters (such as \e,AC\e(B).
13762
13763 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
13764
13765 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
13766
13767 2003-06-12 Kenichi Handa <handa@m17n.org>
13768
13769 * fileio.c (Fwrite_region): Save and restore restriction.
13770
13771 2003-06-12 Dave Love <fx@gnu.org>
13772
13773 * alloca.c (alloca): Declare arg as size_t.
13774
13775 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
13776 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
13777
13778 2003-06-11 Dave Love <fx@gnu.org>
13779
13780 * search.c (shrink_regexp_cache): Use xrealloc.
13781 (syms_of_search): Use xmalloc.
13782
13783 2003-06-10 Kim F. Storm <storm@cua.dk>
13784
13785 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
13786 Adjust phys_cursor.x to be relative to window box, rather than
13787 text area before checking -- to ensure cursor is redrawn when
13788 exposing window.
13789 Note: This also fixes a similar (older) bug if display margins
13790 are present.
13791
13792 2003-06-06 Kenichi Handa <handa@m17n.org>
13793
13794 * coding.c (encoding_buffer_size): If coding->type is
13795 coding_type_ccl, double magnification on CRLF encoding.
13796
13797 2003-06-06 Jason Rumney <jasonr@gnu.org>
13798
13799 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
13800 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
13801
13802 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
13803 Mac too.
13804
13805 2003-06-05 Dave Love <fx@gnu.org>
13806
13807 * strftime.c: Merge changes from gnulib.
13808
13809 * mktime.c (__mktime_internal): Merge changes from gnulib
13810 involving year 69 and dst2.
13811
13812 Changes to merge with gnulib version and be consistent with the
13813 autoconf test:
13814
13815 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
13816 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
13817 [HAVE_LOCALE_H]: Include locale.h.
13818 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
13819
13820 2003-06-05 Kim F. Storm <storm@cua.dk>
13821
13822 * window.c (coordinates_in_window): Convert X and Y to window
13823 relative coordinates inside mode-line and header-line parts.
13824 Convert X and Y to margin area relative coordinates inside left
13825 and right display margin parts.
13826
13827 2003-06-05 Jason Rumney <jasonr@gnu.org>
13828
13829 * w32fns.c (add_system_logical_colors_to_map): New function.
13830 (Fx_open_connection): Use it.
13831
13832 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
13833
13834 * process.c (allocate_pty): Revert part of the previous patch.
13835 (Faccept_process_output): Simplify.
13836
13837 2003-06-04 Jason Rumney <jasonr@gnu.org>
13838
13839 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
13840
13841 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
13842 (lispy_mouse_wheel_names): Remove.
13843 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
13844 Always define drag_and_drop_syms.
13845
13846 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
13847 WHEEL_EVENT events.
13848
13849 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
13850
13851 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
13852
13853 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
13854
13855 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13856
13857 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
13858 menu item label.
13859
13860 2003-06-03 Richard M. Stallman <rms@gnu.org>
13861
13862 * window.c (Fwindow_edges): Doc fix.
13863 (Fwindow_pixel_edges, Fwindow_inside_edges)
13864 (Fwindow_inside_pixel_edges): New functions.
13865 (syms_of_window): defsubr them.
13866
13867 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
13868 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
13869
13870 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
13871
13872 * dispnew.c (Fsit_for): Don't lie about the number of args.
13873
13874 2003-06-02 Dave Love <fx@gnu.org>
13875
13876 * callproc.c: Use HAVE_FCNTL_H, not USG5.
13877 (syms_of_callproc) <process-environment>: Doc fix.
13878
13879 * doc.c: Use HAVE_FCNTL_H, not USG5.
13880
13881 * xfaces.c (font_rescale_ratio): Fix for K&R.
13882
13883 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
13884
13885 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
13886
13887 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
13888
13889 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
13890 (xg_create_frame_widgets): Use ENCODE_UTF_8.
13891
13892 * xterm.c (Qutf_8): Move to coding.c
13893
13894 * xmenu.c (ENCODE_MENU_STRING): New.
13895 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
13896 Use it.
13897
13898 * coding.h (ENCODE_UTF_8): New.
13899 (Qutf_8): Declare.
13900
13901 * coding.c (Qutf_8): New.
13902 (syms_of_coding): Intern it.
13903
13904 * fns.c: Doc fixes.
13905
13906 2003-06-02 Kenichi Handa <handa@m17n.org>
13907
13908 * buffer.c (Fset_buffer_multibyte): Fix previous change.
13909
13910 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
13911
13912 * lread.c (openp): Make sure STR is a string.
13913
13914 2003-06-01 David Ponce <david@dponce.com>
13915
13916 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
13917 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
13918
13919 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
13920 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
13921 (discard_mouse_events): Discard WHEEL_EVENT events too.
13922 (lispy_wheel_names, wheel_syms): New.
13923 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
13924 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
13925 (make_lispy_event): Add WHEEL_EVENT handler.
13926
13927 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
13928 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
13929 WHEEL_EVENT events.
13930
13931 2003-05-31 John Paul Wallington <jpw@gnu.org>
13932
13933 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
13934 timer are in lisp/emacs-lisp.
13935
13936 2003-05-31 Kenichi Handa <handa@m17n.org>
13937
13938 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
13939 region when a buffer is changed to unibyte.
13940
13941 * charset.h (VALID_LEADING_CODE_P): New macro.
13942 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
13943
13944 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
13945 is nonzero, accept multibyte form of eight-bit-control chars.
13946 (decode_composition_emacs_mule): Likewise.
13947 (decode_coding_emacs_mule): Likewise.
13948 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
13949 multibyte form of eight-bit-control chars.
13950
13951 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
13952 (Finsert_file_contents): If coding-system-for-read is bound to
13953 Qauto_save_coding, use the coding system emacs-mule with special
13954 setting for recovering a file.
13955 (choose_write_coding_system): On auto saving, use the coding
13956 system emacs-mule with special setting for auto saving.
13957 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
13958
13959 2003-05-30 Kenichi Handa <handa@m17n.org>
13960
13961 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
13962 properly before calling ccl_driver.
13963
13964 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
13965
13966 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
13967 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
13968 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
13969
13970 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
13971
13972 * xfaces.c (realize_default_face): Do not abort if lface is
13973 non-existent - reverts change from 2003-05-19.
13974
13975 2003-05-29 Kenichi Handa <handa@m17n.org>
13976
13977 * coding.c (decode_coding_iso2022): Pay attention to the byte
13978 sequence of CTEXT extended segment, and retain those bytes as is.
13979
13980 2003-05-28 Kenichi Handa <handa@m17n.org>
13981
13982 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
13983 of CODING_REPLACEMENT_CHARACTER.
13984 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
13985 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
13986 check this flag on encoding.
13987 (encode_coding_sjis_big5):
13988 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
13989 (Fset_terminal_coding_system_internal):
13990 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
13991 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
13992
13993 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
13994 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
13995 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
13996
13997 2003-05-28 Richard M. Stallman <rms@gnu.org>
13998
13999 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
14000
14001 * eval.c (unbind_to): Move init of this_binding to separate statement.
14002
14003 2003-05-28 Kim F. Storm <storm@cua.dk>
14004
14005 * xdisp.c (expose_window): Fix error in calculation of
14006 window relative coordinates of area to redisplay.
14007
14008 2003-05-27 Jason Rumney <jasonr@gnu.org>
14009
14010 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
14011
14012 2003-05-27 David Ponce <david@dponce.com>
14013
14014 Handle W32 mouse wheel events as mouse click events, like in X.
14015
14016 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
14017 MOUSE_WHEEL_EVENT anymore.
14018
14019 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
14020 Scrolling down/up the mouse wheel is respectively mapped to mouse
14021 button 4 and 5.
14022 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
14023 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
14024 WM_MOUSEWHEEL events.
14025
14026 2003-05-27 Andreas Schwab <schwab@suse.de>
14027
14028 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
14029
14030 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
14031 partially visible line.
14032
14033 * alloc.c (Fgarbage_collect): Fix last change.
14034
14035 2003-05-26 John Paul Wallington <jpw@gnu.org>
14036
14037 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
14038
14039 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
14040
14041 * window.c (Fset_window_buffer): Add type of `keep_margins'.
14042 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
14043
14044 * window.h (window_box_text_cols): Declare.
14045
14046 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
14047 (x_draw_vertical_border): Remove unused var `f'.
14048
14049 * xfaces.c (build_scalable_font_name): Remove `unused var
14050 pixel_size' warning.
14051
14052 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
14053
14054 * unexelf.c (unexec): Remove `unused var n' warning.
14055
14056 * strftime.c (my_strftime_localtime_r): Remove `defined but
14057 unused' warning.
14058
14059 * process.c (allocate_pty): Remove `unused var stb' and
14060 `cp might be used uninitialized' warnings.
14061
14062 * dispnew.c (mode_line_string): Remove unused var `f'.
14063
14064 * coding.c (find_safe_codings): Remove unused var `i'.
14065
14066 * bytecode.c (Fbyte_code): Remove `unused val' warning.
14067
14068 * buffer.c (Fkill_buffer): Remove unused var `list'.
14069
14070 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
14071
14072 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14073
14074 * frame.c (make_frame): Condition want_fullscreen with
14075 HAVE_WINDOW_SYSTEM.
14076
14077 2003-05-25 Juanma Barranquero <lektu@terra.es>
14078
14079 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
14080 (Fwindow_scroll_bars): Fix typo in docstring.
14081
14082 2003-05-24 Kim F. Storm <storm@cua.dk>
14083
14084 The following changes serve several purposes:
14085
14086 1) Swap the position of fringes and display margins in windows, i.e.
14087 the fringes are now displayed between the margins and the text area
14088 (by default).
14089
14090 2) Allow fringe and scroll bar parameters to be set per-buffer and
14091 per-window (like display margins). Such settings are now stored
14092 in window configurations, preserved when frames are resized, and
14093 copied when windows are split vertically or horizontally.
14094 Several bugs related to display margins have been fixed.
14095
14096 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
14097
14098 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
14099 rather than FRAME_WIDTH (FRAME_FONT (f)).
14100
14101 5) Introduce a consistent naming of variables, members and macros
14102 depending on whether their value is measured in pixels or in
14103 canonical columns/lines. Pixel dimensions are named *_width and
14104 *_height, while canonical columns/lines are named *_cols and
14105 *_lines. Pixel positions are named *_x and *_y, while column/line
14106 positions are named *_col and *_line.
14107
14108 6) Consolidate more of the X, W32, and MAC gui code by moving
14109 common data into struct frame, and generalize it for the non-gui
14110 case by using suitable defaults.
14111
14112 7) Cleanup and consolidate the macros controlling frame and window
14113 layout into frame.h and window.h, and generalize the use of the
14114 various window_box_* functions (enhanced to handle the new fringe
14115 position and the per-window fringe and scroll bar settings).
14116
14117 * frame.h (struct frame): Rename members height to text_lines,
14118 width to text_cols, window_height to total_lines, window_width to
14119 total_cols, new_height to new_text_lines, new_width to
14120 new_text_cols. All uses changed.
14121 (struct frame): New members which consolidate common members of
14122 x_output, w32_output, and mac_output structures: left_pos,
14123 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
14124 win_gravity, size_hint_flags, border_width, internal_border_width,
14125 line_height, fringe_cols, left_fringe_width, right_fringe_width,
14126 want_fullscreen. All uses changed.
14127 (struct frame): New member column_width contaning the canonical
14128 column width, analogue to line_height. All uses changed.
14129 (struct frame): Rename members scroll_bar_pixel_width to
14130 config_scroll_bar_width, and scroll_bar_cols to
14131 config_scroll_bar_cols. All uses changed.
14132 (struct frame): New member scroll_bar_actual_width which
14133 consolidates and renames the vertical_scroll_bar_extra member of
14134 x_output, w32_output, and mac_output structures. All uses changed.
14135 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
14136 from x/w32/macterm.h files. All uses changed. Also change code
14137 which referred to f->output_data...->pixel_height.
14138 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
14139 from x/w32/macterm.h files. All uses changed. Also change code
14140 which referred to f->output_data...->pixel_width.
14141 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
14142 Also change code which referred to f->height.
14143 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
14144 Also change code which referred to f->width.
14145 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
14146 to update new_text_lines and new_text_cols members directly.
14147 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
14148 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
14149 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
14150 FRAME_SCROLL_BAR_COLS. All uses changed.
14151 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
14152 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
14153 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
14154 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
14155 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
14156 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
14157 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
14158 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
14159 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
14160 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
14161 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
14162 Unconditionally return line_height member (it now has proper value
14163 also for non-window frames).
14164 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
14165 return new column_width member (rather than the default font width).
14166 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
14167 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
14168 from x/w32/macterm.h files. Unconditionally return corresponding
14169 member of frame structure (they now have proper values also for
14170 non-window frames).
14171 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
14172 Calculate return value from left and right widths.
14173 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
14174 internal_border_width member (has proper value for non-window frame).
14175 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
14176 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
14177 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
14178 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
14179 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
14180 consolidated from xterm.h, macterm.h, and w32term.h.
14181 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
14182 consolidated from xterm.h, macterm.h, and w32term.h.
14183 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
14184 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
14185 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
14186 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
14187 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
14188 consolidated from x/mac/w32term.h.
14189 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
14190 consolidated from x/mac/w32term.h.
14191 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
14192 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
14193 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
14194 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
14195
14196 * window.h (struct window): Rename members left to left_col,
14197 top to top_line, height to total_lines, width to total_cols,
14198 left_margin_width to left_margin_cols, right_margin_width to
14199 right_margin_cols, orig_height to orig_total_lines, orig_top to
14200 orig_top_line. All uses changed.
14201 (struct window): New members left_fringe_width, right_fringe_width,
14202 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
14203 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
14204 New macros primarily used to simplify other macros.
14205 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
14206 referred to XINT (w->width).
14207 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
14208 referred to XINT (w->height).
14209 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
14210 referred to XINT (w->width) * canon_x_unit.
14211 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
14212 referred to XINT (w->height) * canon_y_unit.
14213 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
14214 referred to XINT (w->left).
14215 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
14216 all uses and code that referred to XINT (w->left) + XINT (w->width).
14217 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
14218 referred to XINT (w->top).
14219 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
14220 referred to XINT (w->top) + XINT (w->height).
14221 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
14222 referred to XINT (w->left) * canon_x_unit.
14223 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
14224 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
14225 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
14226 referred to XINT (w->top) * canon_y_unit.
14227 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
14228 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
14229 (WINDOW_LEFTMOST_P): New macro.
14230 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
14231 All uses changed.
14232 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
14233 All uses changed.
14234 (WINDOW_BOX_LEFT_EDGE_X): Rename from
14235 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
14236 Do not exclude left fringe width.
14237 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
14238 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
14239 Do not exclude fringe widths.
14240 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
14241 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
14242 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
14243 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
14244 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
14245 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
14246 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
14247 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
14248 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
14249 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
14250 New macros. Change code which referenced corresponding
14251 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
14252 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
14253 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
14254 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
14255 allow per-window scroll-bar settings.
14256 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
14257 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
14258 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
14259 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
14260 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
14261 FRAME_SCROLL_BAR_WIDTH.
14262 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
14263 (WINDOW_SCROLL_BAR_AREA_X): New macros.
14264 (WINDOW_HEADER_LINE_HEIGHT): Rename from
14265 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
14266 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
14267 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
14268 (WINDOW_BOX_TEXT_HEIGHT): Rename from
14269 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
14270 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
14271 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
14272 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
14273 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
14274 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
14275 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
14276 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
14277 (window_from_coordinates): Update prototype.
14278 (Fset_window_buffer): Update EXFUN.
14279 (set_window_buffer): Update prototype.
14280
14281 * dispextern.h (struct glyph_matrix): Rename members window_left_x
14282 to window_left_col, window_top_y to window_top_line. All uses
14283 changed.
14284 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
14285 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
14286 internal_border_width is now set to 0 for non-window frames.
14287 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
14288 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
14289 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
14290 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
14291 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
14292 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
14293 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
14294 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
14295 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
14296 Move to window.h and renamed [see window.h changes].
14297 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
14298 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
14299 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
14300 Use WINDOW_TOTAL_LINES.
14301 (frame_update_line_height): Remove prototype.
14302
14303 * buffer.h (struct buffer): Rename members measured in columns:
14304 left_margin_width to left_margin_cols, right_margin_width to
14305 right_margin_cols. All uses changed.
14306 New members left_fringe_width, right_fringe_width,
14307 fringes_outside_margins for per-buffer fringe settings.
14308 New members scroll_bar_width and vertical_scroll_bar_type for
14309 per-buffer scroll bar settings.
14310
14311 * buffer.c (init_buffer_once): Set buffer_defaults and
14312 buffer_local_flags for new buffer-local variables
14313 left_fringe_width, right_fringe_width, fringes_outside_margins,
14314 scroll_bar_width, and vertical_scroll_bar_type.
14315 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
14316 default-* variables for them.
14317
14318 * dispnew.c: Make (many) trivial substitutions for renamed and
14319 new macros in dispextern.h, frame.h and window.h.
14320 (mode_line_string): No need to adjust width for mode lines, as it
14321 is already adjusted by the caller.
14322 (marginal_area_string): Handle fringes inside/outside margins.
14323
14324 * frame.c: Make (many) trivial substitutions for renamed and
14325 new macros in dispextern.h, frame.h and window.h.
14326 (make_frame): Initialize left_fringe_width, right_fringe_width,
14327 fringe_cols, scroll_bar_actual_width, border_width,
14328 internal_border_width, column_width, line_height, x_pixels_diff,
14329 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
14330 members with values suitable for a non-window frames.
14331
14332 * gtkutil.c: Make (many) trivial substitutions for renamed and
14333 new macros in dispextern.h, frame.h and window.h.
14334
14335 * indent.c: Make (few) trivial substitutions for renamed and
14336 new macros in dispextern.h, frame.h and window.h.
14337
14338 * keyboard.c: Make (many) trivial substitutions for renamed and
14339 new macros in dispextern.h, frame.h and window.h.
14340 (make_lispy_event): Use window positions returned from
14341 window_from_coordinates when constructing the lisp event for
14342 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
14343 (incorrect) values locally.
14344 (make_lispy_movement): Use window positions returned from
14345 window_from_coordinates when constructing the lisp event, rather
14346 than calculating (incorrect) values locally.
14347
14348 * scroll.c: Make (some) trivial substitutions for renamed and
14349 new macros in dispextern.h, frame.h and window.h.
14350
14351 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
14352 scroll-bars.
14353
14354 * sysdep.c: Make (few) trivial substitutions for renamed and
14355 new macros in dispextern.h, frame.h and window.h.
14356
14357 * term.c: Make (some) trivial substitutions for renamed and
14358 new macros in dispextern.h, frame.h and window.h.
14359
14360 * widget.c: Make (few) trivial substitutions for renamed and
14361 new macros in dispextern.h, frame.h and window.h.
14362
14363 * window.c: Make (many) trivial substitutions for renamed and
14364 new macros in dispextern.h, frame.h and window.h.
14365 (make_window): Initialize new members
14366 left_margin_cols, right_margin_cols, left_fringe_width,
14367 right_fringe_width, fringes_outside_margins, scroll_bar_width,
14368 and vertical_scroll_bar_type.
14369 (coordinates_in_window): Adapt to new fringe/margin positions
14370 and per-window fringes and scroll-bars.
14371 Fix bug related to incorrectly adjusting coordinates by
14372 frame's internal_border_width (the effect normally negible since
14373 the internal_border_width is typically 0 or 1 pixel, but very
14374 noticeable for an internal_border_width of e.g. 25 pixels).
14375 Upon successful return (other than ON_NOTHING), the coordinates
14376 are now always properly converted to window relative for the
14377 given display element.
14378 (window_from_coordinates): Add new parameters wx and wy to
14379 return the window relative x and y position in the returned
14380 window and part. A null arg means, don't return the position.
14381 All callers changed.
14382 (adjust_window_margins): New function which may reduce the width
14383 of the display margins if a window's text area is too small after
14384 resizing or splitting windows.
14385 (size_window): Fix bug that did not account for display margin
14386 widths when checking the minimum width of a window; use
14387 adjust_window_margins.
14388 (set_window_buffer): Call Fset_window_fringes and
14389 Fset_window_scroll_bars to setup per-window elements.
14390 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
14391 existing display margin, fringe widths, and scroll bar settings
14392 (e.g. after splitting a window or resizing the frame).
14393 All callers changed.
14394 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
14395 (Fsplit_window): Duplicate original window's display margin,
14396 fringe, and scroll-bar settings; then call Fset_window_buffer with
14397 KEEP_MARGINS non-nil. This fixes a bug which caused a split
14398 window to only preserve the display margins in one of the windows.
14399 When splitting horizontally, call adjust_window_margins on both
14400 windows to ensure that the text area of the new windows is non too
14401 narrow. This fixes a bug which could cause Emacs to trap if the
14402 width of the split window was less than the width of the display
14403 margins.
14404 (window_box_text_cols): Rename from window_internal_width.
14405 All uses changed. Adapt to per-window fringes and scroll bars.
14406 Fix bug that caused vertical separator to be subtracted also on
14407 window frames. Fix another bug that did not reduce the returned
14408 value by the columns used for display margins.
14409 (window_scroll_line_based): Fix bug related to scrolling too much
14410 when display margins are present (implicitly fixed by the fix to
14411 window_box_text_cols).
14412 (scroll_left, scroll_right): Fix bug related to scrolling too far
14413 by default when display margins are present (implicitly fixed by
14414 the fix to window_box_text_cols).
14415 (struct saved_window): Rename members left to left_col, top to
14416 top_line, width to total_cols, height to total_lines, orig_top to
14417 orig_top_line, orig_height to orig_total_lines. All uses changed.
14418 New members left_margin_cols, right_margin_cols,
14419 left_fringe_width, right_fringe_width, fringes_outside_margins,
14420 scroll_bar_width, and vertical_scroll_bar_type for saving
14421 per-window display elements.
14422 (Fset_window_configuration): Restore display margins, fringes,
14423 and scroll bar settings. This fixes a bug which caused display
14424 margins to be discarded when saving and restoring a window
14425 configuration.
14426 (save_window_save): Save display margins, fringes, and scroll bar
14427 settings. This fixes a bug which caused display margins to be
14428 discarded when saving and restoring a window configuration.
14429 (Fset_window_margins): Do nothing if display margins are not
14430 really changed. Otherwise, call adjust_window_margins to ensure
14431 the text area doesn't get too narrow. This fixes a bug which
14432 could cause Emacs to trap if setting display margins wider than
14433 the width of the window.
14434 (Fset_window_fringes): New defun to allow user to specifically set
14435 this window's fringe widths and position vs. display margins.
14436 (Fwindow_fringes): New defun to return window's actual fringe settings.
14437 (Fset_window_scroll_bars): New defun to allow user to specifically
14438 set this window's scroll bar width and position.
14439 (Fwindow_scroll_bars): New defun to return window's actual scroll
14440 bar settings.
14441 (compare_window_configurations): Also compare display margins,
14442 fringes, and scroll bar settings.
14443 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
14444
14445 * xdisp.c: Make (many) trivial substitutions for renamed and
14446 new macros in dispextern.h, frame.h and window.h.
14447 (window_box_width): Adapt to per-window fringes and scroll bars,
14448 and new fringe vs. display margin position. Note that returned
14449 value is no longer guaranteed to be a whole multiple of the frame
14450 column width, since per-window fringes may now be any width.
14451 (window_box_left_offset): New function like window_box_left, but
14452 value is relative to left border of window (rather than frame).
14453 (window_box_right_offset): New function like window_box_right,
14454 but value is relative to left border of window.
14455 (window_box_left): Adapt to per-window fringes and scroll bars,
14456 and new fringe vs. display margin position. Simplify by using
14457 WINDOW_LEFT_EDGE_X and window_box_left_offset.
14458 (window_box): Allow null args for unnecessary return values;
14459 change/simplify relevant callers.
14460 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
14461 and new fringe vs. display margin position.
14462 Use window_box_left_offset and window_box_right_offset
14463 (get_glyph_string_clip_rect): Adapt to per-window fringes and
14464 scroll bars, and new fringe vs. display margin position.
14465 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
14466 (draw_fringe_bitmap): Rework to handle per-window fringes and new
14467 fringe vs. display margin position.
14468 (hscroll_window_tree): Use window_box_width instead of window_box.
14469 (redisplay_window): Adapt to per-window scroll bars.
14470 (draw_glyphs): Rework to handle per-window fringes and scroll
14471 bars, and new fringe vs. display margin position.
14472 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
14473 (x_clear_end_of_line): Adapt to per-window fringes and scroll
14474 bars, and new fringe vs. display margin position. Fix bug which
14475 increased total width of full_width rows by width of scroll bars
14476 although window's total width already includes that.
14477 (x_fix_overlapping_area): Simplify using window_box_left_offset.
14478 (expose_area): Simplify using window_box_left_offset.
14479 (x_draw_vertical_border): Handle per-window scroll bar settings,
14480 mixing windows with left, right and no scroll bars.
14481
14482 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
14483 where it's used in x_list_fonts (for clarity).
14484 (frame_update_line_height): Remove unused function; functionality
14485 is now done directly when setting the default font in x_set_font.
14486
14487 * xfns.c: Make (many) trivial substitutions for renamed and
14488 new macros in dispextern.h, frame.h and window.h.
14489
14490 * xmenu.c: Make (some) trivial substitutions for renamed and
14491 new macros in dispextern.h, frame.h and window.h.
14492
14493 * xterm.h (struct x_output): Move members left_pos, top_pos,
14494 border_width, pixel_height, pixel_width, line_height,
14495 internal_border_width, vertical_scroll_bar_extra,
14496 left_fringe_width, right_fringe_width, fringe_cols,
14497 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14498 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14499 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14500 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14501 (PIXEL_WIDTH, PIXEL_HEIGHT)
14502 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14503 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14504 frame.h and renamed [see frame.h changes].
14505 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14506 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14507 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14508 and renamed [see frame.h changes].
14509
14510 * xterm.c: Make (several) trivial substitutions for renamed and
14511 new macros in dispextern.h, frame.h and window.h.
14512 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14513 (scroll_run): Adapt to new fringe position.
14514 (glyph_rect): Use window coordinates returned from
14515 window_from_coordinates rather than frame_to_window_pixel_xy.
14516 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14517 scroll-bars.
14518 (handle_one_xevent): Simplify a USE_GTK conditional.
14519 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14520 (fringes are now inside margins, i.e. always in the clipping area).
14521 All callers changed.
14522 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14523 directly, then call compute_fringe_widths. Don't call
14524 frame_update_line_height.
14525
14526 * w32term.h (struct w32_output): Move members left_pos, top_pos,
14527 border_width, pixel_height, pixel_width, line_height,
14528 internal_border_width, vertical_scroll_bar_extra,
14529 left_fringe_width, right_fringe_width, fringe_cols,
14530 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14531 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14532 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14533 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14534 (PIXEL_WIDTH, PIXEL_HEIGHT)
14535 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14536 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14537 frame.h and renamed [see frame.h changes].
14538 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14539 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14540 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14541 and renamed [see frame.h changes].
14542
14543 * w32term.c: Make (several) trivial substitutions for renamed and
14544 new macros in dispextern.h, frame.h and window.h.
14545 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14546 (glyph_rect): Use window coordinates returned from
14547 window_from_coordinates rather than frame_to_window_pixel_xy.
14548 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14549 scroll-bars.
14550 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
14551 (fringes are now inside margins, i.e. always in the clipping area).
14552 All callers changed.
14553 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14554 directly, then call compute_fringe_widths. Don't call
14555 frame_update_line_height.
14556
14557 * w32console.c: Make (few) trivial substitutions for renamed and
14558 new macros in dispextern.h, frame.h and window.h.
14559
14560 * w32fns.c: Make (many) trivial substitutions for renamed and
14561 new macros in dispextern.h, frame.h and window.h.
14562
14563 * w32menu.c: Make (few) trivial substitutions for renamed and
14564 new macros in dispextern.h, frame.h and window.h.
14565
14566 * macterm.h (struct mac_output): Move members left_pos, top_pos,
14567 border_width, pixel_height, pixel_width, line_height,
14568 internal_border_width, vertical_scroll_bar_extra,
14569 left_fringe_width, right_fringe_width, fringe_cols,
14570 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14571 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
14572 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14573 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14574 (PIXEL_WIDTH, PIXEL_HEIGHT)
14575 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14576 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14577 frame.h and renamed [see frame.h changes].
14578 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14579 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14580 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14581 and renamed [see frame.h changes].
14582
14583 * macterm.c: Make (several) trivial substitutions for renamed and
14584 new macros in dispextern.h, frame.h and window.h.
14585 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14586 (glyph_rect): Use window coordinates returned from
14587 window_from_coordinates rather than frame_to_window_pixel_xy.
14588 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14589 scroll-bars.
14590 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14591 (fringes are now inside margins, i.e. always in the clipping area).
14592 All callers changed.
14593 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14594 directly, then call compute_fringe_widths. Don't call
14595 frame_update_line_height.
14596
14597 * macfns.c: Make (several) trivial substitutions for renamed and
14598 new macros in dispextern.h, frame.h and window.h.
14599 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
14600
14601 * macmenu.c: Make (few) trivial substitutions for renamed and
14602 new macros in dispextern.h, frame.h and window.h.
14603
14604 * msdos.h (struct x_output): Remove members left_pos, top_pos,
14605 and line_height, and use corresponding new members in struct
14606 frame. All uses changed.
14607 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
14608 superseeded by corresponding macros in frame.h.
14609
14610 * msdos.c: Make (several) trivial substitutions for renamed and
14611 new macros in dispextern.h, frame.h and window.h.
14612 (IT_note_mouse_highlight): Use updated window coordinates returned
14613 by window_from_coordinates, rather than adjusting them locally.
14614 (internal_terminal_init): No need to initialize line_height here;
14615 it now defaults to 1.
14616
14617 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
14618
14619 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
14620 dropping `down' events.
14621
14622 2003-05-24 Andreas Schwab <schwab@suse.de>
14623
14624 * coding.c (find_safe_codings): Fix last change.
14625
14626 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
14627
14628 * xfns.c (x_window): Fix typo from 2003-05-21 change.
14629
14630 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
14631
14632 * xdisp.c (display_mode_element): Increase max depth.
14633 Simplify the error handling code. Use a different error string
14634 for the case where we hit the depth limit.
14635
14636 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
14637
14638 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
14639
14640 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
14641
14642 * intervals.c (get_local_map): Don't get char-property of previous
14643 point any more: get_pos_property already does it and better.
14644
14645 2003-05-21 Dave Love <fx@gnu.org>
14646
14647 [Merged from unicode branch.]
14648
14649 * xfns.c (x_window, x_window): Use use_xim.
14650
14651 * xterm.c (use_xim): Initialize.
14652 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14653 (x_term_init): Maybe set use_xim.
14654
14655 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14656
14657 2003-05-21 Jason Rumney <jasonr@gnu.org>
14658
14659 * unexw32.c (_start): Remove _fmode initialization.
14660
14661 * emacs.c (main) [WINDOWSNT]: Move it here.
14662
14663 2003-05-20 Dave Love <fx@gnu.org>
14664
14665 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
14666
14667 2003-05-19 Richard M. Stallman <rms@gnu.org>
14668
14669 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
14670 as value for QCfont attribute.
14671 (realize_default_face): lface should already exist; crash if not.
14672 Specify 0 for FORCE_P when calling set_lface_from_font_name.
14673
14674 * frame.c (Fignore_event): Doc fix.
14675
14676 2003-05-19 Kenichi Handa <handa@m17n.org>
14677
14678 * coding.c (decode_coding_string): Handle post-read-conversion
14679 even if the coding doesn't require decoding.
14680
14681 2003-05-18 Richard M. Stallman <rms@gnu.org>
14682
14683 * callproc.c (Fcall_process_region): Doc fix.
14684
14685 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14686
14687 * lread.c (Fload): Print a message if package is obsolete.
14688
14689 * window.c (Fselect_window): Add optional `norecord' arg.
14690 (select_window_1): Fold into Fselect_window.
14691 (select_window_norecord): New function.
14692 (temp_output_buffer_show): Use it. Preserve current buffer.
14693
14694 * window.h (Fselect_window): Update declaration.
14695
14696 * window.c (delete_window, Fother_window, Fset_window_configuration):
14697 * minibuf.c (read_minibuf):
14698 * macterm.c (x_new_focus_frame):
14699 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
14700 * callint.c (Fcall_interactively):
14701 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
14702
14703 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
14704
14705 2003-05-17 David Kastrup <dak@gnu.org>
14706
14707 * process.c (read_process_output): Back out change from 2003-03-09.
14708
14709 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14710
14711 * editfns.c (get_pos_property): Don't assume that `object' = nil.
14712
14713 * textprop.c (text_property_stickiness): New arg `buffer'.
14714
14715 * intervals.h (text_property_stickiness): New arg `buffer'.
14716 (get_pos_property): Declare.
14717
14718 * intervals.c (get_local_map): Use get_pos_property, to obey
14719 stickiness and empty overlays.
14720 (create_root_interval, graft_intervals_into_buffer): Use BEG.
14721 (merge_properties, intervals_equal, merge_properties_sticky):
14722 Use XCAR, XCDR.
14723 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
14724
14725 2003-05-17 Richard M. Stallman <rms@gnu.org>
14726
14727 * minibuf.c (read_minibuf): If buffer is empty, record the default
14728 in the history.
14729 (Fminibuffer_complete_word): When deleting the overlap, take account
14730 of its real position.
14731
14732 * fns.c (map_char_table): Fix previous change.
14733
14734 * syntax.c (find_defun_start):
14735 When open_paren_in_column_0_is_defun_start,
14736 return beginning of buffer.
14737
14738 * lisp.h (map_char_table): Declare added arg.
14739
14740 * fns.c (map_char_table): New arg TABLE gets the master table.
14741 All calls changed.
14742 Process default and inheritance, resorting to Faref if necessary.
14743
14744 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
14745 (Faccessible_keymaps): Pass new arg to map_char_table.
14746
14747 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
14748
14749 * casetab.c (set_case_table): Pass new arg to map_char_table.
14750
14751 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
14752
14753 * lisp.h (specbinding_func): New typedef.
14754 (struct specbinding): Use specbinding_func, to put the `volatile'
14755 in the right place.
14756
14757 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
14758 to avoid GCC warning.
14759
14760 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
14761
14762 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
14763
14764 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
14765
14766 * keyboard.c (apply_modifiers): Don't fill the other cache.
14767
14768 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
14769
14770 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
14771
14772 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
14773 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
14774 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
14775 (Fset_window_configuration, Fcurrent_window_configuration)
14776 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
14777 (Fpos_visible_in_window_p, mark_window_cursors_off)
14778 (window_internal_height, window_internal_width, Frecenter)
14779 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
14780 (replace_buffer_in_all_windows, init_window_once, init_window)
14781 (syms_of_window, keys_of_window): Move from lisp.h.
14782 * lisp.h: Move window.c declarations to window.h.
14783
14784 * bytecode.c: Include window.h.
14785 * emacs.c: Include window.h.
14786
14787 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
14788 (keyremap): Add `parent' field.
14789 (keyremap_step): Use it. Remove `parent' argument.
14790 (read_key_sequence): Setup and use the new `parent' field.
14791
14792 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
14793
14794 * keyboard.c (adjust_point_for_property): Ensure termination.
14795
14796 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
14797
14798 * keyboard.c (follow_key): Remove dead variable `did_meta'.
14799 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
14800 duplicated handling of function-key-map and key-translation-map
14801 in read_key_sequence.
14802 (read_key_sequence): Use them.
14803
14804 * keyboard.c (adjust_point_for_property): Try harder to move point
14805 to the non-sticky end of an invisible property.
14806
14807 * xdisp.c (single_display_prop_intangible_p): Make `space' display
14808 property intangible as well.
14809
14810 2003-05-10 Andreas Schwab <schwab@suse.de>
14811
14812 * xmenu.c (single_menu_item): Change last parameter to void* to
14813 avoid warning.
14814
14815 2003-05-09 Richard M. Stallman <rms@gnu.org>
14816
14817 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
14818 Bind Qinhibit_modification_hooks to t so there will be no GC.
14819 Rename local `tem' to `save_deactivate_mark'.
14820
14821 * eval.c (specpdl_ptr): Declare volatile.
14822 (unbind_to): Copy the whole binding and decrement specpdl_ptr
14823 before doing the work of unbinding it.
14824
14825 * lisp.h (struct specbinding): Declare elements volatile.
14826 (specpdl_ptr): Declare volatile.
14827
14828 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
14829
14830 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
14831 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
14832
14833 2003-05-08 Dave Love <fx@gnu.org>
14834
14835 * coding.c (Vlast_coding_system_used): Doc fix.
14836
14837 2003-05-07 Jason Rumney <jasonr@gnu.org>
14838
14839 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
14840 when system does not support them.
14841
14842 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
14843
14844 * fileio.c (Qwrite_region_annotate_functions): New var.
14845 (build_annotations): Use it to process the global part of the hook.
14846 (syms_of_fileio): Init and staticpro it.
14847
14848 * keyboard.c (safe_run_hooks_error): Display a message instead of
14849 silently ignoring the error.
14850
14851 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
14852
14853 * keyboard.c (input_available_signal): Mark static.
14854 (menu_bar_items): Use map_keymap.
14855 (menu_bar_one_keymap): Remove.
14856 (menu_bar_item): Adjust arglist (for use in map_keymap).
14857 Properly hide a second binding when not both are keymaps.
14858
14859 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
14860 (single_keymap_panes): Use it and map_keymap.
14861 (single_menu_item): Use skp as well.
14862
14863 * keymap.h (map_keymap_function_t): New type.
14864 (map_keymap): Declare.
14865
14866 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
14867 (map_keymap_call, Fmap_keymap): New functions.
14868 (syms_of_keymap): Defsubr map-keymap.
14869
14870 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14871
14872 * gtkutil.c (create_dialog, make_widget_for_menu_item)
14873 (make_menu_item, create_menus, xg_update_menu_item): Don't call
14874 ..._with_mnemonic functions for menu items.
14875
14876 2003-05-01 Kenichi Handa <handa@m17n.org>
14877
14878 * coding.c (coding_system_accept_latin_extra_p): Delete this
14879 function.
14880 (find_safe_codings): Pay attention to
14881 the property tranlsation-table-for-encode of each codings.
14882 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
14883
14884 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
14885
14886 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
14887
14888 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
14889
14890 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
14891
14892 * lisp.h (CHECK): Wrap args in parenthesis.
14893 (specbind): Fix doc: symbol = Qnil is not supported any more.
14894
14895 * bytecode.c (Fbyte_code) <unwind-protect>:
14896 Use Fprogn rather than 0 and Qnil.
14897
14898 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
14899 `double', and `triple' modifiers as well.
14900
14901 2003-04-30 Richard M. Stallman <rms@gnu.org>
14902
14903 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
14904
14905 * alloc.c (abort_on_gc): New variable.
14906 (Fgarbage_collect): Abort if abort_on_gc is set.
14907
14908 * lisp.h (abort_on_gc): Add decl.
14909
14910 * eval.c (Fsignal): Clear abort_on_gc.
14911
14912 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
14913 Reinit FORMAT_START and END before second scan.
14914
14915 * xdisp.c (move_it_vertically_backward): Do the final big else
14916 even if nlines is 0.
14917
14918 * xdisp.c (redisplay_internal): Finish the per-frame loop
14919 even if redisplay is suspended by input.
14920
14921 2003-04-24 Andrew Choi <akochoi@shaw.ca>
14922
14923 * macterm.c (x_list_fonts): Return all fonts that match if
14924 maxnames = -1.
14925
14926 2003-04-25 Kenichi Handa <handa@m17n.org>
14927
14928 * syntax.c (skip_chars): Fix previous change.
14929
14930 2003-04-24 Kenichi Handa <handa@m17n.org>
14931
14932 * syntax.c (skip_chars): Make the code faster by using the common
14933 technique of *p, *stop, and *endp.
14934
14935 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14936
14937 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
14938 tool_bar_items so GTK tool bar expose callback does not access items
14939 being updated.
14940
14941 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
14942
14943 * eval.c (Fapply): Undo last change and add a comment about why.
14944
14945 2003-04-18 Miles Bader <miles@gnu.org>
14946
14947 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
14948 pickier PARSE_MULTIBYTE_SEQ.
14949
14950 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
14951
14952 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
14953 Use XCDR, XCAR, CONSP.
14954 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
14955 (Fapply): Remove unnecessary GCPRO.
14956
14957 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
14958
14959 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
14960
14961 * buffer.h: Don't hardcode BEG==1.
14962
14963 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
14964
14965 2003-04-16 Richard M. Stallman <rms@gnu.org>
14966
14967 * xdisp.c (try_window, try_window_reusing_current_matrix):
14968 When at end of window, set window_end_pos to Z-ZV.
14969
14970 * buffer.c (Foverlay_recenter): Doc fix.
14971
14972 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
14973
14974 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
14975
14976 2003-04-14 Andrew Choi <akochoi@shaw.ca>
14977
14978 * macterm.c (mac_check_for_quit_char): Don't check more often than
14979 once a second.
14980
14981 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
14982
14983 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
14984 specially, so that they can't hide an implicit switch-frame event.
14985 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
14986 (head_table): Use switch-frame as event_kind for select-window.
14987 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
14988
14989 * editfns.c (Fformat): Lisp_Object/int mixup.
14990 (format2): Remove unused var numargs.
14991
14992 2003-04-11 Kenichi Handa <handa@m17n.org>
14993
14994 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
14995 (Qafter_insert_file_set_coding): New variable.
14996 (syms_of_fileio): Initialize and staticpro it. Delete declaration
14997 for after-insert-file-adjust-coding-function.
14998 (Finsert_file_contents): Call Qafter_insert_file_set_coding
14999 instead of Vafter_insert_file_adjust_coding_function.
15000
15001 2003-04-11 Kenichi Handa <handa@m17n.org>
15002
15003 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
15004
15005 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
15006 string. Callers changed.
15007
15008 2003-04-10 Kenichi Handa <handa@m17n.org>
15009
15010 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
15011 (syms_of_fileio): Declare it as a lisp variable.
15012 (Finsert_file_contents):
15013 Call Vafter_insert_file_adjust_coding_function before calling
15014 decode-format.
15015
15016 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15017
15018 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
15019 get GtkAdjustment as widget now is a GtkRange.
15020
15021 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
15022 GtkRange to avoid memory leak.
15023
15024 2003-04-09 Kenichi Handa <handa@m17n.org>
15025
15026 * xfaces.c (Vface_font_rescale_alist): New variable.
15027 (struct font_name): New member rescale_ratio.
15028 (font_rescale_ratio): New function.
15029 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
15030 (better_font_p): On comparing point sized, pay attention to
15031 recale_ratio member of fonts.
15032 (build_scalable_font_name): Reflect font->rescale_ratio in the
15033 font name.
15034 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15035
15036 * lread.c (read1): Before calling index, check if the 2nd
15037 arguemnt is in ASCII range.
15038
15039 2003-04-08 Richard M. Stallman <rms@gnu.org>
15040
15041 * fileio.c (Ffile_symlink_p): Doc fix.
15042
15043 * editfns.c (Fformat): Translate positions of text properties
15044 in the format string to apply them to the result.
15045
15046 * fileio.c (Finsert_file_contents): Doc fix.
15047 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
15048
15049 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
15050
15051 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
15052
15053 2003-04-08 Steven Tamm <steventamm@mac.com>
15054
15055 * mac.c (init_mac_osx_environment): Switch libexec and bin so
15056 that self-contained application finds libexec files.
15057
15058 2003-04-08 Kenichi Handa <handa@m17n.org>
15059
15060 * coding.c (code_convert_region_unwind):
15061 Set Vlast_coding_system_used to the argument.
15062 (code_convert_region): If post-read-conversion function changed
15063 the value of last-coding-sytem, keep the new value in
15064 coding->symbol so that it won't be overridden.
15065 (run_pre_post_conversion_on_str): Likewise.
15066 (coding_system_accept_latin_extra_p): New function.
15067 (find_safe_codings): Pay attention to characters registered in
15068 latin-extra-code-table.
15069
15070 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
15071
15072 * Makefile.in (md5.o): Add missing dependency info.
15073
15074 2003-04-06 Richard M. Stallman <rms@gnu.org>
15075
15076 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
15077
15078 * marker.c (verify_bytepos): New function.
15079
15080 * intervals.c (set_intervals_multibyte_1): When becoming
15081 multibyte, adjust right and left child sizes to a whole set of
15082 characters. If an interval gets zero total-length, delete it.
15083 If an interval consists of just its children, delete one of them.
15084
15085 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
15086 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
15087
15088 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
15089 All calls deleted.
15090 (lisp_malloc): Do the work here directly.
15091
15092 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
15093
15094 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
15095 char tables.
15096
15097 2003-04-04 Kenichi Handa <handa@m17n.org>
15098
15099 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
15100 destructively change "%S" to "%s".
15101
15102 2003-04-03 Miles Bader <miles@gnu.org>
15103
15104 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
15105 always set.
15106
15107 2003-04-01 Dave Love <fx@gnu.org>
15108
15109 * xfns.c (xpm_lookup_color): Grok "opaque".
15110
15111 2003-03-31 Andrew Choi <akochoi@shaw.ca>
15112
15113 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
15114 parent window ID.
15115
15116 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
15117
15118 * macterm.h (struct mac_output): Define x_pixels_diff and
15119 y_pixels_diff.
15120
15121 2003-03-31 Juanma Barranquero <lektu@terra.es>
15122
15123 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
15124 blockinput.h and files included from it.
15125
15126 2003-03-31 Kim F. Storm <storm@cua.dk>
15127
15128 The following changes consolidates the common code related to
15129 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
15130 files into frame.c.
15131
15132 * frame.c: Include blockinput.h.
15133 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
15134 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
15135 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
15136 related vars here.
15137 (struct frame_parm_table, frame_parms): New table for describing
15138 frame parameters and their associated Q-variable.
15139 The order of the parameters corresponds to the sequence of the
15140 frame_parm_handlers table in redisplay_interface.
15141 (x_fullscreen_move, x_set_frame_parameters)
15142 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
15143 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
15144 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15145 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
15146 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
15147 Generic functions for processing of frame parameters.
15148 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
15149 (display_x_get_resource, x_get_resource_string): Functions for
15150 generic access to X resources.
15151 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
15152 (x_default_parameter, Fx_parse_geometry): Functions for generic
15153 access to frame parameters.
15154 (x_figure_window_size): Generic calculation of frame size.
15155 Fixed to add space needed for tool bar. Also setup size_hint_flags.
15156 (syms_of_frame): Intern and staticpro frame parameter variables.
15157 Defvar_lisp Vx_resource_class and Vx_resource_name here.
15158 Defsubr Sx_get_resource and Sx_parse_geometry.
15159
15160 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
15161 parameter related vars defined in frame.c.
15162 (EMACS_CLASS): Define here.
15163 (enum FULLSCREEN_*): Define here.
15164 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
15165 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
15166 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
15167 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
15168 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
15169 (x_set_visibility, x_set_autoraise, x_set_autolower)
15170 (x_set_unsplittable, x_set_vertical_scroll_bars)
15171 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
15172 (x_figure_window_size): Add prototypes.
15173
15174 * dispextern.h (frame_parm_handler): New typedef.
15175 (struct redisplay_interface): New member frame_parm_handlers.
15176 (enum resource_types): Move declaration here.
15177 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
15178 (x_default_parameter): Add prototypes.
15179
15180 * window.c: Remove extern decl for frame parameter vars.
15181 (change_window_heights): New generic function;
15182 replaces x_change_window_heights. All users changed.
15183
15184 * window.h (change_window_heights): Add prototype.
15185
15186 * xfaces.c: Remove extern decl for frame parameter vars.
15187
15188 * xterm.h (EMACS_CLASS): Remove. Use generic define.
15189 (struct w32_display_info): Fix type of xrdb member.
15190 (enum FULLSCREEN_*): Remove.
15191 Remove prototypes for generic functions (in frame.h).
15192
15193 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15194 parameters now defined in frame.h and frame.c.
15195 (Vx_resource_name): Remove. Use generic var.
15196 (enum x_frame_parms): Remove (bogus, unused enum).
15197 (check_x_display_info): Make non-static (for frame.c).
15198 (struct x_frame_parm_table, x_frame_parms): Remove.
15199 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15200 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15201 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15202 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15203 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15204 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15205 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15206 Remove. Use generic functions instead.
15207 (enum resource_types): Remove.
15208 (x_set_scroll_bar_default_width): New global function (for frame.c).
15209 (Fx_create_frame): Depend on x_figure_window_size to add space for
15210 toolbar and setup size_hint_flags.
15211 (x_frame_parm_handlers): New table for redisplay_interface.
15212 (syms_of_xfns): Don't intern/staticpro removed vars.
15213
15214 * xterm.c: Remove unnecessary extern declarations.
15215 (x_fullscreen_adjust): Remove. Use generic instead.
15216 (x_redisplay_interface): Add x_frame_parm_handlers member.
15217
15218 * w32gui.h (XrmDatabase): New (dummy) typedef.
15219
15220 * w32term.h (EMACS_CLASS): Remove. Use generic define.
15221 (struct w32_display_info): Fix type of xrdb member.
15222 (enum FULLSCREEN_*): Remove.
15223 (x_fullscreen_adjust): Remove prototype.
15224
15225 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15226 parameters now defined in frame.h and frame.c.
15227 (Vx_resource_name): Remove. Use generic var.
15228 (enum x_frame_parms): Remove (bogus, unused enum).
15229 (check_x_display_info): Make non-static (for frame.c).
15230 (struct x_frame_parm_table, x_frame_parms): Remove.
15231 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15232 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15233 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15234 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15235 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15236 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15237 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15238 Remove. Use generic functions instead.
15239 (enum resource_types): Remove.
15240 (x_set_scroll_bar_default_width): New global function (for frame.c).
15241 (Fx_create_frame): Depend on x_figure_window_size to add space for
15242 toolbar and setup size_hint_flags.
15243 (w32_frame_parm_handlers): New table for redisplay_interface.
15244 (syms_of_w32fns): Don't intern/staticpro removed vars.
15245
15246 * w32term.c: Remove unnecessary extern declarations.
15247 (x_fullscreen_adjust): Remove. Use generic instead.
15248 (x_redisplay_interface): Add w32_frame_parm_handlers member.
15249
15250 * w32reg.c (x_get_string_resource): Use XrmDatabase.
15251
15252 * macgui.h (XrmDatabase): New (dummy) typedef.
15253
15254 * macterm.h (EMACS_CLASS): Remove.
15255 (struct mac_display_info): Add xrdb member.
15256 (struct mac_output): Add want_fullscreen member.
15257
15258 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15259 parameters now defined in frame.h and frame.c.
15260 (Vx_resource_name): Remove. Use generic var.
15261 (check_x_display_info): Make non-static (for frame.c).
15262 (struct x_frame_parm_table, x_frame_parms): Remove.
15263 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15264 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15265 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15266 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15267 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15268 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15269 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15270 Remove. Use generic functions instead.
15271 (enum resource_types): Remove.
15272 (x_set_scroll_bar_default_width): New global function (for frame.c).
15273 (mac_frame_parm_handlers): New table for redisplay_interface.
15274 (syms_of_macfns): Don't intern/staticpro removed vars.
15275
15276 * macterm.c: Remove unnecessary extern declarations.
15277 (x_redisplay_interface): Add mac_frame_parm_handlers member.
15278
15279 * Makefile.in (frame.o): Add dependency on blockinput.h and files
15280 included from it (atimer.h and systime.h).
15281
15282 2003-03-30 Andreas Schwab <schwab@suse.de>
15283
15284 * xdisp.c (x_insert_glyphs): Fix swapped width and height
15285 parameters for shift_glyphs_for_insert.
15286
15287 * macterm.c (x_redisplay_interface): Add missing entry for
15288 draw_vertical_window_border.
15289
15290 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
15291
15292 * fileio.c (Fexpand_file_name): In the no-handler case, after
15293 expanding, look again for a handler and invoke it. This is needed
15294 for filenames like "/foo/../user@host:/bar/../baz" -- the first
15295 expansion produces "/user@host:/bar/../baz" which needs to be
15296 expanded again for the finame result "/user@host:/baz".
15297
15298 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15299
15300 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
15301 of area to be redrawn for better performance.
15302
15303 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
15304
15305 * xterm.c (take_vertical_position_into_account): Remove.
15306 (xt_action_hook): Call set_vertical_scroll_bar if needed.
15307 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
15308 (xm_scroll_callback, x_create_toolkit_scroll_bar)
15309 (x_set_toolkit_scroll_bar_thumb): Simplify.
15310 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
15311 (XTread_socket): Remove unused var.
15312 (x_make_frame_invisible): Replace goto with else.
15313
15314 * xdisp.c (set_vertical_scroll_bar): New fun.
15315 (redisplay_window): Use it.
15316
15317 2003-03-26 Richard M. Stallman <rms@gnu.org>
15318
15319 * xdisp.c (update_tool_bar): Recompute tool bar if
15320 update_mode_lines is set. Set w->update_mode_line
15321 only if the tool bar contents actually change.
15322 (update_menu_bar): Undo previous change.
15323
15324 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15325
15326 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
15327 (xg_frame_set_char_size): Calculate scroll bar width before frame
15328 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
15329 (xg_separator_p): Check for all documented separator types.
15330 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
15331 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
15332
15333 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
15334 so tool bar gets updated.
15335
15336 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
15337
15338 * data.c (store_symval_forwarding): Re-instate part of the code
15339 that was deleted with too much enthusiasm.
15340
15341 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
15342
15343 * data.c (store_symval_forwarding): Delete special read-only
15344 hack for type == -1, since we now use ->constant instead.
15345 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
15346
15347 * buffer.c (overlays_in): Declare static.
15348 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
15349 `constant' field rather than the variable's `type' field.
15350
15351 2003-03-24 Andrew Choi <akochoi@shaw.ca>
15352
15353 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
15354
15355 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
15356
15357 * fns.c [MAC_OSX]: Do not redefine vector.
15358
15359 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
15360
15361 * macgui.h: Remove definition of No_Cursor.
15362
15363 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
15364
15365 * xdisp.c: Define No_Cursor.
15366 (x_write_glyphs, notice_overwritten_cursor)
15367 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
15368 (note_mouse_highlight): Remove Mac-specific code.
15369 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
15370
15371 2003-03-24 John Paul Wallington <jpw@gnu.org>
15372
15373 * xdisp.c (redisplay_window): If mini window's buffer is not
15374 empty, then redisplay it like other windows.
15375
15376 2003-03-23 Kim F. Storm <storm@cua.dk>
15377
15378 * w32term.c (w32_draw_window_cursor): Fix last change.
15379
15380 2003-03-23 Kenichi Handa <handa@m17n.org>
15381
15382 * alloc.c (make_string_from_bytes, make_specified_string):
15383 Add `const' for the arg CONTENTS.
15384
15385 * lisp.h (make_string_from_bytes, make_specified_string):
15386 Prototypes adjusted.
15387
15388 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15389
15390 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
15391
15392 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
15393 (XG_SB_RANGE): New define.
15394
15395 * gtkutil.c (xg_fixed_handle_expose): New function.
15396 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
15397 expose events.
15398 (xg_update_scrollbar_pos): Take two more arguments, left and width
15399 of scroll bar including borders.
15400 Clear left and right part outside scroll bar separately as some
15401 themes have bars that are not an even number of pixels.
15402 Don't set reallocate_redraws, don't call
15403 gdk_window_process_all_updates.
15404 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
15405 so no need to change it. Calculate size and value with XG_SB_RANGE.
15406
15407 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
15408 Pass left and width of scroll bar including borders to
15409 xg_update_scrollbar_pos.
15410
15411 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
15412
15413 * Makefile.in: Make sure space precedes end-of-line backslashes.
15414
15415 2003-03-22 Kim F. Storm <storm@cua.dk>
15416
15417 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
15418 Add generic versions here. Remove system specific versions
15419 defined elsewhere.
15420
15421 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
15422 Add prototypes.
15423
15424 * xterm.h (STORE_NATIVE_RECT): New macro.
15425
15426 2003-03-21 Kim F. Storm <storm@cua.dk>
15427
15428 * xdisp.c (get_glyph_string_clip_rect):
15429 Use FRAME_INTERNAL_BORDER_WIDTH.
15430
15431 * dispextern.h (struct redisplay_interface): Add active_p
15432 argument to draw_window_cursor member. All uses changed.
15433
15434 2003-03-21 Kim F. Storm <storm@cua.dk>
15435
15436 The following changes consolidate code related to writing and
15437 inserting glyphs, exposing frame, the tool bar, the mouse face,
15438 the output cursor, and help echo from xterm.c, w32term.c and
15439 macterm.c into xdisp.c. It also generalizes the use of the
15440 window_part enum instead of using numeric values throughout.
15441
15442 * xdisp.c: Consolidate gui-independent code here.
15443 Include keymap.h.
15444 (Qhelp_echo): Import.
15445 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
15446 (help_echo_string, help_echo_window, help_echo_object)
15447 (previous_help_echo_string, help_echo_pos): Declare here.
15448 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
15449 (estimate_mode_line_height): Define here. Handle windowing
15450 systems directly (without using estimate_mode_line_height_hook).
15451 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
15452 (update_window_cursor, update_cursor_in_window_tree)
15453 (fast_find_position, fast_find_string_pos)
15454 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
15455 (expose_area, expose_line, expose_overlaps, expose_window)
15456 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
15457 declared static as they are only used locally in xdisp.c.
15458 (draw_glyphs): Rename from x_draw_glyphs and make static.
15459 (tool_bar_item_info, notice_overwritten_cursor): Make static.
15460 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15461 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
15462 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
15463 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15464 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
15465 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
15466 (note_mouse_highlight, x_clear_window_mouse_face)
15467 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
15468 (x_intersect_rectangles): New generic functions for use by xdisp.c
15469 and GUI front-ends.
15470 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
15471 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
15472
15473 * dispextern.h (Display_Info): Generic typedef for *_display_info.
15474 (NativeRectangle): Generic typedef for rectangle type.
15475 (enum window_part): Move here from window.c.
15476 (struct redisplay_interface): New members flush_display_optional,
15477 define_frame_cursor, clear_frame_area, draw_window_cursor,
15478 draw_vertical_window_border, shift_glyphs_for_insert.
15479 Rename member clear_mouse_face to clear_window_mouse_face.
15480 (estimate_mode_line_height_hook): Remove hook.
15481 (auto_raise_tool_bar_buttons_p): Don't declare extern.
15482 (tool_bar_item_info): Remove prototype.
15483 (help_echo_string, help_echo_window, help_echo_object)
15484 (previous_help_echo_string, help_echo_pos)
15485 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
15486 (x_stretch_cursor_p, output_cursor): Declare extern.
15487 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
15488 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
15489 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15490 (display_and_set_cursor, set_output_cursor, x_cursor_to)
15491 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
15492 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15493 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
15494 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
15495 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
15496 Add prototypes.
15497 (mode_line_string, marginal_area_string): Fix prototypes.
15498
15499 * window.c (enum window_part): Move to dispextern.h.
15500 (coordinates_in_window): Use enum window_part member names
15501 instead of numbers to describe return value.
15502 (struct check_window_data): Change part member to window_part.
15503 (check_window_containing): Return window_part unaltered.
15504 (window_from_coordinates): Change part arg from int to enum
15505 window_part. Allow part arg to be null. All users changed.
15506
15507 * window.h (window_from_coordinates): Fix prototype.
15508
15509 * term.c (estimate_mode_line_height): Move to xdisp.c.
15510
15511 * keyboard.c (make_lispy_event): Use enum window_part.
15512
15513 * dispnew.c (mode_line_string, marginal_area_string): Use enum
15514 window_part instead of int in arg list. Users changed.
15515
15516 * xterm.h (No_Cursor): Declare as None for X.
15517 (struct mac_output): Replace member cross_cursor by hand_cursor.
15518
15519 * xterm.c: Remove consolidated defines and code.
15520 (BETWEEN): Remove unused macro.
15521 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
15522 (x_define_frame_cursor, x_clear_frame_area)
15523 (x_draw_window_cursor): New X-specific functions for RIF.
15524 (x_redisplay_interface): Add new members.
15525
15526 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
15527
15528 * w32term.h (struct w32_output): Remove cross_cursor member.
15529
15530 * w32term.c: Remove consolidated defines and code.
15531 (BETWEEN): Remove unused macro.
15532 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
15533 (w32_define_frame_cursor, w32_clear_frame_area)
15534 (w32_draw_window_cursor): New W32-specific functions for RIF.
15535 (w32_redisplay_interface): Add new members.
15536
15537 * w32gui.h (No_Cursor): Define as 0 for W32.
15538 (XRectangle): Add X compatible rectangle type.
15539 (NativeRectangle): Declare as RECT for W32.
15540 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15541
15542 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
15543
15544 * w32console.c: Remove consolidated defines and code.
15545
15546 * msdos.h (Display_Info): Add generic typedef.
15547
15548 * msdos.c: Remove consolidated defines and code.
15549 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
15550
15551 * macterm.h (struct mac_output): Replace member cross_cursor by
15552 hand_cursor.
15553 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
15554
15555 * macterm.c: Remove consolidated defines and code.
15556 (BETWEEN): Remove unused macro.
15557 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
15558 (mac_define_frame_cursor, mac_clear_frame_area)
15559 (mac_draw_window_cursor): New Mac-specific functions for RIF.
15560 (x_redisplay_interface): Add new members.
15561
15562 * macgui.h (No_Cursor): Define as 0 for Mac.
15563 (XRectangle): Add X compatible rectangle type.
15564 (NativeRectangle): Declare as Rect for Mac.
15565 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15566
15567 * macfns.c (x_set_mouse_color): Setup hand_cursor.
15568 (x_set_cursor_color): Use x_display_and_set_cursor.
15569
15570 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
15571 included from it. Add dependency on keymap.h.
15572
15573 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
15574
15575 2003-03-21 Kenichi Handa <handa@m17n.org>
15576
15577 * fileio.c (Fexpand_file_name): Fix previous change.
15578
15579 2003-03-19 Kenichi Handa <handa@m17n.org>
15580
15581 * fileio.c (Ffile_name_directory): Reconstruct file name by
15582 make_specified_string.
15583 (Ffile_name_nondirectory, Ffile_name_as_directory)
15584 (Fdirectory_file_name, Fexpand_file_name)
15585 (Fsubstitute_in_file_name): Likewise.
15586 (Fread_file_name): Compare decoded homedir with DIR and
15587 DEFAULT_FILENAME.
15588
15589 * alloc.c (make_specified_string): If NCHARS is negative, count
15590 the number of characters.
15591
15592 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15593
15594 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
15595 all widgets.
15596
15597 * gtkutil.h: Removed xg_ignore_next_thumb.
15598
15599 2003-03-18 Kenichi Handa <handa@m17n.org>
15600
15601 * coding.c (Vchar_coding_system_table): Remove this variable.
15602 (Vcoding_system_safe_chars): New variable.
15603 (intersection): Remove this function.
15604 (find_safe_codings): Don't use Vchar_coding_system_table, but try
15605 all codings in SAFE_CODINGS.
15606 (Ffind_coding_systems_region_internal): Adjust for the change of
15607 find_safe_codings. Get generic coding systems from
15608 Vcoding_system_safe_chars.
15609 (Fdefine_coding_system_internal): New function.
15610 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
15611 Initialize and staticpro Vcoding_system_safe_chars.
15612
15613 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15614
15615 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
15616 equal old values before updating.
15617
15618 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
15619
15620 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
15621
15622 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15623
15624 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
15625 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
15626 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
15627 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
15628 (xg_create_scroll_bar): Pass bar to button event callback.
15629 (xg_find_top_left_in_fixed): New function.
15630 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
15631 whole scroll bar area. Get old position with
15632 xg_find_top_left_in_fixed, calculate and only clear needed areas.
15633 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
15634 dragging is in progress. Calculate whole as for Motif.
15635 Remove code that saved last values. Call gtk_range functions to
15636 set scroll bar sizes.
15637
15638 * gtkutil.h: Removed xg_ignore_next_thumb.
15639
15640 2003-03-17 Juanma Barranquero <lektu@terra.es>
15641
15642 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
15643 and files included from it.
15644
15645 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
15646
15647 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
15648 multiple occurrences of the same keymap under different prefixes.
15649 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
15650
15651 2003-03-16 Jason Rumney <jasonr@gnu.org>
15652
15653 * w32gui.h: Use HDC for Display.
15654
15655 * w32term.c (w32_encode_char): Prevent double-byte chars from
15656 crashing Emacs.
15657
15658 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
15659 as binary.
15660
15661 2003-03-16 Juanma Barranquero <lektu@terra.es>
15662
15663 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
15664
15665 2003-03-16 Kim F. Storm <storm@cua.dk>
15666
15667 The following changes consolidate some of the gui-independent
15668 parts of the processing and drawing of "glyph strings" from
15669 xterm.c, w32term.c, and macterm.c into xdisp.c.
15670
15671 * dispextern.h (struct glyph): Reduce face_id member from 22 to
15672 21 bits (this reduces number of faces from 4M to 2M).
15673 Replace W32 specific w32_font_type member (2 bits) by generic
15674 font_type member (3 bits) for portability.
15675 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
15676 (enum draw_glyphs_face): Define here.
15677 (struct glyph_string): Define here. Merge W32 and X versions.
15678 (struct redisplay_interface): New members per_char_metric,
15679 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
15680 (VCENTER_BASELINE_OFFSET): Define here.
15681 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
15682 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
15683
15684 * xdisp.c: Consolidate gui-independent "glyph string" code here.
15685 (dump_glyph_string): Moved here.
15686 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
15687 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
15688 (fill_composite_glyph_string, fill_glyph_string)
15689 (fill_image_glyph_string, fill_stretch_glyph_string)
15690 (left_overwritten, left_overwriting, right_overwritten)
15691 (right_overwriting, get_char_face_and_encoding)
15692 (set_glyph_string_background_width, compute_overhangs_and_x)
15693 (append_glyph, append_composite_glyph, produce_image_glyph)
15694 (take_vertical_position_into_account, append_stretch_glyph)
15695 (produce_stretch_glyph): New generic functions (based on X version).
15696 Call platform specific functions through rif.
15697 (INIT_GLYPH_STRING): New macro, hides W32 details.
15698 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
15699 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
15700 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
15701 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
15702 (notice_overwritten_cursor):
15703 Generic functions exported to platform modules. Users changed.
15704
15705 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
15706 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
15707 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
15708 New macros for consolidated code.
15709
15710 * xterm.c: Remove consolidated defines and code.
15711 (x_per_char_metric, x_encode_char)
15712 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
15713 (x_redisplay_interface): Add new members.
15714
15715 * w32gui.h (Display): Add dummy typedef for consolidation.
15716 (XChar2b): Define alias for wchar_t for consolidation.
15717 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15718
15719 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
15720 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
15721 New macros for consolidation.
15722
15723 * w32term.c: Remove consolidated defines and code.
15724 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
15725 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
15726 (w32_per_char_metric): Change font_type arg to int for RIF.
15727 (w32_encode_char): Return int according to RIF requirements.
15728 (w32_compute_glyph_string_overhangs): Adapt to RIF.
15729 (w32_get_glyph_overhangs): New function for RIF. Uses generic
15730 x_get_glyph_overhangs.
15731 (w32_redisplay_interface): Add new members.
15732
15733 * macgui.h (XChar2b): Move typedef here for consolidation.
15734 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15735
15736 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
15737 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
15738 consolidation.
15739
15740 * macterm.c: Remove consolidated defines and code.
15741 (mac_per_char_metric): New function for RIF.
15742 (mac_encode_char): Adapt to new RIF requirements.
15743 (mac_compute_glyph_string_overhangs): Adapt for RIF.
15744 (x_redisplay_interface): Add new members.
15745
15746 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
15747
15748 * keymap.c (Vmenu_events): New var.
15749 (syms_of_keymap): Initialize it.
15750 (where_is_internal): Check more carefully what is a menu event.
15751
15752 2003-03-14 Richard M. Stallman <rms@gnu.org>
15753
15754 * lread.c (read1): After #!, exit loop on eof.
15755
15756 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15757
15758 * gtkutil.h: Add declaration for xg_frame_cleared.
15759
15760 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
15761
15762 * gtkutil.c (struct xg_last_sb_pos): New structure.
15763 (handle_fixed_child): New function.
15764 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
15765 and force a redraw on them.
15766 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
15767 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
15768 so we can avoid unneeded redraws.
15769 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
15770 and force a redraw on the scroll bar.
15771 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
15772 if xg_last_sb_pos shows the positions are up to date.
15773 (xg_frame_cleared): New function.
15774
15775 2003-03-13 Kenichi Handa <handa@m17n.org>
15776
15777 * coding.c (Fdetect_coding_region): Fix docstring.
15778 (Fdetect_coding_string): Fix docstring.
15779
15780 2003-03-13 Andreas Schwab <schwab@suse.de>
15781
15782 * gtkutil.c: Add prototype for create_menus.
15783
15784 * data.c (long_to_cons): Fix type of top.
15785
15786 * xselect.c (selection_data_to_lisp_data): Use int instead of
15787 long for an integer of size 4.
15788
15789 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
15790 (xg_tool_bar_help_callback): Likewise.
15791
15792 2003-03-12 Andreas Schwab <schwab@suse.de>
15793
15794 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
15795
15796 2003-03-12 Kim F. Storm <storm@cua.dk>
15797
15798 The following changes consolidate the fringe handling from
15799 xterm.c, w32term.c, and macterm.c into xdisp.c.
15800
15801 * xdisp.c: Consolidate fringe handling code here.
15802 (left_bits, right_bits, continued_bits, continuation_bits)
15803 (ov_bits, zv_bits): Define fringe bitmaps.
15804 (fringe_bitmaps): New array holding fringe bitmaps.
15805 (draw_fringe_bitmap): Draw a specific bitmap; call display
15806 specific drawing routine via rif->draw_fringe_bitmap.
15807 (draw_row_fringe_bitmaps): Generic replacement for
15808 x_draw_row_fringe_bitmaps; all callers changed.
15809 (compute_fringe_widths): Generic replacement for
15810 x_compute_fringe_widths; all callers changed.
15811
15812 * dispextern.h (enum fringe_bitmap_type): Define here.
15813 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
15814 (fringe_bitmaps): Declare extern.
15815 (struct redisplay_interface): New member draw_fringe_bitmap.
15816 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
15817
15818 * xterm.c: Remove generic fringe code.
15819 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15820 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15821
15822 * w32term.c: Remove generic fringe code.
15823 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
15824 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
15825
15826 * macterm.c: Remove generic fringe code.
15827 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
15828 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
15829
15830 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
15831
15832 * print.c (Fprin1_to_string): Return unibyte string if possible.
15833
15834 2003-03-09 David Kastrup <dak@gnu.org>
15835
15836 * process.c (read_process_output): We have allocated enough space
15837 for readmax and carryover, so actually use the alloted space.
15838
15839 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15840
15841 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
15842 toolkit scrollbar click.
15843
15844 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
15845 for USE_GTK.
15846 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
15847 also.
15848 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
15849 scrollbar and control is pressed, call x_scroll_bar_handle_click.
15850
15851 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
15852
15853 * gtkutil.c (xg_get_scroll_id_for_window): New function.
15854 (xg_tool_bar_item_expose_callback): New function.
15855 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
15856 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
15857 on the tool bar widget.
15858 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
15859 to expose on the tool bar item widgets.
15860
15861 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15862
15863 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
15864 struct image* when deciding to update (struct image* may have been
15865 deleted from the image cache).
15866
15867 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
15868 the event isn't for a frame (i.e. for dialogs).
15869
15870 2003-03-07 Kenichi Handa <handa@m17n.org>
15871
15872 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
15873 composition components reaches the limit, terminate composing.
15874 (COMPOSITION_OK): New macro.
15875 (detect_coding_iso2022): Use it if an escape sequence for
15876 composition is found.
15877 (coding_restore_composition): Adjust the number of composition
15878 components if it is not sane.
15879
15880 2003-03-06 Juanma Barranquero <lektu@terra.es>
15881
15882 * w32term.h (struct w32_display_info): Add xrdb member to support
15883 passing resources via -xrm on Windows.
15884
15885 * w32term.c (w32_make_rdb): New function.
15886 (w32_term_init): Use it to initialize xrdb member of w32_display_info
15887 struct. Delete leftover code.
15888
15889 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
15890 for resources passed on the command line.
15891
15892 * w32reg.c (w32_get_rdb_resource): New function.
15893 (x_get_string_resource): Use it, so resources passed with -xrm
15894 supercede the ones in the registry.
15895
15896 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15897
15898 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
15899 instead of x_top_window_to_frame.
15900
15901 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15902
15903 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
15904 when restarting Emacs.
15905
15906 2003-03-03 Richard M. Stallman <rms@gnu.org>
15907
15908 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
15909 to run kill-buffer-query-functions.
15910 (Qkill_buffer_query_functions): New var.
15911 (syms_of_buffer): Init and staticpro it.
15912
15913 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15914
15915 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
15916
15917 2003-02-25 Kim F. Storm <storm@cua.dk>
15918
15919 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
15920 If centering point failed to make whole line visible and vscroll
15921 is non-zero, disable vscroll and try centering point again.
15922
15923 * lread.c (read1): Accept `single space' syntax like (? x).
15924
15925 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15926
15927 * keyboard.c (cancel_hourglass_unwind): Surround with
15928 #ifdef HAVE_X_WINDOWS
15929
15930 2003-02-25 Kenichi Handa <handa@m17n.org>
15931
15932 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
15933 process only when "subprocesses" is defined.
15934
15935 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
15936
15937 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
15938
15939 2003-02-24 Juanma Barranquero <lektu@terra.es>
15940
15941 * callint.c (fix_command): Declare as static void and move before
15942 Fcall_interactively.
15943
15944 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
15945 (syms_of_xdisp): Don't initialize Qwhen.
15946
15947 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15948
15949 * keyboard.c (cancel_hourglass_unwind): New function.
15950 (command_loop_1): Cancel hourglass with unwind-protect.
15951
15952 2003-02-23 Richard M. Stallman <rms@gnu.org>
15953
15954 * callint.c (fix_command): New subroutine, from Fcall_interactively.
15955 Detect (when ... (region-beginning)) etc.
15956 (Fcall_interactively): Call fix_command.
15957 (Qif, Qwhen): New variables.
15958 (syms_of_callint): Init and staticpro them.
15959
15960 * regex.c (print_partial_compiled_pattern): Output to stderr.
15961
15962 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15963
15964 * dired.c (directory_files_internal): Don't expand directory.
15965 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
15966 instead. From Lars Hansen <larsh@math.ku.dk>.
15967
15968 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
15969
15970 * fns.c (string_to_multibyte): Remove unused var i.
15971 (Flanginfo): Fix int/Lisp_Object mixup.
15972 (void_call2): New fun.
15973 (Fmap_char_table): Use it in place of call2.
15974
15975 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
15976
15977 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
15978
15979 * keymap.c (copy_keymap_1): Make it static.
15980
15981 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
15982
15983 2003-02-22 David Ponce <david@dponce.com>
15984
15985 * lread.c (Fload): Don't check STRING_MULTIBYTE.
15986
15987 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15988
15989 * process.h: Removed subtty field from struct Lisp_Process.
15990
15991 * process.c (create_process): Remove setting of subtty.
15992 (emacs_get_tty_pgrp): New function.
15993 (Fprocess_running_child_p, process_send_signal):
15994 Call emacs_get_tty_pgrp instead of ioctl.
15995 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
15996
15997 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
15998
15999 * keymap.c (Fdefine_key): Doc fix.
16000
16001 2003-02-21 Juanma Barranquero <lektu@terra.es>
16002
16003 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
16004
16005 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
16006 POLLING_PROBLEM_IN_SELECT.
16007
16008 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
16009 Delete #undef of POLLING_PROBLEM_IN_SELECT.
16010
16011 * s/hpux10-20.h: New file.
16012
16013 * process.c (wait_reading_process_input):
16014 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
16015
16016 2003-02-20 Kenichi Handa <handa@m17n.org>
16017
16018 * fontset.c (check_fontset_name): If NAME is nil, return the
16019 default fontset.
16020 (override_font_info): New function.
16021 (Fset_fontset_font): Document that NAME nil means the default fontset.
16022 (Ffontset_info): If FONTSET is not the default fontset, merge
16023 FONTSET onto the copy of the default fontset, and work on that
16024 copy. Document that NAME nil means the default fontset.
16025 (Ffontset_font): Document that NAME nil means the default fontset.
16026
16027 * process.c (setup_process_coding_systems): If the process's
16028 in/out descriptor is -1, do nothing.
16029
16030 2003-02-19 Andreas Schwab <schwab@suse.de>
16031
16032 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
16033 Add prototypes.
16034
16035 2003-02-19 Kenichi Handa <handa@m17n.org>
16036
16037 * xfaces.c (try_alternative_families): Try all scalable fonts if
16038 Vscalable_fonts_allowed is not Qt.
16039
16040 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16041
16042 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
16043
16044 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16045
16046 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
16047 names.
16048
16049 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
16050 (sorted_font_list): Move allocation of struct font_name to
16051 x_face_list_fonts.
16052 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
16053 (Fx_list_fonts): Set maxnames to -1 to get all font names.
16054
16055 2003-02-18 Kim F. Storm <storm@cua.dk>
16056
16057 * lread.c (read1): Fix last change.
16058 "`" is not always special. Allow "?" after a character constant.
16059
16060 2003-02-18 Andrew Choi <akochoi@shaw.ca>
16061
16062 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
16063
16064 2003-02-18 Andreas Schwab <schwab@suse.de>
16065
16066 * window.c (window_scroll_pixel_based): Move outside a
16067 multi-glyph character before setting new window start.
16068
16069 * xdisp.c (in_display_vector_p): New function.
16070 * dispextern.h (in_display_vector_p): Declare.
16071
16072 2003-02-18 Kim F. Storm <storm@cua.dk>
16073
16074 * lread.c (read1): Fix and relax read syntax.
16075 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
16076 Only recognize "," after dotted-pair dot if inside backquote.
16077 Never include "`" or "," (inside backquote) in a symbol.
16078 Allow dotted-pair dot after a character constant.
16079 Allow "`" and "," (inside backquote) after a character constant.
16080
16081 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16082
16083 * gtkutil.c (xg_tool_bar_expose_callback): New function.
16084 (xg_create_tool_bar): Force style of tool bar to be horizontal with
16085 icons. Set name of tool bar to emacs-toolbar.
16086 (update_frame_tool_bar): Connect expose event to
16087 xg_tool_bar_expose_callback.
16088
16089 2003-02-17 Richard M. Stallman <rms@gnu.org>
16090
16091 * keyboard.c (this_command_key_count_reset): New variable.
16092 Initiatize to 0 where this_command_key_count is set.
16093 (read_char): Save and restore this_command_key_count_reset
16094 around input method code.
16095 (read_char): If this_command_key_count_reset, echo reread commands.
16096 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
16097
16098 2003-02-17 Kenichi Handa <handa@m17n.org>
16099
16100 * fns.c (string_to_multibyte): Always return a multibyte string.
16101
16102 2003-02-16 Jason Rumney <jasonr@gnu.org>
16103
16104 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
16105 Negative max_fonts parameter means list all.
16106
16107 2003-02-14 Dave Love <fx@gnu.org>
16108
16109 * fns.c (Flanginfo): Doc fix.
16110
16111 2003-02-13 Kim F. Storm <storm@cua.dk>
16112
16113 * lread.c (read_escape): Interpret \s as a SPACE character, except
16114 for \s-X in a character constant which still is the super modifier.
16115 (read1): Signal an `invalid read syntax' error if a character
16116 constant is immediately followed by a digit or symbol character.
16117
16118 * search.c (Fmatch_data): Doc fix. Explicitly state that
16119 match-data is undefined if last search failed.
16120
16121 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
16122 All uses changed.
16123
16124 2003-02-12 Juanma Barranquero <lektu@terra.es>
16125
16126 * eval.c (Fdefmacro): Fix typo.
16127
16128 2003-02-12 Kim F. Storm <storm@cua.dk>
16129
16130 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
16131 macro is a string, convert meta modifiers in string when copying
16132 the string into a vector.
16133
16134 2003-02-11 Kim F. Storm <storm@cua.dk>
16135
16136 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
16137
16138 2003-02-11 Kenichi Handa <handa@m17n.org>
16139
16140 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
16141
16142 2003-02-10 Kim F. Storm <storm@cua.dk>
16143
16144 * process.c: Doc fixes.
16145 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
16146
16147 2003-02-10 Kenichi Handa <handa@m17n.org>
16148
16149 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
16150
16151 * process.c (QCfilter_multibyte): New variable.
16152 (setup_process_coding_systems): New function.
16153 (Fset_process_buffer, Fset_process_filter):
16154 Call setup_process_coding_systems.
16155 (Fstart_process): Initialize the member `filter_multibyte' of
16156 struct Lisp_Process.
16157 (create_process): Call setup_process_coding_systems.
16158 (Fmake_network_process): New keyward `:filter-multibyte'.
16159 Initialize the member `filter_multibyte' of struct Lisp_Process.
16160 Call setup_process_coding_systems.
16161 (server_accept_connection): Call setup_process_coding_systems.
16162 (read_process_output): If the process has a filter, decide the
16163 multibyteness of a string to given to the filter by
16164 `filter_multibyte' member of the process. If the process doesn't
16165 have a filter and the result of conversion is unibyte, use
16166 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
16167 multibyte form.
16168 (Fset_process_coding_system): Call setup_process_coding_systems.
16169 (Fset_process_filter_multibyte): New function.
16170 (Fprocess_filter_multibyte_p): New function.
16171 (syms_of_process): Intern and staticpro QCfilter_multibyte.
16172 Defsubr Sset_process_filter_multibyte and
16173 Sprocess_filter_multibyte_p.
16174
16175 * process.h (struct Lisp_Process): New member filter_multibyte.
16176
16177 * lisp.h (setup_process_coding_systems): Add prototype.
16178
16179 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
16180 process, update coding systems for the process.
16181
16182 2003-02-09 Kenichi Handa <handa@m17n.org>
16183
16184 * fns.c (string_to_multibyte): New function.
16185 (Fstring_to_multibyte): New function.
16186 (syms_of_fns): Defsubr it.
16187
16188 2003-02-08 Andreas Schwab <schwab@suse.de>
16189
16190 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
16191 instead of the substitution.
16192
16193 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16194
16195 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
16196
16197 * xmenu.c (menu_position_func): Adjust menu popup position so that
16198 the menu is fully visible.
16199
16200 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16201
16202 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
16203 (x_make_frame_invisible, x_wm_set_icon_position):
16204 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
16205
16206 * xfns.c (x_set_name, x_set_title): Ditto.
16207
16208 2003-02-04 Richard M. Stallman <rms@gnu.org>
16209
16210 * keyboard.c (echo_now): Update before_command_echo_length.
16211 (Freset_this_command_lengths): Reset this_command_key_count etc.
16212 immediately rather than arranging to do it later.
16213 (before_command_key_count_1, before_command_echo_length_1)
16214 (before_command_restore_flag): Vars deleted.
16215 (add_command_key): Don't handle before_command_restore_flag.
16216 (read_char, record_menu_key): Don't update before_command_key_count or
16217 before_command_echo_length.
16218 (read_char): Don't handle before_command_restore_flag.
16219
16220 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
16221 in direct-output clauses if it wouldn't be called in the ordinary case.
16222
16223 2003-02-04 Kim F. Storm <storm@cua.dk>
16224
16225 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
16226
16227 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16228
16229 * gtkutil.c (remove_from_container): Copying list is not needed.
16230 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
16231 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
16232 on list returned from gtk_container_get_children to avoid memory leak.
16233
16234 2003-02-01 Jason Rumney <jasonr@gnu.org>
16235
16236 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
16237 local malloc.
16238 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
16239 definitions in xpm.h.
16240 (init_xpm_functions): New function.
16241 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
16242 (init_external_image_libraries): Try to load libXpm.dll.
16243
16244 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
16245 timestamp.
16246
16247 2003-01-31 Dave Love <fx@gnu.org>
16248
16249 * syntax.c (Fskip_chars_forward)
16250 (open-paren-in-column-0-is-defun-start): Doc fix.
16251
16252 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
16253
16254 * fileio.c: Support // at start of name for Cygwin (just added proper
16255 preprocessor tests).
16256
16257 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
16258
16259 * Makefile.in: Use @EXEEXT@ for Cygwin.
16260
16261 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
16262
16263 * s/cygwin.h: Added for Cygwin port.
16264
16265 2003-01-31 Juanma Barranquero <lektu@terra.es>
16266
16267 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
16268 when including gif_lib.h.
16269 (init_gif_functions, init_tiff_functions): New functions.
16270 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
16271 Windows. Disable color table lookups. Call library functions
16272 through pointers determined at runtime.
16273 (init_external_image_libraries): Try to load libungif.dll and
16274 libtiff.dll.
16275
16276 2003-01-31 Kenichi Handa <handa@m17n.org>
16277
16278 * xdisp.c (SKIP_GLYPHS): New macro.
16279 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
16280
16281 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16282
16283 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
16284
16285 2003-01-30 Dave Love <fx@gnu.org>
16286
16287 * alloc.c (Vgc_elapsed, gcs_done): New variables.
16288 (Fgarbage_collect): Use them.
16289 (init_alloc, syms_of_alloc): Set them up.
16290
16291 2003-01-30 Juanma Barranquero <lektu@terra.es>
16292
16293 * w32fns.c (init_external_image_libraries): Add missing operator.
16294
16295 2003-01-29 Jason Rumney <jasonr@gnu.org>
16296
16297 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
16298 an alternative name for jpeg.dll.
16299
16300 2003-01-29 Kenichi Handa <handa@m17n.org>
16301
16302 * xdisp.c (set_cursor_from_row): Pay attention to string display
16303 properties.
16304
16305 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
16306
16307 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
16308 <escape>.
16309 (keycode_to_xkeysym_table): Reformat and add more comments.
16310 (XTread_socket): Drop special case for backspace.
16311
16312 2003-01-28 Andrew Choi <akochoi@shaw.ca>
16313
16314 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
16315 values in old-style RGB specs.
16316
16317 2003-01-27 Juanma Barranquero <lektu@terra.es>
16318
16319 * w32fns.c (init_external_image_libraries): Try alternate names for the
16320 jpeg dll.
16321
16322 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16323
16324 * gtkutil.c (create_dialog, xg_separator_p)
16325 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
16326 before calling strcmp or strlen.
16327
16328 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16329
16330 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
16331 and handle image load failure.
16332
16333 2003-01-26 Jason Rumney <jasonr@gnu.org>
16334
16335 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
16336 New functions.
16337 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
16338 Disable color table lookups. Call jpeg library functions
16339 through pointers determined at runtime.
16340 (init_external_image_libraries): Try to load jpeg.dll.
16341
16342 2003-01-25 Richard M. Stallman <rms@gnu.org>
16343
16344 * lisp.h: Declare format2 instead of format1.
16345
16346 * fileio.c (barf_or_query_if_file_exists):
16347 Call format2 instead of format1.
16348
16349 * editfns.c (format2): New function, replaces format1
16350 but takes exactly two Lisp Objects as format args.
16351
16352 * buffer.c (Fkill_buffer): Call format2 instead of format1.
16353
16354 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16355
16356 * xterm.h: Change to return value of x_dispatch_event to int.
16357
16358 * xterm.c (x_filter_event): New function.
16359 (event_handler_gdk, XTread_socket): Call x_filter_event.
16360 (x_dispatch_event): Change to return value of finish.
16361 (event_handler_gdk): Use return value from x_dispatch_event.
16362
16363 * xfns.c (x_window): Call create_frame_xic for GTK version to
16364 initialize input methods.
16365
16366 * gtkutil.h: Add (void) prototypes.
16367
16368 * gtkutil.c (create_menus): Remove code that puts the help menu to
16369 the right.
16370
16371 2003-01-25 Jason Rumney <jasonr@gnu.org>
16372
16373 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
16374 [HAVE_PNG]: Sync with xfns.c version.
16375 (png_load): Adjust colors for Windows. Use Windows
16376 bitmaps. Disable color table lookups.
16377 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
16378 (init_png_functions): New function.
16379 (png_read_from_memory, png_load): Call png library functions
16380 through pointers determined at runtime.
16381 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
16382 (init_external_image_libraries): New function.
16383 (init_xfns): Call it.
16384
16385 2003-01-24 Andreas Schwab <schwab@suse.de>
16386
16387 * minibuf.c (Fminibuffer_message): Verify type of parameter.
16388
16389 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16390
16391 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
16392 of static initializer.
16393
16394 2003-01-24 Dave Love <fx@gnu.org>
16395
16396 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
16397 architectures.
16398
16399 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
16400 Use __alignof__.
16401
16402 2003-01-24 Kenichi Handa <handa@m17n.org>
16403
16404 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
16405 It it is nonzero, don't pretend that an invisible area doesn't exist.
16406 (command_loop_1): Call adjust_point_for_property with proper
16407 second arg.
16408
16409 2003-01-22 Jason Rumney <jasonr@gnu.org>
16410
16411 Sync changes with xterm.c and xfns.c.
16412
16413 * w32term.c (x_draw_glyph_string_foreground)
16414 (x_draw_composite_glyph_string_foreground): Implement overstriking.
16415
16416 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
16417 phys_cursor's hpos is overwritten. This is still not completely
16418 correct, as it doesn't really make sense to use hpos at all to
16419 get the cursor glyph (as that is relative to the width of the
16420 characters on the line, which may have changed during the update).
16421
16422 * w32term.c (notice_overwritten_cursor): Handle the special case
16423 of the cursor being in the first blank non-text line at the
16424 end of a window.
16425
16426 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
16427 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
16428 Compute from the x position returned by x_draw_glyphs.
16429
16430 (x_display_and_set_cursor): Don't set phys_cursor_width here,
16431 except for NO_CURSOR and system caret, to make phys_cursor_width
16432 contain what its name suggests.
16433 (notice_overwritten_cursor): Consider the cursor image erased if
16434 the output area intersects the cursor image in y-direction.
16435
16436 * w32term.c (note_mode_line_or_margin_highlight): Rename from
16437 note_mode_line_highlight and extend.
16438
16439 * w32term.c (last_window): New variable.
16440 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
16441 (note_mouse_movement): Remove reimplemented code in #if 0.
16442
16443 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
16444 not update_mode_lines, and always set it to 1.
16445
16446 2003-01-21 Jason Rumney <jasonr@gnu.org>
16447
16448 * w32fns.c (IDC_HAND): Define it if system headers don't.
16449
16450 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
16451
16452 * w32term.h (struct w32_output): New member hand_cursor.
16453 (WM_EMACS_SETCURSOR): New message definition.
16454
16455 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
16456 function w32_define_cursor.
16457 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
16458 position, change member name output_data.x to output_data.w32 and
16459 add function w32_define_cursor.
16460 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
16461 and change member name output_data.x to output_data.w32.
16462 (w32_initialize_display_info):
16463 Setup dpyinfo->vertical_scroll_bar_cursor.
16464
16465 * w32fns.c (Vx_hand_shape): New variable.
16466 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
16467 WM_EMACS_SETCURSOR.
16468 (x-create-frame): Setup Cursor types.
16469
16470 2003-01-21 David Ponce <david@dponce.com>
16471
16472 * w32term.c (w32_encode_char): For DIM=1 charset, set
16473 ccl->reg[2] to -1 before calling ccl_driver.
16474 (Sync. with xterm.c x_encode_char change by Kenichi Handa
16475 <handa@m17n.org> on 2002-09-30.)
16476 (w32_draw_relief_rect): Declare all args.
16477 (w32_define_cursor): New.
16478
16479 * w32fns.c (w32_load_cursor): New function.
16480 (w32_init_class): Use it.
16481 (x_put_x_image): Declare all args.
16482
16483 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
16484
16485 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
16486
16487 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16488
16489 * gtkutil.c: Must include stdio.h before termhooks.h
16490
16491 2003-01-21 Dave Love <fx@gnu.org>
16492
16493 * alloc.c (Fgc_status): Print zombie list.
16494 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16495 Fix assignment of zombies.
16496 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16497 Don't take car of non-cons.
16498
16499 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16500
16501 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16502
16503 2003-01-20 David Ponce <david@dponce.com>
16504
16505 * w32menu.c (digest_single_submenu): Declare all args.
16506
16507 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
16508 changes in xmenu.c:
16509
16510 (parse_single_submenu): Use individual keymap's prompt
16511 string as pane name, if there is one.
16512 (set_frame_menubar): Save menu_items_n_panes from each call to
16513 parse_single_submenu and use it when calling digest_single_submenu.
16514
16515 2003-01-20 Steven Tamm <steventamm@mac.com>
16516
16517 * macterm.c (XTread_socket): Check for valid, visible window
16518 before sending a scroll-wheel event.
16519
16520 2003-01-20 Richard M. Stallman <rms@gnu.org>
16521
16522 * xdisp.c (redisplay_window): If mini window's buffer is not
16523 a minibuffer, then redisplay it like other windows.
16524
16525 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16526
16527 * gtkutil.c (xg_create_frame_widgets): Check if there is an
16528 external tool bar before setting tool bar height.
16529
16530 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16531
16532 * xterm.c (handle_one_xevent): Surround popup_activated
16533 with #ifdef:s for non-toolkit version.
16534
16535 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
16536 (gtkutil.o): New file.
16537 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
16538 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
16539
16540 * gtkutil.c: New file for GTK version.
16541
16542 * gtkutil.h: New file for GTK version.
16543
16544 * xterm.h: Add xt_or_gtk_widget.
16545 Include gtk files for USE_GTK.
16546 (struct x_output): Add toolbar_height.
16547 (struct x_output): Add GTK widgets and Gdk size_hints.
16548 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
16549 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
16550 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
16551
16552 * xterm.c: Include gtkutil.h for USE_GTK.
16553 (free_frame_menubar): Declare extern void for USE_GTK.
16554 (note_mouse_highlight): Check popup_activated for USE_GTK.
16555 (xt_action_hook): Don't compile if USE_GTK.
16556 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
16557 (xg_scroll_callback): New function.
16558 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
16559 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
16560 for USE_GTK.
16561 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
16562 xg_show_scroll_bar for USE_GTK.
16563 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
16564 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
16565 (event_handler_gdk): New function for USE_GTK.
16566 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
16567 (handle_one_xevent): Make sure widget is mapped before
16568 calling x_real_positions for USE_GTK.
16569 (XTread_socket): Add GTK event loop for USE_GTK.
16570 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
16571 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
16572 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
16573 (x_iconify_frame): Add code for USE_GTK.
16574 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
16575 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
16576 is in gtkutil.c.
16577 (x_term_init): Add initialization for GTK.
16578 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
16579
16580 * xmenu.c: Include gtkutil.h for USE_GTK.
16581 (Fx_popup_menu): Use current position if x and y is NIL.
16582 (single_menu_item, single_menu_item, Fx_popup_dialog):
16583 Check for USE_GTK.
16584 (popup_widget_loop): New function for USE_GTK.
16585 (x_activate_menubar): Add code for USE_GTK.
16586 (popup_activate_callback, popup_deactivate_callback)
16587 (menu_highlight_callback, menubar_selection_callback):
16588 Add USE_GTK versions.
16589 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
16590 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
16591 (free_frame_menubar): Only compile if not USE_GTK. GTK version
16592 is in gtkutil.c.
16593 (popup_selection_callback): New version for USE_GTK.
16594 (create_and_show_popup_menu): New fuction, one USE_GTK version and
16595 one USE_X_TOOLKIT version.
16596 (xmenu_show): Call create_and_show_popup_menu.
16597 (dialog_selection_callback): New version for USE_GTK.
16598 (create_and_show_dialog): New fuction, one USE_GTK version and
16599 one USE_X_TOOLKIT version.
16600 (xdialog_show): Call create_and_show_dialog.
16601
16602 * xfns.c: Include gtkutil for USE_GTK.
16603 (x_window_to_frame, x_any_window_to_frame)
16604 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
16605 (x_top_window_to_frame): Add code for USE_GTK.
16606 (x_set_background_color): Call xg_set_background_color for GTK.
16607 (x_set_menu_bar_lines): Check for USE_GTK.
16608 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
16609 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
16610 (x_window): Call xg_create_frame_widgets for USE_GTK.
16611 (Fx_create_frame): Check for USE_GTK
16612 (Fx_file_dialog): New implementation for USE_GTK.
16613
16614 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
16615 (update_menu_bar): Add check for USE_GTK.
16616 (update_tool_bar): Add check for USE_GTK and external tool bar.
16617 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
16618 (redisplay_internal): Add check for USE_GTK and popup_activated.
16619 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
16620 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
16621 (display_menu_bar): Add check for USE_GTK
16622
16623 * lisp.h (Vx_resource_name): Declare extern.
16624
16625 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
16626 for USE_GTK.
16627 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
16628
16629 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
16630 (FRAME_EXTERNAL_TOOL_BAR): New macro.
16631 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
16632
16633 * fileio.c (Fread_file_name): Add check for USE_GTK.
16634
16635 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
16636 Add check for USE_GTK.
16637
16638 * config.in: Added HAVE_GTK
16639
16640 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
16641
16642 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
16643
16644 * charset.h (Funibyte_char_to_multibyte): Export.
16645
16646 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16647
16648 * xmenu.c (mouse_position_for_popup): New function.
16649 (Fx_popup_menu): Call mouse_position_for_popup for X and
16650 mouse_position_hook for others.
16651
16652 2003-01-17 Kim F. Storm <storm@cua.dk>
16653
16654 * editfns.c (Finsert): Mention `string-make-multibyte' and
16655 `string-as-multibyte' in doc string.
16656
16657 2003-01-17 Kenichi Handa <handa@m17n.org>
16658
16659 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
16660
16661 * editfns.c (Fformat): Convert an unibyte char argument that is
16662 formatted by "%c" to multibyte if the total result must be a
16663 multibyte string.
16664
16665 2003-01-16 Kim F. Storm <storm@cua.dk>
16666
16667 * process.c (set-process-filter): Document unibyte/multibyte-ness
16668 of string argument.
16669
16670 2003-01-16 Kenichi Handa <handa@m17n.org>
16671
16672 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
16673
16674 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
16675 (re_search_2): Likewise.
16676
16677 2003-01-15 Kenichi Handa <handa@m17n.org>
16678
16679 * xdisp.c (message_dolog): Fix bug of the case that *Message*
16680 buffer is unibyte.
16681
16682 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
16683
16684 * fns.c (Fsubstring): Clarify doc string.
16685
16686 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
16687 (Fprevious_char_property_change)
16688 (Fnext_single_char_property_change)
16689 (Fprevious_single_char_property_change, Fnext_property_change)
16690 (Fnext_single_property_change, Fprevious_property_change)
16691 (Fprevious_single_property_change, Fadd_text_properties)
16692 (Fput_text_property, Fset_text_properties)
16693 (Fremove_text_properties, Fremove_list_of_text_properties)
16694 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
16695
16696 2003-01-14 Kim F. Storm <storm@cua.dk>
16697
16698 * process.h (struct Lisp_Process): New member plist replaces old
16699 member private_vars. All uses changed.
16700
16701 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
16702 (QCplist): Rename from QCvars. Change all uses.
16703 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
16704 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
16705 (syms_of_process): Intern, staticpro, defsubr these.
16706 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
16707
16708 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
16709
16710 * m/delta.h: Remove (obsolete).
16711
16712 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
16713
16714 * fileio.c (Fdelete_directory, Fdelete_file): Document the
16715 behaviour in front of symlinks.
16716 (Fdelete_file): Raise an error on directories.
16717
16718 2003-01-13 Dave Love <fx@gnu.org>
16719
16720 * fns.c (Freverse): Use QUIT.
16721
16722 2003-01-13 Richard M. Stallman <rms@gnu.org>
16723
16724 * minibuf.c (minibuffer_completion_contents):
16725 Error if point is inside prompt.
16726
16727 * keyboard.c (command_loop_1): Don't redisplay directly
16728 if there's a post-command-hook.
16729
16730 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
16731 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
16732
16733 2003-01-12 Kim F. Storm <storm@cua.dk>
16734
16735 * process.h (struct Lisp_Process): New member private_vars.
16736
16737 * process.c (QCvars): New variable.
16738 (syms_of_process): Intern and staticpro it.
16739 (Fset_process_contact): Removed function.
16740 (Fprocess_variable, Fset_process_variable): New functions.
16741 (syms_of_process): Defsubr them.
16742 (Fstart_process): Initialize private_vars plist to nil.
16743 (Fmake_network_process): New arg :vars to setup the private
16744 variables for new network process.
16745 (server_accept_connection): Copy server's private variables to
16746 client process.
16747
16748 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
16749 crashes). Code rewritten and simplified. Now directly aligns the
16750 pointer and recalculates pure_bytes_used, rather than aligning the
16751 size and adjusting the pointer.
16752
16753 2003-01-11 Kim F. Storm <storm@cua.dk>
16754
16755 * process.c (Fset_process_contact): New function.
16756 (syms_of_process): defsubr it.
16757 (make-network-process): Update doc.
16758
16759 2003-01-10 Andreas Schwab <schwab@suse.de>
16760
16761 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
16762 Reported by Berthold Gunreben <b.gunreben@web.de>.
16763
16764 2003-01-10 Dave Love <fx@gnu.org>
16765
16766 * composite.c (syms_of_composite): Make composition_hash_table weak.
16767
16768 2003-01-09 Kim F. Storm <storm@cua.dk>
16769
16770 * process.c (Fmake_network_process): Convert new port number
16771 to host byte order for `:service t' case. From Mario Lang.
16772
16773 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16774
16775 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
16776 instead of XtAppProcessEvent.
16777
16778 * xterm.c (handle_one_xevent): New function.
16779 (x_dispatch_event): New function.
16780 (XTread_socket): Call handle_one_xevent.
16781
16782 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
16783
16784 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
16785 call XQueryPointer to get coordinates.
16786 (popup_get_selection): Do not set popup_activated_flag to zero,
16787 let popup_deactivate_callback do that. Needed for Motif.
16788 Call x_dispatch_event instead of XtDispatchEvent.
16789 (xmenu_show): Calculate root coordinate from frame top/left position.
16790
16791 2003-01-08 Kim F. Storm <storm@cua.dk>
16792
16793 * process.c (server_accept_connection): Fix recording of new
16794 connection's local address in :local property of contact info.
16795 (Fmake_network_process): Record local network address for new
16796 client processes in :local property of contact info.
16797 (format-network-address): Add arg OMIT-PORT. Change callers.
16798
16799 2003-01-07 Dave Love <fx@gnu.org>
16800
16801 * Makefile.in (fns.o): Depend on coding.h.
16802
16803 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
16804
16805 * minibuf.c (Fread_variable): Doc fix.
16806
16807 * eval.c (Fuser_variable_p): Doc change. For custom variables,
16808 use the same test as for custom-variable-p.
16809
16810 2003-01-05 Richard M. Stallman <rms@gnu.org>
16811
16812 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
16813 Count LAST_LINE_MISFIT in scroll margin for end of window.
16814 Move label too_near_end before setting SCROLL_MARGIN_POS.
16815 Set LAST_LINE_MISFIT before jumping there.
16816
16817 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
16818 scroll_conservatively case. If scrolling that much doesn't change
16819 STARTP, move it down one line.
16820
16821 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
16822 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
16823
16824 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
16825 selected frame.
16826
16827 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
16828 (syms_of_keymap): Staticpro them.
16829 (Fapropos_internal): Initialize them and clear them out.
16830 Don't GCPRO them.
16831
16832 * buffer.c (syms_of_buffer) <scroll-up-aggressively, scroll-down-aggressively>:
16833 Doc fixes.
16834
16835 * lisp.h: New misc type Lisp_Save_Value.
16836 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
16837 (XSAVE_VALUE): New macro.
16838 (struct Lisp_Save_Value): New data type.
16839 (union Lisp_Misc): Add u_save_value alternative.
16840 (make_save_value): Declare.
16841
16842 * alloc.c (make_save_value): New function.
16843
16844 * xterm.c (x_catch_errors): Save dpy using make_save_value.
16845 (x_catch_errors_unwind): Call XSync.
16846
16847 2003-01-01 Richard M. Stallman <rms@gnu.org>
16848
16849 * window.c (window_scroll_pixel_based): Partially undo last change.
16850
16851 * keyboard.c (command_loop_1): Call adjust_point_for_property
16852 in direct action cases for Qforward_char and Qbackward_char.
16853 Set already_adjusted so it won't be done twice.
16854
16855 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
16856
16857 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
16858 type definition of size_t.
16859
16860 2003-01-02 Steven Tamm <steventamm@mac.com>
16861
16862 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
16863 distinguish Carbon GUI builds from X11 builds on darwin.
16864
16865 2002-12-30 Steven Tamm <steventamm@mac.com>
16866
16867 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
16868 to default to t.
16869
16870 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
16871
16872 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
16873
16874 2002-12-28 Steven Tamm <steventamm@mac.com>
16875
16876 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
16877 allow building in a different directory than source. Uses some
16878 GNU Make extensions, but there is no other make on Mac OS X.
16879
16880 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
16881
16882 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
16883 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
16884 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
16885 (Fstring_to_number): Mention the returned value in the doc strings.
16886
16887 2002-12-23 Richard M. Stallman <rms@gnu.org>
16888
16889 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
16890 <scroll-down-aggressively>: Doc fix.
16891
16892 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
16893 string as pane name, if there is one.
16894 (set_frame_menubar): Save menu_items_n_panes from each call to
16895 parse_single_submenu and use it when calling digest_single_submenu.
16896
16897 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
16898 Don't try to make last line fully visible if it is past end of window.
16899
16900 2002-12-22 Steven Tamm <steventamm@mac.com>
16901
16902 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
16903 (mac_menu_show): Add support for hierarchical popup menus.
16904 (add_menu_item): Remove indentation support.
16905 (fill_submenu, fill_menu): Create hierarchical menus
16906 instead of using indentation.
16907
16908 2002-12-22 Richard M. Stallman <rms@gnu.org>
16909
16910 * xdisp.c (try_cursor_movement): Don't call try_window here.
16911 (redisplay_window): Never redisplay minibuffer when inactive.
16912
16913 * window.c (select_window_1): Undo 9/21 change.
16914
16915 2002-12-22 Steven Tamm <steventamm@mac.com>
16916
16917 * macterm.c (XTread_socket): Call KeyTranslate for control and
16918 meta to deal correctly shifted non-alpha characters, like C-S-5
16919 being treated like C-%. Do not look for shift key to deal
16920 with masking off control-key with mac-reverse-ctrl-meta.
16921
16922 2002-12-21 Richard M. Stallman <rms@gnu.org>
16923
16924 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
16925 If it is non-nil, run timers. Use an unwind-protect to requeue
16926 the events that were read ahead.
16927 (popup_get_selection_unwind): New subroutine.
16928 (popup_get_selection_queue): File-scope variable now holds that queue.
16929 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
16930 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
16931 Use an unwind-protect to pop down the dialog box.
16932 (xdialog_show_unwind): New subroutine implements that.
16933
16934 * xdisp.c (row_containing_pos): Change exit test using last_y.
16935 (try_window_id): Abort if row_containing_pos returns null.
16936
16937 * lread.c (load_error_handler): New function.
16938 (Fload): Handle errors in Fsubstitute_in_file_name.
16939 Don't expect Fsignal to return.
16940
16941 * eval.c: Errors and throws work right with interrupt blocking.
16942 (struct catchtag): New elt interrupt_input_blocked.
16943 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
16944 (internal_catch, Fcondition_case, internal_condition_case)
16945 (internal_condition_case_1, internal_condition_case_2): Save it.
16946 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
16947
16948 * editfns.c (Fformat): Add parens.
16949
16950 * dired.c (file_name_completion): Fix that change.
16951 Delete special quit-handling code; just use QUIT.
16952
16953 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
16954
16955 * dired.c (file_name_completion): Close directory on error
16956 just as in directory_files_internal.
16957
16958 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
16959
16960 * window.c (Fset_window_configuration): Set old_point to correct
16961 value when new_current_buffer == current_buffer.
16962
16963 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
16964
16965 Revisited my earlier fix for the following entry in etc/PROBLEMS:
16966 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
16967 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
16968
16969 These changes were in part based upon suggestions made by Peter
16970 'Luna' Runestig [peter@runestig.com].
16971
16972 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
16973 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
16974 (g_b_init_get_sid_identifier_authority ): Add several static
16975 global variables.
16976
16977 * w32.c (globals_of_w32): New function. Used to initialize those
16978 global variables that must always be initialized on startup even
16979 when the global variable initialized is non zero. Its primary
16980 purpose at this time is to set the global variables
16981 g_b_init_is_windows_9x, g_b_init_open_process_token,
16982 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
16983 g_b_init_get_sid_identifier_authority to 0 on startup.
16984 Called from main.
16985
16986 * w32.c (is_windows_9x): Perform initialization only if
16987 g_b_init_is_windows_9x is equal to 0. On initialization set
16988 g_b_init_is_windows_9x equal to 1.
16989
16990 * w32.c (open_process_token): Perform initialization only if
16991 g_b_init_open_process_token is equal to 0. On initialization set
16992 g_b_init_open_process_token equal to 1.
16993
16994 * w32.c (get_token_information): Perform initialization only if
16995 g_b_init_get_token_information is equal to 0. On initialization
16996 set g_b_init_get_token_information equal to 1.
16997
16998 * w32.c (lookup_account_sid): Perform initialization only if
16999 g_b_init_lookup_account_sid is equal to 0. On initialization
17000 set g_b_init_lookup_account_sid equal to 1.
17001
17002 * w32.c (get_sid_identifier_authority): Perform initialization
17003 only if g_b_init_get_sid_identifier_authority is equal to 0.
17004 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
17005
17006 * w32fns.c (globals_of_w32fns): New function. Used to initialize
17007 those global variables that must always be initialized on startup
17008 even when the global variable initialized is non zero.
17009 Its primary purpose at this time is to initialize the global variable
17010 track_mouse_event_fn.
17011
17012 * w32fns.c (w32_wnd_proc): Remove initialization of
17013 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
17014
17015 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
17016
17017 * w32menu.c (globals_of_w32menu): New function. Used to
17018 initialize those global variables that must always be initialized
17019 on startup even when the global variable initialized is non zero.
17020 Its primary purpose at this time is to initialize the global
17021 variables get_menu_item_info and set_menu_item_info.
17022
17023 * w32menu.c (initialize_frame_menubar): Remove initialization of
17024 get_menu_item_info and set_menu_item_info.
17025
17026 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
17027
17028 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
17029 Declare them.
17030
17031 * emacs.c (main): Call globals_of_w32 prior to calling
17032 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
17033 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
17034 is defined.
17035
17036 * w32term.c (x_update_window_begin): Fix Windows API error
17037 detected by BoundsChecker. Test to determine if
17038 w32_system_caret_hwnd is NULL prior to attempting to use
17039 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
17040
17041 * w32term.c (x_update_window_end): Fix Windows API error
17042 detected by BoundsChecker. Test to determine if
17043 w32_system_caret_hwnd is NULL prior to attempting to use
17044 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
17045
17046 2002-12-17 Kenichi Handa <handa@m17n.org>
17047
17048 * coding.c (coding_system_require_warning): New variable.
17049 (syms_of_coding): DEFVAR it.
17050
17051 * coding.h (coding_system_require_warning): Extern it.
17052
17053 * fileio.c (choose_write_coding_system): Even if
17054 Vcoding_system_for_write is non-nil, if
17055 coding_system_require_warning is nonzero, call
17056 Vselect_safe_coding_system_function.
17057
17058 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
17059
17060 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
17061 (lisp): Add font-core.
17062
17063 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
17064
17065 * textprop.c (text_read_only): New arg `propval'.
17066 (get_char_property_and_overlay): Remove unused var `next_overlay'.
17067 (verify_interval_modification): Use text_read_only's new arg.
17068
17069 2002-12-13 Kenichi Handa <handa@m17n.org>
17070
17071 * coding.c (Funencodable_char_position): Set pend correctly.
17072
17073 2002-12-12 Jason Rumney <jasonr@gnu.org>
17074
17075 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
17076 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
17077 Be more careful about when help_events are generated.
17078
17079 2002-12-12 Steven Tamm <steventamm@mac.com>
17080
17081 * macterm.c (mac_check_for_quit_char): Correctly set the
17082 modifiers of the event to 0.
17083 * mac.c (sys_select): Duplicate rfds before calling select to
17084 ensure that rfds survive the while loop.
17085
17086 2002-12-11 Kim F. Storm <storm@cua.dk>
17087
17088 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
17089 row_containing_pos returned NULL.
17090
17091 2002-12-10 Steven Tamm <steventamm@mac.com>
17092
17093 * mac.c (sys_read): Fix sys_read to not call select if IO is
17094 non-blocking.
17095 (sys_select): Fix sys_select to not use a timeout larger than
17096 the one given.
17097
17098 2002-12-10 Juanma Barranquero <lektu@terra.es>
17099
17100 * editfns.c (Fformat): Use alloca, not _alloca.
17101
17102 2002-12-09 Richard M. Stallman <rms@gnu.org>
17103
17104 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
17105 as the last thing.
17106
17107 2002-12-09 Dave Love <fx@gnu.org>
17108
17109 * s/sol2-8.h: Removed. (Not necessary.)
17110
17111 2002-12-09 Matthew Swift <swift@alum.mit.edu>
17112
17113 * editfns.c (Fformat): Handle precision in string conversion
17114 specifiers like libc functions do (ie, print at most that many
17115 characters).
17116
17117 2002-12-08 Richard M. Stallman <rms@gnu.org>
17118
17119 * xdisp.c (row_containing_pos): Check more carefully
17120 whether charpos is really in the row before returning it.
17121
17122 2002-12-07 Steven Tamm <steventamm@mac.com>
17123
17124 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
17125
17126 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
17127 each stack frame. This may change as it could be time consuming.
17128
17129 * macterm.c (mac_check_for_quit_char, quit_char_comp)
17130 (init_quit_char_handler, mac_determine_quit_char_modifiers)
17131 (mac_initialize): Add code to check for pressing of quit_char
17132 in the OS event queue.
17133
17134 * mac.c (sys_select): Call mac_check_for_quit_char every second
17135 while blocking on select.
17136
17137 * mac.c (sys_read): Use sys_select to test for input first
17138 before calling read, to allow C-g to break.
17139
17140 2002-12-07 Richard M. Stallman <rms@gnu.org>
17141
17142 * minibuf.c (Fcompleting_read): Doc fix.
17143
17144 * lread.c (syms_of_lread) <load-history>: Doc fix.
17145
17146 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
17147
17148 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
17149 autoload.
17150
17151 * data.c (Fdefalias): Record in load-history redefining an autoload.
17152
17153 * alloca.c: Undo ifdef change accidentally made on 12-04.
17154
17155 2002-12-06 Francesco Potorti` <pot@gnu.org>
17156
17157 * xfns.c (png_load): Avoid double gamma correction for PNG images.
17158
17159 2002-12-04 Richard M. Stallman <rms@gnu.org>
17160
17161 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
17162
17163 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
17164
17165 * alloca.c: Don't use #error.
17166
17167 2002-12-03 Dave Love <fx@gnu.org>
17168
17169 * buffer.c (Qucs_set_table_for_input): New.
17170 (Fget_buffer_create): Use it.
17171 (Qset_buffer_major_mode_hook): Deleted.
17172 (Fset_buffer_major_mode): Revert previous change.
17173 (init_buffer_once): Intern ucs-set-table-for-input.
17174 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
17175 Add &Qucs_set_table_for_input.
17176
17177 2002-12-03 Andreas Schwab <schwab@suse.de>
17178
17179 * callint.c (Fcall_interactively): Use next_event only if less
17180 than key_count.
17181
17182 2002-12-02 Andrew Choi <akochoi@shaw.ca>
17183
17184 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
17185 names to 255 characters.
17186
17187 * macterm.c (XTread_socket): If all frames have been collapsed,
17188 expand the first one before handling drag-and-drop events.
17189
17190 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
17191 which is detected by autoconf.
17192
17193 2002-12-01 Steven Tamm <steventamm@mac.com>
17194
17195 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
17196 offset in two hints table to allow prebinding to be redone and
17197 allow the executable to be stripped.
17198
17199 2002-11-29 Dave Love <fx@gnu.org>
17200
17201 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
17202 already provided.
17203
17204 2002-11-29 Richard M. Stallman <rms@gnu.org>
17205
17206 * xdisp.c (start_display): Check more intelligently for
17207 whether the line is continued.
17208 (move_it_vertically_backward): Clear it->continuation_lines_width.
17209
17210 2002-11-28 Dave Love <fx@gnu.org>
17211
17212 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
17213 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
17214
17215 2002-11-27 Steven Tamm <steventamm@mac.com>
17216
17217 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
17218 more descriptive error output from lread.c:Fload upon most require
17219 cycles during boostrapping.
17220
17221 2002-11-27 Jason Rumney <jasonr@gnu.org>
17222
17223 * fileio.c (Finsert_file_contents): Give a more appropriate error
17224 for files bigger than 2Gb when off_t is 32 bit.
17225
17226 * dired.c (Ffile_attributes): Don't return negative file sizes for
17227 files bigger than 2Gb when off_t is 32 bit.
17228
17229 2002-11-27 Dave Love <fx@gnu.org>
17230
17231 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17232
17233 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
17234 Test GETPGRP_VOID instead.
17235 [BSD_TERMIOS]: Remove definitions (never used).
17236
17237 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
17238 Don't define.
17239 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17240
17241 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
17242
17243 2002-11-25 Jason Rumney <jasonr@gnu.org>
17244
17245 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
17246 supported.
17247
17248 2002-11-25 Dave Love <fx@gnu.org>
17249
17250 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
17251
17252 * Makefile.in (TEMACS_LDFLAGS): Update last change.
17253
17254 2002-11-25 Andreas Schwab <schwab@suse.de>
17255
17256 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
17257
17258 2002-11-24 Steven Tamm <steventamm@mac.com>
17259
17260 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
17261 determine the size of pointers alloced in unexed space instead
17262 of using possibly invalid emacs_zone pointers. This fixes the
17263 binary incompatibility problems caused by updates to libSystem.B.
17264
17265 2002-11-24 Richard M. Stallman <rms@gnu.org>
17266
17267 * search.c (Fstring_match): Doc fix.
17268
17269 * callint.c (Fcall_interactively): If a command fails because
17270 `*' detects a read-only buffer, but RECORD_FLAG is set,
17271 record it anyway if the args don't actually do tty input.
17272
17273 2002-11-22 Dave Love <fx@gnu.org>
17274
17275 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
17276
17277 * keyboard.c (interrupt_signal): Provide forward declaration.
17278 (kbd_buffer_store_event): Don't declare interrupt_signal.
17279
17280 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
17281
17282 2002-11-21 Richard M. Stallman <rms@gnu.org>
17283
17284 * eval.c (interactive_p): Skip any number of bytecode
17285 and special form frames, in any order.
17286
17287 2002-11-20 Jason Rumney <jasonr@gnu.org>
17288
17289 * w32fns.c (convert_mono_to_color_image): New function.
17290 (xbm_load, xbm_load_image): Use it when foreground or background
17291 is explicitly set.
17292
17293 2002-11-19 Dave Love <fx@gnu.org>
17294
17295 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
17296
17297 2002-11-18 Jason Rumney <jasonr@gnu.org>
17298
17299 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
17300 (XPutPixel): Swap blue and red.
17301 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
17302 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
17303 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
17304 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
17305
17306 2002-11-18 Dave Love <fx@gnu.org>
17307
17308 * m/orion105.h (HAVE_ALLOCA): Don't define.
17309
17310 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
17311
17312 * m/intel386.h: Don't include alloca.h or define alloca.
17313
17314 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
17315 malloc, realloc, calloc.
17316
17317 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
17318 (bcmp): Don't define.
17319
17320 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
17321
17322 * m/amdahl.h: Don't define LIB_STANDARD.
17323
17324 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
17325
17326 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
17327
17328 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
17329 Don't include alloca.h.
17330
17331 * s/aix3-2.h (HAVE_FSYNC): Don't define.
17332
17333 * regex.c (_GNU_SOURCE): Don't define.
17334
17335 * process.c (_GNU_SOURCE): Don't define.
17336
17337 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
17338
17339 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
17340
17341 * s/sol2-8.h: Include sol2-6.h.
17342
17343 2002-11-18 Miles Bader <miles@gnu.org>
17344
17345 * dispextern.h (struct face): Add `overstrike' field.
17346 * xterm.c (x_draw_glyph_string_foreground)
17347 (x_draw_composite_glyph_string_foreground): Implement overstriking.
17348 * xfaces.c (load_face_font): Set `face->overstrike' based on
17349 result from choose_face_font.
17350 (best_matching_font, choose_face_font): Add `needs_overstrike'
17351 argument, and use it to return whether overstriking is desirable
17352 for this face/font combo.
17353 (set_font_frame_param: Pass new argument to choose_face_font.
17354
17355 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17356
17357 This change is my fix for the following entry in etc/PROBLEMS:
17358 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
17359 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
17360
17361 * w32.c: Added wrapper functions around the win32 API functions
17362 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
17363 GetSidIdentifierAuthority. These wrapper functions serve two
17364 purposes:
17365 1. They ensure that the wrapped function can never be called
17366 when Emacs is running on an operating system on which they are
17367 not supported (Microsoft Windows 95 / 98 / ME).
17368 2. They call the wrapped functions via function pointers rather
17369 than calling them directly. This avoids taking advantage of the
17370 undocumented fact that although these functions are not supported
17371 in the 9x branch of Microsoft Windows, the functions do exist in
17372 the version of advapi32.dll that is found in the 9x branch of
17373 Microsoft Windows.
17374
17375 * w32.c (init_user_info): Replace the calls to the win32 API
17376 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
17377 and GetSidIdentifierAuthority with calls to the newly added
17378 wrapper functions.
17379
17380 * w32.h: Added extern declarations for the following functions:
17381 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
17382 syms_of_w32menu, and void syms_of_fontset.
17383
17384 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
17385 function pointer track_mouse_event_fn in the handler for the
17386 WM_SETFOCUS message.
17387
17388 * w32menu.c (initialize_frame_menubar): Add code to
17389 reinitialize the function pointers set_menu_item_info and
17390 get_menu_item_info.
17391
17392 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17393
17394 * sound.c: Added a partial implementation of play-sound-internal
17395 for Microsoft Windows. Added various #ifdef / #else / #endif
17396 code blocks to separate the code that will compile under
17397 Microsoft Windows from the code that is specific to GNU/Linux.
17398 Moved several blocks of code around to make this separation of code
17399 into Windows compatible and GNU/Linux compatible code blocks easier.
17400
17401 * makefile.w32-in: Include sound.c and link with WinMM.lib.
17402
17403 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
17404 added support for play-sound-internal under Windows would be
17405 included in the build of Emacs.
17406
17407 2002-11-16 Jason Rumney <jasonr@gnu.org>
17408
17409 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
17410
17411 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
17412
17413 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
17414
17415 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
17416 (adjust_point_for_property): Move out of display and invisible even if
17417 we were already inside before (in case a property was added while
17418 we weren't looking). Be more careful when handling invisible props.
17419 Skip invisible text as if it really wasn't there at all.
17420
17421 2002-11-15 Jason Rumney <jasonr@gnu.org>
17422
17423 * w32term.c (x_draw_image_foreground)
17424 (w32_draw_image_foreground_1): Use standard copy and invert
17425 operations to draw images.
17426
17427 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
17428 depth of 1.
17429 (xbm_read_bitmap_data): Invert bits as xbm is read in.
17430 (XPutPixel): Don't invert bits here.
17431
17432 2002-11-15 Jason Rumney <jasonr@gnu.org>
17433
17434 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
17435 (w32_draw_image_foreground_1): Handle image masks.
17436 (x_draw_image_glyph_string): Don't BitBlt transparently.
17437
17438 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
17439 (x_from_xcolors): Adjust RGB values for W32.
17440 (image_background, image_background_transparent)
17441 (postprocess_image, x_to_xcolors, x_disable_image)
17442 (x_build_heuristic_mask): Adapt for W32 and enable.
17443 (x_create_x_image_and_pixmap): Mark images with palettes as such.
17444 (xbm_load): Remove unused variable.
17445
17446 2002-11-14 Richard M. Stallman <rms@gnu.org>
17447
17448 * buffer.c (syms_of_buffer): Doc fix.
17449
17450 2002-11-14 Dave Love <fx@gnu.org>
17451
17452 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
17453
17454 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
17455 * xmenu.c (unuse_menu_items, digest_single_submenu):
17456 * xfns.c (x_put_x_image):
17457 * xdisp.c (message2_nolog, set_message):
17458 * undo.c (record_point):
17459 * terminfo.c (tparam):
17460 * syntax.c (scan_sexps_forward):
17461 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
17462 * composite.c (update_compositions):
17463 * cm.c (calccost, cmgoto):
17464 * charset.c (c_string_width): Declare all args (per C99).
17465
17466 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
17467
17468 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
17469 Don't declare.
17470
17471 * emacs.c (main) [!VMS]: Avoid third arg.
17472
17473 * fns.c (Fcopy_sequence): Doc fix.
17474 (Fmap_char_table): Cast `call2'.
17475
17476 2002-11-14 Francesco Potorti` <pot@gnu.org>
17477
17478 * s/sol2-8.h: New file.
17479
17480 2002-11-14 Kim F. Storm <storm@cua.dk>
17481
17482 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
17483 dependency on `risky-local-variable' and the :propertize form.
17484
17485 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
17486
17487 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
17488
17489 * syntax.c (scan_sexps_forward): Undo last patch.
17490 Use a more obvious fix: check eob before updating the syntax table.
17491
17492 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
17493
17494 * syntax.c (scan_sexps_forward): Update syntax table before reading
17495 a char rather than after so we don't update the table past eob.
17496
17497 2002-11-09 Dave Love <fx@gnu.org>
17498
17499 * buffer.c (Fset_buffer_major_mode): Fix last change.
17500
17501 * regex.c (regexec): Fix pmatch declaration.
17502
17503 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
17504
17505 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
17506 to self-inserting characters.
17507 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
17508
17509 * coding.c (Vtranslation_table_for_input): New.
17510 (syms_of_coding): DEFVAR it.
17511
17512 2002-11-08 Juanma Barranquero <lektu@terra.es>
17513
17514 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
17515 window.
17516
17517 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17518
17519 * process.c (Fformat_network_address): Remove unused locals p,
17520 cp, and i.
17521
17522 2002-11-06 Dave Love <fx@gnu.org>
17523
17524 * buffer.c (Qset_buffer_major_mode_hook): New.
17525 (Fset_buffer_major_mode): Use it.
17526
17527 2002-11-06 Richard M. Stallman <rms@gnu.org>
17528
17529 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
17530 and stop_polling.
17531
17532 * process.c (wait_reading_process_input):
17533 Test POLLING_PROBLEM_IN_SELECT, not hpux.
17534 Avoid initialization for auto Lisp_Object var.
17535
17536 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
17537
17538 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
17539
17540 2002-11-05 Richard M. Stallman <rms@gnu.org>
17541
17542 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
17543
17544 * callint.c (Fcall_interactively): New local filter_specs.
17545 (Fcall_interactively): Check for progn as well as let.
17546 Add a gcpro.
17547 (Qprogn): New variable.
17548 (syms_of_callint): Staticpro and init Qprogn.
17549
17550 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
17551
17552 * lread.c (Feval_buffer): Doc fix.
17553
17554 2002-11-04 Dave Love <fx@gnu.org>
17555
17556 * keyboard.c (read_char): Always translate iff
17557 Vkeyboard_translate_table is a char table and c is valid.
17558
17559 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17560 and fix C types.
17561
17562 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
17563
17564 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
17565
17566 * editfns.c (get_pos_property): Don't hardcode Qfield.
17567
17568 * keyboard.c (adjust_point_for_property): Handle `display' prop on
17569 overlays. Also handle `invisible' prop.
17570
17571 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
17572
17573 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
17574 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
17575
17576 2002-11-01 Andreas Schwab <schwab@suse.de>
17577
17578 * editfns.c (Fmessage): Revert last change to properly handle %%.
17579
17580 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
17581
17582 * xmenu.c (unuse_menu_items): New fun.
17583 (menu_items_inuse): New var.
17584 (syms_of_xmenu): Initialize it.
17585 (init_menu_items): Use it to detect re-entrance.
17586 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
17587 (Fx_popup_menu): Remove spurious XSETFRAME.
17588
17589 * editfns.c (find_field): Make an exception for nil fields.
17590
17591 2002-11-01 Dave Love <fx@gnu.org>
17592
17593 * m/gec63.h: Deleted.
17594
17595 2002-10-31 Dave Love <fx@gnu.org>
17596
17597 * xterm.c (XTread_socket): Fix last change.
17598 (xaw_scroll_callback): Cast call_data to long to avoid warning.
17599
17600 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
17601
17602 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
17603
17604 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
17605
17606 * editfns.c (overlays_around, get_pos_property): New funs.
17607 (find_field): Use them.
17608 Also be careful not to modify POS before its last use.
17609 (Fmessage): Don't Fformat if there's nothing to format.
17610
17611 2002-10-30 Dave Love <fx@gnu.org>
17612
17613 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
17614 [HAVE_PTY_H]; Include pty.h.
17615
17616 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
17617
17618 * xterm.c (Qeql): Declare.
17619 (Vx_keysym_table): New.
17620 (syms_of_xterm): Initialize it.
17621 (XTread_socket): Use it. Deal with ASCII keysyms.
17622 (XSetIMValues) [HAVE_X11R6]: Prototype.
17623
17624 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
17625 (lispy_kana_keys): Comment out.
17626 (make_lispy_event) [XK_kana_A]: Comment out.
17627 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
17628 Fix sprintf call.
17629
17630 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
17631 regexp.h change).
17632 (TERMINFO, LIBS_TERMCAP): Define.
17633
17634 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
17635 (bcmp): Define conditional on HAVE_BCMP.
17636 (NO_SIOCTL_H): Don't define.
17637 (TIOCSIGSEND): Don't make conditional on IRIX6.
17638
17639 * s/sol2-5.h: Don't include strings.h.
17640 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
17641
17642 * s/irix6-0.h (IRIX6): Don't define.
17643 (bcopy, bcmp, bzero): Don't undef.
17644
17645 * s/irix6-5.h: Don't include strings.h.
17646 (IRIX6): Don't define.
17647 (bcopy, bcmp, bzero): Don't undef.
17648
17649 * syntax.c (Fforward_comment): Doc fix.
17650
17651 2002-10-29 Kim F. Storm <storm@cua.dk>
17652
17653 * process.c (Fsignal_process): Allow PROCESS to be specified by
17654 name in addition to pid (as integer or string).
17655
17656 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
17657
17658 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
17659 environments.
17660
17661 2002-10-27 Kim F. Storm <storm@cua.dk>
17662
17663 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17664
17665 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
17666
17667 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
17668
17669 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17670
17671 2002-10-26 Richard M. Stallman <rms@gnu.org>
17672
17673 * editfns.c (Fformat): Detect invalid format letters for floats.
17674
17675 2002-10-25 Kenichi Handa <handa@m17n.org>
17676
17677 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
17678 (x_set_title): Likewise.
17679
17680 2002-10-25 Juanma Barranquero <lektu@terra.es>
17681
17682 * macgui.h:
17683 * w32gui.h: Remove definition of XColor.
17684
17685 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
17686
17687 2002-10-24 Kim F. Storm <storm@cua.dk>
17688
17689 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
17690 Callers changed (supply dummy arg).
17691
17692 * lisp.h (get_window_cursor_type): Update prototype.
17693
17694 * w32term.c (x_display_and_set_cursor): Get active_cursor from
17695 get_window_cursor_type to track system caret.
17696
17697 2002-10-24 Kim F. Storm <storm@cua.dk>
17698
17699 * process.c (Fformat_network_address): New function.
17700 (syms_of_process): Defsubr it.
17701 (list_processes_1): Use it to format :local/:remote address if
17702 service/host is not set; before Emacs would crash in that case.
17703 (Fmake_network_process): Don't use Ffind_operation_coding_system
17704 to setup coding system if host or service is not set.
17705
17706 2002-10-23 Juanma Barranquero <lektu@terra.es>
17707
17708 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
17709
17710 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
17711 COLORREF.
17712
17713 * macgui.h:
17714 * w32gui.h: Add definition of XColor.
17715
17716 * macfns.c:
17717 * w32fns.c:
17718 * xfaces.c: Remove definition of XColor.
17719
17720 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
17721
17722 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
17723
17724 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
17725 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
17726 window if it is dedicated.
17727 (Fshrink_window): Add preserve_before as was done for enlarge_window.
17728 (Vspecial_display_function): Update docstring.
17729
17730 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
17731 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
17732 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
17733
17734 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
17735
17736 * casefiddle.c (casify_region): Don't treat a prefix char as part
17737 of a word when at the beginning.
17738
17739 2002-10-17 Juanma Barranquero <lektu@terra.es>
17740
17741 * lread.c (syms_of_lread): Fix typos.
17742
17743 2002-10-17 Dave Love <fx@gnu.org>
17744
17745 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
17746
17747 2002-10-16 Richard M. Stallman <rms@gnu.org>
17748
17749 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
17750
17751 2002-10-14 Juanma Barranquero <lektu@terra.es>
17752
17753 * w16select.c (syms_of_win16select): Fix docstring for
17754 `selection-coding-system'.
17755
17756 * w32select.c (syms_of_w32select): Likewise.
17757
17758 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
17759
17760 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
17761 a backslash-quoted char.
17762 (scan_lists, scan_sexps_forward): Pacify the compiler.
17763
17764 2002-10-13 Richard M. Stallman <rms@gnu.org>
17765
17766 * window.c (window_scroll): Set immediate_quit.
17767
17768 * print.c (print): When backquote form is the car of a list,
17769 output in old style. Use old_backquote_output to output all
17770 comma forms inside it in old style too.
17771
17772 * buffer.h (struct buffer): Move `undo_list' down below `name'.
17773
17774 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
17775
17776 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
17777 batch mode).
17778
17779 * lread.c (Fload): Doc fix (load-suffixes).
17780
17781 2002-10-10 Steven Tamm <steventamm@mac.com>
17782
17783 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
17784 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
17785 Also switch the default to Qnil from Qt.
17786
17787 2002-10-08 Kenichi Handa <handa@m17n.org>
17788
17789 * coding.c (code_convert_region): When we need more GAP for
17790 conversion, pay attention to the case that coding->produced is not
17791 greater than coding->consumed.
17792
17793 2002-10-07 Richard M. Stallman <rms@gnu.org>
17794
17795 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
17796
17797 2002-10-06 Andrew Choi <akochoi@shaw.ca>
17798
17799 * macmenu.c (mac_menu_show): Add j to count menu items; match
17800 menu_item_selection to it to find selected item.
17801
17802 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17803
17804 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
17805 cases. The correct fix is to pass ReparentNotify to Xt.
17806 The shell widget interprets ConfigureNotify differently depending
17807 on if it has been reparented or not.
17808
17809 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
17810
17811 * editfns.c (Fformat_time_string): Doc fix.
17812
17813 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
17814
17815 * fns.c (Flength): Doc fix.
17816
17817 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
17818
17819 * keyboard.c (keyremap): New struct.
17820 (read_key_sequence): Use it: globally replace keytran_foo with
17821 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
17822 keytran_next and fkey_next to just `next'.
17823
17824 2002-10-04 Steven Tamm <steventamm@mac.com>
17825
17826 * macterm.c (keycode_to_xkeysym_table): Change return to be
17827 treated like an X keysym.
17828
17829 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17830
17831 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
17832 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
17833 This is to also handle x/y changes that occur because of a resize.
17834
17835 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
17836
17837 * frame.c (Vdelete_frame_functions): New variable.
17838 (syms_of_frame): Initialize and defvar it.
17839 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
17840 it when frame's `tooltip' parameter is non-nil.
17841
17842 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
17843
17844 * w32fns.c (x_create_tip_frame): Likewise.
17845
17846 * macfns.c (x_create_tip_frame): Likewise.
17847
17848 2002-09-30 Kenichi Handa <handa@m17n.org>
17849
17850 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
17851 -1 before calling ccl_driver.
17852
17853 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
17854 Only when it is non-nil, handle composition sequence.
17855 (setup_coding_system) <0>: Don't force composition handling.
17856
17857 * Makefile.in (lisp, shortlisp): Add utf-16.elc
17858
17859 2002-09-29 Richard M. Stallman <rms@gnu.org>
17860
17861 * search.c (Freplace_match): Adjust match data for the substitution
17862 just made in the buffer.
17863
17864 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
17865 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
17866
17867 2002-09-27 Richard M. Stallman <rms@gnu.org>
17868
17869 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
17870 (read_char): Use them. Do all exits thru the end of the function.
17871
17872 2002-09-27 Kenichi Handa <handa@etl.go.jp>
17873
17874 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
17875 is nil.
17876
17877 2002-09-26 Richard M. Stallman <rms@gnu.org>
17878
17879 * regex.h (__restrict_arr): Don't define if already defined.
17880
17881 * coding.c (run_pre_post_conversion_on_str):
17882 Save and restore Vdeactivate_mark.
17883
17884 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
17885
17886 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
17887
17888 2002-09-26 Kenichi Handa <handa@etl.go.jp>
17889
17890 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
17891 nonzero, try face's family at first. Otherwise try FAMILY at first.
17892 (choose_face_font): If C is a single byte char or latin-1, call
17893 try_font_list with PREFER_FACE_FAMILY 1.
17894
17895 2002-09-21 Richard M. Stallman <rms@gnu.org>
17896
17897 * window.c (select_window_1): Don't select frame.
17898 Set frame's selected window only when frame itself is selected.
17899 (Fselect_window): Doc fix.
17900
17901 2002-09-18 Kim F. Storm <storm@cua.dk>
17902
17903 * process.c (make-network-process): Doc fix (there is no
17904 network-server-log-function hook).
17905
17906 2002-09-18 Richard M. Stallman <rms@gnu.org>
17907
17908 * print.c (print): Clear out the unused parts of Vprint_number_table.
17909 (syms_of_print): Doc fix for `print-number-table'.
17910
17911 * unexelf.c (unexec): Undo previous change.
17912
17913 2002-09-17 Andreas Schwab <schwab@suse.de>
17914
17915 * m/alpha.h [LINUX]: Don't define DATA_START.
17916
17917 2002-09-16 Dave Love <fx@gnu.org>
17918
17919 * unexelf.c (unexec): Deal with .got, reinstating change from
17920 25-08-1999.
17921
17922 2002-09-13 Richard M. Stallman <rms@gnu.org>
17923
17924 * s/sol2-6.h (UNEXEC): Comment out definition.
17925
17926 * unexsol.c (unexec): Don't downcase first letter of error msg.
17927
17928 * xfaces.c (Fcolor_supported_p): Just one arg is required.
17929
17930 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
17931
17932 * unexsol.c: Include buffer.h, charset.h, coding.h.
17933
17934 2002-09-11 Richard M. Stallman <rms@gnu.org>
17935
17936 * unexsol.c: Don't use report_file_error; do it by hand
17937 using dlerror.
17938
17939 * process.c (wait_reading_process_input, both versions):
17940 Before calling turn_on_atimers, call stop_polling.
17941
17942 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
17943
17944 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
17945 we go to too_near_end, call clear_glyph_matrix.
17946 (redisplay_window): After make_cursor_line_fully_visible,
17947 call clear_glyph_matrix and bypass `goto done'.
17948
17949 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
17950 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
17951
17952 2002-09-10 Richard M. Stallman <rms@gnu.org>
17953
17954 * fileio.c (Fdo_auto_save): Catch error making directory.
17955 Only call push_message if we need to.
17956 At the same time, make an unwind-protect to pop it.
17957 Rename local message_p to old_message_p.
17958 (do_auto_save_make_dir, do_auto_save_eh): New functions.
17959 (do_auto_save_unwind): Don't call pop_message.
17960
17961 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
17962
17963 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
17964
17965 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
17966
17967 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
17968
17969 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
17970
17971 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
17972 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
17973 (re_match_2_internal): Be more careful with infinite loops.
17974
17975 2002-09-10 Kim F. Storm <storm@cua.dk>
17976
17977 * macros.c (end_kbd_macro): New function.
17978 (Fend_kbd_macro): Use it.
17979
17980 * macros.h (end_kbd_macro): Declare extern.
17981
17982 * keyboard.c (Fdiscard_input): If defining keyboard macro,
17983 end and save it instead of discarding it.
17984
17985 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
17986
17987 * s/sol2-6.h: Fix typo. Add comment.
17988
17989 2002-09-09 Richard M. Stallman <rms@gnu.org>
17990
17991 * regex.c (regnum_t): Use signed int, not unsigned int.
17992
17993 * s/sol2-6.h: New file.
17994
17995 * s/sol2-5.h (UNEXEC): Definition deleted.
17996
17997 2002-09-08 Kim F. Storm <storm@cua.dk>
17998
17999 * macros.c (executing_macro_index): Change type to EMACS_INT.
18000 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
18001
18002 * macros.h (executing_macro_index): Change type to EMACS_INT.
18003
18004 2002-09-06 Richard M. Stallman <rms@gnu.org>
18005
18006 * casetab.c (set_case_table): Make canon table point to eqv table.
18007
18008 2002-09-06 Juanma Barranquero <lektu@terra.es>
18009
18010 * coding.c (syms_of_coding): Fix spacing.
18011
18012 * composite.c (Fcompose_region_internal)
18013 (Fcompose_string_internal): Likewise.
18014
18015 * data.c (Flsh): Likewise.
18016
18017 * fontset.c (Fset_fontset_font): Likewise.
18018
18019 * macfns.c (Fx_server_max_request_size): Likewise.
18020
18021 * w16select.c (syms_of_win16select): Likewise.
18022
18023 * w32select.c (syms_of_w32select): Likewise.
18024
18025 * xselect.c (syms_of_xselect): Likewise.
18026
18027 2002-09-05 Richard M. Stallman <rms@gnu.org>
18028
18029 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
18030 call EXTEND_RANGE_TABLE and return a proper value.
18031 (set_image_of_range): Don't call set_image_of_range_1
18032 if no TRANSLATE or if range includes all of Latin-1.
18033 Only call it for the Latin-1 part of the range.
18034 For other cases, make two separate ranges,
18035 one for the original specified characters and one for
18036 their case-conversions.
18037
18038 2002-09-04 Richard M. Stallman <rms@gnu.org>
18039
18040 * s/sol2-5.h (UNEXEC): Use unexsol.o.
18041
18042 * window.c (displayed_window_lines): Correct for one-off bug
18043 in HEIGHT on non-window displays.
18044
18045 * regex.c (set_image_of_range_1): New function.
18046 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
18047 Return a value to indicate running out of memory.
18048 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
18049 (extend_range_table_work_area): New subroutine.
18050 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
18051 Different calling conventions, and used from set_image_of_range{,_1}.
18052 (IMMEDIATE_QUIT_CHECK): Definitions moved.
18053
18054 2002-09-04 Juanma Barranquero <lektu@terra.es>
18055
18056 * makefile.w32-in: All dependencies updated.
18057
18058 2002-09-01 Richard M. Stallman <rms@gnu.org>
18059
18060 * unexsol.c: New file.
18061
18062 * xfns.c (Qbox): Declare external, don't define.
18063
18064 * xdisp.c (redisplay_window) <force-start case>:
18065 If point is on semi-visible last line, reposition
18066 it at previous line.
18067
18068 * alloc.c (display_malloc_warning): Use display-warning.
18069 (malloc_warning_1): Function deleted.
18070
18071 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
18072
18073 * lread.c (read1): Handle #! by skipping the line.
18074
18075 2002-08-31 Richard M. Stallman <rms@gnu.org>
18076
18077 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
18078 Don't include LDFLAGS.
18079 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
18080
18081 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
18082
18083 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
18084 member of x_display_info unless we compile for some window system.
18085
18086 2002-08-31 Kim F. Storm <storm@cua.dk>
18087
18088 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
18089 (get_window_cursor_type): Don't use them.
18090 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
18091
18092 2002-08-30 Kenichi Handa <handa@etl.go.jp>
18093
18094 * xdisp.c (get_next_display_element): Fix previous change.
18095
18096 2002-08-30 Andrew Choi <akochoi@shaw.ca>
18097
18098 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
18099 (expose_window): Use it to fix the display of overlapping
18100 rows (merge code from xterm.c).
18101
18102 * macfns.c (Qbox): Add extern declaration.
18103
18104 2002-08-30 Juanma Barranquero <lektu@terra.es>
18105
18106 * w32fns.c (Qbox): Make extern.
18107 (syms_of_w32fns): Remove initialization of Qbox.
18108
18109 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
18110
18111 * xfns.c (Fx_open_connection): Fix error message.
18112
18113 2002-08-30 Kim F. Storm <storm@cua.dk>
18114
18115 The following changes consolidates the handling of the cursor
18116 type in xdisp.c, moving duplicate code and functionality from
18117 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
18118
18119 * frame.h (enum text_cursor_kinds): Consolidated here.
18120 Added DEFAULT_CURSOR value.
18121 (struct frame) <desired_cursor, cursor_width>
18122 <blink_off_cursor, blink_off_cursor_width>: New fields.
18123 Consolidated from output_x, output_w32 and output_mac structs.
18124 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18125 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
18126
18127 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
18128 Variables consolidated here.
18129 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
18130 (Vcursor_in_non_selected_windows): Renamed from
18131 cursor_in_non_selected_windows and changed to Lisp_Object.
18132 (syms_of_xdisp): Define and staticpro new and moved variables.
18133 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
18134 consolidated here. Recognize Qhollow setting.
18135 (set_frame_cursor_types): New function to set frame cursor types
18136 based on the frame parameters.
18137 (get_window_cursor_type): New function to calculate new cursor
18138 type and width for the specified window. Based on duplicated
18139 code consolidated here.
18140 Enhancements: cursor-in-non-selected-windows may be a cursor type,
18141 check buffer-local alternate-cursor-type and blink-cursor-alist
18142 before using built-in blink off methods.
18143
18144 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
18145
18146 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
18147 (get_specified_cursor_type, get_window_cursor_type)
18148 (set_frame_cursor_types): Added prototypes.
18149
18150 * macfns.c (x_specified_cursor_type): Removed.
18151 (x_set_cursor_type): Use set_frame_cursor_types.
18152 (Qbar, Qbox): Removed.
18153 (syms_of_macfns): Don't intern or staticpro them.
18154
18155 * macterm.c (x_specified_cursor_type): Remove prototype.
18156 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18157 (x_display_and_set_cursor): Use get_window_cursor_type.
18158 Remove unused local variables cursor_non_selected, active_cursor.
18159 Redraw cursor if hbar cursor width changes.
18160 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
18161
18162 * macterm.h (enum text_cursor_kinds): Removed.
18163 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
18164 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18165 (FRAME_DESIRED_CURSOR): Macro removed.
18166
18167 * w32fns.c (Vblink_cursor_alist): Removed.
18168 (Qbar, Qhbar, Qbox, Qhollow): Removed.
18169 (syms_of_w32fns): Don't intern, staticpro, or define them.
18170 (x_specified_cursor_type): Removed.
18171 (x_set_cursor_type): Use set_frame_cursor_types.
18172
18173 * w32term.c (x_specified_cursor_type): Remove prototype.
18174 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18175 (x_display_and_set_cursor): Use get_window_cursor_type.
18176 Remove unused local variables cursor_off_state.
18177 Redraw cursor if hbar cursor width changes.
18178 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
18179
18180 * w32term.h (enum text_cursor_kinds): Removed.
18181 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
18182 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18183 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18184 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
18185 (struct w32_display_info) <x_highlight_frame>: Renamed member from
18186 w32_highlight_frame.
18187
18188 * xfns.c (Vblink_cursor_alist): Removed.
18189 (Qbar, Qhbar, Qbox, Qhollow): Removed.
18190 (syms_of_xfns): Don't intern, staticpro, or define them.
18191 (x_specified_cursor_type): Removed.
18192 (x_set_cursor_type): Use set_frame_cursor_types.
18193
18194 * xterm.c (x_specified_cursor_type): Remove prototype.
18195 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18196 (x_display_and_set_cursor): Use get_window_cursor_type.
18197 Remove unused local variables cursor_off_state.
18198 Redraw cursor if hbar cursor width changes.
18199
18200 * xterm.h (enum text_cursor_kinds): Removed.
18201 (struct output_x) <current_cursor, desired_cursor, cursor_width>
18202 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18203 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18204 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
18205 (x_specified_cursor_type): Remove prototype.
18206
18207 2002-08-28 Richard M. Stallman <rms@gnu.org>
18208
18209 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
18210 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
18211 (Vblink_cursor_alist): New variable.
18212 (syms_of_w32fns): Initialize and defvar it.
18213 (x_specified_cursor_type): Recognize Qbox for filled box.
18214 Exceptions are hollow boxes.
18215 (Qbox, Qhollow): New variables.
18216 (syms_of_w32fns): Initialize and staticpro them.
18217
18218 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
18219 New macros.
18220 (struct w32_output): New fields blink_off_cursor,
18221 blink_off_cursor_width.
18222 (FRAME_CURSOR_WIDTH): New macro.
18223
18224 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
18225 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
18226
18227 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18228 for bar cursor.
18229
18230 * w32term.c (expose_overlaps): New function.
18231 (expose_window): Use it to fix the display of overlapping rows.
18232
18233 2002-08-28 Simon Josefsson <jas@extundo.com>
18234
18235 * xfns.c (Fx_open_connection): Improve help when X connection
18236 fails, xhost is insecure and xauth is better.
18237
18238 2002-08-28 Juanma Barranquero <lektu@terra.es>
18239
18240 * makefile.w32-in: Add missing dependencies on w32term.h and
18241 composite.h.
18242
18243 * emacs.c (USAGE1): Add missing newline.
18244
18245 2002-08-27 Andrew Choi <akochoi@shaw.ca>
18246
18247 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
18248
18249 2002-08-27 Richard M. Stallman <rms@gnu.org>
18250
18251 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
18252 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
18253 (Vblink_cursor_alist): New variable.
18254 (syms_of_xfns): Initialize and defvar it.
18255 (x_specified_cursor_type): Recognize Qbox for filled box.
18256 Exceptions are hollow boxes.
18257 (Qbox, Qhollow): New variables.
18258 (syms_of_xfns): Initialize and staticpro them.
18259
18260 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
18261 New macros.
18262 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
18263
18264 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
18265 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
18266
18267 * emacs.c (main): Handle --script.
18268 (USAGE1): Mention --script.
18269 (standard_args): Define sort order for --script.
18270
18271 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
18272
18273 * xdisp.c (redisplay_updating_p): Variable removed.
18274 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
18275 New variables.
18276 (init_iterator): Don't free realized faces if
18277 inhibit_free_realized_faces is set.
18278 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
18279 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
18280 initialize Qinhibit_free_realized_faces.
18281
18282 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
18283 when iterator is adding glyphs to a glyph matrix.
18284
18285 2002-08-27 Kenichi Handa <handa@etl.go.jp>
18286
18287 * xdisp.c (get_next_display_element): In unibyte case, don't use
18288 octal form for such eight-bit characters that can be converted to
18289 multibyte char.
18290
18291 2002-08-26 Kim F. Storm <storm@cua.dk>
18292
18293 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
18294 foreground and background colors. From Joe Buehler.
18295
18296 2002-08-26 Miles Bader <miles@gnu.org>
18297
18298 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
18299
18300 2002-08-25 Andrew Choi <akochoi@shaw.ca>
18301
18302 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
18303 defined instead of MAC_OSX.
18304
18305 * s/darwin.h (select): Define select to sys_select only if
18306 HAVE_CARBON is defined.
18307 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
18308 (DONT_REOPEN_PTY): #def it.
18309
18310 * macterm.c (XTread_socket): Remove code to call
18311 SendEventToEventTarget for keys with command modifiers when
18312 mac_command_key_is_meta is nil.
18313
18314 2002-08-24 Andreas Schwab <schwab@suse.de>
18315
18316 * eval.c (Fdefvar): Fix last change.
18317
18318 2002-08-23 Richard M. Stallman <rms@gnu.org>
18319
18320 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
18321 Record variables in load history as (defvar . VAR).
18322 (Fdefvar): Don't record in load history if no initial value.
18323 (Qdefvar): New variable.
18324 (syms_of_eval): Init and staticpro it.
18325
18326 * lread.c (syms_of_lread): Doc fix.
18327 (build_load_history): Use Fmember to see if a definition
18328 is already in the Vload_history element.
18329
18330 * process.c (Fstart_process): Remove /: from program name.
18331
18332 * emacs.c (decode_env_path): Don't add /: if file name handler
18333 has a `safe-magic' property.
18334
18335 * callproc.c (Fcall_process): Remove /: from program name.
18336
18337 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
18338
18339 * regex.c (PATFETCH): Remove the translating fetch.
18340 (PATFETCH_RAW): Rename to PATFETCH.
18341 (set_image_of_range): New fun.
18342 (SET_RANGE_TABLE_WORK_AREA): Use it.
18343 (regex_compile): Don't translate the pattern chars so eagerly.
18344 Only do it when inserting an `exactn' bytecode or when handling
18345 a char-range.
18346 (mutually_exclusive_p): Avoid empty statement.
18347
18348 2002-08-22 Kim F. Storm <storm@cua.dk>
18349
18350 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
18351 end up on a partially visible line; this reverts a specific part
18352 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
18353 display error which has been reported several times now.
18354 However it introduces the problem that changes was supposed to fix.
18355 See my comments in the source if you want to debug this further.
18356
18357 2002-08-20 Kenichi Handa <handa@etl.go.jp>
18358
18359 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18360
18361 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
18362
18363 * msdos.c (croak): Add `void' to definition.
18364
18365 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
18366 Don't define them, they are defined in msdos.c.
18367
18368 * mem-limits.h [MSDOS]: Declare etext.
18369
18370 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
18371 `const' since CORRECT_DIR_SEPS modifies its target.
18372
18373 2002-08-19 Kim F. Storm <storm@cua.dk>
18374
18375 * keyboard.c (Fclear_this_command_keys): Add optional arg
18376 KEEP-RECORD to avoid clearing lossage when we just want to clear
18377 the current key sequence (kmacro needs this).
18378
18379 2002-08-19 Kenichi Handa <handa@localhost>
18380
18381 * composite.c (run_composition_function): Call FUNC if it is fboundp.
18382
18383 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
18384 cons, return Qnil.
18385
18386 2002-08-17 Richard M. Stallman <rms@gnu.org>
18387
18388 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
18389
18390 * sysdep.c [!VMS]: Include sys/files.h.
18391
18392 * editfns.c (save_restriction_restore): Defend from unchained marker.
18393
18394 * buffer.c (overlays_at): Handle extending vec uniformly.
18395 (overlays_in): Handle extending vec from length 0 as in overlays_at.
18396
18397 2002-08-15 Andrew Choi <akochoi@shaw.ca>
18398
18399 * mac.c (init_mac_osx_environment): New function.
18400
18401 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
18402
18403 2002-08-14 Kim F. Storm <storm@cua.dk>
18404
18405 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
18406 executing macro before appending to it (when used from Lisp).
18407 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
18408 which is called prior to each iteration of macro (for kmacro.el).
18409 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
18410
18411 * lisp.h (Fexecute_kbd_macro): Update prototype.
18412
18413 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
18414
18415 2002-08-14 Kenichi Handa <handa@etl.go.jp>
18416
18417 * xselect.c (QUTF8_STRING): New variable.
18418 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
18419 (x_atom_to_symbol): Likewise.
18420 (x_get_local_selection): New argument local_request. If it is
18421 nonzero, call handler_fn with the second arg nil.
18422 (x_handle_selection_request): Call x_get_local_selection with
18423 local_request 0.
18424 (lisp_data_to_selection_data): Don't encode the string here.
18425 (Fx_get_selection_internal): Call x_get_local_selection with
18426 local_request 1.
18427 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
18428
18429 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
18430
18431 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
18432
18433 2002-08-13 Richard M. Stallman <rms@gnu.org>
18434
18435 * minibuf.c (Fminibufferp): New function.
18436 (syms_of_minibuf): Defsubr it.
18437 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
18438
18439 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
18440
18441 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
18442
18443 2002-08-12 Richard M. Stallman <rms@gnu.org>
18444
18445 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
18446 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
18447 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
18448 already.
18449
18450 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
18451
18452 2002-08-11 Andrew Choi <akochoi@shaw.ca>
18453
18454 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
18455 (Vmac_pass_command_to_system): New variable.
18456 (Vmac_pass_control_to_system): New variable.
18457 (do_mouse_moved): Check wp with is_emacs_window.
18458 (XTread_socket): Check window_ptr with is_emacs_window.
18459 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
18460 events back to Mac Toolbox for processing, depending on values of
18461 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
18462 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
18463 Vmac_pass_control_to_system.
18464
18465 2002-08-10 Kenichi Handa <handa@etl.go.jp>
18466
18467 * coding.c (unencodable_char_position): New function.
18468 (Funencodable_char_position): New function.
18469 (syms_of_coding): Defsubr Funencodable_char_position.
18470
18471 2002-08-10 Andrew Choi <akochoi@shaw.ca>
18472
18473 * mac.c (sys_select) [MAC_OSX]: New function.
18474
18475 * macterm.c (MakeMeTheFrontProcess): New function.
18476 (mac_initialize): Call MakeMeTheFrontProcess.
18477
18478 * s/darwin.h: Define select to sys_select.
18479
18480 2002-08-09 Richard M. Stallman <rms@gnu.org>
18481
18482 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
18483
18484 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
18485
18486 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
18487 end of the buffer.
18488
18489 2002-08-08 Ken Raeburn <raeburn@gnu.org>
18490
18491 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
18492
18493 * puresize.h (BASE_PURESIZE): Increase to 910000.
18494
18495 2002-08-08 Kenichi Handa <handa@etl.go.jp>
18496
18497 * coding.c (Ffind_operation_coding_system): For write-region, if
18498 VISIT is a filename, make it the target.
18499
18500 2002-08-07 Richard M. Stallman <rms@gnu.org>
18501
18502 * alloc.c (mark_object): Detect long lists for debugging.
18503 (mark_object_loop_halt): New variable.
18504
18505 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
18506
18507 * data.c (Fmake_variable_frame_local): Doc fix.
18508
18509 2002-08-01 David Ponce <david@dponce.com>
18510
18511 * w32menu.c (local_heap, local_alloc, local_free): New macros.
18512 (malloc_widget_value, free_widget_value)
18513 (w32_free_submenu_strings): Use them.
18514
18515 (push_submenu_start, push_submenu_end, push_left_right_boundary)
18516 (push_menu_pane, push_menu_item, single_keymap_panes)
18517 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
18518 (single_submenu, set_frame_menubar)
18519 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
18520
18521 (Fx_popup_menu): Don't show pop up menu until preceding one is
18522 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
18523
18524 * w32menu.c: Changes adapted from xmenu.c
18525 (set_frame_menubar): First parse all submenus,
18526 then make widget_value trees from them.
18527 Don't allocate any widget_value objects
18528 until we are done with the parsing.
18529 (parse_single_submenu): New function.
18530 (digest_single_submenu): New function.
18531 (single_submenu): Function deleted, replaced by those two.
18532
18533 2002-08-04 Andrew Choi <akochoi@shaw.ca>
18534
18535 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
18536 returns a valid window pointer before proceeding for keyDown and
18537 autoKey events.
18538
18539 2002-08-03 Andrew Choi <akochoi@shaw.ca>
18540
18541 * macterm.c (USE_CARBON_EVENTS): New macro.
18542 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
18543 (x_iconify_frame): Call CollapseWindow.
18544 (Vmac_reverse_ctrl_meta): New variable.
18545 (Vmac_wheel_button_is_mouse_2): New variable.
18546 (init_mac_drag_n_drop): New function.
18547 (mac_do_receive_drag): New function.
18548 (mac_handle_service_event): New function.
18549 (init_service_handler): New function.
18550 (mac_to_emacs_modifiers): New function.
18551 (mac_event_to_emacs_modifiers): New function.
18552 (mac_get_mouse_btn): New function.
18553 (mac_convert_event_ref): New function.
18554 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
18555 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
18556 mac_get_mouse_btn.
18557 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
18558
18559 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
18560 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
18561 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
18562 TOOL_BAR_EVENT for MAC_OS as well.
18563 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
18564 as for WINDOWS_NT.
18565 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
18566
18567 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
18568
18569 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
18570
18571 * xdisp.c (forward_to_next_line_start): Fix a condition that
18572 lead to a newline being skipped.
18573
18574 2002-08-02 Andrew Choi <akochoi@shaw.ca>
18575
18576 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
18577
18578 2002-08-01 Richard M. Stallman <rms@gnu.org>
18579
18580 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
18581
18582 2002-07-31 Andrew Choi <akochoi@shaw.ca>
18583
18584 * macfns.c: #undef init_process before #define-ing it.
18585
18586 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
18587 HAVE_CARBON is defined.
18588
18589 2002-07-31 Richard M. Stallman <rms@gnu.org>
18590
18591 * xmenu.c (set_frame_menubar): First parse all submenus,
18592 then make widget_value trees from them.
18593 Don't allocate any widget_value objects
18594 until we are done with the parsing.
18595 (parse_single_submenu): New function.
18596 (digest_single_submenu): New function.
18597 (single_submenu): Function deleted, replaced by those two.
18598
18599 2002-07-30 Juanma Barranquero <lektu@terra.es>
18600
18601 * w32proc.c (syms_of_ntproc): Fix docstring of
18602 `w32-get-true-file-attributes'.
18603
18604 2002-07-28 Richard M. Stallman <rms@gnu.org>
18605
18606 * s/hpux8.h (HPUX8): Define this before including hpux.h.
18607 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
18608
18609 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
18610
18611 * keyboard.c (make_lispy_event):
18612 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
18613 Explicitly clear up_modifier in event->modifiers.
18614
18615 2002-07-27 Richard M. Stallman <rms@gnu.org>
18616
18617 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
18618
18619 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18620 for bar cursor.
18621
18622 2002-07-26 Kenichi Handa <handa@etl.go.jp>
18623
18624 * coding.c (detect_coding_iso2022): While checking a byte sequence
18625 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
18626 it in the normal loop.
18627
18628 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
18629
18630 * xterm.c (expose_overlaps): New function.
18631 (expose_window): Use it to fix the display of overlapping rows.
18632
18633 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
18634
18635 2002-07-23 Ken Raeburn <raeburn@gnu.org>
18636
18637 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
18638 since it only depends on XUINT.
18639
18640 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
18641 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
18642 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
18643 Macros deleted.
18644
18645 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
18646 its value over other approaches.
18647 * sysdep.c (start_of_data): Don't define the function if a macro
18648 form has been defined.
18649
18650 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
18651
18652 * xdisp.c (redisplay_updating_p): New variable.
18653 (init_iterator): Don't free realized faces when
18654 redisplay_updating_p is set.
18655 (redisplay_internal): Set redisplay_updating_p while updating
18656 the display.
18657
18658 2002-07-23 Richard M. Stallman <rms@gnu.org>
18659
18660 * editfns.c (Fmessage): Treat "" like nil.
18661
18662 2002-07-23 Kenichi Handa <handa@etl.go.jp>
18663
18664 * xdisp.c (face_before_or_after_it_pos):
18665 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18666
18667 2002-07-22 Juanma Barranquero <lektu@terra.es>
18668
18669 * callproc.c (init_callproc) [DOS_NT]:
18670 Initialize Vshared_game_score_directory to nil.
18671 (syms_of_callproc) [DOS_NT]: Likewise.
18672
18673 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
18674
18675 * xdisp.c (display_line): Replace an abort with xassert.
18676
18677 2002-07-21 Richard M. Stallman <rms@gnu.org>
18678
18679 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
18680 and END_UNCHANGED when setting buffer_unchanged_p.
18681 Use current_matrix_up_to_date_p to decide whether to use
18682 try_cursor_movement.
18683
18684 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
18685
18686 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
18687
18688 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
18689 Set to nil if dir does not exist.
18690 (syms_of_callproc): Init unconditionally and simply.
18691
18692 * buffer.c (Fbuffer_list): Doc fix.
18693
18694 2002-07-21 Ken Raeburn <raeburn@gnu.org>
18695
18696 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
18697
18698 * buffer.c (mmap_realloc): When shrinking, make sure number of
18699 pages to unmap is rounded towards zero.
18700
18701 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
18702 (XSETINT): Deleted.
18703
18704 * m/att3b.h (XINT): Don't define.
18705 (VALBITS, VALMASK, XTYPE): Deleted.
18706 (DATA_SEG_BITS): Define.
18707 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
18708 ARRAY_MARK_FLAG): Deleted.
18709 (DATA_SEG_BITS): Define.
18710 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
18711 (DATA_SEG_BITS): Define.
18712
18713 2002-07-20 Richard M. Stallman <rms@gnu.org>
18714
18715 * print.c (print_error_message): New args CONTEXT and CALLER.
18716 Calls changed.
18717
18718 * lisp.h (print_error_message): Declare new args.
18719
18720 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
18721 and CONTEXT to print_error_message, don't print them here.
18722 For a Quit, don't use Vsignaling_function.
18723 Call message_log_maybe_newline.
18724
18725 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
18726
18727 2002-07-20 Kim F. Storm <storm@cua.dk>
18728
18729 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
18730
18731 2002-07-19 Ken Raeburn <raeburn@gnu.org>
18732
18733 * bytecode.c (struct byte_stack): Pointers into byte string now
18734 point to const.
18735 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
18736 const.
18737 * charset.h (BCOPY_SHORT): Source pointer now points to const.
18738 * coding.c (encode_eol, detect_coding, detect_eol):
18739 (decode_coding, encode_coding, detect_coding_system):
18740 Source strings now treated as const.
18741 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
18742 modify Lisp string contents.
18743 * coding.h (decode_coding, encode_coding, detect_coding,
18744 detect_eol): Declarations updated.
18745 * composite.c (compose_chars_in_text): Treat Lisp string contents
18746 as const.
18747 * dispnew.c (safe_bcopy): Source pointer now points to const.
18748 * lisp.h (STRING_COPYIN): New macro.
18749 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
18750 (internal_with_output_to_temp_buffer): Declarations updated.
18751 * print.c (temp_output_buffer_setup):
18752 (internal_with_output_to_temp_buffer): Buffer name argument is now
18753 pointer to const.
18754 * sound.c (struct sound_device): Function pointer field "write"
18755 buffer argument now points to const.
18756 (vox_write): Buffer argument points to const.
18757 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
18758 contents as const.
18759 * sysdep.c (emacs_write): Buffer pointer now const.
18760 * term.c (encode_terminal_code): Buffer pointer now const.
18761 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
18762 (x_face_list_fonts, x_update_menu_appearance):
18763 (hash_string_case_insensitive): Treat Lisp string contents as const.
18764
18765 2002-07-19 Juanma Barranquero <lektu@terra.es>
18766
18767 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
18768
18769 * fileio.c (syms_of_fileio): Likewise.
18770 (Ffile_name_as_directory): Fix argument name in docstring.
18771 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
18772
18773 2002-07-18 Richard M. Stallman <rms@gnu.org>
18774
18775 * data.c (Fdefalias): Doc fix.
18776
18777 2002-07-17 Dave Love <fx@gnu.org>
18778
18779 * intervals.h (text_property_stickiness): Use P_.
18780
18781 * ccl.c: Remove `emacs' conditionals.
18782 (ccl_backtrace_table): Fix size spec.
18783 (ccl_driver): Fix type errors.
18784
18785 2002-07-16 Ken Raeburn <raeburn@gnu.org>
18786
18787 * alloc.c (xstrdup, make_string, make_unibyte_string)
18788 (make_multibyte_string, build_string): String pointer args now
18789 point to const.
18790 * charset.c (find_charset_in_text, c_string_width):
18791 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
18792 * fileio.c (report_file_error):
18793 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
18794 (count_combining_before, count_combining_after, insert_1_both):
18795 (insert, insert_and_inherit, insert_string):
18796 (insert_before_markers, insert_before_markers_and_inherit):
18797 * lread.c (intern, oblookup, hash_string):
18798 * minibuf.c (temp_echo_area_glyphs):
18799 * search.c (fast_c_string_match_ignore_case):
18800 * sysdep.c (emacs_open, set_file_times):
18801 * xfaces.c (xstricmp):
18802 * xdisp.c (store_frame_title, string_char_and_length):
18803 (message_dolog, message2, message2_nolog, set_message): Likewise.
18804 (set_message_1): Cast message string argument to const pointer.
18805 * editfns.c (general_insert_function): Insertion function now
18806 takes pointer to const for input data.
18807 * charset.h (find_charset_in_text, c_string_width):
18808 (parse_str_as_multibyte): Declarations updated.
18809 * dispextern.h (xstricmp): Declaration updated.
18810 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
18811 (count_size_as_multibyte, count_combining_before):
18812 (count_combining_after, insert_1, insert_1_both, message_dolog):
18813 (insert, insert_and_inherit, insert_before_markers)
18814 (insert_before_markers_and_inherit, set_message, message2):
18815 (message2_dolog, build_string, make_string, make_unibyte_string):
18816 (make_multibyte_string, intern, oblookup, report_file_error):
18817 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
18818 (emacs_open, xstrdup): Declarations updated.
18819 * systime.h (set_file_times): Declaration updated.
18820
18821 * charset.c (find_charset_in_text, lisp_string_width): Use const
18822 for pointer to lisp string data.
18823 * charset.h (FETCH_STRING_CHAR_ADVANCE):
18824 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
18825 * coding.c (Ffind_coding_systems_region_interval):
18826 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
18827 (Fmake_directory_internal, Fdelete_directory):
18828 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
18829 * fontset.c (font_family_registry, fs_query_fontset):
18830 (list_fontsets):
18831 * frame.c (Fframe_parameter):
18832 * keyboard.c (cmd_error_internal):
18833 * keymap.c (Fdescribe_buffer_bindings):
18834 * lread.c (complete_filename_p, openp):
18835 * minibuf.c (Fminibuffer_complete_word):
18836 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
18837 (face_before_or_after_it_pos, next_element_from_string):
18838 (get_overlay_arrow_glyph_row, display_mode_element):
18839 (decode_mode_spec_coding):
18840 * xterm.c (same_x_server): Likewise.
18841
18842 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
18843 settings of non-existent fields.
18844
18845 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
18846 copy a lisp value.
18847
18848 * lread.c (Fintern_soft): Use string macros instead of
18849 Lisp_String fields.
18850 * keyboard.c (echo_char, parse_modifiers_uncached):
18851 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
18852 * textprop.c (validate_interval_range, interval_of): Likewise.
18853
18854 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
18855
18856 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18857 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
18858 XSTRING()->size_byte.
18859
18860 * lisp.h (SDATA, SREF): Produce rvalue.
18861 (SSET): New macro.
18862 * alloc.c (make_event_array): Use SSET for storing into a string.
18863 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
18864 a string.
18865 * casefiddle.c (casify_object): Use SSET.
18866 * charset.h (FETCH_STRING_CHAR_ADVANCE)
18867 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
18868 address of string contents.
18869 * data.c (Faref): Use SDATA.
18870 (Faset): Use SDATA, SSET.
18871 * dired.c (directory_files_internal): Use SSET.
18872 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
18873 (Fread_file_name): Use SREF, SSET.
18874 * fns.c (concat): Use SSET.
18875 (concat, Fdelete): Use SDATA.
18876 * insdel.c (insert_from_string_1): Use SDATA.
18877 * keyboard.c (Fevent_convert_list): Use SREF.
18878 * lread.c (Fload): Use SDATA, SSET.
18879 * macfns.c (validate_x_resource_name): Use SSET.
18880 * process.c (status_message): Use SSET.
18881 * search.c (wordify): Use SDATA.
18882 (Freplace_match): Use SREF.
18883 * w32fns.c (validate_x_resource_name): Use SSET.
18884 * xfns.c (validate_x_resource_name): Use SSET.
18885 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
18886
18887 2002-07-16 Richard M. Stallman <rms@gnu.org>
18888
18889 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
18890
18891 * xdisp.c (reconsider_clip_changes):
18892 Don't test prevent_redisplay_optimizations_p.
18893 (redisplay_internal): Test prevent_redisplay_optimizations_p
18894 along with clip_changed in some cases.
18895 (try_window_id): Likewise.
18896 (redisplay_window): New local var buffer_unchanged_p.
18897
18898 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
18899
18900 * process.c (create_process): Test USG_SUBTTY_WORKS.
18901 (process_send_signal): Clean up handling of GID.
18902 Detect errors in ioctls meant to set GID.
18903
18904 * window.c (temp_output_buffer_show):
18905 Don't set prevent_redisplay_optimizations_p.
18906
18907 2002-07-15 Juanma Barranquero <lektu@terra.es>
18908
18909 * eval.c (Fdefvaralias): Add docstring argument.
18910
18911 2002-07-15 Ken Raeburn <raeburn@gnu.org>
18912
18913 * lisp.h (STRING_INTERVALS): Produce rvalue.
18914 (STRING_SET_INTERVALS): New macro.
18915 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
18916 * fns.c (Fstring_as_multibyte): Likewise.
18917 * intervals.c (balance_possible_root_interval, delete_interval)
18918 (create_root_interval, copy_intervals_to_string): Likewise.
18919 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
18920 instead of 0.
18921
18922 2002-07-14 Ken Raeburn <raeburn@gnu.org>
18923
18924 * lisp.h (STRING_SET_CHARS): New macro.
18925 (SCHARS, SBYTES): Produce rvalues.
18926 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
18927 * fns.c (concat): Likewise.
18928 * lread.c (read_vector): Likewise.
18929
18930 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
18931 (STRING_SET_UNIBYTE): New macro.
18932 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
18933 length of -1) changed to use STRING_SET_UNIBYTE.
18934 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
18935 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
18936 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
18937 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
18938 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
18939 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
18940 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
18941 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
18942 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
18943 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
18944 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
18945 STRING_BYTES or indirection changed to SCHARS, SBYTES,
18946 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
18947 unchanged for now.
18948
18949 2002-07-13 Kim F. Storm <storm@cua.dk>
18950
18951 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
18952
18953 2002-07-12 Richard M. Stallman <rms@gnu.org>
18954
18955 * fileio.c (Fwrite_region): Doc fix.
18956
18957 * print.c (print_error_message): Don't handle Vsignaling_function here.
18958
18959 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
18960 (command_loop_1): Avoid certain actions after memory-full error.
18961
18962 * eval.c (Fsignal): Don't call cancel_hourglass.
18963 For a memory-full error, don't call Vsignal_hook_function
18964 and don't set Vsignaling_function.
18965
18966 * process.c (process_send_signal): Add abort call.
18967
18968 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
18969
18970 * keymap.c (Fkey_binding): Fix typo.
18971
18972 2002-07-11 Richard M. Stallman <rms@gnu.org>
18973
18974 * alloc.c (Vmemory_full): New variable.
18975 (Vmemory_signal_data): Rename from memory_signal_data.
18976 Uses changed.
18977 (syms_of_alloc): Defvar them.
18978 (memory_full, buffer_memory_full): Set Vmemory_full.
18979
18980 * lisp.h (Vmemory_full): Add declaration.
18981 (current_column, indented_beyond_p): Change declaration.
18982
18983 * indent.c (last_known_column): Declare as double, not float.
18984 (current_column, current_column_1, string_display_width)
18985 (position_indentation): Return `double'.
18986 (indented_beyond_p): Arg `column' is `double'. Callers changed.
18987
18988 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
18989 (back_to_previous_visible_line_start)
18990 (reseat_at_next_visible_line_start, next_element_from_buffer):
18991 Use `double', not `float', when calling indented_beyond_p.
18992
18993 * s/hpux11.h (BROKEN_SA_RESTART): Define.
18994
18995 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
18996
18997 2002-07-11 Juanma Barranquero <lektu@terra.es>
18998
18999 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
19000 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
19001 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
19002 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
19003 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
19004 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
19005
19006 2002-07-10 Juanma Barranquero <lektu@terra.es>
19007
19008 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
19009 All callers changed.
19010
19011 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
19012
19013 * data.c (Fdefalias): Add an optional `docstring' argument.
19014 (set_internal, Fsetq_default): Use XCAR/XCDR.
19015
19016 * composite.c (HASH_VALUE, HASH_KEY):
19017 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
19018
19019 2002-07-09 Kenichi Handa <handa@etl.go.jp>
19020
19021 * callproc.c (Fcall_process): Fix previous change.
19022
19023 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
19024
19025 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
19026 Add support for hash-tables.
19027 (Ftry_completion): Return t even if the string appears multiple times.
19028
19029 * fns.c (Fnconc): Use XCDR.
19030 (Fprovide): Use CONSP and XCDR.
19031 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
19032 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
19033 (Fmake_hash_table): Accept `:size nil'.
19034 (Fmakehash): Delete: moved to subr.el.
19035 (syms_of_fns): Don't defsubr makehash.
19036
19037 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
19038 (HASH_TABLE_SIZE): Move from fns.c.
19039
19040 2002-07-07 Richard M. Stallman <rms@gnu.org>
19041
19042 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
19043 Instead just return 0 when there is something to be done.
19044 (try_scrolling): If make_cursor_line_fully_visible returns 0,
19045 retry scrolling as if cursor were off the bottom.
19046 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
19047 return CURSOR_MOVEMENT_MUST_SCROLL.
19048 (redisplay_window): If make_cursor_line_fully_visible returns 0,
19049 go to try_to_scroll.
19050
19051 * buffer.c (Fbuffer_local_value): Store current value into its binding
19052 so we get the up-to-date value for the binding that is loaded.
19053
19054 * eval.c (Fdefmacro): Doc fix.
19055
19056 2002-07-05 Dave Love <fx@gnu.org>
19057
19058 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
19059 correctly.
19060
19061 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
19062 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
19063 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
19064 CCL_LookupCharConstTbl.
19065 (syms_of_ccl): Defvar translation-hash-table-vector.
19066
19067 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19068
19069 * xdisp.c: Remove unused variable `face'.
19070
19071 2002-07-04 Juanma Barranquero <lektu@terra.es>
19072
19073 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
19074 obsolescence information.
19075
19076 2002-07-03 Andrew Choi <akochoi@shaw.ca>
19077
19078 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
19079 pattern. Search cache first.
19080 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
19081 for Japanese font.
19082 (XLoadQueryFont): Use it.
19083
19084 2002-07-02 Richard M. Stallman <rms@gnu.org>
19085
19086 * keymap.c (Fdefine_key): Doc fix.
19087
19088 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
19089
19090 2002-07-02 Juanma Barranquero <lektu@terra.es>
19091
19092 * keymap.c (syms_of_keymap): Fix typo.
19093
19094 2002-07-01 Andrew Choi <akochoi@shaw.ca>
19095
19096 * s/darwin.h: Define POSIX_SIGNALS.
19097
19098 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
19099 and FSRefMakePath to convert FSSpec returned with Apple Event to
19100 Posix pathname.
19101 (mac_initialize) [TARGET_API_MAC_CARBON]:
19102 Call init_required_apple_events and disable the `Quit' menu item
19103 provided automatically by the Carbon Toolbox.
19104
19105 2002-07-01 Dave Love <fx@gnu.org>
19106
19107 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19108 for K&R.
19109
19110 * xterm.c: Fix prototype for K&R.
19111
19112 * term.c (costs_set): Declare static, non-initialized for pcc.
19113
19114 2002-07-01 Richard M. Stallman <rms@gnu.org>
19115
19116 * keyboard.c (timer_last_idleness_start_time): New variable.
19117 (timer_start_idle): Set that.
19118 (read_key_sequence): Use that to reset timer_idleness_start_time
19119 to previous value.
19120
19121 * window.c (Frecenter): With arg, set optional_new_start.
19122
19123 * xdisp.c (redisplay_internal): Make optional_new_start really work.
19124
19125 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
19126 buffer for completion.
19127
19128 2002-06-29 Ken Raeburn <raeburn@gnu.org>
19129
19130 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
19131
19132 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19133
19134 * keyboard.c (readable_filtered_events): New function that filters
19135 FOCUS_IN_EVENT depending on parameter.
19136 (readable_events): Calls readable_filtered_events, not filtering
19137 FOCUS_IN_EVENT.
19138 (get_filtered_input_pending): New function, filtering parameter passed
19139 to readable_filtered_events.
19140 (get_input_pending): Calls get_filtered_input_pending, not filtering
19141 FOCUS_IN_EVENT.
19142 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
19143 FOCUS_IN_EVENT.
19144
19145 * xterm.h (struct x_output): Add focus_state.
19146
19147 * xterm.c (x_focus_changed): New function.
19148 (x_detect_focus_change): New function.
19149 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
19150 EnterNotify and LeaveNotify to track X focus changes.
19151
19152 2002-06-28 Andreas Schwab <schwab@suse.de>
19153
19154 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
19155
19156 2002-06-27 Kim F. Storm <storm@cua.dk>
19157
19158 * xdisp.c (mode_line_string_list, mode_line_string_face)
19159 (mode_line_string_face_prop): New variables.
19160 (store_mode_line_string): New function.
19161 (display_mode_element): Use store_mode_line_string to
19162 add mode-line string elements to mode_line_string_list
19163 when mode_line_string_list is non-nil.
19164 (Fformat_mode_line): Now returns propertized string by
19165 default. New arg NO-PROPS to ignore properties.
19166 (decode_mode_spec): Only add two dashes for %- in propertized
19167 mode-line string.
19168 (syms_of_xdisp): Init and staticpro mode_line_string_list.
19169
19170 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
19171
19172 * minibuf.c (minibuffer_completion_contents): Add return type.
19173
19174 2002-06-27 Juanma Barranquero <lektu@terra.es>
19175
19176 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
19177
19178 2002-06-26 Juanma Barranquero <lektu@terra.es>
19179
19180 * fileio.c (read_file_name_cleanup): Add missing return.
19181
19182 2002-06-26 Richard M. Stallman <rms@gnu.org>
19183
19184 * window.c (Frecenter): Don't set force_start flag.
19185
19186 * minibuf.c (do_completion, Fminibuffer_complete_word)
19187 (Fminibuffer_completion_help): Complete just the text before point.
19188 (minibuffer_completion_contents): New function.
19189
19190 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
19191
19192 * frame.c (frames_bury_buffer): Function deleted.
19193
19194 2002-06-25 Miles Bader <miles@gnu.org>
19195
19196 * callint.c (Fcall_interactively): When checking to see if doprnt hit
19197 the end of callint_message, allow for a terminating '\0'.
19198
19199 2002-06-24 Juanma Barranquero <lektu@terra.es>
19200
19201 * w32select.c: Include composite.h.
19202
19203 * w16select.c: Likewise.
19204
19205 2002-06-24 Kenichi Handa <handa@etl.go.jp>
19206
19207 * callproc.c (Fcall_process): If code detection is necessary,
19208 call detect_coding directly here.
19209
19210 * coding.c (detect_eol): Preserve coding->cmp_data.
19211
19212 * w16select.c (Fw16_get_clipboard_data):
19213 * w32fns.c (w32_to_x_font):
19214 * w32select.c (Fw32_get_clipboard_data):
19215 * xselect.c (selection_data_to_lisp_data):
19216 * xterm.c (XTread_socket): Disable composition handling.
19217
19218 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
19219
19220 * print.c (temp_output_buffer_setup): Kill all local variables.
19221
19222 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
19223
19224 * lread.c (Fread): Remove redundant and imprecise declaration.
19225
19226 * xfns.c (check_x_display_info): Use check_x_frame.
19227
19228 * .gdbinit (xprintsym): Use the new `xname' field.
19229 (xsymbol): Use it.
19230
19231 2002-06-22 Jason Rumney <jasonr@gnu.org>
19232
19233 * w32fns.c (file_dialog_callback): New function.
19234 (Fx_file_dialog): Allow selecting directories as well as files.
19235
19236 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19237
19238 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
19239 OpenBSD. Add support for mipseb-*-netbsd* machines.
19240
19241 2002-06-17 Andrew Choi <akochoi@shaw.ca>
19242
19243 * macterm.c (mac_scroll_area): Set foreground and backcolor to
19244 black and white before scrolling. Restore frame background and
19245 foreground color after scrolling.
19246 (do_window_update): Call XClearWindow before calling expose_frame.
19247 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
19248 FRAME_FOREGROUND_PIXEL of frame.
19249
19250 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
19251 test Mac command key as <ALT> key.
19252
19253 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
19254
19255 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
19256
19257 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
19258 Lookup keys in function-key-map immediately so that key-translation-map
19259 can be applied earlier.
19260 Remove function_key_possible and key_translation_possible, replaced
19261 by checking `keytran_start < t'.
19262
19263 * .gdbinit (xsymbol): Use the new `xname' field.
19264
19265 2002-06-17 Andrew Choi <akochoi@shaw.ca>
19266
19267 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
19268 test Mac command key as <ALT> key.
19269
19270 * mac.c (do_applescript): Call initialize_applescript if necessary
19271 when first called. Dispose of result_desc only when there is no error.
19272 (Fdo_applescript): Use %d format specifier instead of %ld.
19273
19274 2002-06-16 Andrew Choi <akochoi@shaw.ca>
19275
19276 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
19277 of FrontWindow for cases keyDown and autoKey.
19278
19279 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
19280 Vdefault_fontset to Monaco with mac-roman coding.
19281
19282 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
19283 init_process before and after inclusion of Carbon/Carbon.h, resp.
19284
19285 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
19286 cursor_gc.
19287 (add_font_name_table_entry): New function.
19288 (init_font_name_table): Use add_font_name_table_entry; add italic,
19289 bold, and bold-italic entries for truetype fonts.
19290
19291 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
19292 for Mac too.
19293 (try_font_list) [MAC_OS]: If no font matches given registry, try
19294 fonts with any registry matching face_family.
19295 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
19296
19297 * s/darwin.h: If autoconf detects the Ncurses library, define
19298 LIBS_TERMCAP to -lncurses to use it.
19299
19300 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
19301
19302 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
19303
19304 2002-06-15 Richard M. Stallman <rms@gnu.org>
19305
19306 * window.c (Fset_window_configuration): Explicitly preserve
19307 the point value that new_current_buffer had at the start.
19308
19309 2002-06-14 Juanma Barranquero <lektu@terra.es>
19310
19311 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
19312 Fix typos.
19313
19314 2002-06-14 Kim F. Storm <storm@cua.dk>
19315
19316 * insdel.c (insert_1_both, insert_from_string_1)
19317 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
19318 insert happened in the end_unchanged region. Otherwise, the
19319 redisplay may be confused and duplicate the last line in the
19320 buffer [seen after save-buffer when require-final-newline==t].
19321
19322 2002-06-13 Jason Rumney <jasonr@gnu.org>
19323
19324 * w32.c (init_environment): Remove EMACSLOCKDIR.
19325 (stat): Swap _S_IFDIR and _S_IFREG.
19326
19327 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19328
19329 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
19330 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
19331 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
19332 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
19333 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
19334 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
19335 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
19336 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
19337 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
19338 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
19339 SELECTION_REQUEST_EVENT, selection_clear_event to
19340 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
19341 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
19342 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
19343 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
19344 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
19345 no_event to NO_EVENT.
19346
19347 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19348
19349 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
19350
19351 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
19352
19353 * intervals.c (textget): Don't forget to `return'.
19354 (lookup_char_property): Use XCAR/XCDR.
19355
19356 2002-06-12 Juanma Barranquero <lektu@terra.es>
19357
19358 * xdisp.c (Fformat_mode_line): Fix typo.
19359
19360 2002-06-12 Kim F. Storm <storm@cua.dk>
19361
19362 * xdisp.c (Fformat_mode_line): New function.
19363 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
19364 (store_frame_title_char, store_frame_title): Use unconditionally.
19365 (init_xdisp): Defsubr Fformat_mode_line.
19366 Initialize frame_title_buf etc. unconditionally.
19367
19368 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
19369
19370 * keyboard.c (read_key_sequence):
19371 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
19372 things through those maps after downcasing events.
19373 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
19374 applies after function-key-map.
19375 Make sure that keytran can be done in the middle in the sequence.
19376 Be careful not to throw away events past the one we downcase.
19377
19378 * lread.c (read_integer): Remove unused var `tem'.
19379 (read1): Fix int/Lisp_Object mixup.
19380
19381 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
19382
19383 2002-06-11 Richard M. Stallman <rms@gnu.org>
19384
19385 * keyboard.c (readable_events): Ignore any number of
19386 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
19387
19388 2002-06-09 Miles Bader <miles@gnu.org>
19389
19390 * xfaces.c (Ftty_supports_face_attributes_p): New function.
19391 (parse_rgb_list, tty_lookup_color): New functions.
19392 (tty_defined_color): Use `tty_lookup_color' to do all the work.
19393 (color_distance, Fcolor_distance): New functions.
19394 (TTY_SAME_COLOR_THRESHOLD): New macro.
19395 (Qtty_color_standard_values): New variable.
19396 (syms_of_xfaces): Initialize new vars & functions.
19397
19398 2002-06-08 Colin Walters <walters@verbum.org>
19399
19400 * textprop.c (Vchar_property_alias_alist): New variable.
19401 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
19402
19403 * intervals.c (lookup_char_property): New function for looking up
19404 overlay and text properties, created from textget.
19405 (textget): Use it.
19406
19407 * intervals.h (lookup_char_property): Declare.
19408 (Vchar_property_alias_alist): Declare.
19409
19410 * buffer.c (Foverlay_get): Use lookup_char_property.
19411
19412 2002-06-07 Sam Steingold <sds@gnu.org>
19413
19414 * xselect.c (lisp_data_to_selection_data): Fix last change:
19415 *data_ret is not a Lisp string, while unibyte_string is.
19416
19417 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
19418
19419 * xselect.c (lisp_data_to_selection_data): Fix last change:
19420 set size_ret.
19421
19422 2002-06-07 Andreas Schwab <schwab@suse.de>
19423
19424 * m/amdx86-64.h: New file.
19425
19426 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
19427
19428 * fns.c (Fstring_make_unibyte): Doc fix.
19429
19430 * xselect.c (lisp_data_to_selection_data): If the requested type
19431 is STRING, call string_make_unibyte to encode the selected text
19432 as a string.
19433
19434 * window.c (Fset_window_hscroll): Doc fix.
19435
19436 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19437
19438 * fileio.c (choose_write_coding_system):
19439 Call select-safe-coding-system properly.
19440
19441 2002-06-03 Richard M. Stallman <rms@gnu.org>
19442
19443 * xdisp.c (message_with_string): Error if STRING is not a string.
19444
19445 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
19446
19447 * fileio.c (choose_write_coding_system): Pass FILE arg to
19448 Vselect_safe_coding_system_function.
19449
19450 2002-06-03 Ken Raeburn <raeburn@gnu.org>
19451
19452 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
19453
19454 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
19455
19456 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
19457 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
19458 * keymap.c (describe_command): Likewise.
19459 * minibuf.c (read_minibuf): Likewise.
19460
19461 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
19462 Cast `current_column' return value to int.
19463 (back_to_previous_visible_line_start)
19464 (reseat_at_next_visible_line_start, next_element_from_buffer):
19465 Cast `indented_beyond_p' 3rd arg to float.
19466
19467 * indent.c (last_known_column): Now a float.
19468 (current_column_1, position_indentation, current_column)
19469 (string_display_width): Return float.
19470 (Fcurrent_column): Cast `current_column' return value to int.
19471 (Fcurrent_indentation): Cast `position_indentation' retval to int.
19472 (indented_beyond_p): Third arg now a float.
19473 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
19474
19475 * lisp.h (current_column): Now returns float.
19476 (indented_beyond_p): 3rd arg now a float.
19477
19478 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
19479
19480 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
19481 is Qcompound_text_with_extensions.
19482
19483 * xselect.c (lisp_data_to_selection_data): Always set selection
19484 type as string if x_encode_text returns streingp non-NULL.
19485
19486 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
19487
19488 2002-05-30 Richard M. Stallman <rms@gnu.org>
19489
19490 * window.c (Fset_window_configuration): Correct the handling
19491 of point in current buffer, to work with multiple windows.
19492
19493 2002-05-29 Colin Walters <walters@verbum.org>
19494
19495 * lread.c (Fread_from_string): Don't depend on order of evaluation
19496 for C function parameters.
19497
19498 2002-05-28 Richard M. Stallman <rms@gnu.org>
19499
19500 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
19501 way for blinked-off state and for a nonselected window.
19502
19503 * window.c (window_scroll_pixel_based): Don't call Fbolp;
19504 instead, see if the new start pos is at beginning of line.
19505
19506 * fileio.c (Fwrite_region): If START is a string, don't
19507 make any annotations.
19508
19509 * eval.c (syms_of_eval): Doc fix.
19510
19511 2002-05-28 Colin Walters <walters@debian.org>
19512
19513 * emacs.c (USAGE1): Add --no-splash.
19514 (standard_args): Ditto.
19515
19516 2002-05-28 Colin Walters <walters@gnu.org>
19517
19518 * lread.c (readchar_count): New variable.
19519 (readchar): Increment it.
19520 (unreadchar): Decrement it.
19521 (read_multibyte): Decrement it.
19522 (Vread_with_symbol_positions): New variable.
19523 (Vread_symbol_positions_list): New variable.
19524 (read_internal_start): New function, created from Fread and
19525 Fread_from_string. Handle Vread_symbol_positions_list and
19526 Vread_with_symbol_positions.
19527 (readevalloop, Fread, Fread_from_string): Use it.
19528 (read1): Use readchar_count to add symbol positions to
19529 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
19530 (syms_of_lread): DEFVAR_LISP and initialize them.
19531
19532 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
19533 (substitute_object_recurse, substitute_object_in_subtree)
19534 (substitute_in_interval): Prototype.
19535 (read_multibyte): Return c if it's less than zero.
19536
19537 2002-05-28 Kim F. Storm <storm@cua.dk>
19538
19539 * fileio.c (Fread_file_name_internal): Added brute-force
19540 speed up for using predicate file-directory-p.
19541
19542 2002-05-28 Kim F. Storm <storm@cua.dk>
19543
19544 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
19545 New variables.
19546 (syms_of_fileio): DEFVAR_LISP them.
19547 (read_file_name_cleanup): New unwind function.
19548 (Fread_file_name_internal): Only return completions satifying
19549 Vread_file_name_predicate. Temporarily unwind protect and rebind
19550 default-directory while checking completions against the predicate.
19551 (Fread_file_name): Added PREDICATE argument. Specbind it to
19552 Vread_file_name_predicate during completion.
19553 Call Vread_file_name_function to read the file name if non-nil.
19554
19555 * lisp.h (Fread_file_name): Now has 6 args.
19556
19557 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
19558 predicate for Fread_file_name when reading directory name.
19559 Supply Qnil for predicate in other calls to Fread_file_name.
19560
19561 2002-05-26 Miles Bader <miles@gnu.org>
19562
19563 * term.c (tty_capable_p): New function.
19564 * dispextern.h (tty_capable_p): New function declaration.
19565 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
19566 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
19567
19568 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
19569
19570 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
19571 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
19572 (Vwrite_region_annotate_functions): Docstring fix.
19573
19574 2002-05-23 Kim F. Storm <storm@cua.dk>
19575
19576 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
19577 phys_cursor's hpos is overwritten. This is still not completely
19578 correct, as it doesn't really make sense to use hpos at all to
19579 get the cursor glyph (as that is relative to the width of the
19580 characters on the line, which may have changed during the update).
19581
19582 2002-05-22 Jason Rumney <jasonr@gnu.org>
19583
19584 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
19585 Lisp_Object.
19586 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
19587 Use modified enumfont_t struct.
19588
19589 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19590
19591 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
19592 Handle the `hbar' cursor type.
19593 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19594
19595 * w32fns.c (Qhbar): New variable.
19596 (x_specified_cursor_type): Use it.
19597
19598 2002-05-21 Ken Raeburn <raeburn@gnu.org>
19599
19600 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
19601 now, when the address is needed.
19602
19603 2002-05-21 Colin Walters <walters@gnu.org>
19604
19605 * Makefile.in (shortlisp): Add font-core.el.
19606
19607 2002-05-20 Richard M. Stallman <rms@gnu.org>
19608
19609 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
19610
19611 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
19612 equivalent key bindings here.
19613
19614 2002-05-20 Ken Raeburn <raeburn@gnu.org>
19615
19616 Change symbol structure to contain a lisp object for the symbol
19617 name:
19618 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
19619 object field named "xname".
19620 (SYMBOL_NAME): New macro.
19621 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
19622 name field.
19623 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
19624 (mark_object, gc_sweep): Use symbol xname field and XSTRING
19625 instead of name field.
19626 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
19627 SYMBOL_NAME instead of XSYMBOL and name field.
19628 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
19629 instead of XSYMBOL and name field.
19630 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
19631 and SYMBOL_NAME instead of XSYMBOL and name field.
19632 * coding.c (Fread_coding_system, code_convert_region1)
19633 (code_convert_string1, code_convert_string_norecord)
19634 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
19635 XSYMBOL and name field.
19636 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
19637 (Fmake_variable_buffer_local, Fmake_local_variable)
19638 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
19639 of XSYMBOL and name field.
19640 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
19641 XSYMBOL and name field.
19642 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
19643 instead of XSYMBOL and name field.
19644 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
19645 XSYMBOL and name field.
19646 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
19647 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19648 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
19649 instead of XSYMBOL and name field.
19650 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
19651 (parse_modifiers, apply_modifiers, Fevent_convert_list)
19652 (parse_solitary_modifier, Fexecute_extended_command):
19653 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19654 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
19655 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
19656 of XSYMBOL and name field.
19657 (describe_command, describe_translation): Use SYMBOL_NAME and
19658 assignment instead of XSYMBOL and name field and XSETSTRING.
19659 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
19660 instead of XSYMBOL and name field.
19661 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
19662 name field and XSETSTRING.
19663 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19664 of XSYMBOL and name field.
19665 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
19666 assignment instead of XSYMBOL and name field and XSETSTRING.
19667 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
19668 XSTRING instead of XSYMBOL and name field.
19669 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
19670 and XSTRING instead of XSYMBOL and name field.
19671 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
19672 and XSTRING instead of XSYMBOL and name field.
19673 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
19674 XSTRING instead of XSYMBOL and name field.
19675 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19676 of XSYMBOL and name field.
19677 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
19678 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19679
19680 2002-05-19 Ken Raeburn <raeburn@gnu.org>
19681
19682 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
19683 and XCDR real rvalues in most configurations.
19684
19685 * buffer.c (fix_overlays_in_range, fix_overlays_before):
19686 Don't take the address of the cdr part of a cons cell; instead, track
19687 the parent cell and call XSETCDR, or set the variable for the head
19688 of the list if we haven't started down the list yet.
19689
19690 2002-05-19 Richard M. Stallman <rms@gnu.org>
19691
19692 * doc.c (reread_doc_file): Don't ask for confirmation.
19693
19694 2002-05-18 Jason Rumney <jasonr@gnu.org>
19695
19696 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
19697 (xbm_load_image): Use it.
19698 (xbm_load): Ditto.
19699 (xbm_read_bitmap_data): Reverted to xfns.c version.
19700 From David Ponce <david@dponce.com>.
19701
19702 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
19703
19704 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
19705 2.02 and later.
19706
19707 2002-05-16 Juanma Barranquero <lektu@terra.es>
19708
19709 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
19710
19711 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
19712
19713 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
19714 meaningful test.
19715 (read_char_minibuf_menu_prompt): Fix typo.
19716
19717 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
19718
19719 * eval.c (Fcommandp): Doc fix.
19720
19721 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
19722
19723 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
19724 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
19725 (Fset_keymap_parent): Gcpro a bit more.
19726 (access_keymap): Gcpro around meta_map call and around the main loop.
19727 (get_keyelt): Gcpro when following indirect references.
19728 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
19729 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
19730 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
19731 Remove useless ad-hoc remap code.
19732
19733 2002-05-13 Richard M. Stallman <rms@gnu.org>
19734
19735 * search.c (search_buffer): Give up boyer moore search if inverse
19736 translation change charset_base.
19737
19738 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
19739
19740 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
19741 characters is carried over from the previous block of text, adjust
19742 coding->produced to account for the extra character.
19743
19744 2002-05-11 Andreas Schwab <schwab@suse.de>
19745
19746 * coding.c (intersection): Keep the elements of the returned list
19747 in the same order as in the first list.
19748
19749 2002-05-11 Kim F. Storm <storm@cua.dk>
19750
19751 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
19752 only update cmm_size if realloc actually succeeds.
19753 Testing with initial size of 2 elements revealed that using
19754 realloc on GNU/Linux would cause a random trap in xmalloc
19755 later on, so I rewrote the code to use malloc/bcopy/free instead
19756 of realloc.
19757
19758 2002-05-10 Jason Rumney <jasonr@gnu.org>
19759
19760 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
19761
19762 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
19763
19764 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
19765 parens, to ensure correct evaluation order.
19766
19767 2002-05-10 Kim F. Storm <storm@cua.dk>
19768
19769 * keymap.c (Vemulation_mode_map_alists): New variable.
19770 (syms_of_keymap): DEFVAR_LISP it.
19771 (current_minor_maps): Process keymap alists in that list before
19772 minor-mode-overriding-map-alist and minor-mode-map-alist.
19773
19774 2002-05-09 Richard M. Stallman <rms@gnu.org>
19775
19776 * search.c (Freplace_match): Doc fix.
19777
19778 2002-05-09 Kim F. Storm <storm@cua.dk>
19779
19780 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19781 Enlarge cursor rectangle drawn around image with non-zero relief.
19782
19783 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
19784 Enlarge cursor rectangle drawn around image with non-zero relief.
19785
19786 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
19787 Enlarge cursor rectangle drawn around image with non-zero relief.
19788
19789 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
19790
19791 * xselect.c (lisp_data_to_selection_data): Don't set selection
19792 type if comes from the Lisp object's car. If the selection
19793 contains a pure ASCII text, always return QSTRING as its type.
19794
19795 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19796
19797 * mac.c (mac-cut-function): Doc fix.
19798
19799 2002-05-05 Richard M. Stallman <rms@gnu.org>
19800
19801 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
19802
19803 2002-05-04 Jason Rumney <jasonr@gnu.org>
19804
19805 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
19806 for event-click-count.
19807
19808 * process.c (init_process): Only add server subfeature if we can
19809 use non-blocking I/O.
19810
19811 2002-05-04 Andrew Choi <akochoi@shaw.ca>
19812
19813 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
19814 repeatedly.
19815
19816 2002-05-03 Jason Rumney <jasonr@gnu.org>
19817
19818 * process.c (Fmake_network_process): Only support server sockets
19819 when we can make them non-blocking.
19820
19821 * s/ms-w32.h (HAVE_SELECT): Define.
19822
19823 * w32.h (FILE_NDELAY): New flag.
19824
19825 * w32.c (sys_getpeername, fcntl): New functions.
19826 (_sys_read_ahead): Temporarily block on non-blocking sockets.
19827
19828 * w32proc.c: Include sys/file.h.
19829
19830 2002-05-03 Colin Walters <walters@verbum.org>
19831
19832 * callproc.c (Vgame_score_directory): Renamed to
19833 Vshared_game_score_directory.
19834
19835 2002-04-30 Richard M. Stallman <rms@gnu.org>
19836
19837 * s/gnu.h [emacs]: Include stdio.h.
19838 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
19839
19840 * eval.c (do_autoload): Error if called while preparing to dump.
19841
19842 * fns.c (Frequire): Error if need to load while preparing to dump.
19843
19844 2002-04-28 Colin Walters <walters@verbum.org>
19845
19846 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
19847 Default to "~/.emacs.d/games".
19848
19849 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
19850
19851 * lread.c (openp): Change arg exec_only to predicate.
19852 (build_load_history): Use XCAR/XCDR.
19853 (Flocate_file_internal): New fun.
19854 (syms_of_lread): Defsubr it.
19855 (Fload): Update call to openp.
19856
19857 * lisp.h (openp): Update prototype.
19858
19859 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
19860 * w32proc.c (sys_spawnve):
19861 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
19862 * w32.c (check_windows_init_file):
19863 * sound.c (Fplay_sound_internal):
19864 * process.c (Fstart_process):
19865 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
19866 * mac.c (run_mac_command):
19867 * emacs.c (init_cmdargs):
19868 * callproc.c (Fcall_process): Update call to openp.
19869
19870 * textprop.c (remove_properties): Don't use XCAR without CONSP.
19871
19872 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
19873
19874 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19875
19876 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
19877 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
19878
19879 2002-04-28 Richard M. Stallman <rms@gnu.org>
19880
19881 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
19882
19883 * eval.c (Fcommandp): New arg for_call_interactively.
19884 * lisp.h (Fcommandp): Declare new arg.
19885
19886 2002-04-28 Jason Rumney <jasonr@gnu.org>
19887
19888 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
19889
19890 * w32.c (stat, fstat): Use file index information to generate
19891 inodes for directories where available.
19892
19893 2002-04-26 Andrew Choi <akochoi@shaw.ca>
19894
19895 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
19896 [HAVE_CARBON]: Include Mac object files.
19897
19898 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
19899 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
19900 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
19901 MAC_OSX, and MAC_OS instead of macintosh.
19902
19903 * editfns.c [MAC_OS8]: Include stdio.h.
19904
19905 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
19906
19907 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
19908 Apple Monaco.
19909
19910 * process.c (QCfamily, QCfilte): Declare extern.
19911 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
19912 calling select.
19913
19914 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
19915
19916 * tparam.c [MAC_OSX]: Don't define BC and UP.
19917
19918 * config.in [HAVE_CARBON]: Add.
19919
19920 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
19921 Move here from mac/src and mac/inc.
19922
19923 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
19924
19925 2002-04-26 Gerd Moellmann <gerd@gnu.org>
19926
19927 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
19928 Compute phys_cursor_width from the x position returned
19929 by x_draw_glyhs, which is cheaper.
19930 (x_display_and_set_cursor): Compute the buffer-local value
19931 of `cursor-in-non-selected-windows' only when needed.
19932
19933 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19934
19935 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
19936 cursor on a stretch glyph has a width that depends on
19937 x_stretch_cursor_p.
19938
19939 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19940
19941 * abbrev.c (abbrev-start-location): Doc fix.
19942
19943 * indent.c (Fvertical_motion): Fix last change.
19944
19945 2002-04-25 Gerd Moellmann <gerd@gnu.org>
19946
19947 * indent.c (Fvertical_motion): Move to the start of the line
19948 containing PT before moving up or down.
19949
19950 2002-04-24 Gerd Moellmann <gerd@gnu.org>
19951
19952 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
19953 case of writing a whole row, more or less analogous to the case of
19954 writing only parts of a row.
19955
19956 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
19957 0 for NO_CURSOR.
19958
19959 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
19960
19961 2002-04-23 Colin Walters <walters@verbum.org>
19962
19963 * buffer.c (syms_of_buffer): Doc fix.
19964
19965 2002-04-23 Gerd Moellmann <gerd@gnu.org>
19966
19967 * xterm.c (notice_overwritten_cursor): Handle the special case
19968 of the cursor being in the first blank non-text line at the
19969 end of a window.
19970
19971 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
19972 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
19973 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
19974 bar cursors only, to make phys_cursor_width contain what its name
19975 suggests.
19976 (notice_overwritten_cursor): Consider the cursor image erased if
19977 the output area intersects the cursor image in y-direction.
19978
19979 2002-04-23 Simon Marshall <simon@gnu.org>
19980
19981 * xfns.c (x_set_mouse_color): Change default for cross_cursor
19982 to XC_hand2.
19983
19984 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19985
19986 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
19987
19988 2002-04-22 Kim F. Storm <storm@cua.dk>
19989
19990 * textprop.c (remove_properties): Fixed trap for malformed plist.
19991
19992 2002-04-22 Richard M. Stallman <rms@gnu.org>
19993
19994 * cmds.c (Fend_of_line): Handle intangible text in mid line.
19995
19996 * window.c (make_window): Initialize height_fixed_p,
19997 last_cursor_off_p, and p->cursor_off_p slots.
19998
19999 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20000
20001 * fns.c (use-dialog-box): Doc fix.
20002
20003 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20004
20005 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
20006 variables `row', `i' and `area'.
20007 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
20008 toolkit library.
20009
20010 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
20011
20012 * xfaces.c (clear_font_table): Don't free the default font of
20013 a frame even if it's on another display.
20014 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
20015 that could be Qt.
20016
20017 2002-04-19 Juanma Barranquero <lektu@terra.es>
20018
20019 * indent.c (Fmove_to_column): Remove unused local variable
20020 `next_boundary_byte'.
20021 (current_column_1): Likewise.
20022
20023 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
20024
20025 * msdos.c (Qhbar): New variable.
20026 (syms_of_msdos): Intern and staticpro it.
20027 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
20028 cursor type.
20029
20030 2002-04-19 Dave Lambert <dlambert@acm.org>
20031
20032 Theses change implement an underscore-like (`hbar') cursor.
20033
20034 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
20035
20036 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
20037 Handle the `hbar' cursor type.
20038 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
20039
20040 * xfns.c (Qhbar): New variable.
20041 (syms_of_xfns): Intern and staticpro it.
20042 (x_specified_cursor_type): Handle `hbar' cursor.
20043
20044 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
20045 not defined.
20046
20047 2002-04-18 Richard M. Stallman <rms@gnu.org>
20048
20049 * textprop.c (remove_properties): New arg LIST allows scanning
20050 either a list or a plist.
20051 (interval_has_some_properties_list): New function, like
20052 interval_has_some_properties using list instead of plist.
20053 All callers changed.
20054 (Fremove_list_of_text_properties): New function.
20055 (syms_of_textprop): Defsubr it.
20056
20057 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
20058
20059 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
20060
20061 2002-04-17 Juanma Barranquero <lektu@terra.es>
20062
20063 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
20064
20065 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
20066
20067 * window.c (coordinates_in_window): Don't report on margin area
20068 if its width is zero.
20069
20070 2002-04-16 Jason Rumney <jasonr@gnu.org>
20071
20072 * w32fns.c (Fx_file_dialog): Decode file name before using.
20073
20074 * w32term.c (construct_drag_n_drop): Likewise.
20075
20076 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
20077
20078 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
20079 store load-history in pure space.
20080
20081 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
20082
20083 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
20084
20085 * xterm.c (Qlatin_1, Qutf_8): New vars.
20086 (syms_of_xterm): Initialize them.
20087 (XTread_socket): Eliminate incorrect optimization that tried to avoid
20088 decoding the output of X*LookupString.
20089 Always use latin-1 to decode the output of XLookupString.
20090 Try Xutf8LookupString if XmbLookupString failed.
20091
20092 * region-cache.c (new_region_cache): Use BEG.
20093
20094 2002-04-16 Gerd Moellmann <gerd@gnu.org>
20095
20096 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
20097 configuration files.
20098 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
20099 returns 0.
20100
20101 2002-04-15 Andreas Schwab <schwab@suse.de>
20102
20103 * config.in: Regenerated using autoheader.
20104
20105 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
20106 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
20107 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
20108 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
20109 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
20110 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
20111 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
20112 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
20113 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
20114 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
20115 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
20116 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
20117 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
20118 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
20119 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
20120 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
20121 STACK_DIRECTION, now set by autoconf.
20122
20123 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20124
20125 * dispnew.c (marginal_area_string): Sort arguments.
20126
20127 * dispextern.h (marginal_area_string): Add prototype.
20128
20129 2002-04-13 Richard M. Stallman <rms@gnu.org>
20130
20131 * fileio.c (Finsert_file_contents):
20132 Don't call temp_output_buffer_setup--do just part, by hand.
20133
20134 * coding.c (run_pre_post_conversion_on_str):
20135 Don't call temp_output_buffer_setup--do just part, by hand.
20136
20137 * keyboard.c (command_loop_1): Don't call start_hourglass
20138 or cancel_hourglass when executing a macro.
20139
20140 * marker.c (count_markers): New function.
20141
20142 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
20143 grow without limit. Move recently used elements to the front.
20144
20145 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
20146
20147 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
20148
20149 2002-04-12 Gerd Moellmann <gerd@gnu.org>
20150
20151 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
20152 rows marginal areas.
20153 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
20154 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
20155
20156 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
20157
20158 2002-04-12 Dave Love <fx@gnu.org>
20159
20160 * dispnew.c (marginal_area_string): New.
20161
20162 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
20163 (Qleft_margin, Qright_margin): Declare.
20164 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
20165
20166 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
20167 note_mode_line_highlight and extended.
20168
20169 * keyboard.c (Qleft_margin, Qright_margin): Declare.
20170 (make_lispy_event): Deal with mouse events in margins.
20171
20172 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
20173
20174 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
20175
20176 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
20177 than deactivating the mark if tmm is set to `lambda'.
20178 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
20179 Use a single event for HELP_EVENT.
20180 (Fexecute_extended_command): Save last_point_position.
20181
20182 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20183
20184 * lisp.h (Fpropertize): Add prototype.
20185
20186 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
20187
20188 2002-04-10 Colin Walters <walters@verbum.org>
20189
20190 * config.in: Add HAVE_SHARED_GAME_DIR.
20191
20192 * callproc.c (Vgame_score_directory): New variable.
20193 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
20194
20195 2002-04-10 Richard M. Stallman <rms@gnu.org>
20196
20197 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
20198
20199 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
20200
20201 * minibuf.c (read_minibuf): Use empty_string.
20202 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
20203 Short-circuit the search as soon as it "failed".
20204 (Fall_completions): Allow lambda forms and lists of strings for alist.
20205 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
20206 when require_match is nil.
20207 (Ftest_completion): Rename from `test_completion' and export to elisp.
20208 Call the predicate also when alist is a list.
20209 Obey Vcompletion_regexp_list.
20210 (do_completion, Fminibuffer_complete_and_exit): Use it.
20211 (Fassoc_string): Rename from `assoc_for_completion'.
20212 Allow list of strings as well and export to elisp.
20213
20214 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
20215
20216 * puresize.h (BASE_PURESIZE): Increase to 900KB.
20217
20218 2002-04-08 Juanma Barranquero <lektu@terra.es>
20219
20220 * w32.c (sys_accept): Don't hide variable `s'.
20221
20222 2002-04-05 Gerd Moellmann <gerd@gnu.org>
20223
20224 * callint.c (Fcall_interactively): Use INTEGERP instead of
20225 NUMBERP for checking Vhistory_length.
20226
20227 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20228
20229 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
20230 Doc fix to reflect it.
20231
20232 2002-04-04 Richard M. Stallman <rms@gnu.org>
20233
20234 * xdisp.c (display_mode_element): New arg RISKY.
20235 Disregard text props found or specified within a variable
20236 that isn't marked risky-local-variable.
20237 (Qrisky_local_variable): New variable.
20238 (syms_of_xdisp): Init and staticpro it.
20239
20240 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
20241
20242 * undo.c (record_point): New fun.
20243 (record_delete, record_insert): Use it.
20244
20245 2002-04-03 Juanma Barranquero <lektu@terra.es>
20246
20247 * doc.c (Fdocumentation): Add missing parentheses.
20248 (Fdocumentation_property): Likewise.
20249
20250 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
20251
20252 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
20253 data is 0, just return nil.
20254
20255 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
20256
20257 * msdos.c (syms_of_msdos): Fix last change with
20258 mouse_autoselect_window.
20259
20260 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20261
20262 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
20263 mouse_autoselect_window.
20264
20265 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
20266
20267 * keyboard.c (make_lispy_event): Handle unknown keysyms together
20268 with system-specific keysyms. Use it also for unknown function keys.
20269
20270 * doc.c (reread_doc_file): Return whether reload was attempted.
20271 (Fdocumentation, Fdocumentation_property): Don't try to reload
20272 if the doc is 0 and only ask once.
20273
20274 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
20275
20276 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
20277
20278 * keyboard.c (read_char): If the event was Qselect_window,
20279 restore timer_idleness_start_time to its previous value.
20280
20281 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
20282
20283 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
20284
20285 * region-cache.c (new_region_cache): Use BEG.
20286
20287 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
20288 Use BEG and BEG_BYTE.
20289
20290 * doc.c (get_doc_string): Return nil if the location is wrong.
20291 (reread_doc_file): New fun.
20292 (Fdocumentation, Fdocumentation_property):
20293 Call it if get_doc_string fails.
20294 (Fsnarf_documentation): Make it work for a dumped Emacs.
20295
20296 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
20297 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
20298
20299 * charset.c (Fstring): Allow 0 arguments.
20300
20301 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
20302
20303 * process.c (DATAGRAM_CONN_P, list_processes_1)
20304 (Fprocess_datagram_address, Fset_process_datagram_address)
20305 (Fset_network_process_options, server_accept_connection):
20306 Fix some int/Lisp_Object confusions (thank you union types).
20307
20308 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20309
20310 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
20311
20312 * w32term.c: Likewise.
20313 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
20314
20315 * keyboard.c (Qselect_window): New symbol.
20316 (head_table): Use it.
20317 (keys_of_keyboard): Bound select-window event to handle-select-window.
20318 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
20319
20320 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
20321 (last_window): New variable.
20322 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
20323 (note_mouse_movement): Remove reimplemented code in #if 0.
20324 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
20325 Emacs windows.
20326
20327 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
20328
20329 2002-03-31 Gerd Moellmann <gerd@gnu.org>
20330
20331 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
20332 Callers changed.
20333
20334 2002-03-30 Richard M. Stallman <rms@gnu.org>
20335
20336 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
20337 loop whenever it stops making progress.
20338
20339 * widget.c (set_frame_size): Don't call change_frame_size.
20340
20341 2002-03-30 Gerd Moellmann <gerd@gnu.org>
20342
20343 * dispnew.c (direct_output_for_insert):
20344 Call mark_window_display_accurate.
20345
20346 2002-03-29 Jason Rumney <jasonr@gnu.org>
20347
20348 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
20349
20350 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
20351
20352 * Makefile.in (lread.o): Depend on coding.h.
20353
20354 * lread.c (openp, Fload): Encode the file name before passing it
20355 to `stat', `access', and `emacs_open'.
20356 (openp): GCPRO the encoded file name. Don't recompute Lisp
20357 strings unnecessarily.
20358
20359 2002-03-29 Kim F. Storm <storm@cua.dk>
20360
20361 * fns.c (Flax_plist_put): Doc fix.
20362
20363 2002-03-28 Miles Bader <miles@gnu.org>
20364
20365 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
20366
20367 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20368
20369 * process.c (set-network-process-options): Add usage.
20370 (make-network-process): Doc fix.
20371
20372 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
20373
20374 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
20375
20376 2002-03-26 Richard M. Stallman <rms@gnu.org>
20377
20378 * fns.c (Fsubstring_no_properties): New function.
20379 (Flax_plist_get, Flax_plist_put): New functions.
20380 (syms_of_fns): defsubr them.
20381
20382 * xdisp.c (update_menu_bar): Test only update_mode_lines;
20383 don't test or alter w->update_mode_line.
20384
20385 * window.c (Fdisplay_buffer): Doc fix.
20386
20387 2002-03-24 Richard M. Stallman <rms@gnu.org>
20388
20389 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
20390
20391 2002-03-24 Gerd Moellmann <gerd@gnu.org>
20392
20393 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
20394 (Fdefmacro): Handle `(declare ...)'.
20395 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
20396 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
20397
20398 2002-03-24 Jason Rumney <jasonr@gnu.org>
20399
20400 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
20401 (xbm_file_p): Add prototypes.
20402 (xbm_format, xbm_image_p): Sync with xfns.c.
20403 (reflect_byte): New function.
20404 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
20405 (xbm_load_image): Create bitmaps with a depth of 1.
20406 (init_xfns): Enable XBM images.
20407
20408 2002-03-23 Jason Rumney <jasonr@gnu.org>
20409
20410 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
20411 correctly. Do not pass up_modifier to keyboard buffer.
20412
20413 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
20414
20415 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
20416
20417 * Makefile.in (bootstrapclean): New target.
20418 (bootstrap-temacs, bootstrap-doc): Remove.
20419 (bootstrap-emacs): Use a bog-standard `temacs'.
20420 Don't bother to build a DOC file.
20421
20422 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
20423
20424 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
20425 in temacs even if !CANNOT_DUMP.
20426 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
20427
20428 * alloc.c (check_pure_size): Only output a warning.
20429
20430 2002-03-22 Jason Rumney <jasonr@gnu.org>
20431
20432 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
20433 supported.
20434
20435 * w32term.c (zv_bits): Declare as short, for word alignment.
20436 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
20437 (syms_of_w32term): Define x-use-underline-position-properties.
20438
20439 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
20440 (clear_image_cache): Block input, fix logic, clear matrices in
20441 all frames that share this cache.
20442
20443 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
20444
20445 * emacs.c (main): Update the Copyright year in the blurb printed
20446 by "emacs --version".
20447
20448 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
20449
20450 * xterm.c (XTread_socket): If XK_ISO_Lock and
20451 XK_ISO_Last_Group_Lock are defined, handle keysyms between
20452 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
20453
20454 2002-03-21 Kim F. Storm <storm@cua.dk>
20455
20456 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
20457 menu-bar bindings in keymap and local-map properties _are_ used.
20458 But try keymap property first in accordance with 2002-01-03 patch.
20459 Added comment describing why this is not always reliable.
20460 (tool_bar_items): Ditto for tool-bar.
20461
20462 2002-03-21 Jason Rumney <jasonr@gnu.org>
20463
20464 * w32fns.c (x_clear_image_1): Disable color table code.
20465
20466 2002-03-21 Kim F. Storm <storm@cua.dk>
20467
20468 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
20469 removed the wrong version of the DEFUN macro; fixed it.
20470
20471 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
20472 Fmember rather than Fmemq).
20473 (Fprovide): Check that subfeatures is a list.
20474
20475 * process.c (QCfeature, QCdatagram): Removed variables.
20476 (QCtype, Qdatagram): New variables.
20477 (network_process_featurep): Removed function.
20478 (Fmake_network_process): Removed :feature check.
20479 Use :type 'datagram instead of :datagram t to create a datagram
20480 socket. This allows us to add other connection types (e.g. raw
20481 sockets) later in a consistent manner.
20482 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
20483 supported subfeatures for feature make-network-process.
20484 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
20485 Intern and staticpro QCtype and Qdatagram.
20486 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
20487
20488 * xfns.c (QCtype): Remove duplicate declaration and
20489 initialization (is now declared in process.c).
20490
20491 * w32fns.c (QCtype): Remove duplicate declaration and
20492 initialization (is now declared in process.c).
20493
20494 2002-03-21 Richard M. Stallman <rms@gnu.org>
20495
20496 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
20497 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
20498 when jumping to `fail' to avoid undoing reg changes in the
20499 last iteration of the loop.
20500 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
20501
20502 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
20503 Depend on process.h.
20504
20505 2002-03-20 Jason Rumney <jasonr@gnu.org>
20506
20507 Most of the following changes are still conditional on HAVE_IMAGES
20508 which is not set by default on Windows.
20509
20510 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
20511
20512 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
20513 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
20514 (four_corners_best, x_clear_image_1, x_clear_image)
20515 (x_alloc_image_color, postprocess_image)
20516 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
20517 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
20518 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
20519
20520 * w32gui.h (struct XImage): Define.
20521
20522 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
20523 extract mouse co-ordinates.
20524
20525 2002-03-20 Jason Rumney <jasonr@gnu.org>
20526
20527 * w32.c (init_winsock): Dynamically load new server and UDP
20528 socket functions.
20529 (socket_to_fd): New function.
20530 (sys_socket): Use it.
20531 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
20532 (sys_recvfrom, sys_sendto): New wrapper functions.
20533
20534 * process.c (QCfamily, QCfilter): Remove duplicate declaration
20535 and initialization.
20536
20537 * makefile.w32-in (LIBS): Remove $(WSOCK32).
20538
20539 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
20540
20541 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
20542 Don't use "sun" as a variable, it's a predefined constant on Sun
20543 machines.
20544
20545 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20546
20547 * bytecode.c (Fbyte_code): Revert last change.
20548
20549 2002-03-19 Kim F. Storm <storm@cua.dk>
20550
20551 * makefile.w32-in (LIBS): Add $(WSOCK32).
20552 From David Ponce <dponce@voila.fr>.
20553
20554 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20555
20556 * process.c (wait_reading_process_input): Move variables `pname'
20557 and `pnamelen' down where they are used.
20558
20559 * bytecode.c (Fbyte_code): Discard unused computed value to
20560 prevent gcc warning.
20561
20562 * lisp.h (Fplist_member): Add prototype.
20563
20564 2002-03-18 Kim F. Storm <storm@cua.dk>
20565
20566 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
20567 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
20568
20569 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
20570 Remove explicit GNU_LINUX settings for datagram support.
20571
20572 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20573
20574 * process.c (Fmake_network_process): Remove unused variable `sa'.
20575 Doc fix. Add usage:.
20576 (set_socket_options): Remove unused variables `optnum' and `opttype'.
20577
20578 2002-03-17 Richard M. Stallman <rms@gnu.org>
20579
20580 * xdisp.c (cursor_type_changed): New variable.
20581 (redisplay_internal): Redisplay all windows if cursor_type_changed.
20582 Clear it when clearing windows_or_buffers_changed.
20583 (try_cursor_movement, redisplay_window, try_window_id)
20584 (try_window_reusing_current_matrix): Test cursor_type_changed
20585 along with windows_or_buffers_changed.
20586
20587 * window.h (cursor_type_changed): New variable.
20588
20589 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
20590 not update_mode_lines, and always set it to 1.
20591
20592 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
20593 if no frames needed redrawing.
20594
20595 2002-03-17 Kim F. Storm <storm@cua.dk>
20596
20597 The following changes add support for network server processes,
20598 datagram connections, and local (unix) sockets.
20599
20600 * process.h (struct Lisp_Process): New member log.
20601 Doc fix: Member command used to indicate stopped network process.
20602 Doc fix: Member childp contains plist for network process.
20603 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
20604
20605 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
20606 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
20607 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
20608 New variables.
20609 (NETCONN1_P): New macro.
20610 (DATAGRAM_SOCKETS): New conditional symbol.
20611 (datagram_address): New array.
20612 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
20613 (status_message): Use concat3.
20614 (Fprocess_status): Add `listen' status to doc string. Return `stop'
20615 for a stopped network process.
20616 (Fset_process_buffer): Update contact plist for network process.
20617 (Fset_process_filter): Ditto. Don't enable input for stopped
20618 network processes. Server must listen, even if filter is t.
20619 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
20620 New functions.
20621 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
20622 (Fprocess_contact): Added KEY argument. Handle datagrams.
20623 (list_processes_1): Optionally show only processes with the query
20624 on exit flag set. Dynamically adjust column widths. Omit tty
20625 column if not needed. Report stopped network processes.
20626 Identify server and datagram network processes.
20627 (Flist_processes): New optional arg `query-only'.
20628 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
20629 (conv_lisp_to_sockaddr, set_socket_options)
20630 (network_process_featurep, unwind_request_sigio): New helper functions.
20631 (Fprocess_datagram_address, Fset_process_datagram_address):
20632 (Fset_network_process_options): New lisp functions.
20633 (Fopen_network_stream): Removed. Now defined in simple.el.
20634 (Fmake_network_process): New lisp function. Code is based on previous
20635 Fopen_network_stream, but heavily reworked with new property list based
20636 argument list, support for datagrams, server processes, and local
20637 sockets in addition to old client-only functionality.
20638 (server_accept_connection): New function.
20639 (wait_reading_process_input): Use it to handle incoming connects.
20640 Do not enable input on a new connection if process is stopped.
20641 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
20642 (send_process): Handle datagram sockets.
20643 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
20644 network process is indicated by setting command field to t .
20645 (Fprocess_send_eof): No-op if datagram connection.
20646 (Fstatus_notify): Don't read input for a stream server socket or a
20647 stopped network process.
20648 (init_process): Initialize datagram_address array.
20649 (syms_of_process): Intern and staticpro new variables, defsubr new
20650 functions.
20651
20652 2002-03-16 Jason Rumney <jasonr@gnu.org>
20653
20654 * w32fns.c (w32_to_all_x_charsets): Return correct type in
20655 startup case.
20656
20657 2002-03-16 Richard M. Stallman <rms@gnu.org>
20658
20659 * xdisp.c (redisplay_internal, redisplay_windows):
20660 Use list_of_error to call internal_condition_case_1.
20661 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
20662 so as to catch all errors with no possibility of debugger redisplay.
20663 (list_of_error): New variable.
20664 (syms_of_xdisp): Init and staticpro it.
20665
20666 * print.c (print_object): Delete `\ ' from printed rep of frame.
20667
20668 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
20669
20670 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
20671 until its implementation is fixed.
20672
20673 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20674
20675 * xfns.c (png_load): Remove unused variable `gamma_str'.
20676
20677 2002-03-14 Richard M. Stallman <rms@gnu.org>
20678
20679 * xfns.c (x_real_positions): Handle failure in XQueryTree.
20680
20681 2002-03-14 Miles Bader <miles@gnu.org>
20682
20683 * intervals.c (adjust_for_invis_intang): New function.
20684 (set_point_both): Use `adjust_for_invis_intang' to do most of the
20685 work for dealing with invisible+intangible regions. Do so before
20686 and after both forward and backward movements, to handle both
20687 front-sticky and rear-sticky cases.
20688 * textprop.c (text_property_stickiness): Function moved here from
20689 `editfns.c'.
20690 * intervals.h (text_property_stickiness): New declaration.
20691 * editfns.c (char_property_eq): Function removed.
20692 (text_property_stickiness): Function moved to `textprop.c'.
20693
20694 2002-03-13 Jason Rumney <jasonr@gnu.org>
20695
20696 * config.in: Add STRFTIME_NO_POSIX2.
20697
20698 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
20699 and %OX when underlying strftime does not.
20700
20701 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
20702
20703 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
20704 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
20705 line) to avoid annoying flicker.
20706 (xm_scroll_callback): Get rid of the now unnecessary kludge.
20707 (XTread_socket): Mark it static.
20708
20709 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
20710
20711 2002-03-13 Kim F. Storm <storm@cua.dk>
20712
20713 * puresize.h (BASE_PURESIZE): Increase to 775000.
20714
20715 2002-03-12 Juanma Barranquero <lektu@terra.es>
20716
20717 * editfns.c (syms_of_editfns): Fix typo.
20718
20719 2002-03-12 Gerd Moellmann <gerd@gnu.org>
20720
20721 * xsmfns.c: Include stdio.h because termhooks.h needs it.
20722 Include termopt.h for interrupt_input.
20723
20724 2002-03-11 Andreas Schwab <schwab@suse.de>
20725
20726 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
20727
20728 2002-03-11 Gerd Moellmann <gerd@gnu.org>
20729
20730 * xterm.c (note_mouse_movement): Put code for
20731 x_autoselect_window_p in #if 0.
20732
20733 * lread.c (Fload): Don't assume that message_with_string uses the
20734 string it is given like a C string.
20735
20736 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
20737
20738 * xterm.h (x_session_check_input, x_session_initialize): Declare.
20739
20740 * xterm.c (XTread_socket): Add call to x_session_check_input and
20741 x_session_have_connection.
20742 (x_initialize): Add call to x_session_initialize.
20743
20744 * termhooks.h (enum event_kind): Add save_session_event.
20745
20746 * keyboard.c: Add Emacs event save_session_event.
20747
20748 * emacs.c (main): Add call to syms_of_xsmfns.
20749
20750 * lisp.h (syms_of_xsmfns): Declare extern.
20751
20752 * config.in: Add HAVE_X_SM.
20753
20754 * Makefile.in (LIBXT): Add -lSM -lICE
20755 if HAVE_X_SM and not USE_X_TOOLKIT.
20756 (XOBJ): New file xsmfns.c added.
20757
20758 * xsmfns.c: New file for X session management.
20759
20760 2002-03-09 Jason Rumney <jasonr@gnu.org>
20761
20762 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
20763 read-only when setting modified time.
20764
20765 2002-03-08 Gerd Moellmann <gerd@gnu.org>
20766
20767 * xdisp.c (move_it_vertically_backward): At the end of the function,
20768 when moving forward by lines, treat terminal frames specially.
20769
20770 * keyboard.c (echo_char): Make sure to add a separator between
20771 keys even if echo_dash hasn't been called.
20772
20773 * xdisp.c: Use new string macros.
20774 (update_echo_area): Pass number of bytes to message3 instead of
20775 number of chars.
20776 (set_message_1): Don't access a string's size_byte directly.
20777 (decode_mode_spec_coding): Use number of bytes of eoltype string
20778 instead number of chars.
20779
20780 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
20781
20782 2002-03-08 Juanma Barranquero <lektu@terra.es>
20783
20784 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
20785 24-bit.
20786
20787 2002-03-06 Jason Rumney <jasonr@gnu.org>
20788
20789 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
20790
20791 2002-03-06 Gerd Moellmann <gerd@gnu.org>
20792
20793 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
20794 (cancel_echoing, echo_length, echo_truncate): Changed to
20795 work with new kboard definition.
20796 (echo_now): Use message3_nolog instead of message2_nolog.
20797
20798 * alloc.c (mark_kboards): Mark echo_string.
20799
20800 * keyboard.h (ECHOBUFSIZE): Removed.
20801 (struct kboard): Member echoptr removed, member echobuf renamed
20802 to echo_string.
20803
20804 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
20805 message3 instead of message2 to display the message using STRING's
20806 text properties.
20807
20808 2002-03-05 Andreas Schwab <schwab@suse.de>
20809
20810 * xdisp.c (hscroll_margin): Change to EMACS_INT.
20811
20812 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
20813
20814 * frame.c (default-frame-alist): Explain that setting it doesn't
20815 affect existing frames.
20816
20817 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
20818
20819 * indent.c (skip_invisible): Fix my brain fart.
20820
20821 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
20822
20823 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
20824
20825 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
20826 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
20827 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
20828 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
20829 and variables to use EMACS_INT instead of just int.
20830
20831 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
20832
20833 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
20834
20835 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
20836 environment, pass it down with corrected value.
20837
20838 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20839
20840 * lread.c (read_filtered_event): Do not call start_hourglass
20841 before returning.
20842
20843 2002-03-04 Juanma Barranquero <lektu@terra.es>
20844
20845 * w32term.c (x_display_and_set_cursor): Fix typo.
20846
20847 2002-03-03 Richard M. Stallman <rms@gnu.org>
20848
20849 * fileio.c (Fmake_temp_name): Doc fix.
20850
20851 2002-03-03 Gary Wong <gtw@gnu.org>
20852
20853 * termcap.c [!emacs]: Replace ospeed for building standalone
20854 libtermcap, for binary compatibility.
20855
20856 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
20857
20858 2002-03-03 Richard M. Stallman <rms@gnu.org>
20859
20860 * xrdb.c (file_p): Rename arg `path' to `filename'.
20861
20862 * abbrev.c (Fexpand_abbrev): Increment plist as use count
20863 only if it is an integer.
20864
20865 * xfns.c (png_load): Set screen_gamma based on f->gamma.
20866 If png_get_sRGB gives an answer, call png_set_gamma
20867 using the default image gamma value.
20868
20869 * lread.c (read1): When reading from a file, default string to
20870 multibyte only if it has some multibyte characters.
20871
20872 * print.c (print_object): Output multibyte chars 128...255
20873 using \x even if ! print_escape_multibyte.
20874
20875 * xdisp.c (display_mode_element): Move the places where
20876 bytepos, charpos, this, and lisp_string are set.
20877 Use lisp_string to set bytepos.
20878
20879 * xdisp.c (redisplay_internal):
20880 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
20881
20882 * xdisp.c (display_mode_element): Merge properties specified with
20883 :propertize onto those that come with the string.
20884
20885 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
20886
20887 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
20888 automatic-hscrolling. Users changed.
20889 <hscroll-margin>: Renamed from automatic-hscroll-margin.
20890 Users changed.
20891 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
20892
20893 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
20894
20895 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
20896
20897 2002-03-02 Kim F. Storm <storm@cua.dk>
20898
20899 * window.c (Fminibuffer_selected_window): New function.
20900 (syms_of_window): Defsubr it.
20901
20902 2002-03-01 Kim F. Storm <storm@cua.dk>
20903
20904 * window.h (struct window): New member phys_cursor_width.
20905
20906 * window.c (make_window, replace_window): Init phys_cursor_width.
20907
20908 * xterm.c (x_display_and_set_cursor): Blink box cursor using
20909 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20910
20911 * w32term.c (x_display_and_set_cursor): Blink box cursor using
20912 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
20913
20914 * lisp.h (GCPRO6): New macro.
20915
20916 * process.c (Fopen_network_stream): Use GCPRO6.
20917
20918 2002-03-01 Kim F. Storm <storm@cua.dk>
20919
20920 * process.c (Qconnect, Qfailed): New variables.
20921 (syms_of_process): Intern and staticpro them.
20922 (Fprocess_status): Document connect and failed return values.
20923 [NON_BLOCKING_CONNECT]: New conditional.
20924 (connect_wait_mask, num_pending_connects): New variables.
20925 (status_message): Convert Qfailed status.
20926 (Fopen_network_stream): Added support for non-blocking connect.
20927 New optional args: filter, sentinel, non_blocking. Doc updated.
20928 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
20929 (deactivate_process): Handle pending non-blocking connect.
20930 (wait_reading_process_input): Poll for status of non-blocking
20931 connects. Exec sentinel directly when connect succeeds.
20932 (status_notify): Don't read process output if not yet connected.
20933
20934 2002-02-28 Kim F. Storm <storm@cua.dk>
20935
20936 * window.c (minibuf_selected_window): Renamed from
20937 Vminibuf_selected_window. Users changed.
20938 (syms_of_window): Staticpro it.
20939
20940 2002-02-26 Kim F. Storm <storm@cua.dk>
20941
20942 The following changes add a new Vminibuf_selected_window variable
20943 which is similar to Vminibuf_scroll_window, but which is only set
20944 on entry to the minibuffer (from a non-minibuffer window):
20945
20946 * window.c (Vminibuf_selected_window): New variable.
20947 (struct save_window_data): New member minibuf_selected_window.
20948 (Fset_window_configuration): Restore Vminibuf_selected_window.
20949 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
20950 Set minibuf_scroll_window member to nil if minibuf_level is 0.
20951 (compare_window_configurations): Compare minibuf_selected_window.
20952
20953 * window.h (Vminibuf_selected_window): Declare extern.
20954
20955 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
20956 entry to minibuffer or on entry from a non-minibuffer window.
20957
20958 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
20959 Vminibuf_selected_window instead of Vminibuf_scroll_window.
20960
20961 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
20962 instead of Vminibuf_scroll_window when deciding in which window
20963 the region should be highlighted. Consequently, the region remains
20964 highlighteded even when a completion buffer is also displayed.
20965
20966 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
20967
20968 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
20969
20970 * xselect.c (Qcompound_text_with_extensions): Renamed from
20971 Qcompound_text_no_extensions.
20972 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
20973
20974 2002-02-26 Juanma Barranquero <lektu@terra.es>
20975
20976 * w32proc.c (syms_of_ntproc): Doc fix.
20977
20978 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20979
20980 * intervals.h: Include "dispextern.h" unconditionally.
20981
20982 2002-02-24 Jason Rumney <jasonr@gnu.org>
20983
20984 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
20985 and disp-table.elc.
20986 (lisp): Add emacs-lisp/backquote.elc.
20987
20988 2002-02-24 Kim F. Storm <storm@cua.dk>
20989
20990 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
20991 The validation of the event type was too strict as it didn't
20992 allow string events; buffer names are used in bindings for
20993 menu-bar-select-buffer (see `menu-bar-update-buffers').
20994
20995 2002-02-23 Kim F. Storm <storm@cua.dk>
20996
20997 The following changes rework my patch of 2002-02-06 which
20998 added command remapping by entering the commands directly into
20999 the keymaps. Now, command remapping uses an explicit `remap'
21000 prefix in the keymaps, i.e. [remap COMMAND].
21001
21002 * keymap.c (Qremap, remap_command_vector): New variables.
21003 (is_command_symbol): Remove function.
21004 (Fdefine_key): No longer accept a symbol for KEY.
21005 Added validation of [remap COMMAND] argument for KEY.
21006 The DEF is no longer required to be a symbol when remapping a command.
21007 (Fremap_command): New function to remap command through keymaps.
21008 (Flookup_key): Perform command remapping initiated by
21009 Fremap_command directly for speed.
21010 (Fkey_binding): Use Fremap_command for command remapping.
21011 (where_is_internal): Handle new command remapping representation.
21012 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
21013 staticpro them. Defsubr Fremap_command.
21014
21015 * keymap.h (Fremap_command): Declare extern.
21016 (is_command_symbol): Remove extern.
21017
21018 * keyboard.c (command_loop_1): Use Fremap_command for command
21019 remapping; now try command remapping for all symbols.
21020
21021 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
21022
21023 * coding.h (run_pre_post_conversion_on_str): Add prototype.
21024
21025 2002-02-23 Jason Rumney <jasonr@gnu.org>
21026
21027 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
21028 on the string before encoding it.
21029 (Fw32_get_clipboard_data): Run post-read-conversion on the string
21030 after decoding it.
21031
21032 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
21033
21034 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21035
21036 * w32term.c (enter_timestamp): Remove unused static variable to
21037 prevent warning.
21038
21039 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
21040
21041 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
21042
21043 * w16select.c (Fw16_get_clipboard_data): Fix last change.
21044
21045 * xselect.c (selection_data_to_lisp_data): Fix last change.
21046
21047 2002-02-22 Jason Rumney <jasonr@gnu.org>
21048
21049 * w32term.h (struct w32_output): New member menu_command_in_progress.
21050
21051 * w32menu.c (menubar_selection_callback): Free the menu and
21052 clear the menu_command_in_progress flag.
21053
21054 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
21055 (menu_free_timer): New variable.
21056 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
21057 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
21058 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
21059 menu command is in progress.
21060 <WM_COMMAND>: Set the menu_command_in_progress flag.
21061 Kill any menu_free_timer that is running.
21062
21063 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
21064 Call ExtTextOutA rather than ExtTextOut.
21065
21066 2002-02-22 Eli Zaretskii <eliz@gnu.org>
21067
21068 * puresize.h (BASE_PURESIZE): Increase to 755000.
21069
21070 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
21071
21072 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
21073 on the string before encoding it.
21074 (Fw16_get_clipboard_data): Run post-read-conversion on the string
21075 after decoding it.
21076
21077 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
21078
21079 Support for ICCCM Extended Segments in X selections:
21080
21081 * xselect.c <Qcompound_text_no_extensions>: New variable.
21082 (syms_of_xselect): Intern and staticpro it.
21083 (selection_data_to_lisp_data): Run post-read-conversion on decoded
21084 selection text.
21085 (lisp_data_to_selection_data): If next-selection-coding-system is
21086 compound-text-no-extensions, set the type of selection to be
21087 compound-text.
21088
21089 * xterm.h (x_encode_text): Update prototype.
21090
21091 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
21092 callers changed. If SELECTIONP is non-zero, run the
21093 pre-write-conversion function before encoding the selection text.
21094
21095 2002-02-21 Kim F. Storm <storm@cua.dk>
21096
21097 * frame.c (syms_of_frame): Change mouse-highlight default to t.
21098
21099 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
21100 Correct composing of language-change event.
21101
21102 2002-02-20 Kim F. Storm <storm@cua.dk>
21103
21104 * keyboard.c (menu_bar_items): Don't include keymap or local-map
21105 bindings at PT when building menu (the menu is not updated often
21106 enough for this to work reliable).
21107 (tool_bar_items): Likewise.
21108 (current_active_maps): Removed unused (and buggy) function.
21109
21110 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21111
21112 * xfns.c (gif_load): Use correct width and height for GIF images.
21113
21114 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
21115
21116 * floatfns.c (Fatan): Accept an optional second arg and call
21117 atan2 if passed 2 args.
21118
21119 2002-02-18 Jason Rumney <jasonr@gnu.org>
21120
21121 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
21122
21123 2002-02-17 Jason Rumney <jasonr@gnu.org>
21124
21125 * w32term.c (x_autoselect_window_p): New variable.
21126 (syms_of_w32term): DEFVAR_BOOL and initialize it.
21127 (note_mouse_movement): Use it.
21128
21129 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
21130
21131 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
21132
21133 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21134 New variables.
21135 (syms_of_w32fns): Intern and staticpro them.
21136 (x_frame_parms) <"fullscreen">: New parameter.
21137 (x_fullscreen_move, x_set_fullscreen): New functions.
21138 (x_set_frame_parameters): Support Qfullscreen.
21139 (x_real_positions): Save x/y_pixels_diff frame params.
21140 (x_figure_window_size): Support full-screen frames.
21141 (Fx_create_frame): Default the fullscreen parameter.
21142
21143 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
21144 (x_fullscreen_adjust): New functions.
21145 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
21146 fullscreen. Call x_check_fullscreen_move, and set the
21147 want_fullscreen member of output_data.w32
21148 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
21149
21150 * w32term.h: New enum for FULLSCREEN_* constants.
21151 (struct w32_output): New members want_fullscreen, x_pixels_diff,
21152 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
21153 (x-fullscreen-adjust): New prototype.
21154
21155 2002-02-17 Kim F. Storm <storm@cua.dk>
21156
21157 * frame.c (Vmouse_highlight): New variable.
21158 (syms_of_frame): DEFVAR_LISP it.
21159
21160 * frame.h (Vmouse_highlight): Declare extern.
21161
21162 * xterm.h (struct x_display_info): Add mouse_face_hidden.
21163
21164 * xterm.c (disable_mouse_highlight): Removed variable.
21165 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
21166 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21167 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
21168 and on after keyboard input.
21169 (x_term_init): Initialize mouse_face_hidden.
21170
21171 * msdos.h (struct display_info): Add mouse_face_hidden.
21172
21173 * msdos.c (disable_mouse_highlight): Removed variable.
21174 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21175 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
21176 (internal_terminal_init): Initialize mouse_face_hidden.
21177 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
21178 and on after keyboard input.
21179
21180 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
21181
21182 * w32term.c (disable_mouse_highlight): Removed variable.
21183 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
21184 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21185 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
21186 and on after keyboard input.
21187 (w32_initialize_display_info): Initialize mouse_face_hidden.
21188
21189 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
21190
21191 * msdos.c (last_mouse_window): New variable.
21192 (dos_rawgetc): Fix last change--if the mouse is in the same window
21193 as recorded in last_mouse_window, don't select this window.
21194
21195 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
21196
21197 * msdos.c (x_autoselect_window_p): New variable.
21198 (syms_of_msdos): Defvar it.
21199 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
21200 which the last mouse movement occured, unless it is already selected.
21201
21202 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
21203 New variables.
21204 (syms_of_xdisp): DEVFAR them.
21205 (hscroll_window_tree): Use automatic_hscroll_margin and
21206 Vautomatic_hscroll_step to compute the amount of window scrolling.
21207
21208 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21209
21210 * xterm.c (x-autoselect-window): New variable.
21211 (note_mouse_movement): Use it.
21212
21213 * keyboard.c: Do not include "systime.h" twice.
21214
21215 2002-02-15 Andreas Schwab <schwab@suse.de>
21216
21217 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
21218
21219 * alloc.c (NSTATICS): Increase to 1280.
21220
21221 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
21222
21223 * alloc.c (NSTATICS): Bump to 1026.
21224
21225 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
21226 (Vx_super_keysym): New variables.
21227 (syms_of_xterm): DEFVAR_LISP them.
21228 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
21229 variables to determine which keys to use for the various modifiers.
21230
21231 2002-02-13 Kim F. Storm <storm@cua.dk>
21232
21233 * window.c (Vmode_line_in_non_selected_windows): Removed.
21234 (mode_line_in_non_selected_windows): New variable.
21235 (syms_of_window): DEFVAR_BOOL it.
21236
21237 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
21238 Use mode_line_in_non_selected_windows.
21239 (mode_line_in_non_selected_windows): Declare extern.
21240 (Vmode_line_in_non_selected_windows): Removed extern.
21241
21242 2002-02-13 Richard M. Stallman <rms@gnu.org>
21243
21244 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
21245 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
21246 (Fclear_this_command_keys): Doc fixes.
21247
21248 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21249 (update_face_from_frame_parameter): Increment face_change_count
21250 and windows_or_buffers_changed to force redisplay using changed faces.
21251
21252 * xdisp.c (QCpropertize): New variable.
21253 (mode_line_proptrans_alist): New variable.
21254 (display_mode_element): New arg PROPS; all calls changed.
21255 Implement this, for strings.
21256 Handle literal output of strings by sharing the
21257 main-line code for strings, using local var `literal'.
21258 Handle :propertize feature.
21259 (syms_of_xdisp): Initialze and staticpro QCpropertize and
21260 mode_line_proptrans_alist.
21261
21262 2002-02-11 Kim F. Storm <storm@cua.dk>
21263
21264 * window.c (Vmode_line_in_non_selected_windows): New variable.
21265 (syms_of_window): DEFVAR_LISP it.
21266
21267 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
21268 (CURRENT_MODE_LINE_FACE_ID): Use it.
21269 (Vmode_line_in_non_selected_windows): Declare extern.
21270
21271 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
21272 to get mode line face.
21273
21274 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
21275
21276 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
21277 variables; cus-start.el doesn't need them anymore.
21278
21279 2002-02-09 Kim F. Storm <storm@cua.dk>
21280
21281 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
21282 reduction. This fixes a display problem where stray newlines were
21283 inserted in the window (corrected by C-l). Clarified code (IMHO).
21284
21285 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
21286
21287 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
21288
21289 * xdisp.c (display_mode_lines): Fix last change.
21290
21291 2002-02-09 Jason Rumney <jasonr@gnu.org>
21292
21293 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
21294 match each other.
21295 (w32_load_system_font): Prevent Cleartype fonts from loading.
21296 (Fx_show_tip): Ensure tip frames are above other topmost windows.
21297
21298 2002-02-09 Kim F. Storm <storm@cua.dk>
21299
21300 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
21301 (CURRENT_MODE_LINE_HEIGHT): Use it.
21302 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
21303
21304 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
21305 (pos_visible_p, handle_face_prop): Likewise.
21306 (display_mode_lines): Likewise, but for the real selected window.
21307 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
21308
21309 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
21310 in non-selected windows.
21311 (realize_basic_faces): Realize it.
21312 (syms_of_term): Intern and staticpro it.
21313
21314 2002-02-08 Kim F. Storm <storm@cua.dk>
21315
21316 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
21317 Changed mail addresses to emacs-devel@gnu.org.
21318
21319 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
21320
21321 * fileio.c (Fsubstitute_in_file_name): If the file name includes
21322 ~user, and there's no such user, don't discard everything before ~user.
21323
21324 * floatfns.c (Fround): Doc fix.
21325
21326 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21327
21328 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
21329
21330 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
21331
21332 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
21333
21334 2002-02-07 Kim F. Storm <storm@cua.dk>
21335
21336 * keymap.c (where_is_internal): Only check whether definition is
21337 remapped if it fulfills is_command_symbol.
21338
21339 2002-02-07 Andreas Schwab <schwab@suse.de>
21340
21341 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
21342
21343 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
21344
21345 2002-02-06 Kim F. Storm <storm@cua.dk>
21346
21347 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
21348 defining command remapping. Doc updated.
21349 (Flookup_key): Remap command through keymap if KEY is a symbol.
21350 (is_command_symbol): New function.
21351 (Fkey_binding): Use it. New optional argument NO-REMAP.
21352 Doc updated. Callers changed. Perform command remapping via
21353 recursive call unless that arg is non-nil.
21354 (where_is_internal): New argument no_remap. Callers changed.
21355 Call recursively to find original key bindings for a remapped
21356 comand unless that arg is non-nil.
21357 (Fwhere_is_internal): New optional argument NO-REMAP.
21358 Doc updated. Callers changed. Pass arg to where_is_internal.
21359
21360 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
21361 (is_command_symbol): Add prototype.
21362
21363 * keyboard.c (Vthis_original_command): New variable.
21364 (syms_of_keyboard): DEFVAR_LISP it.
21365 (command_loop_1): Set it, and perform command remapping.
21366
21367 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21368
21369 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
21370
21371 2002-02-06 Jason Rumney <jasonr@gnu.org>
21372
21373 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
21374
21375 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
21376
21377 * charset.c (get_charset_id): Use if-else instead of ?:.
21378
21379 2002-02-06 Richard M. Stallman <rms@gnu.org>
21380
21381 * filelock.c (S_ISLNK): Define if not defined.
21382
21383 2002-02-03 Richard M. Stallman <rms@gnu.org>
21384
21385 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
21386
21387 * lread.c (read1): Redesign strategy for force_multibyte and
21388 force_singlebyte. Now is_multibyte records whether read_buffer
21389 is multibyte. Encountering any multibyte character makes it so.
21390
21391 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
21392
21393 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
21394 with the same sequence, map that sequence to f10 rather than f0.
21395
21396 2002-02-03 Andreas Schwab <schwab@suse.de>
21397
21398 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
21399 latter never being defined on GNU/Linux.
21400
21401 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
21402
21403 * xfaces.c (realize_default_face): Don't set the weight and slant of
21404 the default face to Qnormal, unless these attributes are unspecified.
21405
21406 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21407
21408 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
21409 Call cancel_hourglass unconditionally.
21410
21411 * eval.c (Fsignal): Remove duplicated declaration of
21412 the variable `display_hourglass_p'.
21413
21414 2002-01-31 Richard M. Stallman <rms@gnu.org>
21415
21416 * editfns.c (region_limit): Nicer error message.
21417
21418 * coding.c (decode_composition_emacs_mule):
21419 Give up if NCOMPONENT gets too large to index `component'.
21420
21421 * callint.c (check_mark): New arg to specify clearer error message.
21422 Callers changed.
21423
21424 2002-01-27 Richard M. Stallman <rms@gnu.org>
21425
21426 * minibuf.c (Fcompleting_read): Doc fix.
21427
21428 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21429
21430 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
21431 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
21432 Fix doc-strings.
21433
21434 2002-01-26 Richard M. Stallman <rms@gnu.org>
21435
21436 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
21437
21438 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
21439 and scroll_up_aggressively.
21440
21441 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21442
21443 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
21444
21445 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
21446
21447 * textprop.c (Fnext_property_change, Fnext_single_property_change)
21448 (Fprevious_property_change, Fprevious_single_property_change):
21449 Stay within the narrowed-buffer boundaries.
21450
21451 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
21452
21453 * term.c (Ftty_display_color_cells): New function.
21454 (syms_of_term): Defsubr it.
21455 (Ftty_display_color_cells, Ftty_display_color_p): Change the
21456 argument name to DISPLAY. Doc fix.
21457
21458 * dispextern.h: Add prototype for set_tty_color_mode and
21459 tty_setup_colors.
21460
21461 2002-01-24 Jason Rumney <jasonr@gnu.org>
21462
21463 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
21464 If region left to draw is not what was expected, mark the frame as
21465 garbaged.
21466
21467 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
21468 Combine the regions returned by BeginPaint and GetUpdateRect.
21469
21470 2002-01-23 Jason Rumney <jasonr@gnu.org>
21471
21472 * w32term.c (x_update_window_begin): Only hide caret if
21473 w32_use_visible_system_caret is set.
21474 (x_update_window_end): Only show caret if
21475 w32_use_visible_system_caret is set.
21476 (syms_of_w32term): Handle SystemParametersInfo call failing.
21477
21478 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
21479
21480 2002-01-22 Richard M. Stallman <rms@gnu.org>
21481
21482 * unexelf.c (unexec): Define n so as to cause compilation error
21483 for the code where people have often written n instead of nn.
21484
21485 * .gdbinit (hookpost-run): Defined.
21486
21487 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21488
21489 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
21490
21491 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21492
21493 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
21494 if fullscreen is being set.
21495
21496 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21497
21498 * minibuf.c (Fminibuffer_contents)
21499 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
21500 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
21501
21502 2002-01-21 Richard M. Stallman <rms@gnu.org>
21503
21504 * window.c (check_frame_size): Fix minimum height calculation.
21505
21506 2002-01-20 Ken Raeburn <raeburn@gnu.org>
21507
21508 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
21509 height before comparison.
21510 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
21511
21512 2002-01-20 Jason Rumney <jasonr@gnu.org>
21513
21514 * w32term.c (w32_system_caret_width): Remove.
21515 (w32_use_visible_system_caret): New user flag.
21516 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
21517 Windows reports a screen reader running.
21518 (x_update_window_begin): Hide the system caret.
21519 (x_update_window_end): Show the system caret.
21520 (x_display_and_set_cursor): Don't draw a cursor when
21521 w32_use_visible_system_caret is set. Do not adjust width.
21522
21523 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
21524 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
21525 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
21526 the user requests it. Use system default width when creating.
21527 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
21528
21529 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
21530 New window messages.
21531
21532 2002-01-20 Richard M. Stallman <rms@gnu.org>
21533
21534 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
21535
21536 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21537
21538 * doprnt.c (doprnt1): Fix typos in error call.
21539
21540 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
21541
21542 * unexelf.c (unexec) [__sgi]: Support the .got sections.
21543
21544 2002-01-20 Jason Rumney <jasonr@gnu.org>
21545
21546 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
21547 that Windows returns. If a double check fails, try to guess how
21548 ExtTextOut is going to act.
21549
21550 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
21551 in place of stricmp.
21552 (w32_list_synthesized_fonts): Removed.
21553 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
21554 (struct enumfont_t): New element; list.
21555 (enum_font_cb2): List all style and charset variations of a font.
21556 (Fw32_select_font): New optional argument; include_proportional.
21557 Exclude vertical fonts. Exclude proportional fonts unless
21558 include_proportional is non-nil.
21559 (w32_enable_synthesized_fonts): Change to a boolean.
21560 (Fw32_send_sys_command): Doc fix.
21561
21562 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21563
21564 * dispnew.c (update_frame): Move the variable `tem' to the block
21565 where it is used.
21566
21567 2002-01-19 Jason Rumney <jasonr@gnu.org>
21568
21569 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
21570 call to face-set-after-frame-default.
21571
21572 2002-01-18 Richard M. Stallman <rms@gnu.org>
21573
21574 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
21575 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
21576
21577 2002-01-17 Richard M. Stallman <rms@gnu.org>
21578
21579 * window.c (enlarge_window): When exceeding size of parent,
21580 directly delete all the siblings instead of trying to resize it.
21581
21582 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21583
21584 * term.c (set_tty_color_mode): Remove unused variable `tem'.
21585
21586 2002-01-16 Henrik Enberg <henrik@enberg.org>
21587
21588 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
21589
21590 2002-01-16 Kim F. Storm <storm@cua.dk>
21591
21592 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
21593 is invisible. This can happen if cursor is on top line of a
21594 window, and we switch to a buffer with a header line.
21595
21596 * w32term.c (x_erase_phys_cursor): Ditto.
21597
21598 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21599
21600 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
21601 `dont_resize' only when used.
21602
21603 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
21604
21605 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
21606
21607 * xdisp.c (display_mode_element): When computing charpos, depend
21608 on multibyteness of elt, not the text in field.
21609
21610 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21611
21612 * buffer.c (Fkill_all_local_variables):
21613 Increment `update_mode_lines' only once.
21614
21615 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21616
21617 * lisp.h (adjust_after_replace_noundo)
21618 (Fupdate_coding_systems_internal): Add prototypes.
21619
21620 * sound.c (Fplay_sound): Initialize header_size also for :data case.
21621
21622 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
21623
21624 Support for the --color command-line argument and tty-color-mode
21625 frame parameter:
21626
21627 * term.c (tty_default_color_capabilities, tty_setup_colors)
21628 (set_tty_color_mode): New functions.
21629 (term_init): Call tty_default_color_capabilities.
21630 (Qtty_color_mode_alist): New variable.
21631 (syms_of_term): Intern and staticpro it.
21632
21633 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
21634 frames.
21635 (do_switch_frame): For termcap frames, switch the tty
21636 color mode as specified by the frame's parameters.
21637 (Qtty_color_mode): New variable.
21638 (syms_of_frame): Intern and staticpro it.
21639
21640 * emacs.c (USAGE2): Add the --color option.
21641 (standard_args): Ditto.
21642
21643 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21644
21645 * xterm.h (struct x_output): New members want_fullscreen,
21646 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
21647 y_pixels_outer_diff.
21648 New enum for FULLSCREEN_* constants.
21649 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
21650 is NULL.
21651 (x_fullscreen_adjust): Add prototype.
21652
21653 * emacs.c (USAGE2): Add the new full-screen arguments.
21654 (standard_args): Ditto.
21655
21656 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21657 New variables.
21658 (syms_of_xfns): Intern and staticpro them.
21659 (x_frame_parms) <"fullscreen">: New parameter.
21660 (x_fullscreen_move, x_set_fullscreen): New functions.
21661 (x_set_frame_parameters): Support for Qfullscreen.
21662 (x_real_positions): More accurate computation of the frame position.
21663 (x_figure_window_size): Support full-screen frames.
21664 (Fx_create_frame): Default the fullscreen parameter.
21665
21666 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
21667 (XTread_socket) <Expose>: Call x_check_fullscreen.
21668 <ConfigureNotify>: Don't resize to fullscreen.
21669 Call x_check_fullscreen_move, and set the want_fullscreen member of
21670 output_data.x.
21671
21672 2002-01-13 Jason Rumney <jasonr@gnu.org>
21673
21674 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
21675 for mice with more than 3 buttons.
21676
21677 * w32term.c (parse_button): New parameter xbutton. Callers changed.
21678 (w32_read_socket): Handle new "XBUTTON" messages.
21679
21680 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
21681 (syms_of_w32fns): DEFVAR_BOOL it.
21682 (w32_wnd_proc): Handle new "XBUTTON" messages.
21683
21684 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21685
21686 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
21687
21688 2002-01-13 Andreas Schwab <schwab@suse.de>
21689
21690 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
21691
21692 2002-01-12 Andreas Schwab <schwab@suse.de>
21693
21694 * .gdbinit (xbuffer): Remove address operator since data is now a
21695 pointer.
21696
21697 2002-01-11 Richard M. Stallman <rms@gnu.org>
21698
21699 * insdel.c (adjust_after_replace_noundo): New function.
21700
21701 * coding.c (code_convert_region): Don't copy old text if undo disabled.
21702
21703 2002-01-09 Jason Rumney <jasonr@gnu.org>
21704
21705 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
21706 when checking for multiple frames.
21707
21708 2002-01-08 Richard M. Stallman <rms@gnu.org>
21709
21710 * window.c (delete_window): Rewrite the code for changing the
21711 selected window to handle the case where WINDOW is not a leaf.
21712
21713 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
21714
21715 * process.c (send_process): Set src_multibyte to 1 after the call
21716 top setup_coding_system, not before the call.
21717
21718 2002-01-07 Jason Rumney <jasonr@gnu.org>
21719
21720 * xmenu.c (set_frame_menubar, xmenu_show):
21721 (xdialog_show): Initialize wv->help to Qnil.
21722
21723 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
21724 (w32_dialog_show): Initialize wv->help to Qnil.
21725
21726 2002-01-06 Jason Rumney <jasonr@gnu.org>
21727
21728 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
21729
21730 * w32menu.c (w32_menu_display_help): Revert last change.
21731
21732 * xmenu.c (menu_highlight_callback): Revert last change.
21733
21734 2002-01-06 Andreas Schwab <schwab@suse.de>
21735
21736 * insdel.c (make_gap_larger): Make sure buffer size does not
21737 overflow range of int.
21738
21739 2002-01-05 Jason Rumney <jasonr@gnu.org>
21740
21741 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
21742 OVERLAPS_P.
21743
21744 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
21745
21746 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
21747 to the left or to the right of the pointer, put it against
21748 the left screen edge.
21749 (x_frame_parms): Add missing braces around initializer.
21750
21751 * w32term.c (x_setup_relief_colors): Don't compute an image's
21752 background color if it doesn't have a Pixmap.
21753 (notice_overwritten_cursor): Don't depend on
21754 output_cursor and updated_area. Compare pixel coordinates with
21755 window's cursor pixel coordinates.
21756 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21757 Call notice_overwritten_cursor with new arg list.
21758 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21759 unconditionally.
21760 (x_draw_image_relief): Use predefined macro instead of
21761 constant when the value of `tool_bar_button_relief' is negative.
21762
21763 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
21764
21765 2002-01-04 Richard M. Stallman <rms@gnu.org>
21766
21767 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
21768
21769 2002-01-03 Richard M. Stallman <rms@gnu.org>
21770
21771 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
21772 (Fkey_binding): Try the `keymap' property map first.
21773 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
21774 minor mode bindings.
21775
21776 2002-01-03 Kim F. Storm <storm@cua.dk>
21777
21778 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
21779
21780 2002-01-02 Richard M. Stallman <rms@gnu.org>
21781
21782 * keyboard.c (read_key_sequence): Handle the keymap property
21783 before minor mode maps.
21784
21785 * editfns.c (Fformat): Update thissize from field_width
21786 based on the actual width, in the string case.
21787
21788 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21789
21790 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
21791 when used as truth value to prevent gcc warnings.
21792
21793 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
21794 * w32proc.c: Include <config.h>.
21795
21796 2002-01-01 Andreas Schwab <schwab@suse.de>
21797
21798 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
21799 not EMACS_INT, to make them compatible with DEFVAR_INT.
21800 * lisp.h (max_specpdl_size): Adjust declaration.
21801
21802 2002-01-01 Richard M. Stallman <rms@gnu.org>
21803
21804 * print.c (print_object): Test print_escape_nonascii only for
21805 unibyte strings.
21806 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
21807 when outputting to a multibyte buffer.
21808
21809 2001-12-29 Richard M. Stallman <rms@gnu.org>
21810
21811 * print.c (print_object): In multibyte string, use hex escapes.
21812 Use octal only for unibyte strings.
21813 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
21814
21815 * lread.c (read_escape): New arg BYTEREP for reporting whether
21816 escape forces unibyte or multibyte.
21817 (read1): When reading a string, take note of that info.
21818
21819 2001-12-29 Ken Raeburn <raeburn@gnu.org>
21820
21821 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
21822 comparison to test lisp value returned by Fget.
21823
21824 2001-12-29 Richard M. Stallman <rms@gnu.org>
21825
21826 * lisp.h (max_specpdl_size): Add declaration.
21827
21828 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
21829
21830 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
21831 Handle modifier bits. Correct typo in error message.
21832
21833 2001-12-28 Richard M. Stallman <rms@gnu.org>
21834
21835 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
21836 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
21837 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
21838 Update calls to Fdefine_abbrev.
21839 (write_abbrev): Update for changed data format.
21840 Don't list "system" abbrevs.
21841 (Fexpand_abbrev): Update use count with new data format.
21842 (describe_abbrev): Update for changed data format.
21843 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
21844
21845 * config.in (HAVE_MBSINIT): Add #undef.
21846
21847 * strftime.c (mbsinit): Define as no-op if not available.
21848
21849 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
21850 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
21851
21852 * keymap.c (Flookup_key): Error message if key has wrong data type.
21853 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
21854 (exclude_key): New variable.
21855
21856 2001-12-28 Gerd Moellmann <gerd@gnu.org>
21857
21858 * xterm.c (x_setup_relief_colors): Don't compute an image's
21859 background color if it doesn't have a Pixmap.
21860
21861 * xterm.c (notice_overwritten_cursor): Don't depend on
21862 output_cursor and updated_area. Compare pixel coordinates with
21863 window's cursor pixel coordinates.
21864 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
21865 Call notice_overwritten_cursor with new arg list.
21866 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
21867 unconditionally.
21868
21869 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
21870 height of the cursor line to the amount to scroll.
21871
21872 2001-12-27 Richard M. Stallman <rms@gnu.org>
21873
21874 * intervals.c (set_point_both): The position after an invisible,
21875 intangible character is not an acceptable stopping point.
21876
21877 2001-12-27 Ken Raeburn <raeburn@gnu.org>
21878
21879 * window.c (enlarge_window): In new preserve_before code, convert
21880 CURBEG from lisp object to integer before doing arithmetic.
21881
21882 2001-12-27 Richard M. Stallman <rms@gnu.org>
21883
21884 * bytecode.c (Fbyte_code): Undo previous change.
21885
21886 2001-12-26 Kim F. Storm <storm@cua.dk>
21887
21888 * keyboard.c (record_char): Ignore duplicate help-echo events only
21889 separated by mouse-movement. When tracking mouse, only record
21890 first and last mouse-movement event in same window.
21891 Don't record mouse-movement events in keyboard macros.
21892
21893 2001-12-25 Richard M. Stallman <rms@gnu.org>
21894
21895 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
21896 (Fenlarge_window): New arg PRESERVE_BEFORE.
21897
21898 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
21899 instead of Fstring_as_unibyte.
21900
21901 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21902
21903 The following changes remove mocklisp support:
21904
21905 * mocklisp.h, mocklisp.c: Files removed.
21906
21907 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
21908 `Qmocklisp' and `Qmocklisp_arguments'.
21909 Remove prototype of syms_of_mocklisp.
21910
21911 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
21912
21913 * callint.c: Do not include mocklisp.h.
21914 (Fcall_interactively): Do not test for mocklisp case.
21915
21916 * eval.c: Remove variables `Qmocklisp_arguments',
21917 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
21918 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
21919 Do not test for mocklisp case.
21920 (Fwhile): Remove unused variable `tem'.
21921 (syms_of_eval): Remove variable `moclisp-arguments'.
21922
21923 * data.c (wrong_type_argument): Remove mocklisp case.
21924
21925 * doc.c (Fdocumentation): Remove mocklisp case.
21926
21927 * emacs.c (main): Do not call syms_of_mocklisp.
21928
21929 2001-12-21 Richard M. Stallman <rms@gnu.org>
21930
21931 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
21932 to the left or to the right of the pointer, put it against
21933 the left screen edge.
21934
21935 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
21936
21937 * Makefile.in (distclean): Remove .gdbinit if we are building
21938 outside the source tree.
21939
21940 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
21941
21942 * w32.c (emacs_root_dir): New function.
21943
21944 * msdos.c (emacs_root_dir): New function.
21945
21946 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
21947 of the current drive as the fallback for default_directory.
21948
21949 * dired.c (file_name_completion): Run the elements of
21950 completion-ignored-extensions through ENCODE_FILE.
21951
21952 * lisp.h (scmp): Remove prototype, since it's now a static
21953 function private to dired.c.
21954
21955 2001-12-18 Richard M. Stallman <rms@gnu.org>
21956
21957 * dired.c (scmp): Function moved from minibuf.c.
21958 Delete multibyte handling--used only on encoded strings.
21959
21960 * minibuf.c (scmp): Function moved to dired.c.
21961
21962 * fns.c (merge): Add QUIT call.
21963
21964 2001-12-18 Dave Love <fx@gnu.org>
21965
21966 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
21967 language/georgian.el.
21968
21969 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
21970
21971 * Makefile.in (lisp, shortlisp): Synchronize with changes to
21972 lisp/Makefile.in:DONTCOMPILE.
21973
21974 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21975
21976 * xdisp.c (window_box_height): Do not return negative values.
21977 From Gerd Moellmann <gerd@gnu.org>.
21978
21979 * keyboard.c (head_table): Add missing braces around initializer.
21980
21981 * term.c (keys): Likewise.
21982
21983 * xfns.c (x_frame_parms, visual_classes): Likewise.
21984
21985 2001-12-17 Sam Steingold <sds@gnu.org>
21986
21987 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
21988 patch (COMPOSING_P, not COMPOSING).
21989
21990 2001-12-17 Richard M. Stallman <rms@gnu.org>
21991
21992 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
21993
21994 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
21995 before calling decode_coding.
21996
21997 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
21998
21999 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
22000 instead of only for COMPOSITION_DISABLED.
22001
22002 2001-12-16 Richard M. Stallman <rms@gnu.org>
22003
22004 * alloc.c (pure_alloc): After overflow, allocate just a small block.
22005
22006 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
22007
22008 * buffer.h (struct buffer): New field `display_error_modiff'.
22009 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
22010
22011 * window.c (Frecenter): Clear display_error_modiff field.
22012
22013 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
22014 Call redisplay_window, but not if display_error_modiff field says no.
22015 (redisplay_window_error): New function.
22016 (displayed_buffer): New variable.
22017 (redisplay_internal, redisplay_windows): Call the new functions
22018 instead of redisplay_window directly.
22019
22020 2001-12-15 Richard M. Stallman <rms@gnu.org>
22021
22022 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
22023
22024 2001-12-14 Andrew Innes <andrewi@gnu.org>
22025
22026 * makefile.w32-in (EMACSLOADPATH): Define.
22027 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
22028 (bootstrap-temacs): Remove dependency on bootstrap-clean.
22029
22030 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
22031
22032 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
22033 parameter have a numeric value all the time.
22034
22035 * w32fns.c (x_report_frame_params): Likewise.
22036
22037 2001-12-12 Richard M. Stallman <rms@gnu.org>
22038
22039 * fileio.c (Fwrite_region): Doc fix.
22040
22041 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
22042 (redisplay_internal): Call clear_image_cache only for window terminals.
22043
22044 2001-12-12 Gerd Moellmann <gerd@gnu.org>
22045
22046 * xdisp.c (move_it_vertically_backward): Change heuristic
22047 for the case that we didn't move far enough initially.
22048
22049 * window.c (Frecenter): Simplify computation in the case of window
22050 system frames and ARG < 0; use window_box_height.
22051
22052 2001-12-11 Richard M. Stallman <rms@gnu.org>
22053
22054 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
22055 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
22056
22057 2001-12-11 Andrew Innes <andrewi@gnu.org>
22058
22059 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
22060 arg is negative.
22061
22062 2001-12-11 Richard M. Stallman <rms@gnu.org>
22063
22064 * m/hp800.h: Split the __hpux conditional into the parts
22065 that are right for GNU/Linux too and the parts that are not.
22066 Use the former if GNU_LINUX.
22067 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
22068
22069 * s/gnu-linux.h (GNU_LINUX): Defined.
22070
22071 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22072
22073 * macros.c, msdos.c, w16select.c: Change doc-string comments to
22074 `new style' [w/`doc:' keyword].
22075
22076 2001-12-10 Jason Rumney <jasonr@gnu.org>
22077
22078 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
22079 before using.
22080
22081 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22082
22083 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
22084 keyword].
22085
22086 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
22087
22088 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
22089
22090 * s/hpux10.h (srand48): Don't undefine.
22091
22092 2001-12-09 Jason Rumney <jasonr@gnu.org>
22093
22094 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
22095 Add comment to explain where the struct came from.
22096 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
22097 (add_menu_item): Process pop-up menus first to avoid memory leak.
22098 (add_menu_item, w32_menu_display_help): Use `help' field as
22099 Lisp_Object.
22100 (w32_free_submenu_strings): Only free owner-drawn strings.
22101
22102 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22103
22104 * COPYING: Moved back.
22105
22106 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
22107 Add parentheses around && within ||.
22108
22109 * indent.c (compute_motion): Likewise.
22110
22111 * intervals.c (merge_properties_sticky): Likewise.
22112
22113 * coding.c (setup_coding_system, shrink_encoding_region)
22114 (Fdecode_sjis_char): Likewise.
22115
22116 2001-12-07 Andreas Schwab <schwab@suse.de>
22117
22118 * xdisp.c (display_mode_element): Don't read past end of string if
22119 it ends with '%'.
22120
22121 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
22122 can hold.
22123
22124 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
22125 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
22126 type changed to Lisp_Object.
22127 (syms_of_data): DEFVAR_LISP them.
22128
22129 2001-12-07 Richard M. Stallman <rms@gnu.org>
22130
22131 * callproc.c (init_callproc): Set Vdata_directory based on the source
22132 location whenever Emacs was run uninstalled.
22133
22134 2001-12-06 Paul Eggert <eggert@twinsun.com>
22135
22136 * config.in (HAVE_WORKING_VFORK): New #undefs.
22137 * process.c (create_process):
22138 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
22139 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
22140 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
22141 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
22142 * m/intel386.h (HAVE_VFORK): Likewise.
22143 * m/mips-siemens.h (HAVE_VFORK): Likewise.
22144 * m/mips.h (HAVE_VFORK): Likewise.
22145 * s/freebsd.h (vfork): Remove #define.
22146 * s/lynxos.h (HAVE_VFORK): Remove #undef.
22147 * s/usg5-4-2.h: Fix comment about vfork.
22148
22149 2001-12-06 Richard M. Stallman <rms@gnu.org>
22150
22151 * s/hpux10.h (random): Add undef.
22152 (HAVE_RANDOM): Define it just once.
22153
22154 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
22155
22156 * eval.c: Undo last change: the standard syntax is not wanted.
22157
22158 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
22159
22160 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
22161 scroll bars of the frame before deleting the frame itself. If the
22162 frame has a widget, delete the frame with XtDestroyWidget, and do
22163 not call XDestroyWindow before that.
22164
22165 2001-12-06 Kim F. Storm <storm@cua.dk>
22166
22167 * xfns.c (x_report_frame_params): Return actual fringe widths.
22168
22169 * w32fns.c (x_report_frame_params): Return actual fringe widths.
22170
22171 2001-12-05 Andrew Innes <andrewi@gnu.org>
22172
22173 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
22174 excessively large.
22175
22176 * insdel.c (make_gap_larger): New function.
22177 (make_gap_smaller): New function.
22178 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
22179 Call make_gap_smaller if arg is negative.
22180
22181 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
22182
22183 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
22184 Pass a dummy argument when calling interrupt_signal.
22185 (parse_menu_item): Mark disabled items before checking for empty def.
22186 (read_char_minibuf_menu_prompt): Make safety more visible.
22187 (read_key_sequence): Add a `first_unbound' variable.
22188 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
22189 unbound prefix as soon as we can detect it.
22190
22191 * doc.c (Fsnarf_documentation): Add prototype.
22192 (get_doc_string): Handle negative arguments.
22193 (Fdocumentation): Use AREF and ASIZE.
22194 Move the calls to get_doc_string to a single place.
22195 Don't confuse an interactive-spec for a docstring reference.
22196 (Fdocumentation_property): Take advantage of the fact that
22197 get_doc_string now ignores the sign of the docstring position.
22198
22199 * eval.c: Use standard syntax for usage in docstrings.
22200
22201 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22202
22203 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
22204
22205 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22206
22207 * xterm.c (x_draw_image_relief): Use predefined macro instead of
22208 constant when the value of `tool_bar_button_relief' is negative.
22209
22210 2001-12-02 Richard M. Stallman <rms@gnu.org>
22211
22212 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
22213 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
22214
22215 * fileio.c (read_non_regular): Delete Fsignal call.
22216
22217 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
22218
22219 * lisp.h (run_hook_list_with_args): Undo last change.
22220
22221 2001-12-01 Gerd Moellmann <gerd@gnu.org>
22222
22223 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
22224
22225 2001-12-01 Jason Rumney <jasonr@gnu.org>
22226
22227 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
22228
22229 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
22230 [!WM_MOUSELEAVE]: Define.
22231
22232 * w32menu.c (current_popup_menu, get_menu_item_info):
22233 (set_menu_item_info): New vars.
22234 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
22235 (w32_menu_show): Set current_popup_menu.
22236 (add_menu_item): Allocate new strings for owner-drawn menu items
22237 and help strings.
22238 Use owner-draw for disabled menu items again.
22239 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
22240 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
22241
22242 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
22243 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
22244 <WM_EXITMENULOOP>: Free menu strings.
22245 <WM_MOUSELEAVE>: Stop tracking mouse.
22246 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
22247
22248 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
22249 and mouse face.
22250
22251 2001-12-01 Kim F. Storm <storm@cua.dk>
22252
22253 The following changes add left-fringe and right-fringe
22254 frame parameters to adjust fringe widths, or remove one or
22255 both fringes.
22256
22257 * frame.h (struct frame): Remove trunc_area_pixel_width and
22258 trunc_area_cols fields.
22259 (Qleft_fringe, Qright_fringe): Declare.
22260 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
22261
22262 * frame.c (Qleft_fringe, Qright_fringe): New vars.
22263 (syms_of_frame): Initialize them.
22264
22265 * window.c (coordinates_in_window): Handle separate left and right
22266 fringe widths.
22267
22268 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
22269 and fringe_cols fields.
22270 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
22271 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
22272 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
22273 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
22274 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
22275 (x_compute_fringe_widths): Add prototype.
22276
22277 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
22278 fill fringe evenly with small dashes.
22279 (x_draw_fringe_bitmap): Clear background if necessary. Align and
22280 clip the new ZV bitmap to avoid jitter between rows.
22281 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
22282 background. Don't draw fringe bitmaps if fringe width is zero.
22283 (x_compute_fringe_widths): New function.
22284 (x_new_font, x_set_window_size_1): Use it.
22285
22286 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
22287 (x_set_frame_parameters): Process `font' parameter before other
22288 parameters as fringe widths depend on it.
22289 (x_set_fringe_width): New function.
22290 (x_figure_window_size): Use x_compute_fringe_widths.
22291 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
22292 parameters.
22293
22294 * widget.c (set_frame_size): Use x_compute_fringe_widths.
22295 (EmacsFrameSetCharSize): Ditto.
22296
22297 * w32term.h: Merged changes from xterm.h.
22298 * w32term.c: Merged changes from xterm.c.
22299 * w32fns.c: Merged changes from xfns.c.
22300
22301 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22302
22303 * COPYING: Removed.
22304
22305 2001-11-29 Dave Love <fx@gnu.org>
22306
22307 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
22308 extra extra slot.
22309 (detect_coding_mask): Fix call of detect_coding_iso2022.
22310
22311 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22312
22313 * fileio.c (file-name-coding-system)
22314 (default-file-name-coding-system): Doc fix (links to referenced
22315 variables added).
22316
22317 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22318
22319 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
22320 Add dummy uses of gcproN variables.
22321
22322 * category.c (describe_category, describe_category_1)
22323 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
22324 (syms_of_category): Don't defsubr Sdescribe_categories.
22325
22326 2001-11-28 Richard M. Stallman <rms@gnu.org>
22327
22328 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
22329
22330 * Makefile.in (lispdir): New variable, referring to build dir.
22331 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
22332
22333 2001-11-28 Andrew Innes <andrewi@gnu.org>
22334
22335 * w32menu.c (w32_menu_display_help): Actually add the new argument
22336 OWNER.
22337
22338 2001-11-28 Jason Rumney <jasonr@gnu.org>
22339
22340 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
22341 menu items. From David Ponce <dponce@wanadoo.fr>.
22342 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
22343 conditionally.
22344 (w32_menu_display_help): New argument OWNER. Rewritten to store a
22345 help event in the owner frame's keyboard buffer.
22346
22347 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
22348 (Fx_show_tip): Don't subtract last width from row width.
22349
22350 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
22351 (w32_read_socket): Use EQ to compare frames.
22352
22353 2001-11-28 Gerd Moellmann <gerd@gnu.org>
22354
22355 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
22356 OVERLAPS_P.
22357
22358 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22359
22360 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
22361 `gcpro3' and `gcpro4'.
22362
22363 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
22364
22365 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22366
22367 * ccl.c: Use AREF and ASIZE.
22368
22369 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
22370
22371 * lisp.h (run_hook_list_with_args): Remove.
22372 (LIST_END_P): Fix call to wrong_type_argument.
22373 (make_fixnum_or_float): Use EMACS_INT rather than int.
22374
22375 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
22376
22377 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
22378 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
22379
22380 * eval.c: Use AREF and ASIZE.
22381 (Ffetch_bytecode): Add the file name to the error message.
22382
22383 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
22384 which match the end of the file-name.
22385 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
22386 is not a valid env var, but leave it as is instead.
22387
22388 * keymap.c (access_keymap): Handle t bindings like nil bindings.
22389 Make nil bindings in char-tables transparent.
22390 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
22391
22392 2001-11-26 Richard M. Stallman <rms@gnu.org>
22393
22394 * textprop.c (set_text_properties_1): Allow START, END in either order.
22395 Do nothing if range is empty.
22396
22397 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
22398
22399 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
22400 (clean): Not here.
22401
22402 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22403
22404 * textprop.c (set_text_properties_1): Clearly mark that the
22405 interval should not be empty.
22406
22407 * intervals.c (graft_intervals_into_buffer):
22408 Don't call set_text_properties_1 on an empty interval.
22409
22410 2001-11-25 Richard M. Stallman <rms@gnu.org>
22411
22412 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
22413
22414 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
22415 don't lose the data in it.
22416
22417 2001-11-25 Juanma Barranquero <lektu@terra.es>
22418
22419 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
22420
22421 * buffer.c (Fkill_buffer): Likewise.
22422
22423 * print.c (temp_output_buffer_setup): Likewise.
22424
22425 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22426
22427 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
22428
22429 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
22430
22431 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
22432 Niemitalo <kon@iki.fi>.
22433
22434 2001-11-25 Jason Rumney <jasonr@gnu.org>
22435
22436 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
22437
22438 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
22439 (Fx_show_tip): Block input during frame creation.
22440 (Fx_show_tip, Fx_hide_tip): Enable.
22441
22442 2001-11-24 Richard M. Stallman <rms@gnu.org>
22443
22444 * lread.c (Fload): Detect recursive load error for more than 3
22445 nestings of the same file.
22446 (Vrecursive_load_depth_limit): Variable deleted.
22447 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
22448
22449 2001-11-24 Jason Rumney <jasonr@gnu.org>
22450
22451 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
22452 mouse position if either left or top is not specified.
22453
22454 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
22455 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
22456 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
22457 (my_create_tip_window): Assign tip_window.
22458 (x_create_tip_frame): Use same defaults as X.
22459 (compute_tip_xy): Remove unused variable. Use full screen width.
22460 (Fx_show_tip): Do not double height. Call ShowWindow directly.
22461
22462 * w32term.c (x_after_update_window_line): Doc fix.
22463 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
22464 frames.
22465 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
22466
22467 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
22468 for all Windowed systems.
22469
22470 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
22471
22472 * msdos.c (IT_clear_screen): If the frame's faces are not yet
22473 realized, use the initial screen colors to clear the screen.
22474
22475 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22476
22477 * textprop.c (Fset_text_properties): Remove unused variables
22478 `unchanged', `prev_changed', `s' and `len'.
22479
22480 * search.c (Freplace_match): Remove unused variable `inslen'.
22481
22482 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
22483
22484 2001-11-22 Jason Rumney <jasonr@gnu.org>
22485
22486 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
22487 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
22488 (my_create_tip_window): New function.
22489 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
22490 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
22491
22492 2001-11-20 Jason Rumney <jasonr@gnu.org>
22493
22494 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
22495 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
22496
22497 * w32fns.c (Vw32_system_coding_system): Remove.
22498 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
22499
22500 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
22501
22502 * fileio.c (Fwrite_region): Move choose_write_coding_system to
22503 after build_annotations.
22504
22505 * syntax.c (describe_syntax): Add dummy arg.
22506 (describe_syntax_1): Update call to describe_vector.
22507
22508 * category.c (describe_category): Add dummy arg.
22509 (describe_category_1): Update call to describe_vector.
22510
22511 * keymap.c (Fdescribe_vector): Add `describer' parameter.
22512 (describe_command, describe_translation): Add dummy second param.
22513 (describe_map): Call elt_describer with two arguments.
22514 (describe_vector_princ): Add `fun' parameter.
22515 Call it instead of the hardcoded `princ'.
22516 (describe_vector): Add arg `args'.
22517 Pass it as a new second argument to elt_describer.
22518
22519 * keymap.h (describe_vector): Update prototype.
22520
22521 * frame.c: Don't include keymap.h any more.
22522 (keys_of_frame): Remove.
22523
22524 * lisp.h (keys_of_frame): Remove declaration.
22525
22526 * emacs.c (main): Don't call `keys_of_frame' any more.
22527
22528 2001-11-14 Andreas Schwab <schwab@suse.de>
22529
22530 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
22531 if defined, 0 otherwise.
22532 (MAP_FAILED): Define if not defined and use it to test mmap failure.
22533 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
22534
22535 2001-11-19 Richard M. Stallman <rms@gnu.org>
22536
22537 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
22538
22539 2001-11-18 Jason Rumney <jasonr@gnu.org>
22540
22541 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
22542 (x_draw_bar_cursor): If the background color of the glyph under
22543 the cursor equals the frame's cursor color, use the glyph's
22544 foreground color for drawing the bar cursor.
22545 (x_after_update_window_line): Clear internal border in different
22546 circumstances.
22547 (w32_set_vertical_scroll_bar): Check for width and height > 0.
22548 (w32_draw_relief_rect): Correct relief by 1 pixel.
22549 (x_set_glyph_string_background_width):
22550 Set extends_to_end_of_line_p if the row's fill_line_p is set and
22551 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
22552 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
22553 if cursor_in_non_selected_windows is false.
22554 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
22555 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
22556 Notice if cursor gets overwritten.
22557 (notice_overwritten_cursor): Renamed from
22558 note_overwritten_text_cursor. Rewritten to take glyph widths
22559 into account, and to take X positions as parameters.
22560 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22561 around call to x_draw_glyphs.
22562 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22563 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22564 color to use for image glyph reliefs.
22565 (x_draw_image_relief): Accept zero tool_bar_button_relief.
22566 (glyph_rect): Remove unused variable `area'.
22567
22568 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
22569 some items.
22570 (x_set_internal_border_width): Set frame garbaged when window
22571 doesn't exist yet.
22572 (Fx_create_frame): Accept zero tool_bar_button_relief.
22573 (x_clear_image_1, four_corners_best, image_background)
22574 (image_background_transparent): New functions.
22575 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22576 (gs_format): Add `:background' entry.
22577 (lookup_image): Set IMG's background color if specified.
22578 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22579 when appropriate.
22580 (x_clear_image_1): Reset `background_valid' and
22581 `background_transparent_valid' fields.
22582 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22583 calculating it here. Set IMG's background_transparent field.
22584 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22585 (enum png_keyword_index): Add PNG_BACKGROUND.
22586 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22587 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22588 (enum gif_keyword_index): Add GIF_BACKGROUND.
22589 (enum gs_keyword_index): Add GS_BACKGROUND.
22590 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22591 Pre-calculate image background color where necessary.
22592 (x_create_x_image_and_pixmap, xbm_load, gs_load):
22593 Use display info's n_cbits entry for screen depth.
22594 (Fx_show_tip): Remove unused variables `buffer', `top',
22595 `left', `max_width' and `max_height'.
22596
22597 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
22598
22599 2001-11-18 Gerd Moellmann <gerd@gnu.org>
22600
22601 * puresize.h (BASE_PURESIZE): Increase to 750000.
22602
22603 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22604
22605 * frame.c (Fframe_live_p): Doc fix.
22606
22607 2001-11-18 Richard M. Stallman <rms@gnu.org>
22608
22609 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
22610 (message_dolog_marker3): New static variables hold three markers.
22611 (syms_of_xdisp): Initialize and staticpro them.
22612 (message_dolog): Use message_dolog_marker1..3 instead of
22613 allocating markers each time. Unchain them when done.
22614
22615 2001-11-17 Richard M. Stallman <rms@gnu.org>
22616
22617 * doc.c (Fsnarf_documentation): Doc fix.
22618
22619 2001-11-17 Andreas Schwab <schwab@suse.de>
22620
22621 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
22622
22623 2001-11-17 Richard M. Stallman <rms@gnu.org>
22624
22625 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
22626
22627 2001-11-17 Jason Rumney <jasonr@gnu.org>
22628
22629 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
22630
22631 2001-11-17 Gerd Moellmann <gerd@gnu.org>
22632
22633 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
22634 with invalid position.
22635
22636 2001-11-16 Richard M. Stallman <rms@gnu.org>
22637
22638 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
22639
22640 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
22641 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
22642 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
22643
22644 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
22645
22646 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22647
22648 * fileio.c (build_annotations): Split off the tail.
22649 (build_annotations_2): New fun. Extracted from build_annotations.
22650 (Fwrite_region): Split the call to build_annotations into two
22651 calls to build_annotations and build_annotations_2.
22652
22653 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22654
22655 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
22656 clear_waiting_for_input with argument.
22657
22658 * xterm.h (x_update_cursor): Remove duplicated prototype.
22659
22660 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
22661
22662 * xterm.c (waiting_for_input): Remove unnecessary declaration.
22663
22664 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
22665
22666 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22667
22668 * fileio.c (choose_write_coding_system): New fun, extracted
22669 from Fwrite_region.
22670 (Fwrite_region): Use it.
22671
22672 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
22673 (funcall_lambda, run_hook_with_args): Make static and add prototype.
22674 (ml_apply, find_handler_clause): Add prototype.
22675
22676 2001-11-16 Eli Zaretskii <eliz@gnu.org>
22677
22678 * config.in: Add #undef HAVE_COFF_H.
22679
22680 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
22681 Required for ISC 4.1.
22682
22683 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
22684
22685 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
22686 Andrew Wiseman <a.wiseman@btclick.com>.
22687
22688 2001-11-16 Kim F. Storm <storm@cua.dk>
22689
22690 The following changes are made to clean up the various internal
22691 references to the fringes to actually use the term `fringe' for
22692 them. Previously, they were called `flags areas', `bitmap areas',
22693 `left/right side of windows', or implicitly as `flags' or
22694 `bitmaps':
22695
22696 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
22697 Comments fixed. Use renamed symbols.
22698
22699 * dispnew.c: Comment fix. Use renamed symbols.
22700
22701 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
22702 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
22703 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
22704
22705 * msdos.c: Comment fix.
22706
22707 * w32fns.c: Use renamed symbols.
22708
22709 * w32term.c: Comment fixes. Use renamed symbols.
22710 (fringe_bitmap_type): Renamed from bitmap_type.
22711 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22712 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
22713 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22714
22715 * w32term.h: Comment fixes. Use renamed symbols.
22716 (fringes_extra): Renamed from flags_areas_extra.
22717 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22718 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22719 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22720 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22721 (FRAME_X_LEFT_FRINGE_WIDTH):
22722 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22723 (FRAME_X_RIGHT_FRINGE_WIDTH):
22724 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22725
22726 * widget.c: Use renamed symbols.
22727
22728 * window.c: Comment fixes. Use renamed symbols.
22729 (coordinates-in-window-p): Doc fix.
22730
22731 * xdisp.c: Comment fixes. Use renamed symbols.
22732
22733 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
22734
22735 * xfns.c: Use renamed symbols.
22736
22737 * xterm.c: Comment fixes. Use renamed symbols.
22738 (fringe_bitmap_type): Renamed from bitmap_type.
22739 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22740 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
22741 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22742
22743 * xterm.h: Comment fixes. Use renamed symbols.
22744 (fringes_extra): Renamed from flags_areas_extra.
22745 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22746 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22747 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
22748 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
22749 (FRAME_X_LEFT_FRINGE_WIDTH):
22750 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
22751 (FRAME_X_RIGHT_FRINGE_WIDTH):
22752 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
22753
22754 2001-11-15 Jason Rumney <jasonr@gnu.org>
22755
22756 * w32menu.c (add-menu-item): Make help_echo and radio buttons
22757 work for most menu items. From David Ponce
22758 <david.ponce@wanadoo.fr>.
22759
22760 2001-11-15 Gerd Moellmann <gerd@gnu.org>
22761
22762 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
22763 Some x_set_* function expect to be called even if old and new
22764 value are equal.
22765
22766 * xdisp.c (build_desired_tool_bar_string): Accept zero
22767 tool_bar_button_relief.
22768
22769 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
22770
22771 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
22772
22773 * xterm.c (x_draw_bar_cursor): If the background color of the
22774 glyph under the cursor equals the frame's cursor color, use
22775 the glyph's foreground color for drawing the bar cursor.
22776
22777 * dispnew.c (direct_output_forward_char): Fix character/byte
22778 position comparison.
22779
22780 2001-11-15 Miles Bader <miles@gnu.org>
22781
22782 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
22783 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
22784 Update arguments to find_field.
22785 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
22786 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
22787 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
22788 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
22789
22790 2001-11-14 Richard M. Stallman <rms@gnu.org>
22791
22792 * editfns.c (Fpropertize): Allow call with 1 arg.
22793
22794 * dispextern.h (image_background, image_background_transparent):
22795 Conditionalize on HAVE_X_WINDOWS.
22796
22797 2001-11-13 Richard M. Stallman <rms@gnu.org>
22798
22799 * print.c (Fprin1_to_string): Doc fix.
22800
22801 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
22802
22803 * floatfns.c (Fceiling, Ffloor): Doc fixes.
22804
22805 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
22806
22807 * fileio.c (Ffile_accessible_directory_p): Doc fix.
22808
22809 * eval.c (syms_of_eval): Doc fix.
22810
22811 * coding.c (syms_of_coding): Doc fix.
22812
22813 * doc.c (Fsnarf_documentation): Doc fix.
22814
22815 * dispnew.c (syms_of_display): Doc fix.
22816
22817 * category.c (Fget_unused_category): Doc fix.
22818
22819 * buffer.c (syms_of_buffer): Doc fixes.
22820
22821 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
22822
22823 * print.c (prin1, print): Doc fix.
22824
22825 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22826
22827 * fontset.h: Remove declarations of variables
22828 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
22829
22830 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
22831 `Vclip_large_size_font'.
22832
22833 2001-11-13 Jason Rumney <jasonr@gnu.org>
22834
22835 * w32fns.c: Doc fix.
22836
22837 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22838
22839 * xfaces.c (Fface_attributes_as_vector): Doc fix.
22840
22841 * fns.c: Doc fix.
22842
22843 * emacs.c: Doc fix.
22844
22845 * coding.c: Doc fix.
22846
22847 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
22848 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
22849 `new style' [w/`doc:' keyword].
22850
22851 2001-11-12 Richard M. Stallman <rms@gnu.org>
22852
22853 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
22854 LeaveNotify events. Only FocusIn and FocusOut do that now.
22855 (x_display_and_set_cursor): Do display hollow cursors in active
22856 minibuffer windows when they are not selected.
22857
22858 2001-11-12 Jason Rumney <jasonr@gnu.org>
22859
22860 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
22861 * w32term.c: Change doc-string comments to `new style'
22862 [w/`doc:' keyword]. Doc fixes.
22863
22864 * w32fns.c: Don't define max.
22865 (Fx_open_connection): Only execute once.
22866
22867 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22868
22869 * ccl.c: Change macros to use do-while block instead of if-else.
22870 Use braces to follow GNU Coding Standards.
22871
22872 2001-11-11 Richard M. Stallman <rms@gnu.org>
22873
22874 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
22875
22876 * lread.c (read_escape): Use end_of_file_error for reporting eof.
22877
22878 * insdel.c (replace_range): Use adjust_markers_for_replace
22879 instead of adjust_markers_for_delete and adjust_markers_for_insert.
22880
22881 * intervals.h (set_text_properties, set_text_properties_1): Declare.
22882
22883 * textprop.c (set_text_properties_1): New subroutine
22884 broken out of set_text_properties.
22885 (set_text_properties): Use set_text_properties_1.
22886
22887 * intervals.c (graft_intervals_into_buffer):
22888 Use set_text_properties_1 to clear out properties.
22889
22890 * search.c (Freplace_match): Use replace_range to insert
22891 and delete. Don't request property inheritance from
22892 surrounding text.
22893
22894 2001-11-10 Jason Rumney <jasonr@gnu.org>
22895
22896 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
22897 vertical fonts. Allow them if face name is explicitly specified.
22898 Do not give up if we find a font that cannot be converted to an xlfd.
22899
22900 2001-11-10 Gerd Moellmann <gerd@gnu.org>
22901
22902 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
22903 instead of malloc/free.
22904
22905 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22906
22907 * xfaces.c (merge_face_vectors): Use braces to follow GNU
22908 Coding Standards.
22909 (Finternal_set_lisp_face_attribute): Likewise.
22910
22911 * buffer.c (Fbury_buffer): Likewise.
22912
22913 * indent.c (current_column_1): Remove unused variable `prev_col'.
22914
22915 * coding.c (encode_coding): Use precomputed value of `src'.
22916 (encode_coding): Remove unused variable `src_end'.
22917 (code_convert_region): Remove unused variables `count'.
22918
22919 2001-11-07 Jason Rumney <jasonr@gnu.org>
22920
22921 * w32term.c (x_display_and_set_cursor): Do not move system caret
22922 if cursor_glyph is NULL.
22923
22924 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22925
22926 * keymap.c (access_keymap): Fix compilation error.
22927
22928 2001-11-07 Miles Bader <miles@gnu.org>
22929
22930 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
22931
22932 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22933
22934 * intervals.c (graft_intervals_into_buffer):
22935 Remove #ifdef'd-out code.
22936 (graft_intervals_into_buffer): Remove unused variable `middle'.
22937
22938 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
22939 code (eval-current-buffer).
22940 Change doc-string comments to `new style' [w/`doc:' keyword].
22941
22942 2001-11-06 Richard M. Stallman <rms@gnu.org>
22943
22944 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
22945
22946 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
22947
22948 * lread.c (read1): Fix behavior with nested backquoting.
22949
22950 * keyboard.c (make_lispy_event): Check integerness and fix
22951 Lisp_Object/int mixup.
22952
22953 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22954
22955 * fns.c (copy_hash_table): Remove unused variable `v'.
22956
22957 * fontset.c (fontset_font_pattern): Remove unused variable
22958 `family_registry'.
22959
22960 * indent.c (current_column_1): Remove unused variable `prev_col'.
22961
22962 2001-11-05 Richard M. Stallman <rms@gnu.org>
22963
22964 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
22965
22966 * buffer.c (Fkill_buffer): Don't delete auto save file
22967 if buffer is modified.
22968
22969 2001-11-05 Andrew Innes <andrewi@gnu.org>
22970
22971 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
22972 CHECK_NUMBER_CDR.
22973
22974 2001-11-05 Richard M. Stallman <rms@gnu.org>
22975
22976 * unexelf.c (unexec): Minor changes; clean up comments.
22977
22978 2001-11-05 Sam Steingold <sds@gnu.org>
22979
22980 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
22981
22982 2001-11-05 Andreas Schwab <schwab@suse.de>
22983
22984 * sound.c (sound_perror): Save errno from being clobbered.
22985
22986 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
22987
22988 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
22989 the program image directly.
22990
22991 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22992
22993 * buffer.h (Fbuffer_local_value): Add prototype.
22994
22995 2001-11-04 Richard M. Stallman <rms@gnu.org>
22996
22997 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
22998 and CHECK_BUFFER.
22999
23000 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
23001 (record_char): Likewise.
23002
23003 * keyboard.c (make_lispy_event): Don't insist a drag event must
23004 move to a different buffer position. Instead, check for moving at
23005 least double_click_fuzz.
23006
23007 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
23008
23009 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
23010
23011 * indent.c (current_column_1, Fmove_to_column): Separate the code
23012 for display-table glyphs from the code for buffer text, to fix
23013 bugs in the former.
23014
23015 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
23016
23017 * buffer.c (Fbuffer_local_value): New function.
23018 (syms_of_buffer): Defsubr it.
23019
23020 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
23021 value of `cursor-in-non-selected-windows'.
23022
23023 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
23024 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
23025 (syms_of_xdisp): Initialize it.
23026
23027 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23028
23029 * xfns.c (Fx_create_frame): Doc fix.
23030
23031 * coding.c: Change doc-string comments to `new style' [w/`doc:'
23032 keyword].
23033
23034 * eval.c (top_level_value, top_level_set): Remove commented and
23035 #ifdef'd-out code.
23036 (Fdefvar): Fix usage in doc-string.
23037
23038 2001-11-03 Richard M. Stallman <rms@gnu.org>
23039
23040 * xfns.c: Include unistd.h, if it exists.
23041
23042 * editfns.c: Move the include of ctype.h after unistd.h.
23043
23044 * gmalloc.c: Test BROKEN_PROTOTYPES.
23045
23046 2001-11-03 Ken Raeburn <raeburn@gnu.org>
23047
23048 * lisp.h (CHECK_STRING_CAR): New macro.
23049 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
23050 treating XCAR and XCDR as lvalues.
23051 (openp): Use CHECK_STRING_CAR.
23052 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
23053
23054 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
23055
23056 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
23057 (SIGMASKTYPE): Define.
23058
23059 * syssignal.h (sigunblock): Don't define if already defined.
23060
23061 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23062
23063 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
23064 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
23065 Fix typos in comments.
23066
23067 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
23068 and #ifdef'd-out code.
23069 Fix and reindent comments.
23070
23071 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
23072
23073 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
23074 argument `i' in macros.
23075
23076 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
23077 `i' in macros.
23078
23079 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
23080 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
23081 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
23082 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
23083 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
23084 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
23085 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
23086 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
23087 in macros.
23088
23089 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
23090 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
23091 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
23092 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
23093 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
23094 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
23095 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
23096 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
23097 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
23098 (remove unused second argument).
23099
23100 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
23101
23102 * syntax.c (describe_syntax): New wrapper.
23103 (Finternal_describe_syntax_value): Rename from describe_syntax.
23104 Don't insert space at front and \n at the end.
23105 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
23106
23107 * regex.c (re_wctype): Try to fix some warnings.
23108 (regcomp, regexec): Don't forget the __restrict.
23109
23110 2001-11-02 Richard M. Stallman <rms@gnu.org>
23111
23112 * textprop.c (Fget_char_property): Doc fix.
23113
23114 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23115
23116 * process.c (Fstart_process): Add usage to doc-string.
23117
23118 * data.c (Fsetq_default): Ditto.
23119
23120 * callint.c (Finteractive): Ditto.
23121
23122 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
23123
23124 * macros.c: Don't include keymap.h any more.
23125
23126 2001-11-01 Richard M. Stallman <rms@gnu.org>
23127
23128 * data.c (Fmake_local_variable): Doc fix.
23129
23130 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
23131 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
23132
23133 * keymap.c (Fdescribe_buffer_bindings): Print character property
23134 bindings along with or instead of the buffer local map.
23135 Make the overriding maps override what they should.
23136
23137 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23138
23139 * window.c (grow_mini_window): Fix typo in comment.
23140
23141 2001-11-01 Gerd Moellmann <gerd@gnu.org>
23142
23143 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
23144 (XTset_vertical_scroll_bar): Likewise.
23145
23146 * xfns.c (x_build_heuristic_mask): Use four_corners_best
23147 instead of IMAGE_BACKGROUND.
23148
23149 * xfns.c (four_corners_best): Reindent.
23150
23151 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
23152 Handle :box so that it is possible to specify sexprs.
23153
23154 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
23155
23156 * s/hpux11.h: New file.
23157
23158 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23159
23160 * emacs.c (USAGE1): Show command line option --no-window-system
23161 instead of --no-windows in usage.
23162 (standard_args): Rename --no-windows to --no-window-system.
23163 (bug_reporting_address): Follow Emacs coding conventions.
23164
23165 * eval.c (Fcommandp): Doc fix.
23166 Change doc-string comments to `new style' [w/`doc:' keyword].
23167
23168 * frame.c (Fframe_live_p): Doc fix.
23169
23170 * buffer.c (selective-display-ellipses): Doc fix.
23171
23172 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23173
23174 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
23175
23176 * xfaces.c (realize_x_face): If C is not a single-byte character,
23177 set the face's colors_copied_bitwise_p instead of the defaulted_p
23178 members which have a different meaning.
23179 (free_face_colors): Do nothing for a face whose colors have been
23180 copied bitwise.
23181
23182 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
23183
23184 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23185
23186 * marker.c, mocklisp.c: Change doc-string comments to `new style'
23187 [w/`doc:' keyword].
23188
23189 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23190
23191 * fns.c (require_unwind): Return Lisp_Object.
23192
23193 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23194
23195 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
23196 (last-input-char): Revert doc-string to be the same as the
23197 doc-string of `last-input-event'.
23198
23199 * xdisp.c: Fix typos in comments.
23200
23201 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23202
23203 * window.c (grow_mini_window): Handle case that the root
23204 window is already smaller than the nominal mininum height.
23205
23206 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
23207
23208 * emacs.c (main): Don't call keys_of_macros any more.
23209
23210 * lisp.h (keys_of_macros): Remove.
23211
23212 * macros.c (keys_of_macros): Remove.
23213
23214 * xfaces.c (Fface_attribute_relative_p): Declare args.
23215
23216 2001-10-30 Jason Rumney <jasonr@gnu.org>
23217
23218 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
23219 (enum_font_cb2): Ignore fonts with vertical orientation.
23220
23221 2001-10-30 Richard M. Stallman <rms@gnu.org>
23222
23223 * keyboard.c (Finput_pending_p): Doc fix.
23224
23225 2001-10-30 Gerd Moellmann <gerd@gnu.org>
23226
23227 * xterm.c (x_after_update_window_line): Don't run the code
23228 clearing in borders for rows whose visible height is 0.
23229
23230 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
23231 resized_p flag is set. If not set, use the much less flickering
23232 method previously used.
23233
23234 * dispnew.c (change_frame_size_1): Set frame's resized_p.
23235
23236 * frame.h (struct frame) <resized_p>: New member.
23237
23238 * lread.c (to_multibyte): Ensure read_buffer is at least twice
23239 as large as the number of bytes to convert.
23240
23241 * lread.c (to_multibyte): New function.
23242 (read1): Use it.
23243
23244 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
23245
23246 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
23247
23248 2001-10-30 Gerd Moellmann <gerd@gnu.org>
23249
23250 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
23251 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
23252 if the row's fill_line_p is set and drawing the last glyph with
23253 DRAW_IMAGE_{RAISED,SUNKEN}.
23254
23255 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
23256
23257 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
23258
23259 * xmenu.c: Include coding.h and charset.h.
23260 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
23261 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
23262 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
23263 Explicitly set wv->help. Use `TRUE' rather than `True'.
23264 (menu_help_callback): Use empty_string.
23265
23266 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
23267 (Fx_popup_dialog): Explicitly init f.
23268 (w32_menu_display_help): Use empty_string.
23269
23270 2001-10-29 Richard M. Stallman <rms@gnu.org>
23271
23272 * fns.c (Frequire): Detect recursive try to require the same
23273 feature 3 or more levels deep, and get error.
23274 (require_unwind): New subroutine.
23275 (require_nesting_list): New variable.
23276 (syms_of_fns): Init and staticpro it.
23277
23278 * print.c (print_object): Clarify indication of insertion type.
23279
23280 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
23281
23282 * coding.c (syms_of_coding): Document that locale-coding-system is
23283 used for decoding input on X.
23284
23285 * window.c (Fscroll_left, Fscroll_right): Doc fix.
23286
23287 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23288
23289 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
23290 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
23291
23292 2001-10-29 Gerd Moellmann <gerd@gnu.org>
23293
23294 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
23295 use NO_CURSOR if cursor_in_non_selected_windows is false.
23296
23297 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
23298 the slant attribute if FRAME is t.
23299
23300 * xfns.c (x_set_internal_border_width): Set frame garbaged
23301 when X window doesn't exist yet.
23302
23303 * xterm.c (x_after_update_window_line): Clear internal border
23304 in different circumstances.
23305
23306 * xterm.c (XTread_socket) <KeyPress>: Don't use
23307 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
23308 <handa@etl.go.jp>.
23309
23310 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
23311
23312 * m/ibms390.h: New file. From Adam Thornton
23313 <athornton@sinenomine.net>.
23314
23315 2001-10-28 Gerd Moellmann <gerd@gnu.org>
23316
23317 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
23318
23319 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
23320 a loop counter.
23321
23322 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23323
23324 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
23325
23326 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
23327 keyword].
23328 Fix typos in comments.
23329
23330 * emacs.c (bug_reporting_address): New function.
23331 Use it when displaying usage message.
23332
23333 * minibuf.c (read_minibuf): Remove unused external declaration of
23334 variable `Qread_only'.
23335
23336 * keymap.c (access_keymap): Remove unused variable `charset'.
23337
23338 2001-10-28 Miles Bader <miles@gnu.org>
23339
23340 * xfaces.c (merge_face_heights): Handle TO being relative as well.
23341 Remove #ifdef'd-out code.
23342 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
23343 (syms_of_xfaces): Initialize them.
23344
23345 2001-10-27 Jason Rumney <jasonr@gnu.org>
23346
23347 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
23348 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
23349 position using the system caret.
23350
23351 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
23352 (w32_system_caret_height, w32_system_caret_x)
23353 (w32_system_caret_y): New variables for tracking system caret.
23354 (w32_initialize): Initialize them.
23355 (x_display_and_set_cursor): Make system caret follow the active cursor.
23356
23357 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
23358 New messages types.
23359
23360 * w32term.c (note_mouse_highlight): Clear old help_echo.
23361
23362 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23363
23364 * xterm.c: Fix typo in a comment.
23365
23366 * emacs.c: Fix typos in comments.
23367 Remove unnecessary spaces.
23368 Change doc-string comments to `new style' [w/`doc:' keyword].
23369 (USAGE2): Fix typos in usage string.
23370
23371 * xterm.c: Fix typo in a comment.
23372
23373 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
23374 emacs.c.
23375
23376 2001-10-27 Gerd Moellmann <gerd@gnu.org>
23377
23378 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
23379 instead of 1/2 line_height in the heuristic for skipping
23380 farther backward when target_y was not reached.
23381
23382 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
23383 Display errno only if non-zero.
23384 (sound_warning): New function.
23385 (vox_configure): Don't treat failing to set sample rate as error.
23386 (various places): Improve error messages.
23387
23388 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
23389
23390 * fileio.c (Faccess_file): Run the argument filename through
23391 Fexpand_file_name, before using it.
23392
23393 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
23394 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
23395
23396 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23397
23398 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
23399
23400 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23401 Fix clearing in the case of scroll bars on the right.
23402
23403 2001-10-26 Juanma Barranquero <lektu@terra.es>
23404
23405 * w32gui.h (XImage): Add a dummy typedef.
23406
23407 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23408
23409 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
23410
23411 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
23412
23413 * frame.c (Fframe_parameter): Fix last change.
23414
23415 * fileio.c: Revert last change (which removed old commented-out
23416 version of expand-file-name). Add a comment that explains why
23417 this old version should not be removed.
23418
23419 2001-10-25 Gerd Moellmann <gerd@gnu.org>
23420
23421 * frame.c (Fframe_parameter): Fix a bug whereby some
23422 ``artificial'' frame parameters, like `minibuffer' were not
23423 obtained by calling Fframe_parameters.
23424
23425 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
23426 cursor differently.
23427
23428 * xdisp.c (move_it_vertically_backward): Compute line height
23429 differently. Add heuristic to try to be more compatible to 20.x.
23430
23431 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
23432
23433 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
23434
23435 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
23436 boolean.
23437
23438 2001-10-25 Miles Bader <miles@gnu.org>
23439
23440 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
23441 BG is a pointer to a structure, not a structure.
23442 (gif_format, png_format): Add missing commas.
23443
23444 2001-10-24 Richard M. Stallman <rms@gnu.org>
23445
23446 * xfaces.c (Fface_attributes_as_vector): New function.
23447 (syms_of_xfaces): Defsubr it.
23448
23449 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23450
23451 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
23452 variable `area'.
23453
23454 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23455
23456 * search.c (scan_newline): Remove unused variable `selective_display'.
23457
23458 2001-10-25 Miles Bader <miles@gnu.org>
23459
23460 * dispextern.h (struct image): Add `background',
23461 `background_valid', and `background_transparent' fields.
23462 (image_background, image_background_transparent): New declarations.
23463 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
23464 * xfns.c (image_background, image_background_transparent)
23465 (four_corners_best): New functions.
23466 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
23467 (gs_format): Add `:background' entry.
23468 (lookup_image): Set IMG's background color if specified.
23469 (pbm_load, xbm_load_image, png_load): Set IMG's background field
23470 when appropriate.
23471 (x_clear_image_1): Reset `background_valid' and
23472 `background_transparent_valid' fields.
23473 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
23474 calculating it here. Set IMG's background_transparent field.
23475 (enum xpm_keyword_index): Add XPM_BACKGROUND.
23476 (enum png_keyword_index): Add PNG_BACKGROUND.
23477 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
23478 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
23479 (enum gif_keyword_index): Add GIF_BACKGROUND.
23480 (enum gs_keyword_index): Add GS_BACKGROUND.
23481 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
23482 Pre-calculate image background color where necessary.
23483 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
23484 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
23485 color to use for image glyph reliefs.
23486
23487 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23488
23489 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
23490 in full-width rows.
23491
23492 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23493 Fix clearing of area not covered by scroll bar.
23494
23495 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23496
23497 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
23498 and `real_start'.
23499 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
23500 (glyph_rect): Remove unused variable `area'.
23501
23502 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23503
23504 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
23505
23506 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
23507 (row_containing_pos): Take additional argument DY.
23508 Treat rows ending in middle of char differently.
23509 (display_line): Handle tabs on window systems differently.
23510
23511 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
23512 with additional argument.
23513
23514 * dispextern.h (row_containing_pos): Adjust prototype.
23515
23516 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
23517 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
23518 (try_window_id, try_window_reusing_current_matrix)
23519 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
23520 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
23521
23522 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23523
23524 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
23525 gnuemacs).
23526 (HAVE_BOXES): Fix typo in comment.
23527 (push_menu_pane): Fix typo in comment.
23528
23529 * xdisp.c (display_prop_string_p): Remove unused local declaration
23530 of `Qwhen'.
23531 (single_display_prop_string_p): Remove unused local declarations
23532 of `Qwhen' and `Qmargin'.
23533 (string_buffer_position): Remove unused variable `around'.
23534 (store_frame_title): Remove unused variable `width'.
23535
23536 * window.c: Don't define max.
23537 (coordinates_in_window): Remove unused variable `uy'.
23538
23539 * widget.c: Don't define max.
23540
23541 * process.c: Don't define max.
23542 (create_process): Remove unused variable `buffer'.
23543
23544 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23545
23546 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
23547
23548 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
23549
23550 * xfaces.c (Finternal_set_lisp_face_attribute)
23551 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
23552 frame is on a windowed display.
23553
23554 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23555
23556 * dispnew.c (sync_window_with_frame_matrix_rows):
23557 Fix handling of windows which aren't full-width, fix handling
23558 of marginal areas.
23559
23560 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
23561
23562 2001-10-23 Andreas Schwab <schwab@suse.de>
23563
23564 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
23565 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
23566
23567 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23568
23569 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
23570 REAL_END. Notice if cursor gets overwritten.
23571 (notice_overwritten_cursor): Take X positions as parameters.
23572 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
23573 around call to x_draw_glyphs.
23574
23575 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23576
23577 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
23578 instead of C) and usage.
23579
23580 * editfns.c (char-to-string): Fix argument names (use CHAR instead
23581 of C) and usage.
23582
23583 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
23584 `left', `max_width' and `max_height'.
23585
23586 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23587
23588 * xdisp.c (display_line): For a tab continued to the next line,
23589 set row's ends_in_middle_of_char_p.
23590
23591 2001-10-22 Gerd Moellmann <gerd@gnu.org>
23592
23593 * xdisp.c (display_line): Fix computation of continuation lines
23594 width for TABs.
23595
23596 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23597
23598 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
23599 `Qlaplace'.
23600
23601 * fileio.c: Remove unused code.
23602
23603 2001-10-22 Miles Bader <miles@gnu.org>
23604
23605 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
23606 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
23607 Remove `DOC_STRINGS_IN_COMMENTS' cases.
23608
23609 2001-10-21 Jason Rumney <jasonr@gnu.org>
23610
23611 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
23612
23613 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
23614
23615 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
23616 (Finsert_string): Avoid the multi-line string literals warning.
23617
23618 2001-10-22 Miles Bader <miles@gnu.org>
23619
23620 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
23621 (Fdocumentation): Don't use it.
23622 (syms_of_doc): Don't initialize it.
23623
23624 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
23625 * print.c (Fwith_output_to_temp_buffer): Likewise.
23626 * window.c (Fsave_window_excursion): Likewise.
23627 * editfns.c (Fsave_excursion, Fsave_current_buffer)
23628 (Fsave_restriction): Likewise.
23629 * eval.c (Frun_hooks, Frun_hook_with_args)
23630 (Frun_hook_with_args_until_failure)
23631 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
23632 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
23633 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
23634 (Funwind_protect, Fcondition_case): Likewise.
23635 * coding.c (Ffind_operation_coding_system): Likewise.
23636 * keyboard.c (Ftrack_mouse): Likewise.
23637
23638 2001-10-21 Miles Bader <miles@gnu.org>
23639
23640 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
23641 (Fmake_hash_table): Add usage: string to doc string.
23642 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
23643 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
23644 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
23645 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
23646 (Fml_prefix_argument_loop): Likewise.
23647
23648 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23649
23650 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
23651
23652 * sysdep.c (init_sys_modes): Change doc-string comments to `new
23653 style' [w/`doc:' keyword].
23654
23655 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
23656 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
23657 comments to `new style' [w/`doc:' keyword].
23658
23659 2001-10-21 Jason Rumney <jasonr@gnu.org>
23660
23661 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
23662
23663 * w32term.c (remember_mouse_glyph): New function.
23664 (w32_mouse_position): Use it.
23665 (note_mouse_movement): If the mouse moved off the glyph, remember
23666 its new position.
23667
23668 * w32term.h (struct w32_output): Correct spelling of x_compatible.
23669 (w32_display_info): Add mouse_face_overlay.
23670
23671 * w32term.c (notice_overwritten_cursor): Renamed from
23672 note_overwritten_text_cursor. Rewritten to take glyph widths into
23673 account.
23674 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
23675 (fast_find_string_pos): New function.
23676 (fast_find_position): Return the correct vpos. Add parameter
23677 STOP. In the final row, stop before glyphs having STOP as object.
23678 Don't consider glyphs that are not from a buffer.
23679 (fast_find_position) [0]: Add a presumably more correct version
23680 for after 21.1.
23681 (expose_window_tree, expose_frame): Don't compute intersections here.
23682 (expose_window): Do it here instead.
23683 (expose_window_tree, expose_window, expose_line): Return 1 when
23684 overwriting mouse-face.
23685 (expose_window): If W is the window currently being updated, mark
23686 the frame garbaged.
23687 (expose_frame): If mouse-face was overwritten, redo it.
23688 (x_use_underline_position_properties): New variable.
23689 (syms_of_xterm): DEFVAR_BOOL it.
23690 (x_draw_glyph_string): Add comment to use it in future.
23691 (x_draw_glyph_string): Restore clipping after drawing box.
23692 Fix a computation of the underline position.
23693 (w32_get_glyph_string_clip_rect): Minor cleanup.
23694 (x_fill_stretch_glyph_string): Remove an assertion.
23695 (x_produce_glyphs): Don't convert multibyte characters
23696 to unibyte characters in unibyte buffers.
23697 (cursor_in_mouse_face_p): New function.
23698 (x_draw_stretch_glyph_string): Use it to choose a different GC
23699 when drawing a cursor within highlighted text. Don't draw
23700 background again if it has already been drawn.
23701 (x_draw_glyph_string_box): Don't draw a full-width
23702 box just because the glyph row's full_width_p flag is set.
23703 (x_draw_glyphs): Fix computation of rightmost x for
23704 full-width rows.
23705 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
23706 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
23707 change bottom shadow accordingly. Some cleanup.
23708 (x_update_window_end): Handle overwritten mouse face
23709 also for tool bar windows.
23710 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
23711 DRAW is DRAW_IMAGE_RAISED.
23712 (clear_mouse_face): Return 1 if text with mouse face was
23713 actually redrawn. Make the function static.
23714 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
23715 optimize away highlighting if we pass over that same overlay again.
23716 (note_mouse_highlight): Call mouse_face_overlay_overlaps
23717 to detect a case where we have to highlight a different region
23718 despite not having left the currently highlighted region.
23719 Set mouse_face_overlay in the x_display_info. Avoid changing the
23720 mouse pointer shape when show_mouse_face has already done it, or
23721 there is no need. Handle mouse-face and help-echo in strings.
23722 (glyph_rect): New function.
23723 (w32_mouse_position): Use it to raise the threshold for mouse
23724 movement event generation.
23725 (w32_initialize_display_info): Initialize the x_display_info's
23726 mouse_face_overlay.
23727 (w32_set_vertical_scroll_bar): Don't clear a zero height
23728 or width area.
23729 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
23730 a widget to zero height.
23731
23732 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
23733 Protect unibyte strings created by replacing their multibyte
23734 equivalents in menu_items.
23735 (w32_menu_show): Don't overwrite an item's name with its key
23736 description in case the description is a multibyte string.
23737 (single_submenu): Some cleanup.
23738
23739 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
23740 (postprocess_image): New function.
23741 (lookup_image): Call it for all image types except PostScript.
23742 (x_kill_gs_process): Call postprocess_image.
23743 (tiff_error_handler, tiff_warning_handler): New functions.
23744 (tiff_load): Install them as handlers.
23745 (x_kill_gs_process): Recognize if someone has cleared the image
23746 cache under us.
23747 (valid_image_p): Protect better against invalid image
23748 specifications. Previous code could signal an error.
23749 (Fx_hide_tip, Fshow_tip): Doc fix.
23750 (Fv_max_tooltip_size): New variable.
23751 (syns_of_xfns): DEFVAR_LISP it.
23752 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
23753 window buffer to *tip* right after creating the frame. Set frame's
23754 window_width. Use a maximum tooltip size specified by
23755 Vx_max_tooltip_size, if that has valid contents.
23756 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
23757 Make sure the tooltip is completely visible.
23758 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
23759 (Fx_create_frame): Adjust the frame's height for presence
23760 of the tool bar before calling x_figure_window_size.
23761 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
23762 when the window gets smaller.
23763 (x_set_foreground_color): Set frame's cursor_pixel.
23764 (x_set_foreground_color, x_set_background_color): Cleaned up.
23765 (x_set_font): Handle case of x_new_fontset returning the same name
23766 as before, although there was a change in fontsets.
23767
23768 2001-10-21 Miles Bader <miles@gnu.org>
23769
23770 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
23771 (Flogxor): Add usage: string to doc string.
23772 * charset.c (Fstring): Likewise.
23773 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
23774 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
23775
23776 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23777
23778 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
23779
23780 * alloc.c: Reindent DEFUNs with doc: keywords.
23781
23782 * abbrev.c (Finsert_abbrev_table_description): Reindent.
23783
23784 * frame.c: Change doc-string comments to `new style' [w/`doc:'
23785 keyword].
23786
23787 See ChangeLog.9 for earlier changes.
23788
23789 ;; Local Variables:
23790 ;; coding: iso-2022-7bit
23791 ;; End:
23792
23793 Copyright (C) 2001, 2002, 2003, 2004, 2005,
23794 2006 Free Software Foundation, Inc.
23795 Copying and distribution of this file, with or without modification,
23796 are permitted provided the copyright notice and this notice are preserved.
23797
23798 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4