]> code.delx.au - gnu-emacs/blob - src/ChangeLog
*** empty log message ***
[gnu-emacs] / src / ChangeLog
1 2006-05-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2
3 * macterm.c (fn_keycode_to_xkeysym_table, convert_fn_keycode): Remove.
4 (fn_keycode_to_keycode_table) [MAC_OSX]: New variable.
5 (mac_set_unicode_keystroke_event) [TARGET_API_MAC_CARBON]: New function.
6 (XTread_socket) [TARGET_API_MAC_CARBON]: Use it.
7 (XTread_socket) [MAC_OSX]: Try 'uchr' Unicode keyboard-layout
8 resource to backtranslate key with modifiers.
9 (XTread_socket): Don't set read_socket_inev around AEProcessAppleEvent.
10
11 2006-05-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12
13 * xterm.c: Remove declarations already in xterm.h
14
15 * xterm.h: Add extern declarations for x_clear_errors,
16 x_fully_uncatch_errors, x_catching_errors and
17 x_alloc_lighter_color_for_widget. Remove duplicated declarations.
18
19 2006-05-21 Richard Stallman <rms@gnu.org>
20
21 * xfaces.c (best_matching_font): Abort for best == NULL
22 before we start to use it.
23
24 * buffer.c (syms_of_buffer, Fmake_overlay): Doc fixes.
25
26 2006-05-20 Kim F. Storm <storm@cua.dk>
27
28 * xfaces.c (best_matching_font): Fix crash in 2006-05-17 change.
29
30 2006-05-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
31
32 * macterm.c (convert_fn_keycode): Fix last change.
33
34 2006-05-19 Eli Zaretskii <eliz@gnu.org>
35
36 * w32.c (init_environment): Perform the processing of environment
37 variables on a copy of default variables and their values, not on
38 the original. Simplify code that calls ExpandEnvironmentStrings
39 and make buf1[] and buf2[] more visible for easier debugging.
40
41 2006-05-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
42
43 * frame.c (x_set_border_width): Remove #ifndef MAC_OS.
44
45 * image.c [MAC_OS] (gif_load): Allocate Lisp string first.
46
47 * macfns.c (Fx_focus_frame): Don't check dpyinfo->x_focus_frame.
48
49 * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON && MAC_OSX]:
50 Forward keyUp events to toolbox_dispatcher.
51
52 * window.c (foreach_window): Check WINDOWP (FRAME_ROOT_WINDOW (f)).
53
54 2006-05-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
55
56 * config.in: Regenerated (HAVE_ALSA).
57
58 * sound.c (alsa_sound_perror, alsa_open, alsa_period_size)
59 (alsa_configure, alsa_close, alsa_choose_format, alsa_write)
60 (snd_error_quiet, alsa_init): New functions.
61 (vox_init): Return 0 if unable to open device.
62 (Fplay_sound_internal): Test for alsa first and use vox (oss) as
63 a fallback.
64 (struct sound_device): Add period_size.
65 (wav_play, au_play): Use period_size if set.
66
67 * Makefile.in (CFLAGS_SOUND): New flags for ALSA
68 (ALL_CFLAGS): Add CFLAGS_SOUND
69
70 2006-05-18 Kenichi Handa <handa@m17n.org>
71
72 * callproc.c (Fcall_process): Reject encoding arguments by
73 ascii-incompatible coding systems (e.g. utf-16).
74
75 * coding.c (Qascii_incompatible): New variable.
76 (syms_of_coding): Setup Qascii_incompatible.
77 (setup_coding_system): Be sure to initialize coding->common_flags.
78 Check `ascii-incompatible' property of the coding system.
79
80 * coding.h (CODING_ASCII_INCOMPATIBLE_MASK): New macro.
81
82 2006-05-18 Kim F. Storm <storm@cua.dk>
83
84 * xdisp.c (display_tool_bar_line): Restore entire tool-bar geometry when
85 backtracking in case last image doesn't fit on line.
86
87 2006-05-18 MIYOSHI Masanori <miyoshi@meadowy.org> (tiny change)
88
89 * xdisp.c (display_tool_bar_line): Don't adjust tool-bar height by more than
90 height of one frame default line.
91
92 2006-05-17 Richard Stallman <rms@gnu.org>
93
94 * xfaces.c (better_font_p): Any font beats no font.
95 (best_matching_font): Simplify based on above change.
96
97 * buffer.c (Fprevious_overlay_change, Fnext_overlay_change): Doc fixes.
98
99 2006-05-16 Kim F. Storm <storm@cua.dk>
100
101 * xterm.c (handle_one_xevent): Check that f is not NULL before
102 calling x_kill_gs_process.
103
104 2006-05-14 Richard Stallman <rms@gnu.org>
105
106 * textprop.c (Fnext_single_char_property_change)
107 (Fprevious_single_char_property_change): Don't allow returning
108 value beyond LIMIT in any cases.
109 (Fnext_char_property_change, Fprevious_char_property_change): Doc fix.
110
111 * intervals.c (get_local_map): Abort if POSITION outside BEGV, ZV.
112
113 2006-05-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
114
115 * xterm.c (handle_one_xevent): Check that f is not NULL before
116 calling _XEditResCheckMessages.
117
118 2006-05-14 Kim F. Storm <storm@cua.dk>
119
120 * xterm.c (handle_one_xevent): Fix crash in 2006-03-24 change.
121
122 2006-05-13 Eli Zaretskii <eliz@gnu.org>
123
124 * frame.c (x_set_border_width): Fix error message to say "frame",
125 not "window".
126
127 * Makefile.in (SOME_MACHINE_LISP): Add fringe.elc.
128
129 2006-05-12 Chong Yidong <cyd@stupidchicken.com>
130
131 * intervals.c (set_point_both): Fix mixup before before and after
132 in variable names.
133
134 * editfns.c (Fline_beginning_position): Inhibit point-motion hooks
135 while setting point temporarily.
136
137 2006-05-11 Richard Stallman <rms@gnu.org>
138
139 * lread.c (readevalloop): Abort if START non-nil for non-buffer input.
140
141 2006-05-11 Kim F. Storm <storm@cua.dk>
142
143 * xdisp.c (redisplay_tool_bar): Handle large tool-bar-border values.
144
145 2006-05-11 Kenichi Handa <handa@m17n.org>
146
147 * fileio.c (Finsert_file_contents): Fix for the case of IO error
148 while handling replace operation.
149
150 2006-05-10 Kenichi Handa <handa@m17n.org>
151
152 * xfaces.c (realize_default_face) [HAVE_X_WINDOWS]: If the font
153 chosen for the default face was different from the frame font,
154 adjust the frame font.
155
156 2006-05-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
157
158 * image.c (Qduration) [MAC_OS]: Undo previous change.
159 (syms_of_image) [MAC_OS]: Likewise.
160 [MAC_OS] (gif_load): Emulate Graphic Control Extension block.
161
162 * macfns.c (x_to_mac_color): Fix shift amount change.
163 (mac_set_font) [USE_MAC_FONT_PANEL]: Use x_get_focus_frame.
164 [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): Doc fix.
165
166 * macselect.c (Vmac_service_selection) [MAC_OSX]: Rename from
167 Vmac_services_selection. All uses changed.
168 (mac_store_service_event): Rename from mac_store_services_event in
169 extern and calls.
170
171 * macterm.c (Qservice) [MAC_OSX]: Rename from Qservices. All uses
172 changed.
173 [MAC_OSX] (mac_store_service_event): Rename from
174 mac_store_services_event. All callers changed.
175 [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): Add args
176 FACE_ID and C. All callers changed.
177 (x_free_frame_resources) [USE_MAC_FONT_PANEL]: Call
178 mac_set_font_info_for_selection when focus frame is destroyed.
179 (XTread_socket): Revert to FrontNonFloatingWindow/FrontWindow.
180
181 * macterm.h (mac_set_font_info_for_selection): Add 2nd and 3rd
182 args in extern.
183
184 2006-05-09 Chong Yidong <cyd@stupidchicken.com>
185
186 * keymap.c (describe_map): Avoid generating duplicate entries if
187 the shadowed binding has the same definition.
188
189 2006-05-09 Kenichi Handa <handa@m17n.org>
190
191 * keymap.c (push_key_description): Handle invalid character key.
192
193 2006-05-08 Kenichi Handa <handa@m17n.org>
194
195 * callproc.c (Fcall_process): Use system_eol_type for encoding
196 arguments if eol_type is not yet decided.
197
198 * coding.h (system_eol_type): Extern it.
199
200 * coding.c (setup_coding_system): For invalid coding-system, set
201 coding->eol_type to CODING_EOL_UNDECIDED.
202 (encode_coding): Cancel previous change.
203 (shrink_encoding_region): Likewise.
204 (code_convert_region1): Likewise.
205 (code_convert_string1): Likewise.
206 (code_convert_string_norecord): Likewise.
207
208 * fileio.c (choose_write_coding_system): Use system_eol_type for
209 encoding if eol_type is not yet decided.
210
211 * process.c (setup_process_coding_systems): Use system_eol_type
212 for encoding if eol_type is not yet decided.
213 (read_process_output): Likewise.
214 (send_process): Likewise.
215
216 2006-05-07 Juanma Barranquero <lekktu@gmail.com>
217
218 * minibuf.c (syms_of_minibuf) <history-length>: Fix typo in doc.
219
220 2006-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
221
222 * mac.c (Fmac_clear_font_name_table): Move defun to macfns.c.
223 (syms_of_mac): Likewise for defsubr.
224
225 * macfns.c (mac_set_font): New function.
226 (mac_frame_parm_handlers, syms_of_macfns): Replace x_set_font with it.
227 (mac_window) [TARGET_API_MAC_CARBON && MAC_OSX]: Specify
228 kWindowToolbarButtonAttribute when creating window.
229 (Fmac_clear_font_name_table): Move from macfns.c.
230 (syms_of_macfns): Likewise for defsubr.
231 [USE_MAC_FONT_PANEL] (Fmac_set_font_panel_visibility): New defun.
232 (syms_of_macfns) [USE_MAC_FONT_PANEL]: Defsubr it.
233
234 * macgui.h (USE_MAC_FONT_PANEL): Define to 1 if USE_ATSUI is set
235 and build is done on Mac OS X 10.2 and later.
236
237 * macselect.c (mac_do_receive_drag): Remove unused variable `index'.
238 (mac_store_services_event): Change return type in extern.
239
240 * macterm.c (XLoadQueryFont) [USE_ATSUI]: Set font->mac_fontnum to
241 FMFontFamily value.
242 [USE_MAC_FONT_PANEL] (mac_set_font_info_for_selection): New function.
243 (x_new_focus_frame) [USE_MAC_FONT_PANEL]: Use it.
244 (QCfamily, QCweight, QCslant, Qnormal, Qbold, Qitalic): Add extern.
245 (QWindow) [MAC_OSX]: Likewise.
246 (Qfont) [USE_MAC_FONT_PANEL]: Likewise.
247 (Vmac_atsu_font_table) [USE_ATSUI]: New variable.
248 (syms_of_macterm) [USE_ATSUI]: Defvar it.
249 (Qtoolbar_switch_mode) [MAC_OSX]: New variable.
250 (Qpanel_closed, Qselection) [USE_MAC_FONT_PANEL]: Likewise.
251 (syms_of_macterm): Intern and staticpro them.
252 (init_font_name_table) [USE_ATSUI]: Add data to Vmac_atsu_font_table.
253 [TARGET_API_MAC_CARBON] (mac_store_event_ref_as_apple_event): New
254 function.
255 [USE_CARBON_EVENTS] (mac_handle_command_event): Use it.
256 [MAC_OSX] (mac_store_services_event): Likewise.
257 [USE_CARBON_EVENTS] (mac_handle_window_event) [MAC_OSX]: Handle
258 kEventWindowToolbarSwitchMode event.
259 (install_window_handler) [USE_CARBON_EVENTS && MAC_OSX]: Register it.
260 [MAC_OSX] (mac_store_services_event): Change return type to OSStatus.
261 [USE_MAC_FONT_PANEL] (mac_handle_font_event): New function.
262 (install_window_handler) [USE_MAC_FONT_PANEL]: Install it.
263 (XTread_socket): Select window on mouse click if x_focus_frame is NULL.
264
265 * macterm.h (mac_set_font_info_for_selection): Add extern.
266
267 2006-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
268
269 * image.c (Qduration) [MAC_OS]: New variable.
270 (syms_of_image) [MAC_OS]: Intern and staticpro it.
271 [MAC_OS] (gif_load): Save image extension data in img->data.lisp_val.
272 [MAC_OSX] (image_load_quartz2d): Use cfstring_create_with_utf8_cstring
273 instead of cfstring_create_with_string.
274
275 2006-05-06 Kim F. Storm <storm@cua.dk>
276
277 * .gdbinit (xframe): Print frame name.
278 (xlist): New command to print a list (max 10 elements).
279 (xpr): Print lisp object of any type.
280 (pitx): Print it->pixel_width.
281
282 2006-05-05 Kenichi Handa <handa@m17n.org>
283
284 * xdisp.c (handle_composition_prop): Fix for the case of empty
285 composition component.
286
287 2006-05-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
288
289 * keyboard.c (make_lispy_event) [MAC_OS]: Get Apple event info
290 from event->arg.
291
292 * termhooks.h (enum event_kind) [MAC_OS]: Update comment for
293 MAC_APPLE_EVENT.
294
295 * macterm.h (mac_make_lispy_event_code): Remove extern.
296 (mac_post_mouse_moved_event): Add extern.
297 (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
298 `const AEDesc *' in externs.
299 (create_apple_event_from_drag_ref) [TARGET_API_MAC_CARBON]: New extern.
300
301 * mac.c (mac_aelist_to_lisp, mac_aedesc_to_lisp): Change arg 1 to
302 `const AEDesc *'.
303 [TARGET_API_MAC_CARBON] (create_apple_event): New function.
304 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): Use it.
305 Use xrealloc instead of repeated xmalloc/xfree.
306 [TARGET_API_MAC_CARBON] (create_apple_event_from_drag_ref): New
307 function.
308
309 * macmenu.c (restore_menu_items, cleanup_popup_menu): Return a value.
310
311 * macselect.c: Update copyright year.
312 (mac_store_apple_event): Change return type to void in extern.
313 (mac_handle_apple_event): Don't get return value from
314 mac_store_apple_event.
315 [TARGET_API_MAC_CARBON] (Vmac_dnd_known_types): New variable.
316 (syms_of_macselect) [TARGET_API_MAC_CARBON]: Defvar it.
317 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Move function from
318 macterm.c. Use Vmac_dnd_known_types as acceptable flavors.
319 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise. New
320 implementation using create_apple_event_from_drag_ref.
321 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
322 (mac_do_receive_dragUPP): Move variables from macterm.c.
323 (install_drag_handler, remove_drag_handler): New functions.
324
325 * macterm.c (XTread_socket) [TARGET_API_MAC_CARBON]: Try window
326 path select also for proxy icon click.
327 [TARGET_API_MAC_CARBON] (mac_post_mouse_moved_event): New function.
328 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback): Use it.
329 (xlfdpat_create): Remove unused label `error' and trailing sentences.
330 (mac_do_track_drag, mac_do_receive_drag): Move functions to macselect.c.
331 (mac_do_track_dragUPP, mac_do_receive_dragUPP): Move variables to
332 macselect.c.
333 (install_drag_handler, remove_drag_handler): Add extern.
334 (mac_store_apple_event): Change return type to void. All uses changed.
335 Create Lisp object from Apple event and store it into input event.
336 (mac_make_lispy_event_code): Remove function.
337 [TARGET_API_MAC_CARBON] (mac_store_drag_event): New function.
338 (install_window_handler): Call install_drag_handler.
339 (remove_window_handler): Call remove_drag_handler.
340
341 2006-05-03 Richard Stallman <rms@gnu.org>
342
343 * sound.c (Fplay_sound_internal): Dynamically allocate
344 current_sound_device and current_sound.
345 (sound_cleanup): Free them.
346
347 * minibuf.c (read_minibuf): Don't use read_minibuf_noninteractive
348 when inside a keyboard macro.
349
350 2006-05-02 Andreas Schwab <schwab@suse.de>
351
352 * xmenu.c (restore_menu_items): Return a value.
353
354 2006-05-01 Martin Rudalics <rudalics@gmx.at>
355
356 * syntax.c (Fforward_comment): Detect generic comment at beginning of
357 buffer when moving backwards.
358
359 2006-05-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
360
361 * dispnew.c (update_window): Don't set changed_p when mode/header
362 line is updated.
363
364 * xdisp.c (prepare_menu_bars) [MAC_OS]: Call mac_update_title_bar.
365 (get_glyph_face_and_encoding, get_char_face_and_encoding):
366 Don't distinguish known faces from others.
367
368 * mac.c (mac_coerce_file_name_ptr): Try typeFSRef if coercion
369 through typeFileURL failed.
370
371 * macfns.c (mac_update_title_bar): New function.
372 [TARGET_API_MAC_CARBON] (mac_update_proxy_icon): New function.
373 (show_hourglass, hide_hourglass) [USE_CG_DRAWING]:
374 Call mac_prepare_for_quickdraw.
375
376 * macgui.h (USE_ATSUI): Set default to 1 if MAC_OSX is defined.
377 (USE_CG_DRAWING): Don't define if compiled on Mac OS X 10.1.
378 (enum pcm_status): New enum.
379 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID)
380 (XCharStructRow): Remove. Now validity is represented by
381 non-negativeness of sum of ascent and descent.
382 (struct MacFontStruct): Change type of member `rows'.
383 (struct _XGC) [USE_CG_DRAWING]: Add member `clip_rects'.
384
385 * macterm.c (mac_draw_line, mac_draw_line_to_pixmap):
386 Adjust endpoints of strictly horizontal/vertical lines.
387 (mac_set_clip_rectangles) [USE_CG_DRAWING]: Set clip_rects.
388 (pcm_init, pcm_get_status): New functions.
389 (x_per_char_metric, XLoadQueryFont): Use them instead of
390 XCharStructRow and related macros.
391 (x_draw_relief_rect): Don't adjust arguments of mac_draw_line.
392 (x_free_frame_resources) [TARGET_API_MAC_CARBON]: Free FRAME_FILE_NAME.
393 (XTread_socket) [TARGET_API_MAC_CARBON]: Handle proxy icon drag
394 and window path pop-up menu on title bar.
395 (mac_use_core_graphics) [USE_CG_DRAWING]: Set default to 1.
396
397 * macterm.h (mac_update_title_bar): Add extern.
398 (struct mac_output) [TARGET_API_MAC_CARBON]: New member `file_name'.
399 (FRAME_FILE_NAME): New macro.
400
401 * unexmacosx.c (unexec): Error if trying unexec from dumped executable.
402
403 2006-04-30 Richard Stallman <rms@gnu.org>
404
405 * keymap.c (Fdefine_key): Improve error message
406 when KEY begins with a non-prefix key.
407
408 2006-04-30 Martin Rudalics <rudalics@gmx.at>
409
410 * syntax.c (Fforward_comment): Don't forget to break out of the loop
411 when we skipped backward over a generic comment.
412
413 2006-04-27 Nick Roberts <nickrob@snap.net.nz>
414
415 * .gdbinit (pp1, pv1): Only print value as expression is now
416 printed out by gud-print.
417 (pv1): Correct doc string.
418
419 2006-04-26 Stefan Monnier <monnier@iro.umontreal.ca>
420
421 * keymap.c (store_in_keymap): Change `def' arg to not be `register'.
422 Seems to trigger a bug in gcc-amd64 4.0.2 20051125 (Red Hat 4.0.2-8):
423 keymap.c:895: error: address of register variable `def' requested.
424
425 2006-04-26 Jason Rumney <jasonr@gnu.org>
426
427 * w32term.c (construct_mouse_wheel): Handle negative coordinates.
428
429 * w32fns.c (w32_wnd_proc) <WM_LBUTTONDOWN, WM_RBUTTONDOWN>:
430 <WM_LBUTTONUP, WM_RBUTTONUP>: Call signal_user_input in the cases
431 where we preempt mouse_button_timer.
432
433 2006-04-25 Miles Bader <miles@gnu.org>
434
435 * editfns.c (Ffield_beginning, find_field): Undo change of 2006-04-23.
436
437 2006-04-24 Stefan Monnier <monnier@iro.umontreal.ca>
438
439 * process.h: Include headers for pid_t.
440
441 2006-04-24 Kim F. Storm <storm@cua.dk>
442
443 * xdisp.c (fill_stretch_glyph_string): Set s->nchars = 1 for code which
444 does last_glyph=s->first_glyph+s->nchars-1, e.g. if stretch has relief.
445 (produce_stretch_glyph): Assume that face box height and width is
446 already included in stretch glyph size so caller doesn't have to
447 consider the extra space otherwise added (fixes problem in ses.el).
448
449 * frame.c (x_set_font): Clear f->n_tool_bar_rows and current frame
450 matrices to force recalculation of tool-bar height after font change.
451
452 * xdisp.c (tool_bar_lines_needed): New local `temp_row' for clarity.
453 Clear it when done, so we don't accidentally draw a second copy of
454 the tool-bar after resetting f->n_tool_bar_rows.
455 (redisplay_tool_bar): Update tool-bar-lines frame parameter whenever
456 we recalculate f->n_tool_bar_rows.
457
458 2006-04-23 Lars Hansen <larsh@soem.dk>
459
460 * editfns.c (find_field): Fix comment.
461 (Ffield_beginning): Fix bug when POS is at field beginning.
462
463 2006-04-22 Eli Zaretskii <eliz@gnu.org>
464
465 * puresize.h (BASE_PURESIZE): Increase to 1205000.
466
467 2006-04-21 Kim F. Storm <storm@cua.dk>
468
469 * xdisp.c (redisplay_window): Fix last change. Don't recenter if
470 window start is at BEGV.
471
472 * dispextern.h (struct image): New member `corners'.
473 (TOP_CORNER, LEFT_CORNER, BOT_CORNER, RIGHT_CORNER): New macros.
474
475 * image.c (four_corners_best): New arg CORNERS specifies what pixels
476 to look at in case image has margin.
477 (x_create_bitmap_mask): Pass NULL for CORNERS to four_corners_best.
478 (image_background, image_background_transparent)
479 (x_build_heuristic_mask): Pass img->corners to four_corners_best.
480 (gif_load): Set img->corners according to image's margin spec.
481 Use img->corners values directly where applicable.
482 Save image extension data in img->data.lisp_val.
483 (gif_clear_image): New function to free img->data.lisp_val.
484 (gif_type): Use it instead of generic x_clear_image.
485 (Fimage_extension_data): New defun.
486 (syms_of_image): Defsubr it.
487
488 2006-04-21 John Sullivan <john@wjsullivan.net> (tiny change)
489
490 * window.c (Fdisplay_buffer): Doc fix.
491
492 2006-04-21 Eli Zaretskii <eliz@gnu.org>
493
494 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Increase to 25000.
495
496 2006-04-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
497
498 * image.c [MAC_OS] (xpm_load_image): Fill in background field
499 while we have ximg handy.
500
501 * macmenu.c (restore_menu_items, save_menu_items): New functions
502 from xmenu.c.
503 (set_frame_menubar, digest_single_submenu): Apply 2006-04-18
504 changes for xmenu.c.
505
506 * macterm.c (x_per_char_metric): Return NULL if glyph width is 0.
507 (add_mac_font_name): New function.
508 (init_font_name_table): Use it. Adopt the first found font from
509 those having the same family name.
510
511 2006-04-21 Nick Roberts <nickrob@snap.net.nz>
512
513 * xdisp.c (note_mouse_highlight): Use build_string.
514
515 2006-04-20 Lars Hansen <larsh@soem.dk>
516
517 * textprop.c (Fremove_list_of_text_properties):
518 Ensure modify_region is called only when buffer is modified and that
519 signal_after_change is allways called in that case.
520
521 * print.c (PRINTFINISH): Call signal_after_change.
522
523 2006-04-20 Kim F. Storm <storm@cua.dk>
524
525 * xdisp.c (redisplay_window): Fix last change.
526
527 * xdisp.c (redisplay_window): If current window start is not at the
528 beginning of a line, select a new window start if buffer is modified
529 and window start is in the modified region, but the first change is
530 before window start.
531
532 2006-04-18 Richard Stallman <rms@gnu.org>
533
534 * xmenu.c (restore_menu_items, save_menu_items): New fns.
535 (set_frame_menubar): Use save_menu_items. Save updated vector in
536 the frame before unwinding it. Don't use unuse_menu_items.
537 Don't use discard_menu_items.
538 (digest_single_submenu): Abort if an item is not in a pane.
539 (init_menu_items): Put the error check at the top.
540
541 * keymap.c (describe_map): Make "shadowed" warning more verbose.
542
543 * window.c (adjust_window_trailing_edge): Correctly distinguish
544 series vs parallel cases, even when window has no parent.
545
546 * abbrev.c (record_symbol): New function.
547 (Finsert_abbrev_table_description): Sort the abbrevs alphabetically.
548
549 2006-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
550
551 * image.c (x_create_bitmap_from_data) [MAC_OS]: Don't check return
552 value of xmalloc.
553
554 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
555 (create_apple_event_from_event_ref, xrm_get_preference_database)
556 (cfstring_create_normalized): Don't check return value of xmalloc.
557
558 * macselect.c (get_scrap_target_type_list, defer_apple_events)
559 (copy_scrap_flavor_data, mac_handle_service_event): Don't check
560 return value of xmalloc/xrealloc.
561
562 * macterm.c (XCreateGC, x_per_char_metric, xlfdpat_create)
563 (init_font_name_table, init_font_name_table, mac_do_list_fonts)
564 (XLoadQueryFont, mac_store_apple_event): Don't check return value
565 of xmalloc.
566
567 2006-04-17 Kim F. Storm <storm@cua.dk>
568
569 * window.c (coordinates_in_window): On the vertical border,
570 calculate the row number measured from the top of the window, not
571 the top of the frame.
572 (window_loop): Test w->dedicated with !NILP instead of EQ Qt.
573 (window_scroll_pixel_based): Fix off-by-one bug in 2002-12-23 change.
574
575 2006-04-16 Eli Zaretskii <eliz@gnu.org>
576
577 * s/ms-w32.h (SYSTEM_PURESIZE_EXTRA): Reduce to 24000.
578
579 2006-04-16 Romain Francoise <romain@orebokech.com>
580
581 * puresize.h (BASE_PURESIZE): Decrement back to 1200000.
582
583 2006-04-16 Andreas Schwab <schwab@suse.de>
584
585 * puresize.h (PURESIZE_RATIO): Reduce to 10/6.
586
587 2006-04-15 Romain Francoise <romain@orebokech.com>
588
589 * puresize.h (BASE_PURESIZE): Increment to 1210000.
590
591 2006-04-13 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
592
593 * print.c (Fprin1_to_string): Mention in the `doc' that the
594 behavior is modified by `print-level' and `print-length'.
595
596 2006-04-13 Kenichi Handa <handa@m17n.org>
597
598 * coding.c (setup_coding_system): If eol-type is not yet decided
599 and system_eol_type is not LF, set CODING_REQUIRE_ENCODING_MASK.
600 If coding_system is nil, return 0.
601 (code_convert_region1): Even if coding_system is nil, don't skip
602 conversion if system_eol_type is not LF.
603 (code_convert_string1): Likewise.
604 (code_convert_string_norecord): Likewise.
605
606 2006-04-13 Kenichi Handa <handa@m17n.org>
607
608 * coding.c (setup_coding_system): Fix previous change.
609 (encode_coding): If eol_type is not yet decided, use system_eol_type.
610 (shrink_encoding_region): If eol_type is not yet decided and
611 system_eol_type is not LF, don't shrink.
612
613 2006-04-13 Nick Roberts <nickrob@snap.net.nz>
614
615 * xdisp.c (note_mouse_highlight): Add help echo for dragging vertical
616 line.
617
618 2006-04-12 Richard Stallman <rms@gnu.org>
619
620 * keyboard.c (read_key_sequence): Explicitly avoid keybuf[-1].
621
622 * process.c (conv_lisp_to_sockaddr): If FAMILY unknown, just return.
623 (Fprocess_send_eof): Abort if fail to open null device.
624
625 2006-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
626
627 * fns.c [HAVE_MENUS && MAC_OS]: Include macterm.h.
628
629 * image.c [MAC_OS] (xpm_load_image): Add parentheses around
630 assignment used as truth value. Add explicit braces to avoid
631 ambiguous `else'.
632 [MAC_OS] (gif_load): Remove unused variable `gcpro1'.
633
634 * lisp.h (syms_of_fontset, Fset_fontset_font): Put extern and
635 EXFUN in #ifdef HAVE_WINDOW_SYSTEM.
636 (syms_of_xfns, syms_of_xsmfns, syms_of_xselect, syms_of_xterm):
637 Put externs in #ifdef HAVE_X_WINDOWS.
638 (syms_of_macfns, syms_of_macselect, syms_of_macterm)
639 (syms_of_macmenu, syms_of_mac) [MAC_OS]: Add externs.
640 (init_mac_osx_environment) [MAC_OSX]: Add extern.
641
642 * mac.c (init_process): Remove undef.
643 (select) [MAC_OSX]: Undefine before including sysselect.h.
644 (posix_pathname_to_fsspec, fsspec_to_posix_pathname) [MAC_OSX]:
645 Remove functions and prototypes.
646 (parse_value): Add parentheses around + inside shift.
647 (path_from_vol_dir_name): Make static.
648 (get_temp_dir_name): Remove unused variables `cpb' and `dir_name'.
649 [!MAC_OSX] (get_path_to_system_folder): Likewise.
650 (Fmac_get_file_creator, Fmac_get_file_type): Remove unused
651 variable `cCode'.
652 (Fmac_coerce_ae_data): Remove unused variables `fref' and `fs'.
653 (Fmac_get_preference): Add explicit braces to avoid ambiguous `else'.
654
655 * macfns.c (x_to_mac_color): Remove unused variable `tail'.
656 (x_set_mouse_color): Remove unused variable `dpy'.
657 (Fx_create_frame): Remove unused variable `x_frame_count'.
658 (Fx_server_version): Add explicit braces to avoid ambiguous `else'.
659 (x_sync): Move from macterm.c.
660 (Fx_file_dialog): Remove unused variable `default_filter_index'.
661
662 * macmenu.c (min_menu_id): Make element type explicit.
663
664 * macselect.c (get_flavor_type_from_symbol): Remove unused
665 variable `val'.
666 (get_scrap_private_timestamp, x_get_foreign_selection)
667 (copy_scrap_flavor_data): Add explicit braces to avoid ambiguous `else'.
668 (Fmac_process_deferred_apple_events): Remove unused variables
669 `keyword', `reply', `apple_event', `count', and `err'.
670
671 * macterm.c: Don't include gnu.h.
672 (x_io_error_quitter, x_draw_image_foreground_1): Remove prototypes.
673 (x_sync): Move to macfns.c.
674 [USE_CG_DRAWING] (mac_define_fringe_bitmap): Remove unused
675 variable `mask_bits'.
676 (mac_compute_glyph_string_overhangs): Avoid ambiguous `else'.
677 (x_draw_image_glyph_string): Remove unused variable `pixmap'.
678 (x_mac_to_emacs_modifiers): Remove function.
679 (XTset_vertical_scroll_bar, mac_handle_visibility_change)
680 (x_make_frame_visible, xlfdpat_create, mac_handle_command_event):
681 Add explicit braces to avoid ambiguous `else'.
682 (x_make_frame_visible): Remove unused variables `type',
683 `original_top', and `original_left'.
684 (mac_do_list_fonts, XTread_socket): Add parentheses around && within ||.
685 (x_load_font): Remove unused variables `full_name', and `value'.
686 (do_get_menus, do_init_managers, do_check_ram_size) [!MAC_OS8]:
687 Remove functions.
688 (do_zoom_window): Reorganize variables with respect to conditionals.
689 (init_command_handler): Remove unused variable `err'.
690 [MAC_OSX] (mac_check_bundle): Remove unused variable `child'.
691
692 * macterm.h (x_set_mouse_position, x_set_mouse_pixel_position)
693 (x_make_frame_invisible, x_iconify_frame, x_free_frame_resources)
694 (x_destroy_window, x_wm_set_size_hint, x_delete_display, XFreeGC)
695 (do_menu_choice, have_menus_p, x_real_positions)
696 (x_set_menu_bar_lines, x_pixel_width, x_pixel_height, x_char_width)
697 (x_char_height, x_sync, x_set_tool_bar_lines, x_activate_menubar)
698 (free_frame_menubar): Add externs.
699
700 * unexmacosx.c: Include config.h before using HAVE_MALLOC_MALLOC_H.
701 (malloc, realloc, free): Add undefs.
702 (read_load_commands): Remove unused variable `n' and `j'.
703 (copy_data_segment): Remove unused variable `r'.
704
705 * xdisp.c (get_glyph_string_clip_rects): Add parentheses around &&
706 within ||. Add explicit braces to avoid ambiguous `else'.
707 (dump_glyph_row): Remove label for `inverse_p' from legend.
708
709 * xfaces.c (Finternal_merge_in_global_face, try_font_list):
710 Add explicit braces to avoid ambiguous `else'.
711
712 2006-04-11 Micha\e,Ak\e(Bl Cadilhac <michael.cadilhac@lrde.org> (tiny change)
713
714 * dispnew.c (init_display): Don't init X display if the user asked
715 for a non-X display.
716
717 2006-04-12 Kenichi Handa <handa@m17n.org>
718
719 * coding.c (setup_coding_system): Use system_eol_type for default
720 coding->eol_type.
721
722 2006-04-11 Dan Nicolaescu <dann@ics.uci.edu>
723
724 * lisp.h (wrong_type_argument): Mark as NO_RETURN.
725
726 * data.c (wrong_type_argument): Try to avoid compiler warnings due
727 to the fact the function is now marked as NO_RETURN.
728
729 2006-04-10 Eli Zaretskii <eliz@gnu.org>
730
731 * s/ms-w32.h (pid_t) [_MSC_VER]: New typedef.
732
733 2006-04-10 Romain Francoise <romain@orebokech.com>
734
735 * xrdb.c (gethomedir): Use xstrdup.
736
737 2006-04-10 Andreas Schwab <schwab@suse.de>
738
739 * xrdb.c (gethomedir): Make sure to always return a pointer that
740 can be passed to free.
741
742 2006-04-09 Richard Stallman <rms@gnu.org>
743
744 * lisp.h (Fkill_emacs): Undo previous change.
745
746 2006-04-08 Richard Stallman <rms@gnu.org>
747
748 * search.c (boyer_moore): Test ch >= 0400, not >.
749
750 2006-04-09 Dan Nicolaescu <dann@ics.uci.edu>
751
752 * puresize.h (pure_write_error): Mark as NO_RETURN.
753
754 * lisp.h (args_out_of_range, args_out_of_range_3)
755
756 2006-04-08 Eli Zaretskii <eliz@gnu.org>
757
758 * w32fns.c (w32_wnd_proc) <WM_MOUSEMOVE>: Ignore mouse movements
759 if a menu is active on this frame.
760
761 2006-04-08 Dan Nicolaescu <dann@ics.uci.edu>
762
763 * lisp.h (report_file_error): Mark as NO_RETURN.
764
765 2006-04-08 Eli Zaretskii <eliz@gnu.org>
766
767 * alloc.c [STDC_HEADERS]: Include stddef.h.
768
769 * lisp.h (PSEUDOVECSIZE): Fix last change.
770
771 2006-04-08 Stefan Monnier <monnier@iro.umontreal.ca>
772
773 * process.h (struct Lisp_Process): Replace Lisp_Objects `pid',
774 `raw_status_high', and `raw_status_low' with plain integers, and move
775 them to the end of the structure.
776
777 * alloc.c (allocate_process): Use PSEUDOVECSIZE to initialize the
778 pseudovector's size field so only the Lisp_Object fields get GC'd.
779
780 * process.c (update_status, make_process, Fdelete_process)
781 (Fprocess_status, list_processes_1, start_process_unwind)
782 (create_process, Fmake_network_process, server_accept_connection)
783 (wait_reading_process_output, send_process, Fprocess_running_child_p)
784 (process_send_signal, proc_encode_coding_system, Fprocess_send_eof)
785 (sigchld_handler, status_notify): Adjust to new non-Lisp fields for
786 `pid' and `raw_status'.
787 (Fprocess_id, Fsignal_process): Same, and additionally use floats when
788 representing PIDs that are larger than most-positive-fixnum.
789
790 * keymap.c (describe_map): Only use XINT if we checked INTEGERP.
791
792 * lisp.h (OFFSETOF, PSEUDOVECSIZE): New macros.
793
794 2006-04-08 Eli Zaretskii <eliz@gnu.org>
795
796 * w32fns.c (Fx_show_tip): Add 3 to the 5th arg of SetWindowPos.
797
798 2006-04-03 Paul Eggert <eggert@cs.ucla.edu>
799
800 * editfns.c (TM_YEAR_IN_ASCTIME_RANGE): New macro, identical to
801 ../lib-src/b2m.c and ../lib-src/editfns.c.
802 (Fcurrent_time_string): Use it.
803 Document that the year might not consume 4 columns if it's outside
804 the range 1000-9999.
805 Check for asctime failure.
806 Don't assume that the output string length is always exactly 24.
807
808 2006-04-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
809
810 * macterm.c (XTread_socket): Initialize variable `f' before its use.
811
812 2006-04-03 Kenichi Handa <handa@m17n.org>
813
814 * image.c: Include "charset.h" and "coding.h".
815 (x_find_image_file): Return an encoded file name.
816
817 2006-04-01 Eli Zaretskii <eliz@gnu.org>
818
819 * configure: Regenerated.
820
821 2006-03-31 Kenichi Handa <handa@m17n.org>
822
823 * xfns.c (xg_set_icon): Delete superfluous UNGCPRO.
824
825 2006-03-30 Dan Nicolaescu <dann@ics.uci.edu>
826
827 * xdisp.c (syms_of_xdisp): Fix variable name.
828
829 2006-03-30 Kenichi Handa <handa@m17n.org>
830
831 * xterm.c (x_term_init): Delete superfluous UNGCPRO.
832
833 2006-03-29 Juanma Barranquero <lekktu@gmail.com>
834
835 * keyboard.c (process_tool_bar_item): Reorder dummy args.
836
837 2006-03-29 Stefan Monnier <monnier@iro.umontreal.ca>
838
839 * keyboard.c (tool_bar_items): Use map_keymap.
840 (process_tool_bar_item): Add dummy args to fit the required interface.
841
842 2006-03-25 Eli Zaretskii <eliz@gnu.org>
843
844 * .gdbinit (pr, pp, pp1, pv, pv1): Force print_output_debug_flag
845 to zero before calling debug_print or safe_debug_print.
846
847 * print.c (print_output_debug_flag): New global variable.
848 (Fexternal_debugging_output) [WINDOWSNT]: Don't call
849 OutputDebugString if print_output_debug_flag is zero.
850
851 2006-03-24 Paul Eggert <eggert@cs.ucla.edu>
852
853 * editfns.c (TM_YEAR_BASE): Move up, so the changes below can use it.
854 (Fdecode_time, Fencode_time): Use TM_YEAR_BASE instead of 1900.
855 (Fdecode_time): Cast tm_year to EMACS_INT.
856 (Fcurrent_time_string): Report an invalid time specification if
857 the argument is invalid. Also, check for out-of-range time stamps.
858
859 2006-03-24 Kim F. Storm <storm@cua.dk>
860
861 * xterm.c (handle_one_xevent):
862 * w32term.c (w32_read_socket):
863 * macterm.c (XTread_socket): Don't let key-press clear mouse face
864 on in toolbar window if mouse-highlight is an integer.
865
866 * fns.c (sxhash_list): Include last non-nil CDR in hash.
867
868 2006-03-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
869
870 * macmenu.c (enum mac_menu_kind): New enum.
871 (min_menu_id): New variable.
872 (POPUP_SUBMENU_ID, MIN_POPUP_SUBMENU_ID, MIN_MENU_ID)
873 (MIN_SUBMENU_ID): Remove defines. All uses are replaced with
874 min_menu_id and enumerators in enum mac_menu_kind.
875 (fill_menu, dispose_menus, install_menu_quit_handler): New arg KIND.
876 All uses changed. Add range check for menu ID.
877 (fill_menubar): Add range check for menu ID.
878 [HAVE_CANCELMENUTRACKING] (menu_quit_handler): Check error code of
879 GetEventParameter.
880 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler
881 for each menu kind.
882
883 2006-03-22 Kim F. Storm <storm@cua.dk>
884
885 * xdisp.c: Undo 2006-03-21 change.
886
887 * term.c: Define aliases for append_glyph and produce_stretch_glyph
888 when `static' is defined to avoid name clash with those in xdisp.c.
889
890 * process.c (Faccept_process_output): Fix to comply with lisp reference.
891 Change arg "timeout" to "seconds" and allow both integer and float value.
892 Change arg "timeout-msec" to "millisec" and interpret" as milliseconds
893 rather than microseconds. Fix doc string accordingly.
894
895 2006-03-21 Ken Raeburn <raeburn@raeburn.org>
896
897 * xdisp.c (store_next_glyph): Rename from append_glyph.
898 (generate_stretch_glyph): Rename from produce_stretch_glyph.
899 All callers changed accordingly.
900
901 2006-03-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
902
903 * xterm.c: x_session_initialized new variable.
904 (x_term_init): Use x_session_initialized to check if
905 x_session_initialize should be called.
906 (x_initialize): Initialize x_session_initialized.
907
908 2006-03-21 Kim F. Storm <storm@cua.dk>
909
910 * fringe.c (draw_fringe_bitmap): Don't calculate default overlay arrow
911 bitmap here, but ...
912 (update_window_fringes): ... here, so we can test if it has changed.
913
914 2006-03-20 Andreas Schwab <schwab@suse.de>
915
916 * dispnew.c (init_display): Check DISPLAY here.
917
918 * emacs.c (main): Don't check here.
919
920 * xterm.c (x_display_ok): Don't use DISPLAY env var.
921
922 2006-03-20 Stefan Monnier <monnier@iro.umontreal.ca>
923
924 * window.c (window_scroll_pixel_based): Yet another int/Lisp_Object
925 mixup (YAILOM).
926
927 2006-03-20 Eli Zaretskii <eliz@gnu.org>
928
929 * emacs.c (main): Fix last change.
930
931 2006-03-20 Kenichi Handa <handa@m17n.org>
932
933 * fileio.c (Fwrite_region): Set visit_file to Qnil before GCPRO it.
934
935 * keymap.c (map_keymap): Set tail to Qnil before GCPRO it.
936
937 * xfns.c (xg_set_icon): Remove unnecessary GCPRO.
938
939 * xterm.c (x_term_init): Remove unnecessary GCPRO.
940
941 2006-03-19 Kim F. Storm <storm@cua.dk>
942
943 * xdisp.c (set_cursor_from_row): Fix cursor property on overlay string,
944 so it doesn't associate overlay string with following glyph by default.
945 Allow integer property value to specify explicit number of buffer
946 positions associate with overlay string.
947
948 2006-03-18 Chong Yidong <cyd@stupidchicken.com>
949
950 * xterm.c (x_display_ok): Fix minor bug and compilation warnings.
951
952 2006-03-18 Nozomu Ando <nand@mac.com>
953
954 * m/pmax.h (BROKEN_NOCOMBRELOC) [__NetBSD__]: Define.
955 (LIB_STANDARD, START_FILES) [__NetBSD__]: Don't define.
956 (START_FILES, RUN_TIME_REMAP, UNEXEC) [__NetBSD__, __OpenBSD__]:
957 Don't redefine.
958
959 * m/mips.h: Don't use unexmips on NetBSD.
960 (LIBS_MACHINE): Move definition lower, so it doesn't use
961 LD_SWITCH_MACHINE, START_FILES, LIB_STANDARD, LIBS_TERMCAP,
962 C_SWITCH_MACHINE, and C_DEBUG_SWITCH.
963
964 * unexelf.c [BROKEN_NOCOMBRELOC]: Include assert.h.
965 (unexec) [BROKEN_NOCOMBRELOC]: Handle platforms whose nocombreloc
966 option is broken (e.g., MIPS/NetBSD).
967
968 2006-03-18 Craig McDaniel <craigmcd@gmail.com> (tiny change)
969
970 * sheap.c (STATIC_HEAP_SIZE): Enlarge STATIC_HEAP_SIZE to 12MB.
971 Remove the HAVE_X_WINDOWS conditional.
972
973 2006-03-18 Vivek Dasmohapatra <vivek@etla.org> (tiny change)
974
975 * emacs.c (main): If user asks for a display that is unavailable,
976 simulate -nw.
977
978 * xterm.c (x_display_ok): New function.
979
980 * xterm.h: Add prototype for x_display_ok.
981
982 2006-03-18 Eli Zaretskii <eliz@gnu.org>
983
984 * w32fns.c (Fw32_select_font): Doc fix.
985
986 2006-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
987
988 * image.c [MAC_OS] (XPutPixel, XGetPixel)
989 [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]: Don't use specialized
990 version when depth is 32.
991 (mac_create_cg_image_from_image) [MAC_OS && USE_CG_DRAWING]:
992 New function.
993 (prepare_image_for_display) [MAC_OS && USE_CG_DRAWING]: Use it.
994 (x_clear_image_1) [MAC_OS && USE_CG_DRAWING]: Release CGImage.
995
996 * macterm.c (XCreatePixmap) [!WORDS_BIG_ENDIAN && USE_CG_DRAWING]:
997 Create GWorld in ARGB pixel format.
998 (mac_copy_area, mac_copy_area_with_mask) [USE_CG_DRAWING]:
999 Remove functions.
1000 (x_draw_image_foreground) [USE_CG_DRAWING]: Use mac_draw_cg_image
1001 instead of mac_copy_area/mac_copy_area_with_mask.
1002
1003 2006-03-15 Kim F. Storm <storm@cua.dk>
1004
1005 * xdisp.c (extend_face_to_end_of_line): Always add space glyph to
1006 empty row. Fixes memory corruption revealed by 2006-03-02 change.
1007 (display_tool_bar_line): Skip empty tool-bar line if HEIGHT < 0.
1008 (tool_bar_lines_needed): Fix tool-bar display in case the tool-bar
1009 width is exactly the same as the window width. Don't count a final
1010 empty tool-bar line (pass HEIGHT = -1 to display_tool_bar_line).
1011
1012 2006-03-15 Juanma Barranquero <lekktu@gmail.com>
1013
1014 * fringe.c (w32_init_fringe, w32_reset_fringes): Revert to being
1015 conditional on HAVE_NTGUI, not WINDOWS_NT.
1016
1017 2006-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1018
1019 * dispextern.h (mac_init_fringe) [MAC_OS]: Add prototype.
1020
1021 * fringe.c (mac_init_fringe) [MAC_OS]: New function.
1022
1023 * macterm.c (mac_initialize) [USE_CG_DRAWING]: Call mac_init_fringe.
1024 (max_fringe_bmp, fringe_bmp) [USE_CG_DRAWING]: New variables.
1025 (mac_define_fringe_bitmap, mac_destroy_fringe_bitmap)
1026 (mac_draw_cg_image) [USE_CG_DRAWING]: New functions.
1027 (mac_draw_bitmap) [USE_CG_DRAWING]: Remove function.
1028 (x_draw_fringe_bitmap) [USE_CG_DRAWING]: Use mac_draw_cg_image
1029 instead of mac_draw_bitmap.
1030 (x_redisplay_interface) [USE_CG_DRAWING]: Set handlers for
1031 define_fringe_bitmap and destroy_fringe_bitmap.
1032
1033 2006-03-14 Chong Yidong <cyd@stupidchicken.com>
1034
1035 * xterm.c (x_uncatch_errors): Block input for entire function.
1036
1037 2006-03-12 Jason Rumney <jasonr@gnu.org>
1038
1039 * w32fns.c (Fx_create_frame): Remove call to
1040 Qface_set_after_frame_default (from xfns.c 2003-05-26).
1041
1042 * w32menu.c (Fx_popup_menu): Call w32_free_menu_strings when
1043 finished with the menu.
1044
1045 * w32term.c: Sync 2005-10-24 xterm.c changes.
1046 (last_mouse_glyph_frame): New var.
1047 (note_mouse_movement): Say mouse moved if current frame differs
1048 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
1049 (w32_mouse_position): Set last_mouse_glyph_frame.
1050 Remove OLD_REDISPLAY_CODE block.
1051
1052 2006-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1053
1054 * macgui.h [USE_ATSUI && MAC_OSX]: Define USE_CG_TEXT_DRAWING to 1.
1055
1056 * macterm.h (struct mac_output) [USE_CG_DRAWING]: New member cg_context.
1057 (mac_prepare_for_quickdraw) [USE_CG_DRAWING]: Add prototype.
1058
1059 * mac.c (sys_select) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
1060
1061 * macfns.c (x_create_tip_frame): Apply 2006-03-11 change for xfns.c.
1062
1063 * macterm.c (mac_draw_rectangle, x_draw_glyph_string_foreground)
1064 (x_draw_composite_glyph_string_foreground)
1065 (x_draw_image_foreground): Undo previous changes.
1066 (x_draw_hollow_cursor): Likewise. Subtract 1 from the last
1067 argument of mac_draw_rectangle.
1068 (CG_SET_FILL_COLOR, CG_SET_STROKE_COLOR): New macros.
1069 (mac_draw_string_common, mac_draw_image_string_cg): Use them.
1070 (FRAME_CG_CONTEXT) [USE_CG_DRAWING]: New macro.
1071 (mac_begin_cg_clip, mac_end_cg_clip, mac_prepare_for_quickdraw)
1072 [USE_CG_DRAWING]: New functions.
1073 (mac_draw_line, mac_erase_rectangle, mac_clear_window)
1074 (mac_fill_rectangle, mac_draw_rectangle, mac_draw_string_common)
1075 (mac_draw_image_string_cg) [USE_CG_DRAWING]: Add Quartz 2D drawing part.
1076 (mac_draw_bitmap, mac_invert_rectangle, mac_draw_string_common)
1077 (mac_copy_area, mac_scroll_area, x_scroll_bar_create)
1078 (x_scroll_bar_remove, XTset_vertical_scroll_bar, x_set_window_size)
1079 (XTread_socket) [USE_CG_DRAWING]: Call mac_prepare_for_quickdraw.
1080
1081 2006-03-12 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1082
1083 * xfns.c (x_icon): Disable redundant call to `x_wm_set_window_state'.
1084
1085 2006-03-11 Jason Rumney <jasonr@gnu.org>
1086
1087 * w32fns.c (signal_user_input): New function.
1088 (post_character_message): Use it for keyboard input.
1089 (w32_msg_pump): Use it for mouse input.
1090
1091 2006-03-11 Luc Teirlinck <teirllm@auburn.edu>
1092
1093 * window.c: Rename preserve_y to window_scroll_pixel_based_preserve_y.
1094 (window_scroll_pixel_based, syms_of_window): Adapt to above change.
1095
1096 2006-03-11 Eli Zaretskii <eliz@gnu.org>
1097
1098 * w32fns.c (w32_wnd_proc): Ignore middle and extra button events
1099 if a menu is already active (the menubar_active flag is on).
1100
1101 2006-03-11 David Ponce <david@dponce.com>
1102
1103 * xfns.c (x_create_tip_frame): Preserve received parms by copying them.
1104
1105 2006-03-11 Eli Zaretskii <eliz@gnu.org>
1106
1107 * w32term.c: Add x_fully_uncatch_errors and x_catching_errors to
1108 the list of unused display error handling functions.
1109
1110 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors only if
1111 HAVE_X_WINDOWS.
1112 (internal_condition_case, internal_condition_case_1)
1113 (internal_condition_case_2): Call x_catching_errors only if
1114 HAVE_X_WINDOWS.
1115
1116 * vm-limit.c [HAVE_GETRLIMIT]: Don't define unconditionally.
1117 Don't include sys/resource.h unless defined.
1118
1119 2006-03-11 Richard Stallman <rms@gnu.org>
1120
1121 * keymap.c (describe_map): Shorten string to indicate shadowed binding.
1122
1123 * vm-limit.c (get_lim_data, lim_data, data_space_start):
1124 Move from mem-limits.h.
1125 (enum warnlevel): New data type.
1126 (check_memory_limits): Rewrite the logic about warnings.
1127 Use standard `struct rlimit'. Check return values for nonsense.
1128 (memory_warnings): Always clear lim_data.
1129
1130 * mem-limits.h (get_lim_data, lim_data, data_space_start):
1131 Move to vm-limit.c.
1132
1133 * xterm.c (x_fully_uncatch_errors, x_catching_errors): New functions.
1134
1135 * eval.c (unwind_to_catch): Call x_fully_uncatch_errors.
1136 (internal_condition_case_1, internal_condition_case_2):
1137 Abort if within unclosed x_catch_errors.
1138
1139 2006-03-11 Romain Francoise <romain@orebokech.com>
1140
1141 * process.c (Vprocess_adaptive_read_buffering): Doc fix.
1142
1143 2006-03-11 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1144
1145 * lisp.h: Remove duplicate prototypes. Make the prototype of
1146 getloadavg be conditioned on HAVE_GETLOADAVG being undefined.
1147
1148 2006-03-11 Eli Zaretskii <eliz@gnu.org>
1149
1150 * xterm.c (x_draw_hollow_cursor): Subtract 1 from the last
1151 argument of XDrawRectangle.
1152
1153 * xdisp.c (get_phys_cursor_geometry): Don't decrease height by 1.
1154
1155 * macterm.c (mac_draw_rectangle): Don't add 1 to width and height.
1156 (x_draw_glyph_string_foreground)
1157 (x_draw_composite_glyph_string_foreground)
1158 (x_draw_image_foreground): Don't subtract 1 from width and height
1159 arguments to mac_draw_rectangle.
1160 (x_draw_hollow_cursor): Add 1 to w->phys_cursor_width.
1161
1162 2006-03-10 Kim F. Storm <storm@cua.dk>
1163
1164 * alloc.c (USE_POSIX_MEMALIGN): Fix last change.
1165
1166 2006-03-09 Stefan Monnier <monnier@iro.umontreal.ca>
1167
1168 * alloc.c (USE_POSIX_MEMALIGN): New macro.
1169 (ABLOCKS_BASE, lisp_align_malloc, lisp_align_free): Use it.
1170
1171 2006-03-09 Kenichi Handa <handa@m17n.org>
1172
1173 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): Fix decoding
1174 ASCII component of a composition.
1175
1176 2006-03-08 Luc Teirlinck <teirllm@auburn.edu>
1177
1178 * window.c: Declare preserve_y as a static global variable.
1179 (window_scroll_pixel_based): No longer declare preserve_y;
1180 it is global now.
1181 (syms_of_window): Set preserve_y to -1.
1182
1183 2006-03-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1184
1185 * image.c [MAC_OS] (XPutPixel): Set alpha channel bits if pixmap
1186 depth is 32.
1187 [MAC_OS] (XGetPixel): Strip off alpha channel bits if pixmap
1188 depth is 32.
1189
1190 2006-03-06 Chong Yidong <cyd@stupidchicken.com>
1191
1192 * xdisp.c (handle_invisible_prop): Don't update it->position with
1193 a buffer position if we're in a display string.
1194
1195 2006-03-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1196
1197 * macterm.h (MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH)
1198 (MAC_AQUA_SMALL_VERTICAL_SCROLL_BAR_WIDTH): New defines.
1199
1200 * macfns.c (x_default_scroll_bar_color_parameter)
1201 (x_set_scroll_bar_foreground, x_set_scroll_bar_background):
1202 Remove unnecessary prototypes.
1203 (x_set_scroll_bar_default_width):
1204 Use MAC_AQUA_VERTICAL_SCROLL_BAR_WIDTH.
1205 (mac_set_scroll_bar_width): New function.
1206 (mac_frame_parm_handlers): Set it as handler for scroll-bar-width.
1207
1208 * macterm.c (get_control_part_bounds): Fix type of return value.
1209 (x_set_toolkit_scroll_bar_thumb, x_scroll_bar_create)
1210 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]: Don't show
1211 scroll bar if it is not tall enough to display scroll bar thumb.
1212 [USE_CARBON_EVENTS] (mac_convert_event_ref)
1213 (mac_handle_command_event, mac_handle_window_event)
1214 (mac_handle_mouse_event): Check error code of GetEventParameter.
1215 (convert_fn_keycode) [MAC_OSX]: Likewise.
1216
1217 2006-03-05 Andreas Schwab <schwab@suse.de>
1218
1219 * xselect.c (x_catch_errors_unwind): Fix missing return value.
1220
1221 2006-03-02 Kim F. Storm <storm@cua.dk>
1222
1223 * frame.h (struct frame): New member n_tool_bar_rows.
1224
1225 * xdisp.c: Minimize the unpleasent visual impact of the requirement
1226 that non-toolkit tool-bars must occupy an integral number of screen
1227 lines, by distributing the rows evenly over the tool-bar screen area.
1228 (Vtool_bar_border): New variable.
1229 (syms_of_xdisp): DEFVAR_LISP it.
1230 (display_tool_bar_line): Add HEIGHT arg for desired row height.
1231 Make tool-bar row the desired height. Use default face for border
1232 below tool-bar.
1233 (tool_bar_lines_needed): Add N_ROWS arg. Use it to return number of
1234 actual tool-bar rows.
1235 (redisplay_tool_bar): Calculate f->n_tool_bar_rows initially.
1236 Adjust the height of the tool-bar rows to fill tool-bar screen area.
1237 (redisplay_tool_bar): Calculate f->n_tool_bar_rows when tool-bar area
1238 is resized.
1239
1240 2006-03-01 Luc Teirlinck <teirllm@auburn.edu>
1241
1242 * search.c (Fregexp_quote): Do not precede a literal `]' with two
1243 backslashes to try to make clear that it has a literal meaning; it
1244 does not do that. (It could close a character alternative
1245 containing a backslash.)
1246
1247 2006-02-28 Chong Yidong <cyd@stupidchicken.com>
1248
1249 * xselect.c (x_catch_errors_unwind): New function.
1250 (x_reply_selection_request): Put x_uncatch_errors in an unwind.
1251 (Fx_get_atom_name): Call x_uncatch_errors earlier.
1252
1253 * window.c (Qscroll_up, Qscroll_down): New syms.
1254 (window_scroll_pixel_based): Make preserve_y static to avoid
1255 getting point stuck when scrolling 1 line.
1256
1257 2006-02-26 Chong Yidong <cyd@stupidchicken.com>
1258
1259 * xterm.h, xterm.c (x_uncatch_errors): Delete unneccessary argument.
1260
1261 * xterm.c (x_load_font, x_term_init, XTmouse_position)
1262 (handle_one_xevent, x_connection_closed, x_list_fonts):
1263 No arg for x_uncatch_errors.
1264
1265 * xselect.c (x_own_selection, x_decline_selection_request)
1266 (x_reply_selection_request, x_get_foreign_selection)
1267 (Fx_get_atom_name, Fx_send_client_event): Likewise.
1268
1269 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
1270 Likewise.
1271
1272 2006-02-26 Luc Teirlinck <teirllm@auburn.edu>
1273
1274 * lread.c: Declare Vload_file_rep_suffixes instead of
1275 deleted variable default_suffixes.
1276 (Fget_load_suffixes): New function.
1277 (Fload): Use Fget_load_suffixes and Vload_file_rep_suffixes.
1278 No longer use deleted variable default_suffixes. Update docstring.
1279 (syms_of_lread): defsubr Sget_load_suffixes.
1280 Expand `load-suffixes' docstring.
1281 Delete default_suffixes and DEFVAR_LISP the new variable
1282 `load-file-rep-suffixes'.
1283
1284 * w32.c (check_windows_init_file): Use Fget_load_suffixes instead
1285 of Vload_suffixes.
1286
1287 * lisp.h: EXFUN Fget_load_suffixes.
1288 Extern Vload_file_rep_suffixes.
1289
1290 * eval.c (specpdl_ptr): Remove volatile qualifier for consistency
1291 with lisp.h.
1292
1293 2006-02-26 Stefan Monnier <monnier@iro.umontreal.ca>
1294
1295 * lisp.h (struct specbinding, specpdl_ptr): Remove the volatile
1296 qualifier which was trying to avoid the bug that was fixed by
1297 yesterday's changes to xterm.c.
1298
1299 2006-02-25 Chong Yidong <cyd@stupidchicken.com>
1300
1301 * xterm.h (x_catch_errors) Return value changed to void.
1302 (x_uncatch_errors): Delete unused count argument.
1303
1304 * xterm.c (x_catch_errors): Don't use record_unwind_protect, since
1305 it can be called in a signal handler.
1306 (x_catch_errors_unwind): Function deleted.
1307 (x_uncatch_errors): Deallocate last x_error_message_stack struct.
1308 (x_check_errors): Call x_uncatch_errors before signalling error.
1309
1310 (x_load_font, x_term_init, XTmouse_position, handle_one_xevent)
1311 (x_connection_closed, x_list_fonts): Use new versions of
1312 x_catch_errors and x_uncatch_errors.
1313
1314 * xselect.c (x_own_selection, x_decline_selection_request)
1315 (x_reply_selection_request, x_get_foreign_selection)
1316 (Fx_get_atom_name, Fx_send_client_event): Likewise.
1317
1318 * xfns.c (x_real_positions, x_set_mouse_color, Fx_focus_frame):
1319 Likewise.
1320
1321 * eval.c (record_unwind_protect): Add an assertion.
1322
1323 2006-02-25 Stefan Monnier <monnier@iro.umontreal.ca>
1324
1325 * process.c (Fmake_network_process): Init the process's mark.
1326
1327 2006-02-25 Kim F. Storm <storm@cua.dk>
1328
1329 * buffer.c (modify_overlay): Force redisplay if we modify an
1330 overlay at the end of the buffer.
1331
1332 2006-02-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1333
1334 * gtkutil.c (xg_get_image_for_pixmap): If x_find_image_file returns
1335 nil the image file has been removed, in that case use the (cached)
1336 pixmap.
1337
1338 2006-02-24 Kenichi Handa <handa@m17n.org>
1339
1340 * fileio.c (Finsert_file_contents): When a text is replaced
1341 partially, be sure to set point before the inserted characters.
1342
1343 2006-02-23 Zhang Wei <id.brep@gmail.com> (tiny change)
1344
1345 * xfns.c (Fx_file_dialog): Return a decoded file name.
1346
1347 2006-02-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1348
1349 * dispnew.c (update_text_area): Avoid needless redraw of rightmost
1350 glyph whose face is extended to the text area end.
1351
1352 * macterm.c (x_set_toolkit_scroll_bar_thumb): Don't set control
1353 values if control is not visible or values are not changed.
1354
1355 2006-02-22 Stefan Monnier <monnier@iro.umontreal.ca>
1356
1357 * window.c (Fwindow_list): Check `window' before doing XWINDOW.
1358 The default `window' should not be "on a different frame".
1359
1360 2006-02-22 Kim F. Storm <storm@cua.dk>
1361
1362 * indent.c (Fvertical_motion): Only try to move back if we can.
1363
1364 2006-02-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1365
1366 * macgui.h (struct _XGC) [!MAC_OSX || !USE_ATSUI]: New member
1367 n_clip_rects.
1368
1369 * macmenu.c (digest_single_submenu): Apply 2006-02-19 change for
1370 xmenu.c.
1371
1372 * macterm.c (GC_CLIP_REGION): Remove macro.
1373 (mac_begin_clip, mac_end_clip): Take arg GC instead of REGION.
1374 All uses changed. Don't do clipping if n_clip_rects is zero.
1375 (mac_set_clip_rectangles): Use xassert instead of abort.
1376 Set n_clip_rects. Don't make clip_region empty when number of
1377 clipping rectangles is zero.
1378 (mac_reset_clip_rectangles): Set n_clip_rects directly instead of
1379 calling mac_set_clip_rectangles.
1380 (x_set_toolkit_scroll_bar_thumb): Temporarily hide scroll bar to
1381 avoid multiple redraws.
1382
1383 2006-02-22 Kim F. Storm <storm@cua.dk>
1384
1385 * fringe.c (draw_fringe_bitmap): Fix overlay-arrow display.
1386
1387 2006-02-21 Kim F. Storm <storm@cua.dk>
1388
1389 * fringe.c (syms_of_fringe) <fringe-bitmaps>: Doc fix.
1390
1391 2006-02-21 Zhang Wei <brep@newsmth.org>
1392
1393 * xfns.c (Fx_file_dialog, Motif and GTK): DECODE_FILE before
1394 returning it.
1395
1396 2006-02-21 Giorgos Keramidas <keramida@ceid.upatras.gr> (tiny change)
1397
1398 * fringe.c (horizontal_bar_bits): Rename from `horisontal_bar_bits'.
1399 (standard_bitmaps): Use it.
1400
1401 2006-02-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1402
1403 * macterm.c (mac_draw_string_common): Remove arg MODE. New arg
1404 BG_WIDTH. All uses changed. Draw background if BG_WIDTH is not zero.
1405 (mac_draw_image_string, mac_draw_image_string_16): New arg BG_WIDTH.
1406 [USE_CG_TEXT_DRAWING] (mac_draw_image_string_cg): Rename from
1407 mac_draw_string_cg. New arg BG_WIDTH. All uses changed.
1408 Draw background if BG_WIDTH is not zero. Use float constants as
1409 divisors instead of double. Use alloca instead of xmalloc/xfree.
1410 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
1411 [!MAC_OS8 || USE_ATSUI]: Background may be drawn using
1412 mac_draw_image_string* functions.
1413 (XLoadQueryFont) [MAC_OS8 && USE_ATSUI]: Don't adjust heights of
1414 some fonts when srcCopy text transfer mode might be used.
1415 (mac_begin_clip, mac_end_clip): Check if region is empty.
1416 (mac_set_clip_rectangles): When resetting clip region, make it
1417 empty instead of disposing of it.
1418
1419 2006-02-20 Kim F. Storm <storm@cua.dk>
1420
1421 * Makefile.in: Add fringe.elc to WINDOW_SUPPORT.
1422
1423 * buffer.h (struct buffer): New members fringe_indicator_alist and
1424 fringe_cursor_alist.
1425
1426 * buffer.c (init_buffer_once): Set dummy default values for
1427 fringe-indicator-alist and fringe-cursor-alist. The proper
1428 default values are set by pre-loading fringe.el.
1429 (syms_of_buffer): defvar_per_buffer new fringe-indicator-alist and
1430 fringe-cursor-alist buffer-local variables and defvar_lisp_nopro
1431 corresponding default- variables.
1432
1433 * fringe.c (enum fringe_bitmap_type): Remove. Change all uses
1434 to use `int'.
1435 (NO_FRINGE_BITMAP, UNDEF_FRINGE_BITMAP, MAX_STANDARD_FRINGE_BITMAPS):
1436 Define explicitly.
1437 (Qtruncation, Qcontinuation, Qempty_line, Qtop_bottom)
1438 (Qhollow_small): New variables.
1439 (syms_of_fringe): Intern and staticpro them.
1440 (question_mark_bits): Rename from unknown_bits.
1441 (left_curly_arrow_bits): Rename from continuation_bits.
1442 (right_curly_arrow_bits): Rename from continued_bits.
1443 (left_triangle_bits): Rename from ov_bits.
1444 (right_triangle_bits): Add.
1445 (filled_rectangle_bits): Rename from filled_box_cursor_bits.
1446 (hollow_rectangle_bits): Rename from hollow_box_cursor_bits.
1447 (filled_square_bits): Add.
1448 (vertical_bar_bits): Rename from bar_cursor_bits.
1449 (horizontal_bar_bits): Rename from hbar_cursor_bits.
1450 (empty_line_bits): Rename from zv_bits.
1451 (standard_bitmaps): Update to use new names.
1452 (draw_fringe_bitmap_1): Make static.
1453 (get_logical_cursor_bitmap, get_logical_fringe_bitmap): New functions
1454 to map from logical cursors and indicators to physical bitmaps.
1455 (draw_fringe_bitmap): Resolve fringe cursor and overlay-arrow
1456 bitmaps using symbol names instead of bitmap numbers.
1457 (update_window_fringes): Use logical indicator symbol names
1458 instead of bitmap numbers for logical. Add bitmap cache.
1459 (LEFT_FRINGE, RIGHT_FRINGE): New helper macros.
1460
1461 2006-02-20 Chong Yidong <cyd@stupidchicken.com>
1462
1463 * regex.c: Revert 2006-02-19 change.
1464 (xmalloc, xrealloc): Define these when not linked to Emacs.
1465 Redefine malloc -> xmalloc, realloc -> xrealloc as in Emacs case.
1466
1467 2006-02-19 Luc Teirlinck <teirllm@auburn.edu>
1468
1469 * regex.c (extend_range_table_work_area): Fix typo.
1470
1471 2006-02-19 Richard M. Stallman <rms@gnu.org>
1472
1473 * xterm.c (x_catch_errors): Use xmalloc.
1474
1475 * regex.c (extend_range_table_work_area): Call xmalloc and xrealloc.
1476 (regex_compile): Likewise.
1477 (regcomp): Use xmalloc.
1478
1479 * gtkutil.c (malloc_widget_value): Use xmalloc.
1480
1481 * vm-limit.c [HAVE_GETRLIMIT]: Include sys/resource.h.
1482 (check_memory_limits) [HAVE_GETRLIMIT]: Use getrlimit.
1483
1484 * xmenu.c (digest_single_submenu): When pane_string is empty,
1485 do initialize save_wv.
1486
1487 2006-02-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1488
1489 * xdisp.c (update_menu_bar) [MAC_OS]: Don't set
1490 w->update_mode_line if arg F is not the selected frame.
1491
1492 * macmenu.c (popup_activated_flag, submenu_id)
1493 (next_menubar_widget_id): Remove variables.
1494 (initialize_frame_menubar): Remove function.
1495 (pop_down_menu, mac_menu_show): Simplify save value.
1496 (dispose_menus): New function.
1497 (pop_down_menu, fill_menubar): Use it.
1498 (fill_submenu): Remove function. All uses changed to fill_menu.
1499 (add_menu_item): Remove args SUBMENU and FORCE_DISABLE. New arg
1500 POS. Don't call SetMenuItemHierarchicalID here.
1501 (fill_menu): Add arg SUBMENU_ID. Return submenu_id that is to be
1502 used next. Call SetMenuItemHierarchicalID here.
1503 (fill_menubar): Add arg DEEP_P. All uses changed. Clean up menu
1504 objects if needed. Reuse existing menu bar titles if possible.
1505 (set_frame_menubar): Don't clean up menu objects here.
1506
1507 2006-02-18 Chong Yidong <cyd@stupidchicken.com>
1508
1509 * window.c (window_min_size_1): Ensure room for the scroll bar and
1510 fringes.
1511
1512 2006-02-17 Romain Francoise <romain@orebokech.com>
1513
1514 * puresize.h (BASE_PURESIZE): Increment to 1200000.
1515
1516 2006-02-17 Stefan Monnier <monnier@iro.umontreal.ca>
1517
1518 * alloc.c (Fmake_symbol): Comment-out left-over assert from before the
1519 addition of the BLOCK_INPUTs.
1520
1521 2006-02-17 Juanma Barranquero <lekktu@gmail.com>
1522
1523 * window.c (Fset_window_scroll_bars): Doc fix.
1524
1525 2006-02-17 Kenichi Handa <handa@m17n.org>
1526
1527 * xdisp.c (display_mode_element): Call display_string with correct
1528 PREC arg (which must be a number of characters, not column width).
1529
1530 2006-02-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1531
1532 * frame.c (x_get_arg): Clear out PARAM in ALIST also on Mac.
1533
1534 * macfns.c (x_set_menu_bar_lines): Menu bar is always shown on Mac.
1535
1536 * macmenu.c (set_frame_menubar): Don't call DrawMenuBar.
1537
1538 2006-02-14 Richard M. Stallman <rms@gnu.org>
1539
1540 * frame.c (x_get_arg): Clear out all occurrences of PARAM in ALIST.
1541
1542 * m/ibms390x.h: New file.
1543
1544 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1545
1546 * gtkutil.c (xg_tool_bar_detach_callback): Set show-arrow to the
1547 value of x-gtk-whole-detached-tool-bar.
1548 (xg_tool_bar_attach_callback): Set show-arrow to TRUE.
1549
1550 * xfns.c (syms_of_xfns): New variable: x-gtk-whole-detached-tool-bar.
1551
1552 2006-02-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1553
1554 * xterm.c (x_x_to_emacs_modifiers): Make non-static.
1555
1556 * xterm.h: Declare x_x_to_emacs_modifiers.
1557
1558 * gtkutil.c (xg_tool_bar_button_cb): New function.
1559 (xg_tool_bar_callback): Call x_x_to_emacs_modifiers to
1560 store modifiers in event.
1561 (update_frame_tool_bar): Connect button-release-event to
1562 xg_tool_bar_button_cb.
1563
1564 2006-02-13 Richard M. Stallman <rms@gnu.org>
1565
1566 * .gdbinit (xwindow): Update the code to show the window box.
1567
1568 2006-02-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1569
1570 * xterm.c (note_mouse_movement): Check for NULL FRAME_X_OUTPUT (frame).
1571
1572 2006-02-12 Richard M. Stallman <rms@gnu.org>
1573
1574 * cmds.c (internal_self_insert): Handle weird auto-fill-function.
1575
1576 2006-02-11 Eli Zaretskii <eliz@gnu.org>
1577
1578 * keyboard.c (Venable_disabled_menus_and_buttons): New variable.
1579 (syms_of_keyboard): DEVFAR_LISP and initialize it.
1580 (parse_tool_bar_item, parse_menu_item): If that variable is
1581 non-nil, don't disable menu items and tool-bar buttons.
1582
1583 2006-02-11 Juanma Barranquero <lekktu@gmail.com>
1584
1585 * doc.c (Fsubstitute_command_keys): Doc fix.
1586
1587 2006-02-10 Thien-Thi Nguyen <ttn@gnu.org>
1588
1589 * data.c (Findirect_function): Rewrite docstring.
1590 Fix omission bug: Declare new arg NOERROR.
1591
1592 2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1593
1594 * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor
1595 if window_desc is not set yet.
1596 (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07
1597 and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame
1598 parameter `visibility' is `icon'.
1599 (Fx_create_frame, x_create_tip_frame): Use "fontset-standard"
1600 instead of "fontset-mac".
1601 (Fx_focus_frame): New defun.
1602 (syms_of_macfns): Defsubr it.
1603
1604 * macterm.c (mac_define_frame_cursor): Don't change pointer shape
1605 for unfocused frame.
1606 (x_raise_frame): Call BringToFront instead of SelectWindow.
1607 (x_lower_frame): Use NULL instead of nil.
1608 (x_make_frame_visible): Don't call SelectWindow.
1609 (XTread_socket): Increment handling_signal at the start, decrement
1610 it at the end.
1611 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use
1612 CFPreferencesGetAppIntegerValue instead of Fmac_get_preference.
1613
1614 2006-02-10 Kim F. Storm <storm@cua.dk>
1615
1616 * data.c (Findirect_function): Add NOERROR arg. All callers changed
1617 to pass Qnil for NOERROR.
1618
1619 * keymap.c (current_minor_maps_error): Remove.
1620 (current_minor_maps): Pass Qt for NOERROR to Findirect_function
1621 instead of using internal_condition_case_1+current_minor_maps_error.
1622
1623 2006-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1624
1625 * xterm.c (handle_one_xevent): Must note mouse movement even for nil
1626 frames for GTK, in that case it is the tool bar. This is so that
1627 highlighted text get reset properly.
1628
1629 2006-02-09 Juanma Barranquero <lekktu@gmail.com>
1630
1631 * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes.
1632
1633 2006-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1634
1635 * window.c (adjust_window_trailing_edge): Check that shrinking
1636 does not set a window to size zero or less.
1637
1638 2006-02-08 Miles Bader <miles@gnu.org>
1639
1640 * editfns.c (Fconstrain_to_field): Use Fget_char_property instead
1641 of Fget_text_property (other field functions work with overlays as
1642 well as text-properties).
1643
1644 2006-02-07 Kenichi Handa <handa@m17n.org>
1645
1646 * dispextern.h (unibyte_display_via_language_environment): Extern it.
1647
1648 * xterm.h (unibyte_display_via_language_environment):
1649 * w32term.h (unibyte_display_via_language_environment):
1650 * macterm.h (unibyte_display_via_language_environment): Delete extern.
1651
1652 2006-02-07 Kenichi Handa <handa@m17n.org>
1653
1654 * term.c (append_glyph): Refer to it->char_to_display instead of it->c.
1655 (produce_glyphs): Set the character to print in
1656 it->char_to_display. Handle unibyte-display-via-language-environment.
1657 (produce_stretch_glyph): Set character to print in it->char_to_display.
1658
1659 2006-02-06 Kenichi Handa <handa@m17n.org>
1660
1661 * lread.c (openp): Initialize encoded_fn before GCPRO it.
1662
1663 2006-02-05 Ken Raeburn <raeburn@raeburn.org>
1664
1665 * editfns.c (Fconstrain_to_field): Fix int/Lisp_Object mixup.
1666
1667 * lisp.h (XPNTR) [!NO_UNION_TYPE && !HAVE_SHM && !DATA_SEG_BITS]:
1668 Cast bitfield value to EMACS_INT, to suppress gcc warning.
1669
1670 * xrdb.c (malloc, realloc, free) [emacs]: Undefine macros before
1671 defining.
1672
1673 2006-02-03 Kim F. Storm <storm@cua.dk>
1674
1675 * xdisp.c: Cache last merged escape glyph face.
1676 (last_escape_glyph_frame, last_escape_glyph_face_id)
1677 (last_escape_glyph_merged_face_id): New variables.
1678 (get_next_display_element): Use/update them.
1679 (redisplay_internal): Reset them before redisplay.
1680
1681 * xdisp.c (set_iterator_to_next): Optimize 2004-12-13 fix.
1682 Only recheck faces after displaying ellipsis.
1683
1684 2006-02-02 Kenichi Handa <handa@m17n.org>
1685
1686 * coding.c (decode_composition_emacs_mule): Fix handling of
1687 incorrect format data.
1688
1689 2006-01-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1690
1691 * gtkutil.c (update_frame_tool_bar): Use new tool bar functions
1692 (gtk_toolbar_insert) so we can have tool bars of different sizes.
1693
1694 2006-01-30 Luc Teirlinck <teirllm@auburn.edu>
1695
1696 * data.c (Flistp): Doc fix.
1697
1698 2006-01-30 Juanma Barranquero <lekktu@gmail.com>
1699
1700 * window.c (Fother_window, Fwindow_vscroll, Fset_window_vscroll):
1701 Fix typos in docstrings.
1702
1703 2006-01-28 Luc Teirlinck <teirllm@auburn.edu>
1704
1705 * data.c (Fcar, Fcdr): Add links to Elisp manual to the docstrings.
1706
1707 2006-01-27 Chong Yidong <cyd@stupidchicken.com>
1708
1709 * alloc.c (make_interval, allocate_string)
1710 (allocate_string_data, make_float, Fcons, allocate_vectorlike)
1711 (Fmake_symbol, allocate_misc): Use BLOCK_INPUT when accessing
1712 global variables.
1713
1714 2006-01-27 Eli Zaretskii <eliz@gnu.org>
1715
1716 * dired.c (DIRENTRY_NONEMPTY) [__CYGWIN__]: Don't use d_ino; use
1717 the MSDOS definition.
1718
1719 2006-01-26 Richard M. Stallman <rms@gnu.org>
1720
1721 * alloc.c (check_pure_size): Make overflow message an "error message".
1722
1723 * keymap.c (Fmap_keymap): Doc fix.
1724
1725 * xfns.c (Fx_create_frame): Put all specified parms into f->param_alist
1726 unless they were cleared out.
1727
1728 * frame.c (x_get_arg): "Clear out" the parm in ALIST if found there.
1729
1730 2006-01-26 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1731
1732 * editfns.c (Fconstrain_to_field): Fix behaviour on field boundaries.
1733 (find_field): Set before_field to after_field when pos is at BEGV.
1734 (Fline_beginning_position, Fline_end_position):
1735 Clarify confusing doc string.
1736
1737 * cmds.c (Fbeginning_of_line, Fend_of_line): Clarify confusing doc
1738 string.
1739
1740 2006-01-26 Kenichi Handa <handa@m17n.org>
1741
1742 * callproc.c (Fcall_process): GCPRO error_file. Encode infile,
1743 current_dir, and error_file. On reporting an error, decode them
1744 back.
1745
1746 2006-01-24 Stefan Monnier <monnier@iro.umontreal.ca>
1747
1748 * regex.c (IMMEDIATE_QUIT_CHECK): Use it with SYNC_INPUT as well.
1749 (re_match_2_internal) <on_failure_jump, on_failure_jump_smart>:
1750 Don't check for quit, since any loop will go through fail or jump.
1751
1752 2006-01-24 Chong Yidong <cyd@stupidchicken.com>
1753
1754 * alloc.c (allocate_string_data): Update next_free immediately, to
1755 reduce risk of memory clobberage.
1756
1757 2006-01-24 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
1758
1759 * xdisp.c (handle_invisible_prop): Set it->position to fix cursor
1760 display when point moves across an ellipsis. If there are
1761 adjacent invisible texts, don't lose the second one's ellipsis.
1762 (x_produce_glyphs): Doc fix.
1763
1764 2006-01-23 Stefan Monnier <monnier@iro.umontreal.ca>
1765
1766 * xterm.c (x_catch_errors_unwind): Yet another int/Lisp_Object mixup.
1767
1768 2006-01-23 Kim F. Storm <storm@cua.dk>
1769
1770 * xdisp.c (handle_single_display_spec): Fix handling of space
1771 property on char from string: set *position rather than
1772 it->current.pos.
1773 (produce_stretch_glyph): Reduce width of stretch glyphs so they
1774 don't get wider than the window (unless truncate-lines is on).
1775
1776 2006-01-22 Stefan Monnier <monnier@iro.umontreal.ca>
1777
1778 * xterm.c: Avoid allocating Lisp data from a signal handler.
1779 (x_error_message): New var to replace x_error_message_string.
1780 (x_error_catcher, x_catch_errors, x_catch_errors_unwind)
1781 (x_check_errors, x_had_errors_p, x_clear_errors, x_error_handler)
1782 (syms_of_xterm): Use it instead of x_error_message_string.
1783
1784 * alloc.c (lisp_align_free): Add an assertion.
1785 (make_interval, allocate_string, make_float, Fcons, Fmake_symbol)
1786 (allocate_misc): If ENABLE_CHECKING is on, check we're not called from
1787 a signal handler.
1788
1789 2006-01-21 Luc Teirlinck <teirllm@auburn.edu>
1790
1791 * dired.c (syms_of_dired) <completion-ignored-extensions>: Doc fix.
1792
1793 2006-01-21 Romain Francoise <romain@orebokech.com>
1794
1795 * xdisp.c (get_window_cursor_type): Fix last change.
1796 Update copyright year.
1797
1798 2006-01-20 Eli Zaretskii <eliz@gnu.org>
1799
1800 * lread.c (Fload): Don't leak the file descriptor returned by
1801 openp if we are going to signal an error.
1802
1803 * w32.c (sys_close): If FD is outside [0..MAXDESC) limits, pass it
1804 directly to _close.
1805 (sys_dup): Protect against new_fd larger than fd_info[] can handle.
1806 (sys_read): If FD is outside [0..MAXDESC) limits, pass it directly
1807 to _read.
1808 (sys_write): If FD is outside [0..MAXDESC) limits, pass it
1809 directly to _write.
1810
1811 * .gdbinit: Don't dereference Vsystem_type's Lisp_Symbol pointer
1812 if it is NULL.
1813
1814 2006-01-20 Kenichi Handa <handa@m17n.org>
1815
1816 * puresize.h (BASE_PURESIZE): Increment to 1190000.
1817
1818 2006-01-19 Chong Yidong <cyd@stupidchicken.com>
1819
1820 * xdisp.c (get_window_cursor_type): Use cursor type specified by
1821 the selected buffer for the echo area too.
1822
1823 2006-01-19 Richard M. Stallman <rms@gnu.org>
1824
1825 * keymap.c (Fmap_keymap): Doc fix.
1826
1827 * s/irix6-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): New definitions.
1828
1829 * keyboard.c (echo_char): Don't omit the space between first two
1830 echoed chars.
1831
1832 * minibuf.c (read_minibuf): Fix previous change.
1833
1834 2006-01-19 Kenichi Handa <handa@m17n.org>
1835
1836 * xterm.c (handle_one_xevent): Handle keysyms 0x1000000..0x10000FF.
1837
1838 2006-01-17 Richard M. Stallman <rms@gnu.org>
1839
1840 * frame.c (x_frame_get_and_record_arg): Don't record Qunbound
1841 value in f->param_alist.
1842
1843 2006-01-15 Andreas Schwab <schwab@suse.de>
1844
1845 * search.c (Freplace_match): Use UPPERCASEP instead of !NOCASEP.
1846
1847 2006-01-13 Richard M. Stallman <rms@gnu.org>
1848
1849 * Makefile.in: Define new macro WINDOW_SUPPORT.
1850 (lisp): Use it.
1851 (SOME_MACHINE_LISP): Add conditionally loaded files.
1852
1853 2006-01-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1854
1855 * macterm.c [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
1856 [MAC_OS_X_VERSION_MAX_ALLOWED >= 1020]: Specify kATSLineUseQDRendering.
1857 (XLoadQueryFont) [USE_ATSUI]: Display diacritical marks in
1858 decomposed form.
1859
1860 * process.c [HAVE_INTTYPES_H]: Include inttypes.h.
1861 (ifflag_table): Fix typo (IFF_OACTIV -> IFF_OACTIVE).
1862 (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ_IFR_NETMASK
1863 macro. Also try member ifr_addr when getting netmask.
1864
1865 2006-01-10 Stefan Monnier <monnier@iro.umontreal.ca>
1866
1867 * fileio.c (Fexpand_file_name): Remove redundant tests.
1868 Fix elimination of // so that it doesn't prevent elimination of an
1869 immediately following /. or /..
1870
1871 2006-01-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1872
1873 * gtkutil.c (xg_toggle_notify_cb): New function.
1874 (xg_toggle_visibility_cb): Move setting of x_gtk_show_hidden_files to
1875 xg_toggle_notify_cb.
1876 (xg_get_file_with_chooser): Add callback to xg_toggle_notify_cb when
1877 parameter value changes so the toggle button gets updated.
1878
1879 2006-01-06 Nick Roberts <nickrob@snap.net.nz>
1880
1881 * .gdbinit: Fix typo.
1882
1883 2006-01-05 Eli Zaretskii <eliz@gnu.org>
1884
1885 * .gdbinit: Fix last change.
1886
1887 2006-01-05 Kim F. Storm <storm@cua.dk>
1888
1889 * process.c (Fmake_network_process): Use AF_INET instead of
1890 AF_UNSPEC when AF_INET6 is not defined.
1891
1892 2006-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
1893
1894 * mac.c (mac_coerce_file_name_ptr, mac_coerce_file_name_desc):
1895 Don't check that the other type is known file-related one.
1896
1897 * macfns.c (Fx_server_version): Use gestaltSystemVersionMajor,
1898 gestaltSystemVersionMinor, and gestaltSystemVersionBugFix on Mac
1899 OS X 10.4 and later.
1900
1901 2006-01-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1902
1903 * gtkutil.c (xg_get_image_for_pixmap): If the image is from a file,
1904 let GTK do all image processing. Importing Emacs own pixmaps to GTK
1905 looks bad for inactive tool bar items with some Gnome themes.
1906
1907 2006-01-04 Eli Zaretskii <eliz@gnu.org>
1908
1909 * .gdbinit: Avoid a warning message when x_error_quitter is not
1910 compiled in.
1911
1912 * process.c [WINDOWSNT]: Undef AF_INET6 to disable IPv6 support
1913 for w32.
1914
1915 2006-01-04 Kim F. Storm <storm@cua.dk>
1916
1917 * process.c: Add IPv6 support.
1918 (Qipv4, Qipv6): New vars.
1919 (syms_of_process): Intern and staticpro them.
1920 (Fformat_network_address): Handle 9 or 8 element vector as IPv6 address
1921 with or without port number. Handle 4 element vector as IPv4 address
1922 without port number.
1923 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
1924 (conv_lisp_to_sockaddr): Handle IPv6 addresses.
1925 (Fmake_network_process): Use :family 'ipv4 and 'ipv6 to explicitly
1926 request that address family only. :family nil or omitted means to
1927 determine address family from the specified :host and :service.
1928 (ifflag_table): Add missing OpenBSD IFF_ flags.
1929 (server_accept_connection): Handle IPv6 addresses.
1930 (init_process): Add (:family ipv4) and (:family ipv6) sub-features.
1931
1932 * .gdbinit: Undo last change. Instead, look at Vsystem_type to
1933 determine which breakpoints to set.
1934
1935 2006-01-03 Stefan Monnier <monnier@iro.umontreal.ca>
1936
1937 * keymap.c (describe_map_compare): Yet another int/Lisp_Object mixup.
1938
1939 * window.h (Fwindow_minibuffer_p): Declare (for use in minibuf.c).
1940
1941 2006-01-03 Romain Francoise <romain@orebokech.com>
1942
1943 * emacs.c (main): Update copyright year.
1944
1945 2006-01-03 Ken Raeburn <raeburn@gnu.org>
1946
1947 * callproc.c (delete_temp_file): Bind file-name-handler-alist to
1948 nil for the call to internal_delete_file.
1949
1950 2006-01-01 Ken Raeburn <raeburn@gnu.org>
1951
1952 * callproc.c (Fcall_process_region): Bind file-name-handler-alist
1953 to nil for the call to Fwrite_region.
1954
1955 2005-12-31 Richard M. Stallman <rms@gnu.org>
1956
1957 * minibuf.c (read_minibuf): Clear out all other minibuffer windows.
1958
1959 2005-12-31 Eli Zaretskii <eliz@gnu.org>
1960
1961 * emacs.c (gdb_pvec_type): A dummy variable for GDB's sake.
1962
1963 2005-12-30 Luc Teirlinck <teirllm@auburn.edu>
1964
1965 * textprop.c (set_text_properties): Reword description of return value.
1966 Return Qnil if caller wants to remove all text properties from a
1967 string and the string already has no intervals.
1968
1969 2005-12-30 Stefan Monnier <monnier@iro.umontreal.ca>
1970
1971 * term.c (visible_cursor): New boolean var.
1972 (set_terminal_modes, tty_show_cursor): Use "vs" or "ve" depending on
1973 visible_cursor.
1974 (syms_of_term): Export the new var as "visible-cursor".
1975
1976 2005-12-30 Eli Zaretskii <eliz@gnu.org>
1977
1978 * .gdbinit: Tell users not to worry about GDB warnings that some
1979 functions do not exist in the binary.
1980
1981 2005-12-30 Andreas Schwab <schwab@suse.de>
1982
1983 * process.c (Fnetwork_interface_info): Correctly terminate the
1984 loop over ifflag_table.
1985
1986 2005-12-29 Richard M. Stallman <rms@gnu.org>
1987
1988 * lread.c (readevalloop): Test for reading a whole buffer
1989 before actually reading anything. Handle all cases, including
1990 START = END = nil and an already-narrowed buffer.
1991 Convert END to a marker if it is a number.
1992
1993 * keymap.c (describe_map): Put sparse map elements into an array,
1994 sort them, then output a sequence of identical bindings on one line.
1995 (struct describe_map_elt): New data type.
1996 (describe_map_compare): New function.
1997
1998 2005-12-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
1999
2000 * gtkutil.c (xg_get_file_with_chooser): Change message shown
2001 in file chooser.
2002
2003 2005-12-27 Richard M. Stallman <rms@gnu.org>
2004
2005 * lread.c (readevalloop): Set PT and ZV in the proper buffer,
2006 not the current one.
2007
2008 * minibuf.c (Fminibuffer_message): Doc fix.
2009 (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
2010
2011 * eval.c (do_autoload): Ignore elements of Vautoload_queue
2012 where car is not symbol.
2013
2014 2005-12-27 Kenichi Handa <handa@m17n.org>
2015
2016 * charset.c (lisp_string_width): Check multibyteness of STRING.
2017
2018 2005-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2019
2020 * xfns.c: x_show_hidden_files, new variable.
2021 (syms_of_xfns): Defvar it.
2022
2023 * gtkutil.c (xg_toggle_visibility_cb): New function.
2024 (xg_get_file_with_chooser): Add toggle hidden files and a message
2025 to the new file chooser dialog. Show hidden files if
2026 x_show_hidden_files is non-zero.
2027
2028 2005-12-26 Richard M. Stallman <rms@gnu.org>
2029
2030 * keyboard.h: Undo previous change.
2031
2032 * Makefile.in (undo.o): Undo previous change.
2033
2034 * undo.c: Undo previous change.
2035
2036 2005-12-26 Luc Teirlinck <teirllm@auburn.edu>
2037
2038 * keyboard.h: extern last_point_position_window.
2039
2040 * undo.c: include keyboard.h.
2041
2042 * Makefile.in (undo.o): Depend on keyboard.h.
2043
2044 2005-12-26 Richard M. Stallman <rms@gnu.org>
2045
2046 * commands.h (last_point_position_window): Declare.
2047
2048 * undo.c: Depend on window.h.
2049 (record_point): Save old point from the correct window.
2050
2051 * keyboard.c (last_point_position_window): New variable.
2052 (command_loop_1): Set last_point_position_window.
2053 (syms_of_keyboard): Init it.
2054
2055 * Makefile.in (undo.o): Depend on window.h.
2056
2057 2005-12-25 Richard M. Stallman <rms@gnu.org>
2058
2059 * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
2060 to undo a `provide'.
2061
2062 * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
2063
2064 2005-12-25 Giorgos Keramidas <keramida@ceid.upatras.gr>
2065
2066 * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
2067 define for FreeBSD on this platform.
2068
2069 2005-12-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2070
2071 * macterm.h (TYPE_FILE_NAME): New define.
2072 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): Remove externs.
2073
2074 * mac.c (posix_pathname_to_fsspec, fsspec_to_posix_pathname):
2075 Add prototypes. Make static.
2076 (mac_aedesc_to_lisp): Initialize err to noErr.
2077 (mac_coerce_file_name_ptr, mac_coerce_file_name_desc)
2078 (init_coercion_handler): New functions.
2079 (Fmac_coerce_ae_data): Use coercion of Apple event data for
2080 translation from/to file names.
2081
2082 * macterm.c: Don't include sys/param.h.
2083 (init_coercion_handler): Add extern.
2084 [MAC_OS8] (main): Call init_coercion_handler.
2085 (mac_initialize) [MAC_OSX]: Likewise.
2086 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Use coercion of
2087 Apple event data for translation from/to file names.
2088
2089 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
2090
2091 * image.c [MAC_OS] (find_image_fsspec): Likewise.
2092
2093 2005-12-23 Martin Rudalics <rudalics@gmx.at>
2094
2095 * insdel.c (insert, insert_and_inherit, insert_before_markers)
2096 (insert_before_markers_and_inherit): Make sure FROM is correct
2097 when `after-change-functions' are called.
2098
2099 2005-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2100
2101 * xfns.c (Fx_uses_old_gtk_dialog): New function.
2102
2103 * gtkutil.c (xg_uses_old_file_dialog): New function.
2104 (xg_get_file_name): Use xg_uses_old_file_dialog.
2105
2106 * gtkutil.h: Declare xg_uses_old_file_dialog.
2107
2108 2005-12-22 Richard M. Stallman <rms@gnu.org>
2109
2110 * xmenu.c (xmenu_show): Call inhibit_garbage_collection.
2111
2112 2005-12-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2113
2114 * mac.c (Fmac_coerce_ae_data) [MAC_OSX]: Fix memory leak.
2115
2116 * macgui.h (XCharStruct): Remove member `valid_p'.
2117 (STORE_XCHARSTRUCT): Don't set member `valid_p'.
2118 (XCharStructRow): New typedef.
2119 (XCHARSTRUCTROW_CHAR_VALID_P, XCHARSTRUCTROW_SET_CHAR_VALID):
2120 New macros.
2121 (struct MacFontStruct): Add member `bounds'. Remove member
2122 `per_char'. All uses for QuichDraw Text fonts are changed to
2123 `bounds.per_char'. ATSUI font bounds are represented as an array
2124 `bounds.rows' of XCharStructRow's, each of which consists of a
2125 bitmap of valid entries and an array of char bounds.
2126
2127 * macterm.c (mac_per_char_metric): Add prototype.
2128 (x_per_char_metric) [USE_CG_TEXT_DRAWING]: Remove prototype.
2129 (mac_query_char_extents): New function.
2130 (x_per_char_metric): Use it.
2131 (XLoadQueryFont): Likewise. Consolidate min/max_bounds calculations.
2132 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg):
2133 Use mac_per_char_metric instead of x_per_char_metric.
2134 (mac_text_extents_16): New function.
2135 (mac_compute_glyph_string_overhangs): Use it.
2136 (mac_unload_font): Free member `bounds' in struct MacFontStruct.
2137
2138 2005-12-21 Stefan Monnier <monnier@iro.umontreal.ca>
2139
2140 * minibuf.c (Fdisplay_completion_list): Use XCAR/XCDR.
2141 (Fminibuffer_completion_help): Remove duplicates before display.
2142
2143 2005-12-21 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2144
2145 * print.c (print_preprocess): Don't lose print_depth levels while
2146 iterating.
2147
2148 2005-12-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2149
2150 * macmenu.c (Qmac_apple_event): Add extern.
2151 (set_frame_menubar, mac_menu_show keymp_panes)
2152 (single_keymap_panes, list_of_panes, list_of_item)
2153 (single_menu_item): Add argument types to prototypes.
2154 (mac_dialog_show) [HAVE_DIALOGS]: Likewise.
2155 (struct skp): New struct (from xmenu.c).
2156 (single_keymap_panes, single_menu_item, list_of_panes)
2157 (list_of_item): Sync with xmenu.c.
2158 (Fx_popup_menu, Fx_popup_dialog): Likewise. Don't get window from
2159 POSITION if it is mac-apple-event event.
2160 (menubar_selection_callback): Don't use menu_command_in_progress.
2161 (set_frame_menubar): First parse all submenus, then make
2162 widget_value trees from them. Don't allocate any widget_value
2163 objects until we are done with the parsing.
2164 (parse_single_submenu, digest_single_submenu): New functions.
2165 (single_submenu): Function deleted, replaced by those two.
2166 (install_menu_quit_handler) [HAVE_CANCELMENUTRACKING]: Don't
2167 create or dispose of EventHandlerUPP. Install hander to all submenus.
2168 (mac_menu_show) [!HAVE_MULTILINGUAL_MENU]: Use ENCODE_MENU_STRING
2169 instead of ENCODE_SYSTEM.
2170 (free_frame_menubar, fill_submenu, fill_menu): Don't use NULL for
2171 integer values.
2172 [HAVE_DIALOGS] (mac_dialog_show): Sync with xdialog_show (in xmenu.c).
2173 (add_menu_item) [TARGET_API_MAC_CARBON]: Use CFString functions to
2174 format menu item string. Don't use NULL for integer value.
2175
2176 * macterm.h (struct mac_output): Remove unused member
2177 menu_command_in_progress.
2178
2179 2005-12-20 Juri Linkov <juri@jurta.org>
2180
2181 * xmenu.c (Fx_popup_menu): Set Vmenu_updating_frame to f if
2182 position is non-nil, else set it to nil.
2183
2184 * macmenu.c (Fx_popup_menu): Add `else' to set
2185 Vmenu_updating_frame to nil only if position is nil.
2186
2187 * w32menu.c (Fx_popup_menu): Add `else' to set
2188 Vmenu_updating_frame to nil only if position is nil.
2189
2190 2005-12-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2191
2192 * keyboard.c (make_lispy_event): Drag-and-drop items are now
2193 stored in member `args' of struct input_event.
2194
2195 * termhooks.h (struct input_event): Fix comment for DRAG_N_DROP_EVENT.
2196
2197 * xselect.c (x_handle_dnd_message): Drag-and-drop items are now
2198 stored in member `args' of struct input_event.
2199
2200 * w32term.c (construct_drag_n_drop): Likewise.
2201
2202 * macterm.c (mac_do_receive_drag): Likewise.
2203 (x_use_underline_position_properties): Undo 2005-07-13 change.
2204 (syms_of_macterm) <x-use-underline-position-properties>: Likewise.
2205 (mac_use_core_graphics, mac_wheel_button_is_mouse_2)
2206 (mac_pass_command_to_system, mac_pass_control_to_system):
2207 New boolean variables renamed from Lisp_Object ones
2208 Vmac_use_core_graphics, Vmac_wheel_button_is_mouse_2,
2209 Vmac_pass_command_to_system, and Vmac_pass_control_to_system.
2210 All uses changed.
2211 (syms_of_macterm): DEFVAR_BOOL them. Remove previous DEFVAR_LISPs.
2212 Make them user options.
2213 (mac_handle_command_event, mac_store_services_event):
2214 Call create_apple_event_from_event_ref without 5th argument.
2215 (backtranslate_modified_keycode): Mask off modifier keys that are
2216 mapped to some Emacs modifiers before passing it to KeyTranslate.
2217 (syms_of_macterm): Make variables `mac-emulate-three-button-mouse',
2218 `mac-wheel-button-is-mouse-2', and `mac-*-modifier' user options.
2219 Fix docstrings of `mac-*-modifier'.
2220
2221 * mac.c (create_apple_event_from_event_ref): Remove arg `types'.
2222 (do_applescript): Change argument types to Lisp_Object.
2223 All uses changed.
2224
2225 * macterm.h (create_apple_event_from_event_ref): Remove 5th
2226 argument from extern.
2227
2228 2005-12-18 Dan Nicolaescu <dann@ics.uci.edu>
2229
2230 * xfns.c (Fx_backspace_delete_keys_p): In case we cannot determine
2231 the answer, return `lambda', not nil.
2232
2233 2005-12-17 Eli Zaretskii <eliz@gnu.org>
2234
2235 * makefile.w32-in (bootstrap-temacs): Warn that parts of commands
2236 enclosed in $(ARGQUOTE)s should not be split between two lines, as
2237 that will break with GNU Make >3.80, when sh.exe is used and
2238 arg quoting is with '..'.
2239
2240 2005-12-17 Chong Yidong <cyd@stupidchicken.com>
2241
2242 * print.c (print_preprocess): Just signal an error if print_depth
2243 is exceeded.
2244
2245 2005-12-17 Eli Zaretskii <eliz@gnu.org>
2246
2247 * .gdbinit: Set a breakpoint on w32_abort.
2248
2249 2005-12-16 Juri Linkov <juri@jurta.org>
2250
2251 * minibuf.c (Fminibuffer_completion_contents): New Lisp function
2252 created from minibuffer_completion_contents.
2253 (minibuffer_completion_contents): Remove.
2254 (do_completion, Fminibuffer_complete_word)
2255 (Fminibuffer_completion_help): Replace minibuffer_completion_contents
2256 with Fminibuffer_completion_contents.
2257 (syms_of_minibuf): Add Sminibuffer_completion_contents.
2258 (Fdisplay_completion_list): Doc fix.
2259 (display_completion_list_1): Use `nil' for second arg of
2260 `Fdisplay_completion_list'.
2261
2262 2005-12-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2263
2264 * xfns.c (compute_tip_xy): Handle negative dx and dy.
2265
2266 * w32fns.c (compute_tip_xy): Ditto.
2267
2268 * macfns.c (compute_tip_xy): Ditto.
2269
2270 2005-12-14 Chong Yidong <cyd@stupidchicken.com>
2271
2272 * print.c (print_preprocess): Go to a deeper print_depth to avoid
2273 print_object loop.
2274
2275 2005-12-14 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
2276
2277 * coding.c (code_convert_region_unwind): GCPRO arg.
2278
2279 2005-12-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2280
2281 * xfns.c (compute_tip_xy): Calculate root_y the same way as root_x,
2282 i.e. dy is offset from top of frame instead of bottom.
2283
2284 * macfns.c (compute_tip_xy): Ditto.
2285
2286 * w32fns.c (compute_tip_xy): Ditto.
2287
2288 * gtkutil.c (SSDATA): New macro to remove compiler warnings.
2289 (xg_get_image_for_pixmap, xg_create_frame_widgets)
2290 (xg_get_file_with_chooser): Use SSDATA instead of SDATA.
2291
2292 * xmenu.c (menubar_selection_callback): Do nothing if the callback
2293 is for an unselected radio menu item.
2294
2295 2005-12-11 Richard M. Stallman <rms@gnu.org>
2296
2297 * xdisp.c (syms_of_xdisp) <blink-cursor-alist>: Doc fix.
2298
2299 * lisp.h [! NO_UNION_TYPE] (EQ): Use == so args are computed just once.
2300
2301 * keymap.c (Fset_keymap_parent, store_in_keymap): Use CHECK_IMPURE.
2302 (Flookup_key): Doc fix.
2303 (syms_of_keymap) <function-key-map>: Doc fix.
2304
2305 * fns.c (Frequire): Treat evaluating from a source file
2306 like loading the file.
2307
2308 * floatfns.c (Flog): Doc fix.
2309
2310 * fileio.c (Finsert_file_contents): Set Vdeactivate_mark
2311 when we change the buffer.
2312
2313 2005-12-11 Juri Linkov <juri@jurta.org>
2314
2315 * minibuf.c (display_completion_list_1):
2316 Call `minibuffer_completion_contents' instead of using `nil' as
2317 second arg of `Fdisplay_completion_list'.
2318 (keys_of_minibuf): Unbind SPC in
2319 Vminibuffer_local_filename_completion_map (see also related
2320 change on 2005-12-06).
2321
2322 2005-12-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2323
2324 * emacs.c (main) [MAC_OS8]: Undo previous change.
2325
2326 * macselect.c (syms_of_macselect) <mac-apple-event-map>:
2327 Initialize to nil. Keymap is now created in lisp/term/mac-win.el.
2328
2329 2005-12-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2330
2331 * Makefile.in (macselect.o): Depend on keymap.h.
2332
2333 * emacs.c (main) [MAC_OS8]: Call syms_of_keymap before
2334 syms_of_macselect.
2335
2336 * image.c (init_image) [MAC_OS]: Don't call EnterMovies.
2337 [!HAVE_GIF && MAC_OS] (gif_load): Call EnterMovies.
2338
2339 * keyboard.c (Qmac_apple_event) [MAC_OS]: New variable.
2340 (syms_of_keyboard) [MAC_OS]: Initialize it.
2341 (make_lispy_event) [MAC_OS]: Build lisp event for MAC_APPLE_EVENT.
2342
2343 * mac.c (Qundecoded_file_name): New variable.
2344 (syms_of_mac): Initialize it.
2345 (mac_aelist_to_lisp, mac_aedesc_to_lisp): New functions.
2346 [TARGET_API_MAC_CARBON] (create_apple_event_from_event_ref): New fun.
2347 (Fmac_coerce_ae_data): New defun.
2348 (syms_of_mac): Defsubr it.
2349
2350 * macselect.c: Include keymap.h.
2351 (mac_ready_for_apple_events): New variable.
2352 (Vmac_apple_event_map, Qmac_apple_event_class)
2353 (Qmac_apple_event_id): New variables.
2354 (syms_of_macselect): Initialize them.
2355 (Qundefined, mac_store_apple_event): Add externs.
2356 (struct apple_event_binding): New struct.
2357 (find_event_binding_fun, find_event_binding)
2358 (mac_find_apple_event_spec, defer_apple_events)
2359 (mac_handle_apple_event, init_apple_event_handler)
2360 (copy_scrap_flavor_data): New functions.
2361 (Fmac_process_deferred_apple_events): New defun.
2362 (syms_of_macselect): Defsubr it.
2363 (mac_store_services_event): Fix extern.
2364 (mac_handle_service_event): Don't allocate Lisp objects during
2365 asynchronous input processing. Use mac_store_services_event
2366 instead of mac_store_application_menu_event.
2367
2368 * macterm.c (Qmac_ready_for_drag_n_drop, Qapplication, Qabout)
2369 (Qpreferences): Remove variables.
2370 (syms_of_macterm) : Don't initialize them.
2371 (Qhicommand) [USE_CARBON_EVENTS]: New variable.
2372 (syms_of_macterm) [USE_CARBON_EVENTS]: Initialize it.
2373 (init_required_apple_events, do_ae_open_application)
2374 (do_ae_print_documents, do_ae_open_documents)
2375 (do_ae_quit_application): Remove functions and prototypes.
2376 (mac_ready_for_apple_events, Qundefined, init_apple_event_handler)
2377 (mac_find_apple_event_spec): Add externs.
2378 (mac_store_application_menu_event): Remove function.
2379 (mac_store_apple_event, mac_make_lispy_event_code): New functions.
2380 (mac_handle_command_event): Create Apple event from Carbon event.
2381 Use mac_store_apple_event instead of mac_store_application_menu_event.
2382 [MAC_OSX] (mac_store_services_event): Likewise.
2383 (struct SelectionRange, SelectionRange): Remove struct and typedef.
2384 [MAC_OS8] (main): Call init_apple_event_handler instead of
2385 init_required_apple_events.
2386 (mac_initialize) [MAC_OSX]: Likewise.
2387 [!USE_CARBON_EVENTS] (mac_wait_next_event):
2388 Use mac_ready_for_apple_events instead of Qmac_ready_for_drag_n_drop.
2389
2390 * macterm.h (mac_make_lispy_event_code, mac_aedesc_to_lisp):
2391 Add externs.
2392 (create_apple_event_from_event_ref) [TARGET_API_MAC_CARBON]: Likewise.
2393 (Fmac_get_preference): Add EXFUN.
2394
2395 * termhooks.h (enum event_kind) [MAC_OS]: Add new MAC_APPLE_EVENT
2396 event.
2397
2398 2005-12-09 Richard M. Stallman <rms@gnu.org>
2399
2400 * xfns.c (Fx_create_frame): Reinstate previous change.
2401
2402 2005-12-09 Eli Zaretskii <eliz@gnu.org>
2403
2404 * w32fns.c (w32_abort) [__GNUC__]: Add instructions for attaching
2405 GDB to the abort dialog.
2406
2407 2005-12-09 Kyotaro HORIGUCHI <horiguti@meadowy.org> (tiny change)
2408
2409 * indent.c (Fvertical_motion): Force move if starting on
2410 stretch glyph.
2411
2412 2005-12-08 Richard M. Stallman <rms@gnu.org>
2413
2414 * lread.c (read_escape) <\s>: Don't treat strings specially.
2415
2416 * xfns.c (Fx_create_frame): Comment out previous change.
2417
2418 2005-12-07 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2419
2420 * xfns.c (Fx_create_frame): Initialize Vdefault_minibuffer_frame,
2421 when needed.
2422
2423 2005-12-06 Stefan Monnier <monnier@iro.umontreal.ca>
2424
2425 * minibuf.c (keys_of_minibuf): Just unbind SPC in
2426 Vminibuffer_local_filename_completion_map rather than forcing it
2427 explicitly to the same binding as the global map.
2428
2429 2005-12-06 Ken Raeburn <raeburn@gnu.org>
2430
2431 * buffer.c (Fkill_buffer): Avoid dangerous side effects in NILP args.
2432 * bytecode.c (Fbyte_code): Likewise.
2433 * fileio.c (internal_delete_file, Fread_file_name_internal): Likewise.
2434 * minibuf.c (Fminibuffer_complete_and_exit): Likewise.
2435 * undo.c (truncate_undo_list): Likewise.
2436
2437 2005-12-05 Richard M. Stallman <rms@gnu.org>
2438
2439 * window.c (enlarge_window): Eliminate arg preserve_before.
2440 Assume it is 0. All callers changed.
2441 (Fenlarge_window, Fshrink_window): Likewise.
2442
2443 2005-12-02 Eli Zaretskii <eliz@gnu.org>
2444
2445 * w32fns.c (compute_tip_xy): Put tip above pointer if it doesn't
2446 fit below.
2447
2448 2005-12-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2449
2450 * xterm.h: Add prototype for xg_set_icon_from_xpm_data.
2451
2452 * xfns.c (x_real_positions): int ign => unsigned int.
2453 (xg_set_icon_from_xpm_data): Remove unused variable err.
2454 (x_set_name_internal, Fx_create_frame, xg_set_icon): Add cast
2455 to remove compiler warning.
2456 (compute_tip_xy): Put tip above pointer if it doesn't fit below.
2457
2458 2005-12-02 David Reitter <david.reitter@gmail.com>
2459
2460 * minibuf.c (Fcompleting_read): If Vminibuffer_completing_file_name is
2461 non-nil, use the new keymaps Vminibuffer_local_filename_completion_map
2462 and Vminibuffer_local_must_match_filename_map keymaps.
2463 (keys_of_minibuf): Bind SPC in the new file-name completion keymaps.
2464
2465 * keymap.c (Vminibuffer_local_filename_completion_map)
2466 (Vminibuffer_local_must_match_filename_map): New variables.
2467 (syms_of_keymap): DEFVAR_LISP them, initialize them, and set their
2468 parent to be Vminibuffer_local_completion_map and
2469 Vminibuffer_local_must_match_map, respectively.
2470
2471 * commands.h (Vminibuffer_local_filename_completion_map)
2472 (Vminibuffer_local_must_match_filename_map): Declare the new keymaps.
2473
2474 2005-12-01 Stefan Monnier <monnier@iro.umontreal.ca>
2475
2476 * window.c (Fset_window_configuration): Don't accidentally copy the
2477 window-point of one window to another.
2478
2479 2005-11-30 L\e$,1 q\e(Brentey K\e,Aa\e(Broly <lorentey@elte.hu>
2480
2481 * buffer.c (Fpop_to_buffer): Remove superfluous call to record_buffer.
2482
2483 2005-11-30 Kim F. Storm <storm@cua.dk>
2484
2485 * alloc.c: Include fcntl.h. Define O_WRONLY if not defined.
2486 (valid_lisp_object_p) [!GC_MARK_STACK]: Validate pointer by
2487 passing it to `emacs_write'.
2488
2489 2005-11-29 Ari Roponen <arjuropo@cc.jyu.fi> (tiny change)
2490
2491 * atimer.c (stop_other_atimers): Fix loop to correctly compute `prev'.
2492
2493 2005-11-27 Richard M. Stallman <rms@gnu.org>
2494
2495 * window.c (adjust_window_trailing_edge): New function.
2496 (Fadjust_window_trailing_edge): New function.
2497 (syms_of_window): Defsubr it.
2498 (window_deletion_count): New variable.
2499 (delete_window): Update window_deletion_count.
2500
2501 2005-11-26 Eli Zaretskii <eliz@gnu.org>
2502
2503 * minibuf.c (syms_of_minibuf): Mention the extension of
2504 `completion-auto-help's meaning by complete.el.
2505
2506 2005-11-26 Henrik Enberg <henrik.enberg@telia.com>
2507
2508 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
2509 Handle :inherit property as a lisp expression.
2510
2511 2005-11-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2512
2513 * macterm.c (Qcontrol): Rename from Qctrl. All uses changed.
2514 (syms_of_macterm): Staticpro Qcontrol, Qmeta, Qalt, Qhyper,
2515 Qsuper, and Qmodifier_value.
2516 (Vmac_control_modifier, Vmac_option_modifier)
2517 (Vmac_command_modifier, Vmac_function_modifier)
2518 (Vmac_emulate_three_button_mouse, Vmac_wheel_button_is_mouse_2)
2519 (Vmac_pass_command_to_system, Vmac_pass_control_to_system)
2520 (Vmac_charset_info_alist): Doc fixes.
2521
2522 2005-11-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2523
2524 * emacs.c (main) [MAC_OSX]: Change working directory to home
2525 directory if `-psn_*' option is specified.
2526
2527 * mac.c (DECODE_UTF_8): Remove macro.
2528 [TARGET_API_MAC_CARBON] (cfstring_to_lisp_nodecode): New function
2529 created from cfstring_to_lisp.
2530 [TARGET_API_MAC_CARBON] (cfstring_to_lisp): Use it.
2531 (xrm_get_preference_database) [TARGET_API_MAC_CARBON]: Likewise.
2532
2533 * macterm.h (cfstring_to_lisp_nodecode) [TARGET_API_MAC_CARBON]:
2534 Add prototype.
2535
2536 2005-11-21 Ken Raeburn <raeburn@gnu.org>
2537
2538 * keymap.c (shadow_lookup): Use make_number to pass a number to
2539 Fsubstring.
2540
2541 2005-11-21 Juri Linkov <juri@jurta.org>
2542
2543 * puresize.h (BASE_PURESIZE): Increment to 1180000.
2544
2545 2005-11-20 Chong Yidong <cyd@stupidchicken.com>
2546
2547 * xfaces.c (Finternal_set_lisp_face_attribute):
2548 Use :ignore-defface for new frame defaults when `unspecified' is
2549 supplied.
2550 (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
2551 (merge_face_vectors): Don't do :ignore-defface overwriting here.
2552 (Finternal_merge_in_global_face): Do it here.
2553
2554 2005-11-20 Juri Linkov <juri@jurta.org>
2555
2556 * charset.c (invalid_character): Use Lisp-readable syntax
2557 for octal and hex. Reorder decimal, octal and hex values.
2558
2559 2005-11-20 Nick Roberts <nickrob@snap.net.nz>
2560
2561 * lisp.h: Use typedef when Lisp_Object is EMACS_INT so that
2562 this type is recognised when debugging.
2563
2564 2005-11-19 Andreas Schwab <schwab@suse.de>
2565
2566 * .gdbinit (nextcons, xcdr, xfloat): Update for changes in
2567 Lisp_Cons and Lisp_Float.
2568
2569 2005-11-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2570
2571 * macterm.c [USE_CG_TEXT_DRAWING] (cg_text_anti_aliasing_threshold):
2572 New variable.
2573 [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): New fun.
2574 (init_font_name_table) [USE_ATSUI && USE_CG_TEXT_DRAWING]: Use it.
2575 [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): Don't do antialiasing if
2576 font size is smaller than or equal to cg_text_anti_aliasing_threshold.
2577
2578 2005-11-17 Chong Yidong <cyd@stupidchicken.com>
2579
2580 * image.c (x_create_bitmap_from_xpm_data): Free attributes on fail.
2581
2582 * xfaces.c (Qignore_defface): New variable.
2583 (syms_of_xfaces): Provide `:ignore-defface'.
2584 (IGNORE_DEFFACE_P): New macro.
2585 (check_lface_attrs, lface_fully_specified_p)
2586 (Finternal_set_lisp_face_attribute)
2587 (Fface_attribute_relative_p, Fmerge_face_attribute):
2588 Handle Qignore_defface as a possible value.
2589 (merge_face_vectors): The merged face is `unspecified' if the
2590 mergee specifies `:ignore-defface'.
2591
2592 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
2593
2594 * lread.c (readevalloop): Add missing GCPROs.
2595
2596 2005-11-16 Chong Yidong <cyd@stupidchicken.com>
2597
2598 * xfns.c (xg_set_icon_from_xpm_data): New function.
2599
2600 * gnu.h (gnu_xpm_bits): Rename from gnu_bits.
2601 (gnu_xbm_bits): Rename from gnu_bits (xbm version).
2602
2603 * xterm.c (x_bitmap_icon): Use the xpm if available.
2604
2605 * image.c (x_create_bitmap_from_xpm_data): New function.
2606 (x_create_bitmap_from_xpm_data): Initialize XpmAttributes.
2607
2608 2005-11-15 Luc Teirlinck <teirllm@auburn.edu>
2609
2610 * Makefile.in (lisp, shortlisp): Add rfn-eshadow.
2611
2612 2005-11-16 Nick Roberts <nickrob@snap.net.nz>
2613
2614 * .gdbinit: Make SIGTSTP work like SIGINT normally does.
2615
2616 2005-11-15 Andreas Schwab <schwab@suse.de>
2617
2618 * lisp.h (struct Lisp_Cons): Make cdr a union.
2619 (XCDR_AS_LVALUE): Adjust.
2620 (struct Lisp_Float): Make data a union.
2621 (XFLOAT_DATA): Adjust.
2622
2623 * alloc.c (free_float): Make free list chaining aliasing-safe.
2624 (make_float): Likewise.
2625 (free_cons): Likewise.
2626 (Fcons): Likewise.
2627 (check_cons_list): Likewise.
2628 (Fmake_symbol): Likewise.
2629 (allocate_misc): Likewise.
2630 (free_misc): Likewise.
2631 (gc_sweep): Likewise.
2632
2633 2005-11-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2634
2635 * mac.c (HASHKEY_QUERY_CACHE): New define.
2636 (xrm_create_database, xrm_q_put_resource): Empty query cache.
2637 (xrm_get_resource): Use query cache.
2638
2639 * image.c (init_image) [MAC_OS]: Don't call EnterMovies if
2640 inhibit_window_system is set.
2641
2642 2005-11-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2643
2644 * macgui.h (USE_CG_TEXT_DRAWING): New define.
2645 (struct MacFontStruct) [USE_CG_TEXT_DRAWING]: New members cg_font
2646 and cg_glyphs.
2647
2648 * macterm.c [USE_CG_TEXT_DRAWING] (mac_draw_string_cg): New function.
2649 (x_draw_glyph_string_foreground) [USE_CG_TEXT_DRAWING]: Use it.
2650 (XLoadQueryFont) [USE_CG_TEXT_DRAWING]: Set members cg_font and
2651 cg_glyphs in struct MacFontStruct if synthesized bold or italic is
2652 not used and font substitution never occurs for ASCII and Latin-1
2653 characters.
2654 (XLoadQueryFont): Maximum and minimum metrics are now those among
2655 ASCII characters.
2656 (XLoadQueryFont) [!MAC_OS8 || USE_ATSUI]: Apply WebKit-style
2657 height adjustments for Courier, Helvetica, and Times.
2658
2659 * s/darwin.h (LIBS_CARBON) [!HAVE_CARBON]: Remove `-framework Carbon'.
2660
2661 2005-11-11 David Reitter <david.reitter@gmail.com>
2662
2663 * macterm.c (syms_of_macterm): Remove macCtrlKey, macShiftKey,
2664 macMetaKey, macAltKey. Introduce Qctrl, Qmeta,
2665 Vmac_control_modifier / mac-control-modifier,
2666 Vmac_option_modifier / mac-option-modifier,
2667 Vmac_command_modifier / mac-command-modifier.
2668 (mac_to_emacs_modifiers): Use the new style modifier
2669 variables. Return UInt32 (modifiers are longs now.)
2670 (backtranslate_modified_keycode): New function (refactoring).
2671 (XTread_socket): Use new modifier variables and refactored function.
2672 (mac_determine_quit_char_modifiers): Remove macMetaKey (there is
2673 no dedicated meta key. Not in use anyway.)
2674 (convert_fn_keycode): Map Fn-keys to their original keycode
2675 using a table (english keyboard only).
2676
2677 2005-11-11 Kim F. Storm <storm@cua.dk>
2678
2679 * .gdbinit (pitx): Fix output format if n_overlay_strings > 0.
2680 Add post hook to "backtrace" to always dump lisp call stack to
2681 increase chance of people sending it to us when reporting bugs.
2682
2683 * doc.c (Fsubstitute_command_keys): Doc fix.
2684
2685 * dispextern.h (struct it): New member ignore_overlay_strings_at_pos_p.
2686
2687 * xdisp.c (handle_stop): Skip overlay string handling if
2688 ignore_overlay_strings_at_pos_p is set.
2689 (set_iterator_to_next): At end of display vector, set
2690 ignore_overlay_strings_at_pos_p if dpvec came from an overlay
2691 string, so we skip those overlay strings at current pos.
2692
2693 2005-11-10 Lars Hansen <larsh@soem.dk>
2694
2695 * fileio.c (file-regular-p): Doc fix.
2696
2697 2005-11-10 Kim F. Storm <storm@cua.dk>
2698
2699 * alloc.c (valid_lisp_object_p): New function to validate that
2700 an object is really a valid Lisp_Object.
2701
2702 * lisp.h (valid_lisp_object_p): Add prototype.
2703
2704 * print.c (safe_debug_print): New function to be called from gdb
2705 to print Lisp objects; use valid_lisp_object_p to avoid crashing
2706 if user tries to print something which is not a Lisp object.
2707
2708 * .gdbinit (pp, pp1): Use safe_debug_print.
2709 (pv, pv1): New commands to print value of a lisp variable.
2710
2711 2005-11-10 Nick Roberts <nickrob@snap.net.nz>
2712
2713 * .gdbinit (pp1): New user-defined function.
2714
2715 2005-11-09 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2716
2717 * image.c [MAC_OSX] (image_load_quartz2d): Fix memory leak.
2718
2719 * mac.c [MAC_OSX] (init_mac_osx_environment): Reinitialize locale
2720 related variables for dumped executable.
2721
2722 * unexmacosx.c (unexec_write_zero): New function.
2723 (copy_data_segment): Clear uninitialized local variables in
2724 statically linked libraries.
2725
2726 * s/darwin.h (C_SWITCH_SYSTEM): Remove -fno-common.
2727
2728 2005-11-09 Juri Linkov <juri@jurta.org>
2729
2730 * keymap.c (shadow_lookup): If Flookup_key returns a number,
2731 call it again with a sub-key-sequence, and if its return value
2732 is non-nil (sub-key is bound), return nil.
2733
2734 2005-11-08 Kim F. Storm <storm@cua.dk>
2735
2736 * process.c (Fsignal_process): Recognize signal names with and
2737 without SIG prefix, e.g. SIGHUP and HUP.
2738
2739 * search.c (search_buffer): No need to initialize base_pat.
2740
2741 2005-11-04 Stefan Monnier <monnier@iro.umontreal.ca>
2742
2743 * window.c (Fget_lru_window, Fget_largest_window, window_loop):
2744 Don't abuse the `mini' arg. Use the `obj' arg instead.
2745
2746 2005-11-04 Kim F. Storm <storm@cua.dk>
2747
2748 * xdisp.c (show_mouse_face): Clear mouse face to eol.
2749
2750 2005-11-03 Dan Nicolaescu <dann@ics.uci.edu>
2751
2752 * Makefile.in (lisp, shortlisp): Add emacs-lisp/syntax.elc,
2753 font-lock.elc and jit-lock.elc.
2754
2755 2005-11-03 Richard M. Stallman <rms@gnu.org>
2756
2757 * window.c (Fenlarge_window): Rename SIDE to HORIZONTAL.
2758 (enlarge_window): Rename WIDTHFLAG to HORIZ_FLAG.
2759 (CURBEG, CURSIZE): Use HORIZ_FLAG instead of WIDTHFLAG.
2760
2761 * sheap.c (STATIC_HEAP_SIZE): Increment both definitions.
2762
2763 * alloc.c (refill_memory_reserve): Move decl out of conditionals.
2764
2765 2005-11-03 Stefan Monnier <monnier@iro.umontreal.ca>
2766
2767 * window.c (Fdisplay_buffer): Fix last change to not use
2768 a dedicated window.
2769
2770 2005-11-01 Kim F. Storm <storm@cua.dk>
2771
2772 * fringe.c (update_window_fringes): Undo 2005-10-27 change.
2773 Instead, rotate the bottom angle bitmap 180 degrees to indicate
2774 that the bottom row does not end in a newline.
2775
2776 2005-11-01 Andreas Schwab <schwab@suse.de>
2777
2778 * unexelf.c (unexec): Handle .plt section in BSS segment.
2779
2780 2005-11-01 Stefan Monnier <monnier@iro.umontreal.ca>
2781
2782 * lread.c (readevalloop): Yet another int/Lisp_Object mixup (YAILOM).
2783
2784 * window.c (window_loop): For LRU and LARGEST, let the `mini' argument
2785 determine whether to consider dedicated windows as well.
2786 (Fget_lru_window, Fget_largest_window): Add `dedicated' argument.
2787 (Fdisplay_buffer): Do consider dedicated windows in those cases where
2788 we will split the window rather than reuse it.
2789 Don't try to use windows on other displays.
2790
2791 2005-10-31 Dan Nicolaescu <dann@ics.uci.edu>
2792
2793 * puresize.h (BASE_PURESIZE): Increment to 1170000.
2794
2795 2005-10-31 Romain Francoise <romain@orebokech.com>
2796
2797 * macfns.c: Update copyright year.
2798 * m/gould.h: Likewise.
2799
2800 2005-10-30 Kim F. Storm <storm@cua.dk>
2801
2802 * xdisp.c (display_line): Restore it->current_x and call
2803 extend_face_to_end_of_line when last glyph doesn't fit on line.
2804 (set_glyph_string_background_width): Remove specific tests here
2805 to see if face background should extend to end of line. Simplify.
2806
2807 2005-10-30 Richard M. Stallman <rms@gnu.org>
2808
2809 * alloc.c (BYTES_USED): Use uordblks, not arena.
2810 (bytes_used_when_reconsidered): New variable.
2811 (emacs_blocked_free): Set that.
2812
2813 2005-10-29 Chong Yidong <cyd@stupidchicken.com>
2814
2815 * alloc.c (emacs_blocked_free): Fix typo.
2816
2817 2005-10-29 Richard M. Stallman <rms@gnu.org>
2818
2819 * data.c (Fmake_variable_frame_local): Doc fix.
2820
2821 * xdisp.c (handle_fontified_prop): Do nothing if memory full.
2822 (format_mode_line_unwind_data): New arg SAVE_PROPTRANS
2823 controls whether to save and restore mode_line_proptrans_alist.
2824 Callers changed.
2825 (unwind_format_mode_line): Work with that feature.
2826 (redisplay_internal): Don't call prepare_menu_bars if memory full.
2827 (move_elt_to_front): New function.
2828 (display_mode_element): Use move_elt_to_front.
2829 Don't bother munging text props on a null string.
2830 Delete obsolete elts from mode_line_proptrans_alist.
2831 (decode_mode_spec): Test Vmemory_full, not spare_memory.
2832 (Fformat_mode_line): Clear mode_line_proptrans_alist after saving.
2833
2834 * lisp.h (memory_full_cons_threshold): Declare.
2835 (internal_lisp_condition_case): Declare.
2836
2837 * alloc.c (syms_of_alloc) <memory-full>: Doc fix.
2838 (Fmemory_full_p): Function deleted.
2839 (syms_of_alloc): Don't defsubr it.
2840 (memory_full_cons_threshold): New variable.
2841 (spare_memory): Now a vector of 7 elts.
2842 (buffer_memory_full): Don't set Vmemory_full here.
2843 (xfree): Don't try to refill here.
2844 (emacs_blocked_free): Record BYTES_USED in local var.
2845 (memory_full): Now free all the slots in spare_memory.
2846 (refill_memory_reserve): Allocate each slot in spare_memory.
2847 (init_alloc_once): Call refill_memory_reserve.
2848
2849 * keyboard.c (command_loop_1): Don't set Vmemory_full here.
2850
2851 * eval.c (internal_lisp_condition_case): New function.
2852 (Fcondition_case): Use internal_lisp_condition_case.
2853 (Feval): Test Vmemory_full and memory_full_cons_threshold.
2854 (Ffuncall): Likewise.
2855
2856 * bytecode.c (Fbyte_code): Use internal_lisp_condition_case.
2857
2858 2005-10-29 Stefan Monnier <monnier@iro.umontreal.ca>
2859
2860 * syntax.c (Fparse_partial_sexp): Fix docstring.
2861
2862 2005-10-28 Romain Francoise <romain@orebokech.com>
2863
2864 * puresize.h (BASE_PURESIZE): Increment to 1130000.
2865
2866 2005-10-28 Richard M. Stallman <rms@gnu.org>
2867
2868 * xfns.c (syms_of_xfns): Provide `x' as feature.
2869
2870 * xdisp.c (decode_mode_spec): Define %e to indicate memory full.
2871
2872 * editfns.c (Fformat): Don't include string padding
2873 between info[n].start and info[n].end.
2874
2875 * alloc.c (spare_memory): No longer static.
2876 (xfree) [!SYSTEM_MALLOC]: Call refill_memory_reserve.
2877
2878 * puresize.h (BASE_PURESIZE): Increment to 1120000.
2879
2880 2005-10-27 Chong Yidong <cyd@stupidchicken.com>
2881
2882 * data.c (Fmake_variable_frame_local): Add clarification to docstring.
2883
2884 * fringe.c (update_window_fringes): Handle case where buffer ends
2885 with a newline.
2886
2887 2005-10-27 Kenichi Handa <handa@m17n.org>
2888
2889 * coding.h (DECODE_SYSTEM): Fix argument name; name->str.
2890
2891 2005-10-24 Kenichi Handa <handa@m17n.org>
2892
2893 * charset.h (charset_mule_unicode_0100_24ff)
2894 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2895 Extern them.
2896
2897 * charset.c (charset_mule_unicode_0100_24ff)
2898 (charset_mule_unicode_2500_33ff, charset_mule_unicode_e000_ffff):
2899 New variables.
2900 (Fsetup_special_charsets): Initialize them.
2901
2902 * xterm.c (handle_one_xevent): Handle keysyms directly mapped to
2903 supported Unicode characters.
2904
2905 2005-10-25 Jason Rumney <jasonr@gnu.org>
2906
2907 * w32fns.c (w32_to_x_font): Avoid forcing font widths.
2908
2909 2005-10-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
2910
2911 * image.c [MAC_OS] (image_load_qt_1): Check image size.
2912 Use GraphicsImportGetImageDescription instead of
2913 GraphicsImportGetNaturalBounds.
2914 [MAC_OSX] (image_load_quartz2d): Check image size.
2915 [MAC_OS] (xpm_load_image): Likewise.
2916
2917 * macterm.c (last_mouse_glyph_frame): New var.
2918 (note_mouse_movement): Say mouse moved if current frame differs
2919 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2920 (XTmouse_position): Set last_mouse_glyph_frame.
2921 (XTread_socket): Clear last_mouse_glyph_frame on mouse up/down event.
2922 (mac_draw_string_common) [USE_ATSUI && WORDS_BIG_ENDIAN]: Fix typo.
2923 Use EndianU16_BtoN.
2924 (mac_draw_string_common) [MAC_OSX]: Don't use ATSUClearLayoutControls.
2925 (x_per_char_metric, XLoadQueryFont)
2926 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Use device origins to get
2927 glyph bounds.
2928 (mac_to_x_fontname, mac_do_list_fonts)
2929 (mac_initialize_display_info): Change screen resolutions to 72dpi.
2930
2931 2005-10-25 Masatake YAMATO <jet@gyve.org>
2932
2933 * minibuf.c (Fdisplay_completion_list): Small doc fix.
2934
2935 2005-10-24 Kim F. Storm <storm@cua.dk>
2936
2937 * xterm.c: Undo 2005-10-23 change.
2938 (last_mouse_glyph_frame): New var.
2939 (note_mouse_movement): Say mouse moved if current frame differs
2940 from last_mouse_glyph_frame, and update last_mouse_glyph_frame.
2941 (XTmouse_position): Set last_mouse_glyph_frame.
2942 (handle_one_xevent): Clear last_mouse_glyph_frame [instead of
2943 last_mouse_glyph] on mouse up/down event.
2944
2945 * editfns.c (Fcompare_buffer_substrings): Fix last change.
2946
2947 2005-10-23 Stefan Monnier <monnier@iro.umontreal.ca>
2948
2949 * editfns.c (Fcompare_buffer_substrings): Handle multibyte chars.
2950
2951 2005-10-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
2952
2953 * xterm.c (note_mouse_movement): Always call note_mouse_highlight
2954 so tool tips don't interfere with press on tool bar button.
2955
2956 2005-10-23 Richard M. Stallman <rms@gnu.org>
2957
2958 * casetab.c (Fset_case_table): Doc fix.
2959
2960 * lread.c (build_load_history): Replace STREAM arg with ENTIRE.
2961 (readevalloop): Compute ENTIRE properly.
2962 (syms_of_lread) <load-history>: Doc fix.
2963
2964 2005-10-21 Richard M. Stallman <rms@gnu.org>
2965
2966 * lread.c (Fload): Simplify gcpro structure.
2967 Gcpro FOUND as well as FILE, but not EFOUND.
2968 Unless preloading, record FOUND instead of FILE in Vload_history.
2969 Rename repeat local FILE to MSG_FILE.
2970 (syms_of_lread) <load-history>: Doc fix.
2971
2972 2005-10-21 Kenichi Handa <handa@m17n.org>
2973
2974 * search.c (boyer_moore): Add parens to fix and/or precedence bug.
2975
2976 2005-10-20 Kim F. Storm <storm@cua.dk>
2977
2978 * buffer.c (clone_per_buffer_values): Remove unused var tem.
2979 (init_buffer): Remove unused vars dotstat, pwdstat.
2980
2981 * ccl.c (check_ccl_update): Remove unused var vp.
2982
2983 * fileio.c (auto_save_error): Call SAFE_FREE.
2984
2985 * fns.c (Fchar_table_range): Remove unused var i.
2986
2987 * minibuf.c (display_completion_list_1): New wrapper function
2988 for Fdisplay_completion_list.
2989 (Fminibuffer_completion_help): Use it.
2990
2991 * term.c (encode_terminal_code): Remove unused var src_start.
2992
2993 * window.c (Fwindow_tree): Remove unused var alist.
2994
2995 * xterm.c (x_calc_absolute_position): Remove unused vars win_x, win_y.
2996
2997 2005-10-20 Aubrey Jaffer <agj@alum.mit.edu> (tiny change)
2998
2999 * unexelf.c (unexec): Fix calls to `fatal' with less than 3 arguments.
3000
3001 2005-10-20 Olli Savia <ops@iki.fi> (tiny change)
3002
3003 * syssignal.h [__Lynx__]: Undef SIGPOLL along with SIGIO.
3004
3005 2005-10-20 Andreas Schwab <schwab@suse.de>
3006
3007 * minibuf.c (Fdisplay_completion_list): Doc fix.
3008
3009 2005-10-19 Kim F. Storm <storm@cua.dk>
3010
3011 * image.c (check_image_size): Handle integer Vmax_image_size value
3012 directly as max pixel value. Use default frame size for null frame.
3013 (syms_of_image) <max-image-size>: Describe integer value.
3014
3015 2005-10-19 Romain Francoise <romain@orebokech.com>
3016
3017 * emacs.c (main): Update copyright year.
3018
3019 2005-10-18 Chong Yidong <cyd@stupidchicken.com>
3020
3021 * image.c (Vmax_image_size): New variable.
3022 (check_image_size): New function.
3023 (xbm_read_bitmap_data, pbm_load, png_load, jpeg_load, tiff_load)
3024 (gif_load, gs_load): Use it.
3025 (lookup_image): Try loading again if previous load failed.
3026 (xbm_read_bitmap_data): Add a new argument, a pointer to the frame
3027 to display in, NULL if none.
3028 (xbm_load_image, xbm_file_p): Pass xbm_read_bitmap_data the new
3029 argument.
3030
3031 2005-10-18 Richard M. Stallman <rms@gnu.org>
3032
3033 * search.c (Fstring_match): Doc fix.
3034
3035 2005-10-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3036
3037 * macterm.c (note_mouse_movement): Use PtInRect.
3038 (XTread_socket): Also ignore mouse motion just before a button
3039 release event. Don't process button release event when mouse is
3040 not grabbed.
3041
3042 2005-10-16 Masatake YAMATO <jet@gyve.org>
3043
3044 * minibuf.c (Fdisplay_completion_list): Add new optional
3045 argument COMMON_SUBSTRING. Bind `completion-common-substring'
3046 to the optional argument during running `completion-setup-hook'.
3047
3048 2005-10-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3049
3050 * mac.c [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp):
3051 Allow nil as argument.
3052 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Regard nil
3053 for encoding arguments as UTF-16 in native byte order, no BOM.
3054
3055 * macfns.c (Fx_create_frame): Add debugging code.
3056 (Fx_show_tip): Set frame pixel width and height.
3057
3058 * macterm.c (MAC_WINDOW_NORMAL_GC): Remove macro.
3059 (FRAME_NORMAL_GC): New macro.
3060 (mac_draw_line, mac_clear_area, mac_clear_window)
3061 (mac_fill_rectangle, mac_draw_string, mac_draw_string_16)
3062 (mac_draw_image_string, mac_draw_image_string_16): Rename from
3063 XDrawLine, XClearArea, XClearWindow, XFillRectangle, XDrawString,
3064 XDrawString16, XDrawImageString, and XDrawImageString16, respectively.
3065 All uses changed.
3066 (mac_draw_line, mac_erase_rectangle, mac_clear_area)
3067 (mac_clear_window, mac_draw_bitmap, mac_draw_rectangle)
3068 (mac_invert_rectangle, mac_draw_string_common, mac_draw_string)
3069 (mac_draw_string_16, mac_draw_image_string)
3070 (mac_draw_image_string_16, mac_copy_area, mac_copy_area_with_mask)
3071 (mac_scroll_area): Drawing functions now take frame as destination.
3072 All uses changed.
3073 (mac_draw_string_common): Get port height with FRAME_PIXEL_HEIGHT.
3074 (x_draw_fringe_bitmap): Set clipping area in face->gc.
3075
3076 * macterm.h (mac_clear_area): Add extern.
3077
3078 2005-10-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3079
3080 * macterm.c (note_mouse_movement, XTread_socket): Apply 2005-10-14
3081 changes for xterm.c.
3082
3083 * w32term.c (note_mouse_movement, w32_read_socket): Likewise.
3084
3085 2005-10-14 Kenichi Handa <handa@m17n.org>
3086
3087 * search.c (search_buffer): Give up BM search on case-fold-search
3088 if one of a target character has a case-equivalence of different
3089 charset even if that target charcter is an ASCII.
3090
3091 * casefiddle.c (casify_object): Fix for the case that case
3092 conversion change the byte length.
3093
3094 2005-10-14 Kim F. Storm <storm@cua.dk>
3095
3096 * xterm.c (note_mouse_movement): Return 1 if mouse moved; 0 otherwise.
3097 (handle_one_xevent): Only clear help_echo_string; restore it if
3098 note_mouse_movement didn't record any mouse movement.
3099
3100 * xdisp.c (pos_visible_p): Convert w->hscroll to pixels before use.
3101 (remember_mouse_glyph): Clear RECT if mouse is over an image glyph.
3102
3103 * keyboard.c (make_lispy_position): Adjust wx for left margin if ON_TEXT.
3104 (Fposn_at_x_y): Fix calculation of x coordinate.
3105 (Fposn_at_point): Return nil if point is hscrolled out of view.
3106
3107 2005-10-13 Andreas Schwab <schwab@suse.de>
3108
3109 * sysdep.c (request_sigio, unrequest_sigio): Do nothing in
3110 non-interactive mode.
3111
3112 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3113
3114 * xterm.c, w32term.c, macterm.c (note_mouse_movement): Undo last change.
3115
3116 2005-10-12 Kim F. Storm <storm@cua.dk>
3117
3118 * xterm.c (handle_one_xevent): Clear last_mouse_glyph on mouse up/down.
3119
3120 2005-10-12 Romain Francoise <romain@orebokech.com>
3121
3122 * buffer.c (init_buffer): Rename `rc' to `len' for clarity.
3123
3124 2005-10-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3125
3126 * xdisp.c (remember_mouse_glyph): Use MATRIX_BOTTOM_TEXT_ROW to
3127 get end of text rows. Obtain header-line/mode-line rows directly.
3128
3129 * xterm.c, w32term.c, macterm.c (note_mouse_movement):
3130 Restore help_echo_string if mouse is moved inside last_mouse_glyph.
3131
3132 2005-10-12 Kim F. Storm <storm@cua.dk>
3133
3134 * xdisp.c (remember_mouse_glyph): New generic version based on
3135 glyph_rect and remember_mouse_glyph from xterm.c enhanced to
3136 properly handle all different window areas.
3137
3138 * dispextern.h (remember_mouse_glyph): Add prototype.
3139
3140 * xterm.c (glyph_rect, remember_mouse_glyph): Remove X versions.
3141 (note_mouse_movement, XTmouse_position): Use generic
3142 remember_mouse_glyph, add last_mouse_glyph arg.
3143
3144 * w32term.c (note_mouse_movement): Fix last_mouse_glyph check.
3145 (glyph_rect, remember_mouse_glyph): Remove w32 specific versions.
3146 (note_mouse_movement, w32_mouse_position): Use generic
3147 remember_mouse_glyph, add last_mouse_glyph arg.
3148
3149 * macterm.c (note_mouse_movement): Add call to remember_mouse_glyph.
3150 (glyph_rect, remember_mouse_glyph): Remove mac specific versions.
3151 (XTmouse_position): Adapt to use generic remember_mouse_glyph
3152 instead of pixel_to_glyph_coords.
3153
3154 * window.c (coordinates_in_window): Fix x position for ON_RIGHT_MARGIN.
3155 Fix x position for ON_TEXT when left margin width > 0.
3156
3157 2005-10-11 Kim F. Storm <storm@cua.dk>
3158
3159 * window.c (coordinates_in_window): Fix y position for ON_SCROLL_BAR.
3160
3161 * keyboard.c (make_lispy_position): Fix buffer calculations for
3162 mouse click or movement in right fringe and the margins.
3163
3164 2005-10-11 Juanma Barranquero <lekktu@gmail.com>
3165
3166 * image.c (fn_jpeg_stdio_src): Don't define it.
3167 (init_jpeg_functions): Don't initialize `fn_jpeg_stdio_src'.
3168 (our_common_init_source): Rename from `our_init_source'.
3169 (our_common_term_source): Rename from `our_term_source'.
3170 (our_memory_fill_input_buffer): Rename from
3171 `our_fill_input_buffer'.
3172 (our_memory_skip_input_data): Rename from `our_skip_input_data'.
3173 (jpeg_memory_src): Use the new names.
3174 (struct jpeg_stdio_mgr): New struct.
3175 (JPEG_STDIO_BUFFER_SIZE): New constant.
3176 (our_stdio_fill_input_buffer, our_stdio_skip_input_data)
3177 (jpeg_file_src): New functions.
3178 (jpeg_load): Use `jpeg_file_src' instead of `fn_jpeg_stdio_src'.
3179
3180 2005-10-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3181
3182 * macterm.c (PER_CHAR_METRIC): Remove unused macro.
3183 (fm_font_family_alist): New variable.
3184 (syms_of_macterm): Initialize and staticpro it.
3185 (decode_mac_font_name): Replace '-' in family name with '_' if it
3186 occurs just once. Lower family name.
3187 (parse_x_font_name): Rename from x_font_name_to_mac_font_name.
3188 All uses changed. Remove argument MF and code conversion for it.
3189 Add argument SIZE. Rename argument MF_DECODED to FAMILY, and CS
3190 to CHARSET. Parse font size. Lower family name. Return integer
3191 value for status of parsing.
3192 (init_font_name_table) [USE_ATSUI]: Use decode_mac_font_name.
3193 Don't use Fdowncase because family name is already lowered by
3194 decode_mac_font_name.
3195 (init_font_name_table): Always call decode_mac_font_name.
3196 Add pair of family name and its reference to fm_font_family_alist.
3197 (mac_clear_font_name_table): Clear fm_font_family_alist.
3198 (XLoadQueryFont): Move font size parsing part to parse_x_font_name.
3199 Lookup fm_font_family_alist to get font family reference.
3200 (XLoadQueryFont) [USE_ATSUI]: Don't use Fdowncase because family
3201 name is already lowered by parse_x_font_name.
3202
3203 2005-10-11 Kim F. Storm <storm@cua.dk>
3204
3205 * xterm.c (glyph_rect): Return 0 if position is outside text area.
3206
3207 * keyboard.c (make_lispy_position): Fix buffer position calculation for
3208 mouse click or movement in fringe.
3209
3210 2005-10-10 Jason Rumney <jasonr@gnu.org>
3211
3212 * xterm.c (remember_mouse_glyph): New function.
3213 (note_mouse_movement): Use it to remember the current glyph if changed.
3214 (XTmouse_position): Fix calculation of fake glyph under mouse.
3215 Move code to calculate glyph under mouse into remember_mouse_glyph.
3216
3217 2005-10-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3218
3219 * emacs.c (USAGE3, standard_args): -nb => -nbi.
3220
3221 2005-10-10 Juanma Barranquero <lekktu@gmail.com>
3222
3223 * frame.c (Fredirect_frame_focus): Fix typos in docstring.
3224 (next_frame, prev_frame, set_term_frame_name): Make static.
3225
3226 * window.c (Fwindow_tree): Fix spelling.
3227
3228 2005-10-09 Romain Francoise <romain@orebokech.com>
3229
3230 * window.c (Fwindow_end): Don't try to redisplay if non-interactive.
3231
3232 2005-10-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3233
3234 * emacs.c (standard_args): Remove options -i, -itype, --icon-type.
3235 Add options -nb, --no-bitmap-icon.
3236
3237 * xfns.c (Fx_create_frame): Make bitmapIcon have default on.
3238
3239 2005-10-08 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3240
3241 * macgui.h (MAX_CLIP_RECTS): New define.
3242 (struct _XGC): New member clip_region.
3243 (struct _XGC) [MAC_OSX && USE_ATSUI]: New members n_clip_rects and
3244 clip_rects.
3245
3246 * macterm.c (GC_CLIP_REGION): New macro.
3247 (saved_port_clip_region): New variable.
3248 (mac_begin_clip, mac_end_clip): New functions.
3249 (XDrawLine, mac_erase_rectangle, mac_draw_bitmap, XFillRectangle)
3250 (mac_draw_rectangle, mac_draw_string_common, mac_copy_area)
3251 (mac_copy_area_with_mask, mac_scroll_area): Use them.
3252 (mac_set_clip_rectangle, mac_reset_clipping): Remove functions.
3253 [USE_ATSUI] (atsu_get_text_layout_with_text_ptr)
3254 [MAC_OS_X_VERSION_MAX_ALLOWED < 1020]: Specify kATSLineFractDisable.
3255 (mac_draw_string_common) [MAC_OSX && USE_ATSUI]: Clip to clipping
3256 rectangles stored in gc.
3257 (XFreeGC): Dispose of clipping region.
3258 (mac_set_clip_rectangles, mac_reset_clip_rectangles): New functions.
3259 (x_draw_fringe_bitmap, x_set_glyph_string_clipping)
3260 (x_draw_relief_rect, x_draw_box_rect, x_draw_stretch_glyph_string)
3261 (x_draw_glyph_string, x_clip_to_row, x_draw_hollow_cursor)
3262 (x_draw_bar_cursor): Use them.
3263 (x_set_glyph_string_clipping): Use get_glyph_string_clip_rects to
3264 get multiple clipping rectangles.
3265
3266 * macterm.h (mac_term_init): Add types to extern.
3267 (struct mac_output): Remove members mWP and pending_menu_activation.
3268 Put members scroll_bar_foreground_pixel and
3269 scroll_bar_background_pixel in #if 0.
3270 (FRAME_MAC_WINDOW, FRAME_X_WINDOW): Use window_desc.
3271
3272 * xfaces.c (x_create_gc, x_free_gc) [MAC_OS]: Add BLOCK_INPUT.
3273 Add debugging code.
3274
3275 2005-10-08 Kim F. Storm <storm@cua.dk>
3276
3277 * window.c (window_tree, Fwindow_tree): Rename fns added 2005-10-04.
3278
3279 2005-10-07 Kim F. Storm <storm@cua.dk>
3280
3281 * dispnew.c (redraw_overlapped_rows, redraw_overlapping_rows)
3282 [!HAVE_WINDOW_SYSTEM]: Don't declare them...
3283 (update_window) [!HAVE_WINDOW_SYSTEM]: ...and don't call them.
3284
3285 2005-10-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3286
3287 * dispextern.h (struct glyph_string): Rename member for_overlaps_p
3288 to for_overlaps. Now occupy 3 bits.
3289 (OVERLAPS_PRED, OVERLAPS_SUCC, OVERLAPS_BOTH)
3290 (OVERLAPS_ERASED_CURSOR): New defines.
3291 (struct redisplay_interface): Add new OVERLAPS arg to member
3292 fix_overlapping_area.
3293 (x_fix_overlapping_area): Add new OVERLAPS arg.
3294 (get_glyph_string_clip_rects): Add extern.
3295
3296 * dispnew.c (redraw_overlapping_rows):
3297 Call rif->fix_overlapping_area with new OVERLAPS arg as redrawn part.
3298
3299 * xdisp.c: Rename member for_overlaps_p in struct glyph_string to
3300 for_overlaps.
3301 (get_glyph_string_clip_rects): New function created from
3302 get_glyph_string_clip_rect. Set clipping rectangles according to the
3303 value of for_overlaps. Enable to store multiple clipping rectangles.
3304 (get_glyph_string_clip_rect): Use get_glyph_string_clip_rects.
3305 (fill_composite_glyph_string, fill_glyph_string, draw_glyphs):
3306 Rename argument OVERLAPS_P to OVERLAPS. All uses in macros changed.
3307 (x_fix_overlapping_area): Add OVERLAPS arg. Pass it to draw_glyphs.
3308 (draw_phys_cursor_glyph): Set width of erased cursor to use it for
3309 calculating clipping rectangles later. Call x_fix_overlapping_area
3310 with new OVERLAPS arg to draw only erased cursor area.
3311 (expose_overlaps): Call x_fix_overlapping_area with new OVERLAPS arg
3312 to draw overlaps in both preceding and succeeding rows.
3313
3314 * xterm.c, w32term.c, macterm.c: Rename member for_overlaps_p in
3315 struct glyph_string to for_overlaps.
3316
3317 2005-10-04 Richard M. Stallman <rms@gnu.org>
3318
3319 * alloc.c (refill_memory_reserve): Conditionalize the body,
3320 not the function's existence.
3321
3322 2005-10-04 Kim F. Storm <storm@cua.dk>
3323
3324 * window.c (window_split_tree): New function.
3325 (Fwindow_split_tree): New defun.
3326 (syms_of_window): Defsubr it.
3327
3328 2005-10-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3329
3330 * macterm.c (mac_invert_rectangle): New function.
3331 (XTflash): Use it.
3332
3333 2005-10-04 Stefan Monnier <monnier@iro.umontreal.ca>
3334
3335 * regex.h (re_char): Don't expose it in the interface.
3336 (re_set_whitespace_regexp): Adjust the arg's type to not use it.
3337
3338 * regex.c (re_char): Move it back here.
3339 (re_set_whitespace_regexp): Change the arg's type to not use it.
3340
3341 * keyboard.c (make_lispy_event): If point has moved between down and up
3342 event, make it a drag, not a click, to mirror what
3343 mouse-drag-region expects.
3344
3345 2005-10-02 Dan Nicolaescu <dann@ics.uci.edu>
3346
3347 * lisp.h (fatal): Undo previous change.
3348 * term.c (fatal): Undo previous change.
3349
3350 2005-10-01 Richard M. Stallman <rms@gnu.org>
3351
3352 * xfaces.c (face_color_gray_p): Colors close to black count as gray.
3353
3354 2005-10-01 Kim F. Storm <storm@cua.dk>
3355
3356 * xdisp.c (try_window): Skip scroll-margin check if ZV is visible.
3357
3358 2005-10-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3359
3360 * keyboard.c (init_keyboard) [MAC_OSX]: Don't install SIGINT handler.
3361
3362 * macfns.c (start_hourglass): Apply 2005-05-07 change for xfns.c.
3363 (x_create_tip_frame) [GLYPH_DEBUG]: Uncomment debugging code.
3364 (Fx_create_frame, x_create_tip_frame) [USE_ATSUI]:
3365 Try ATSUI-compatible 12pt Monaco font first.
3366
3367 * macgui.h (struct _XCharStruct): New member valid_p.
3368 (STORE_XCHARSTRUCT): Set valid_p.
3369 (struct MacFontStruct) [USE_ATSUI]: New member mac_style.
3370
3371 * macterm.c (mac_draw_string_common, x_per_char_metric)
3372 (mac_compute_glyph_string_overhangs, init_font_name_table)
3373 (XLoadQueryFont, mac_unload_font) [USE_ATSUI]: Add ATSUI support.
3374 (atsu_get_text_layout_with_text_ptr) [USE_ATSUI]: New function.
3375 (x_draw_glyph_string_background)
3376 (x_draw_glyph_string_foreground) [MAC_OS8 && USE_ATSUI]: Don't use
3377 XDrawImageString. Always draw background and foreground separately.
3378 (x_draw_glyph_string_foreground) [USE_ATSUI]: Don't use 8-bit
3379 functions for one-byte chars when using ATSUI-compatible fonts.
3380 (atsu_font_id_hash) [USE_ATSUI]: New variable.
3381 (syms_of_macterm) [USE_ATSUI]: Initialize and staticpro it.
3382 (XLoadQueryFont): Set min_byte1, max_byte1, min_char_or_byte2, and
3383 max_char_or_byte2 more in detail.
3384 (quit_char_comp, mac_check_for_quit_char) [MAC_OSX]: Remove functions.
3385
3386 2005-09-30 Dan Nicolaescu <dann@ics.uci.edu>
3387
3388 * image.c (slurp_file, xbm_read_bitmap_data): Cast to the correct type.
3389 * xterm.c (handle_one_xevent, handle_one_xevent): Likewise.
3390
3391 * unexelf.c (fatal): Fix prototype.
3392
3393 * term.c (fatal): Implement using varargs.
3394
3395 * regex.c (re_char): Move typedef ...
3396 * regex.h (re_char): ... here.
3397 (re_iswctype, re_wctype, re_set_whitespace_regexp): New prototypes.
3398
3399 * emacs.c (malloc_set_state): Fix return type.
3400 (endif): Fix type.
3401
3402 * lisp.h (fatal): Add argument types.
3403
3404 * dispextern.h (fatal): Delete prototype.
3405
3406 * systime.h (make_time): Prototype moved from ...
3407 * editfns.c (make_time): ... here.
3408
3409 * editfns.c: Move systime.h include after lisp.h.
3410 * dired.c:
3411 * xsmfns.c:
3412 * process.c: Likewise.
3413
3414 * alloc.c (old_malloc_hook, old_realloc_hook, old_realloc_hook):
3415 Add parameter types.
3416 (__malloc_hook, __realloc_hook, __free_hook): Fix prototypes.
3417 (emacs_blocked_free): Change definition to match __free_hook.
3418 (emacs_blocked_malloc): Change definition to match __malloc_hook.
3419 (emacs_blocked_realloc): Change definition to match __realloc_hook.
3420
3421 2005-09-30 Romain Francoise <romain@orebokech.com>
3422
3423 * minibuf.c (Fread_buffer): Follow convention for reading from the
3424 minibuffer with a default value. Doc fix.
3425
3426 2005-09-29 Juri Linkov <juri@jurta.org>
3427
3428 * editfns.c (Fmessage, Fmessage_box, Fmessage_or_box):
3429 Rename argument name `string' to `format-string'.
3430 (Fformat): Doc fix.
3431
3432 2005-09-28 Kim F. Storm <storm@cua.dk>
3433
3434 * image.c (gif_load): Fix size of allocated image buffer
3435 for images where a sub-image may be larger than the image's
3436 total height/width specifications.
3437
3438 2005-09-28 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3439
3440 * macgui.h (struct _XCharStruct): Each member now takes short value.
3441
3442 2005-09-27 Dan Nicolaescu <dann@ics.uci.edu>
3443
3444 * xfaces.c (lookup_derived_face): Add parameter type.
3445
3446 * xdisp.c (cursor_row_fully_visible_p): Add parameter type.
3447
3448 * marker.c (verify_bytepos): Add parameter type.
3449
3450 * process.c (get_operating_system_release): Move prototype ...
3451
3452 * systime.h (get_operating_system_release): ... here.
3453
3454 * xterm.c (handle_one_xevent): Refer to union field to match the
3455 type required by the function definition.
3456 (set_vertical_scroll_bar): Move prototype ...
3457
3458 * xterm.h: ... here.
3459
3460 * fns.c (internal_equal, seed_random): Fix prototypes.
3461 (internal_equal): Add missing parameter.
3462
3463 2005-09-25 Richard M. Stallman <rms@gnu.org>
3464
3465 * keyboard.c (update_menu_bindings): Variable deleted.
3466 (syms_of_keyboard): Don't defvar it.
3467 (parse_menu_item): Don't test it.
3468
3469 2005-09-23 Richard M. Stallman <rms@gnu.org>
3470
3471 * editfns.c (Fformat): Explicitly test for end of format string
3472 and don't use `index'.
3473
3474 2005-09-23 Dan Nicolaescu <dann@ics.uci.edu>
3475
3476 * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME):
3477 Define BROKEN_GET_CURRENT_DIR_NAME.
3478
3479 * sysdep.c (get_current_dir_name): Also define if
3480 BROKEN_GET_CURRENT_DIR_NAME.
3481
3482 * m/ibmrs6000.h: Test for USG5, not USG5_4.
3483
3484 2005-09-22 Kim F. Storm <storm@cua.dk>
3485
3486 * xdisp.c (message_dolog): Add warning about GC and Lisp strings.
3487 (message2): Fix commentary. Ok to use alloca'ed memory.
3488 Still not ok to use Lisp string data (because of GC).
3489 (set_message): Add comment why GC cannot happen.
3490
3491 2005-09-22 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3492
3493 * macterm.c (xlfdpat_block_match_1): Fix assertion.
3494 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't add style
3495 variants for a scalable font multiple times.
3496
3497 2005-09-21 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3498
3499 * process.c (create_process) [RTU || UNIPLUS || DONT_REOPEN_PTY]:
3500 Setup slave tty options before forking.
3501
3502 2005-09-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3503
3504 * gtkutil.c (xg_set_geometry): Do a gtk_window_move if program
3505 positions have been set for the frame (as is done for frames in
3506 special-display-buffer-names).
3507
3508 2005-09-19 Kim F. Storm <storm@cua.dk>
3509
3510 * editfns.c (Fformat): Don't scan past end of format string that
3511 ends in %. Reported by: Johan Bockg\e,Ae\e(Brd.
3512
3513 2005-09-18 Andreas Schwab <schwab@suse.de>
3514
3515 * window.h (struct window): Remove height_fixed_p, no longer set.
3516
3517 * window.c (make_window): Don't initialize height_fixed_p.
3518 (window_fixed_size_p): Don't use it.
3519
3520 2005-09-18 John Paul Wallington <jpw@pobox.com>
3521
3522 * data.c (Fdefalias): Signal an error if SYMBOL is not a symbol.
3523
3524 2005-09-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3525
3526 * Makefile.in (SOME_MACHINE_OBJECTS): Undo previous change.
3527
3528 * macfns.c (image_cache_refcount, dpyinfo_refcount) [GLYPH_DEBUG]:
3529 New variables.
3530 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Don't allow multiple
3531 file selection.
3532
3533 * sysdep.c [MAC_OS8]: Don't include stdlib.h. Include sys/param.h.
3534
3535 2005-09-17 Eli Zaretskii <eliz@gnu.org>
3536
3537 * Makefile.in (XMENU_OBJ) [!HAVE_CARBON]: Reinstate variable.
3538 (obj): Use XMENU_OBJ, not a literal xmenu.o.
3539
3540 2005-09-16 Romain Francoise <romain@orebokech.com>
3541
3542 * fileio.c (syms_of_fileio) <write-region-inhibit-fsync>: Doc fix.
3543
3544 2005-09-15 Richard M. Stallman <rms@gnu.org>
3545
3546 * xdisp.c (overlay_arrow_at_row): Add HAVE_WINDOW_SYSTEM conditional.
3547 (display_mode_element): Instead of `lisp_string' and `this',
3548 record `offset' and increment that.
3549 `last_offset' replaces `last'.
3550
3551 * Makefile.in (XMENU_OBJ): Variable deleted.
3552 (obj): Use xmenu.o unconditionally.
3553 (SOME_MACHINE_OBJECTS): Delete xmenu.o.
3554
3555 * emacs.c (main): Don't conditionalize syms_of_xmenu on HAVE_XMENU.
3556
3557 2005-09-15 Kim F. Storm <storm@cua.dk>
3558
3559 * xdisp.c (move_it_vertically): Don't try to fetch byte BEGV-1.
3560 (reseat_at_next_visible_line_start): Likewise (in xassert).
3561
3562 2005-09-14 Romain Francoise <romain@orebokech.com>
3563
3564 * fileio.c (write_region_inhibit_fsync): New variable.
3565 (Fwrite_region): Use it to skip call to fsync.
3566 (syms_of_fileio): Initialize it.
3567
3568 2005-09-14 Kenichi Handa <handa@m17n.org>
3569
3570 * coding.c (code_convert_region_unwind): Argument format changed.
3571 (run_pre_post_conversion_on_str): If pre-write-conversion function
3572 changed the current buffer, delete the new buffer.
3573 (run_pre_write_conversin_on_c_str): Likewise.
3574
3575 * fileio.c (Fexpand_file_name): Check multibyteness of
3576 default_directory.
3577
3578 2005-09-13 Kenichi Handa <handa@m17n.org>
3579
3580 * composite.c (compose_chars_in_text): Delete it.
3581
3582 * composite.h (compose_chars_in_text): Delete extern.
3583
3584 2005-09-13 Kim F. Storm <storm@cua.dk>
3585
3586 * print.c (print_error_message): Fix last change.
3587
3588 2005-09-12 Kim F. Storm <storm@cua.dk>
3589
3590 * composite.c (compose_chars_in_text): Fix setup of `pend'.
3591 Unconditionally reload `ptr' and `pend' after eval.
3592
3593 * xdisp.c (message3): Pass copy of lisp string to message_dolog.
3594
3595 * print.c (print_error_message): Pass copy of caller name to
3596 message_dolog.
3597
3598 * fileio.c (auto_save_error): Pass copy of lisp string to message2.
3599
3600 2005-09-12 Kenichi Handa <handa@m17n.org>
3601
3602 * xdisp.c (display_mode_element): Be sure to make variables THIS
3603 and LISP_STRING point into a string data of ELT.
3604
3605 2005-09-12 Kim F. Storm <storm@cua.dk>
3606
3607 * editfns.c (Ftranslate_region_internal): Reload `tt' after
3608 signal_after_change that may have GC'ed.
3609 (Fmessage, Fmessage_box, Fmessage_or_box): Doc fix.
3610
3611 * keymap.c (Fdescribe_buffer_bindings): Reload `translate'
3612 after insert while runs signal_after_change.
3613
3614 * minibuf.c (Fminibuffer_complete_word): Move `completion_string'
3615 declaration to where it is used.
3616
3617 * w32.c (check_windows_init_file): Fix allocation of error buffer.
3618
3619 * xfns.c (x_encode_text): Declare static. Add FREEP arg.
3620 (x_set_name_internal): Call x_encode_text with new FREEP arg to
3621 know if xfree is needed instead of guessing.
3622
3623 * xterm.h (x_encode_text): Remove prototype.
3624
3625 2005-09-11 Chris Prince <cprince@gmail.com> (tiny change)
3626
3627 * w32term.c (x_bitmap_icon): Load small icons too.
3628
3629 2005-09-10 Romain Francoise <romain@orebokech.com>
3630
3631 * buffer.c (init_buffer): Grow buffer to add directory separator
3632 and terminal zero. Fix typos.
3633
3634 2005-09-10 Eli Zaretskii <eliz@gnu.org>
3635
3636 * buffer.c (init_buffer): Fix error message for failed call to
3637 get_current_dir_name.
3638 (get_current_dir_name): Remove prototype.
3639
3640 * xsmfns.c (get_current_dir_name): Remove prototype.
3641
3642 * lisp.h (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3643 Add prototype.
3644
3645 * sysdep.c [WINDOWSNT]: Add prototype for getwd.
3646 Don't #undef NULL after including blockinput.h.
3647
3648 * config.in: Regenerated.
3649
3650 2005-09-10 Giuseppe Scrivano <gscrivano@gmail.com>
3651
3652 Remove the MAXPATHLEN limitations:
3653
3654 * sysdep.c (get_current_dir_name) [!HAVE_GET_CURRENT_DIR_NAME]:
3655 New function.
3656
3657 * buffer.c (init_buffer): Use it.
3658
3659 * xsmfns.c (smc_save_yourself_CB): Ditto.
3660
3661 2005-09-09 Kim F. Storm <storm@cua.dk>
3662
3663 * doc.c (Fsubstitute_command_keys): Lookup key binding for
3664 commands that are remapped from some other command.
3665
3666 * xdisp.c (try_window_reusing_current_matrix): Clear mode_line_p
3667 flag in disabled rows below the window.
3668
3669 * frame.h (struct frame): New member updated_p.
3670
3671 * xdisp.c (redisplay_internal): Mark updated frames in new updated_p
3672 member. Remove local `updated' array and associated variables.
3673
3674 2005-09-07 Kim F. Storm <storm@cua.dk>
3675
3676 * xdisp.c (handle_display_prop): Respect overlay window property.
3677
3678 * xdisp.c (try_window): Remove superfluous cursor_height calculation.
3679 Fixes crash reported by YAMAMOTO Mitsuharu.
3680
3681 2005-09-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3682
3683 * macterm.c (struct xlfdpat_block, struct xlfdpat): New structs.
3684 (xlfdpat_destroy, xlfdpat_create, xlfdpat_exact_p)
3685 (xlfdpat_block_match_1, xlfdpat_match): New functions.
3686 (xlfdpat_block_match): New macro.
3687 (mac_to_x_fontname): Don't use tolower for non-ASCII characters.
3688 (x_font_name_to_mac_font_name): Set coding.dst_multibyte to 0.
3689 (add_font_name_table_entry): Increase font_name_table_size more
3690 rapidly.
3691 (mac_c_string_match): Remove function.
3692 (mac_do_list_fonts): Use XLFD pattern match instead of regular
3693 expression match.
3694
3695 * xfaces.c (xstrlwr): Don't use tolower for non-ASCII characters.
3696
3697 2005-09-03 Richard M. Stallman <rms@gnu.org>
3698
3699 * xdisp.c (redisplay_internal): Make UPDATED as long as needed.
3700 (move_it_in_display_line_to): Stop after last char on line even
3701 on a windowing terminal, if that's the specified stop position.
3702
3703 * fns.c (Fsort): Doc fix.
3704
3705 * editfns.c (Fpropertize): Don't insist that properties be symbols.
3706
3707 2005-09-02 Stefan Monnier <monnier@iro.umontreal.ca>
3708
3709 * dired.c (directory_files_internal_unwind, directory_files_internal)
3710 (file_name_completion): Use a Save_Value object rather than a cons of
3711 two 16bit ints to store the DIR*.
3712 (directory_files_internal, file_name_completion): Handle both EINTR and
3713 EAGAIN consistently after `readdir'.
3714
3715 2005-09-01 Stefan Monnier <monnier@iro.umontreal.ca>
3716
3717 * intervals.c (update_interval): Add position info in error.
3718
3719 * dispnew.c (window_to_frame_hpos, update_window):
3720 Avoid gcc warning about unused variable `f'.
3721
3722 2005-08-31 Jason Rumney <jasonr@gnu.org>
3723
3724 * w32menu.c (add_menu_item): If unicode_append_menu returns an
3725 error, revert to using AppendMenu.
3726
3727 2005-08-31 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3728
3729 * image.c (PIX_MASK_DRAW, PIX_MASK_RETAIN): Remove argument.
3730 All uses changed.
3731 [MAC_OS] (XPutPixel, XGetPixel): Add efficient versions for common
3732 cases.
3733 (x_create_x_image_and_pixmap) [MAC_OS]: Don't call x_destroy_x_image.
3734 [MAC_OS] (find_image_fsspec) [!MAC_OSX]: Don't use FSRef.
3735 Use posix_pathname_to_fsspec.
3736 [MAC_OS] (xpm_load_image): Fill in background_transparent field
3737 while we have mask.
3738
3739 * macgui.h [!TARGET_API_MAC_CARBON] (GetPixDepth): New define.
3740
3741 * macterm.h (PIX_MASK_DRAW, PIX_MASK_RETAIN): Move defines to image.c.
3742
3743 2005-08-29 Stefan Monnier <monnier@iro.umontreal.ca>
3744
3745 * syntax.c (update_syntax_table): Properly reproduce the special +1
3746 setting of e_property at the end of the buffer when bumping into the
3747 INTERVALS_AT_ONCE limit.
3748
3749 2005-08-27 Eli Zaretskii <eliz@gnu.org>
3750
3751 * emacs.c (USAGE1): Fix the description of the -Q option.
3752
3753 2005-08-26 Stefan Monnier <monnier@iro.umontreal.ca>
3754
3755 * xdisp.c (pos_visible_p): Yet another int/Lisp_Object mixup (YAILOM).
3756
3757 2005-08-26 Kim F. Storm <storm@cua.dk>
3758
3759 * xdisp.c (resize_mini_window): Fix 2005-08-20 change.
3760 Don't move PT to new window start.
3761
3762 2005-08-25 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3763
3764 * keyboard.c (kbd_buffer_get_event) [MAC_OS]: Make events for
3765 ICONIFY/DEICONIFY_EVENT.
3766
3767 * macterm.c (mac_copy_area, mac_copy_area_with_mask):
3768 Restore background color.
3769 (mac_handle_visibility_change): New function.
3770 (x_make_frame_invisible, x_iconify_frame)
3771 (XTread_socket) [!USE_CARBON_EVENTS]: Use it.
3772 [USE_CARBON_EVENTS] (mac_handle_window_event)
3773 (install_window_handler): Handle visibility change events.
3774 (x_make_frame_visible): Don't reposition window if it is iconified
3775 or asked for visible before. Select and uncollapse window when it
3776 is made visible.
3777 (x_make_frame_invisible): Don't reset x_highlight_frame.
3778 (x_iconify_frame): Likewise. Make invisible frame visible before
3779 it is iconified.
3780 (read_socket_inev): Move variable outside #if USE_CARBON_EVENTS.
3781 (do_window_update): Don't change visibility of invisible frame.
3782
3783 2005-08-22 Juri Linkov <juri@jurta.org>
3784
3785 * term.c (turn_on_face): Check for TS_set_foreground and
3786 TS_set_background depending on standout_mode. Simplify.
3787
3788 2005-08-21 Kim F. Storm <storm@cua.dk>
3789
3790 * fringe.c (update_window_fringes): Only put TOP and BOTTOM
3791 bitmaps on fully visible rows.
3792
3793 * fringe.c (update_window_fringes): Replace FORCE_P arg with
3794 KEEP_CURRENT_P arg; if non-zero, don't update current row fringes,
3795 and return 0.
3796
3797 * xdisp.c (redisplay_window): Call update_window_fringes with
3798 KEEP_CURRENT_P non-0 if we are going to refresh fringes later.
3799
3800 2005-08-20 Richard M. Stallman <rms@gnu.org>
3801
3802 * xdisp.c (display_echo_area_1): Get display start pos from w->start.
3803 (resize_mini_window): Set w->start, and PT, so as to display the tail
3804 end of the buffer, if it doesn't all fit.
3805
3806 2005-08-18 Kim F. Storm <storm@cua.dk>
3807
3808 * xdisp.c (calc_pixel_width_or_height): Use actual display
3809 resolution when available instead of Vdisplay_pixels_per_inch.
3810
3811 2005-08-17 Kim F. Storm <storm@cua.dk>
3812
3813 * xdisp.c (pos_visible_p): Adjust X value if window is hscrolled.
3814
3815 * dispnew.c (buffer_posn_from_coords): Check that target row is
3816 within matrix.
3817
3818 2005-08-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3819
3820 * xterm.c (x_wm_set_icon_pixmap): Move GTK specific code to
3821 xg_set_frame_icon and call it.
3822
3823 * gtkutil.c (xg_set_frame_icon): New function.
3824
3825 * gtkutil.h (xg_set_frame_icon): Declare it.
3826
3827 2005-08-16 Kim F. Storm <storm@cua.dk>
3828
3829 * dispnew.c (increment_row_positions): Skip non-enabled rows.
3830
3831 * window.c (SAVED_WINDOW_VECTOR_SIZE): Remove dangerous define.
3832 (Fcurrent_window_configuration): Use VECSIZE macro instead.
3833
3834 2005-08-15 Richard M. Stallman <rms@gnu.org>
3835
3836 * xdisp.c (message3_nolog): Clear echo_message_buffer.
3837
3838 2005-08-15 Kim F. Storm <storm@cua.dk>
3839
3840 * lisp.h (QUIT) [!SYNC_INPUT]: Throw t to Vthrow_on_input.
3841
3842 * process.c (deactivate_process, status_notify, read_process_output)
3843 (update_status, status_convert, decode_status, allocate_pty)
3844 (make_process, remove_process, list_processes_1)
3845 (create_process_1, unwind_request_sigio, read_process_output)
3846 (send_process, keyboard_bit_set): Declare static.
3847 (Fdelete_process): Simplify. Pass process to status_notify, so we
3848 don't try to read output from it.
3849 (status_notify): New arg deleting_process--don't try to read
3850 output from that process.
3851
3852 * lisp.h (deactivate_process, status_notify, read_process_output):
3853 Remove prototypes.
3854
3855 2005-08-14 Richard M. Stallman <rms@gnu.org>
3856
3857 * image.c (syms_of_image): Init Qxbm, Qpbm before calling
3858 define_image_type.
3859
3860 2005-08-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3861
3862 * gtkutil.c (xg_get_pixbuf_from_pix_and_mask): New function.
3863 (xg_get_image_for_pixmap): Move some code to
3864 xg_get_pixbuf_from_pix_and_mask, and call it.
3865
3866 * gtkutil.h (xg_get_pixbuf_from_pix_and_mask): Declare.
3867
3868 * xterm.c (x_wm_set_icon_pixmap): Call xg_get_pixbuf_from_pix_and_mask
3869 to get an GTK icon and set it with GTK functions to avoid having GTK
3870 override an icon set with just X functions.
3871
3872 2005-08-11 Richard M. Stallman <rms@gnu.org>
3873
3874 * image.c (syms_of_image): Init image_types here, and call
3875 define_image_type.
3876 (init_image): Not here.
3877
3878 2005-08-09 Richard M. Stallman <rms@gnu.org>
3879
3880 * bytecode.c (BYTE_CODE_QUIT): Throw t to Vthrow_on_input.
3881
3882 * lisp.h (QUIT): Throw t to Vthrow_on_input.
3883
3884 2005-08-09 Thien-Thi Nguyen <ttn@gnu.org>
3885
3886 * floatfns.c (Fexpt): Use floats for negative exponent.
3887
3888 2005-08-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
3889
3890 * gtkutil.c (xg_modify_menubar_widgets): Remove semicolon that
3891 should not be there, causing menu display errors with GTK 2.6.9.
3892
3893 2005-08-07 Richard M. Stallman <rms@gnu.org>
3894
3895 * floatfns.c (Fexpt): Undo previous change.
3896
3897 * dispnew.c (Fframe_or_buffer_changed_p): Take an arg
3898 so it can be used with various state vectors.
3899
3900 * emacs.c (endif): Convert -script into -scriptload.
3901 (standard_args): Add -scriptload. Allow -basic-display with one dash.
3902
3903 * fns.c (syms_of_fns): Add `emacs' to features.
3904
3905 * term.c (set_terminal_modes): If no TS_termcap_modes string,
3906 output newlines to scroll the old screen contents off the screen.
3907
3908 2005-08-06 Thien-Thi Nguyen <ttn@gnu.org>
3909
3910 * floatfns.c (Fexpt): Use floats for negative exponent.
3911 Reported by D Goel.
3912
3913 2005-08-02 Richard M. Stallman <rms@gnu.org>
3914
3915 * frame.c (Fframe_char_width): Doc fix.
3916
3917 2005-07-30 Juanma Barranquero <lekktu@gmail.com>
3918
3919 * xdisp.c (syms_of_xdisp) <redisplay-end-trigger-functions>:
3920 Defvar it.
3921
3922 2005-07-28 Juanma Barranquero <lekktu@gmail.com>
3923
3924 * w32fns.c (my_set_window_pos, my_show_window): Don't declare.
3925 (my_create_window, my_create_tip_window): Make static.
3926
3927 * w32term.c (my_show_window, my_set_window_pos, my_set_focus)
3928 (my_set_foreground_window, my_destroy_window): Make static.
3929
3930 2005-07-26 Paul Eggert <eggert@cs.ucla.edu>
3931
3932 Merge gnulib getopt implementation into Emacs.
3933
3934 * s/cygwin.h (C_SWITCH_SYSTEM): Remove, since gettext.h is
3935 now part of lib-src.
3936
3937 2005-07-26 Stefan Monnier <monnier@iro.umontreal.ca>
3938
3939 * eval.c (Fdefvar): Allow (defvar enable-multibyte-characters).
3940
3941 2005-07-25 Jason Rumney <jasonr@gnu.org>
3942
3943 * w32menu.c (w32_menu_display_help): Suppress tooltip when
3944 navigating menus with the keyboard.
3945
3946 2005-07-23 Richard M. Stallman <rms@gnu.org>
3947
3948 * insdel.c (syms_of_insdel): staticpro combine_after_change_buffer.
3949
3950 * bytecode.c (MAYBE_GC): Test gc_cons_threshold and
3951 gc_relative_threshold, one by one.
3952
3953 * keyboard.c (read_char): Test gc_cons_threshold.
3954 (syms_of_keyboard): staticpro Qecho_area_clear_hook.
3955
3956 * eval.c (Feval, Ffuncall): Test gc_cons_threshold and
3957 gc_relative_threshold, one by one.
3958
3959 * alloc.c (gc_cons_threshold): Not static.
3960 (gc_cons_combined_threshold): Var deleted.
3961 (gc_relative_threshold): New variable.
3962 (Fgarbage_collect, init_alloc_once): Compute gc_relative_threshold
3963 instead of gc_cons_combined_threshold.
3964
3965 * lisp.h (gc_cons_threshold, gc_relative_threshold): Declare.
3966 (gc_cons_combined_threshold): Declaration deleted.
3967
3968 2005-07-23 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
3969
3970 * mac.c: Don't include stdlib.h or string.h.
3971 (Fdo_applescript, Fmac_file_name_to_posix)
3972 (Fmac_file_name_to_posix): Doc fixes.
3973 [TARGET_API_MAC_CARBON] (Fmac_get_preference)
3974 (Fmac_code_convert_string): Likewise.
3975 [MAC_OSX] (init_mac_osx_environment): Fall back on terminal mode
3976 if the executable is not contained in a bundle.
3977
3978 * macfns.c: Don't include stdlib.h or string.h. Include atimer.h.
3979 (gray_width, gray_height): Remove defines.
3980 (gray_bits, gray_bitmap_width, gray_bitmap_height)
3981 (gray_bitmap_bits): Remove variables.
3982 (lispy_function_keys): Remove extern.
3983 (free_frame_menubar): Add extern.
3984 (x_window_to_frame): Remove function.
3985 (unwind_create_tip_frame): Add declaration.
3986 (x_set_name_internal): New function.
3987 (x_set_name, x_set_title): Use it.
3988 (Fx_create_frame, Fx_display_grayscale_p, Fx_display_pixel_width)
3989 (Fx_display_pixel_height, Fx_display_planes)
3990 (Fx_display_color_cells, Fx_server_max_request_size)
3991 (Fx_server_vendor, Fx_server_version, Fx_display_screens)
3992 (Fx_display_mm_height, Fx_display_mm_width)
3993 (Fx_display_backing_store, Fx_display_visual_class)
3994 (Fx_display_save_under, Fx_synchronize, Fx_show_tip): Doc fixes.
3995
3996 * macmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
3997
3998 * macselect.c (Fx_own_selection_internal): Follow error conventions.
3999 (Fx_get_selection_internal, Fx_selection_owner_p)
4000 (Fx_selection_exists_p): Doc fixes.
4001 (syms_of_macselect) <selection-converter-alist>: Likewise.
4002
4003 2005-07-21 Juanma Barranquero <lekktu@gmail.com>
4004
4005 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
4006
4007 * ccl.c (Fregister_ccl_program): Fix typos in docstring.
4008 (Fccl_execute_on_string): Likewise; add usage info.
4009
4010 * composite.c (Fcompose_region_internal)
4011 (Fcompose_string_internal):
4012 Improve argument/docstring consistency.
4013
4014 * minibuf.c (Fminibuffer_prompt_end, Feval_minibuffer):
4015 Fix typos in docstrings.
4016
4017 * textprop.c (Fnext_char_property_change)
4018 (Fprevious_char_property_change): Doc fixes.
4019
4020 * window.c (Fset_window_margins, Fset_window_fringes):
4021 Improve argument/docstring consistency.
4022
4023 * xfaces.c (Finternal_lisp_face_p): Doc fix.
4024
4025 2005-07-21 Andreas Schwab <schwab@suse.de>
4026
4027 * eval.c (restore_stack_limits): Return a value.
4028
4029 2005-07-20 Juanma Barranquero <lekktu@gmail.com>
4030
4031 * eval.c (Fdefvar): Doc fix.
4032
4033 2005-07-20 Kim F. Storm <storm@cua.dk>
4034
4035 * fileio.c (Fdo_auto_save, do_auto_save_unwind):
4036 Use make_save_value to unwind protect stream.
4037
4038 * lread.c (Fload, load_unwind):
4039 Use make_save_value to unwind protect stream.
4040
4041 2005-07-19 Juanma Barranquero <lekktu@gmail.com>
4042
4043 * eval.c (Fprog2, Fcalled_interactively_p),
4044 (syms_of_eval) <debug-on-quit>: Doc fixes.
4045 (syms_of_eval) <max-specpdl-size>:
4046 (Finteractive_p): Fix typos in docstrings.
4047
4048 2005-07-19 Kim F. Storm <storm@cua.dk>
4049
4050 * w32fns.c (Vx_hand_shape): Variable removed.
4051 (syms_of_w32fns): Intern and staticpro Qw32_charset_default.
4052
4053 2005-07-19 Kenichi Handa <handa@m17n.org>
4054
4055 * fns.c (Fstring_as_multibyte): Escape backslashes in the docstring.
4056
4057 2005-07-18 Stefan Monnier <monnier@iro.umontreal.ca>
4058
4059 * buffer.h (Fgenerate_new_buffer_name): Declare (for use in coding.c).
4060
4061 2005-07-18 Kim F. Storm <storm@cua.dk>
4062
4063 * frame.h (struct frame): New member already_hscrolled_p.
4064
4065 * xdisp.c (redisplay_internal): Only try to hscroll each frame once
4066 to avoid redisplay looping hscrolling back and forth ad infinitum.
4067
4068 2005-07-18 Juri Linkov <juri@jurta.org>
4069
4070 * buffer.c (scroll-up-aggressively, scroll-down-aggressively):
4071 * keymap.c (Fminor_mode_key_binding):
4072 * macterm.c (mac-emulate-three-button-mouse):
4073 Delete duplicate duplicate words.
4074
4075 2005-07-18 Ken Raeburn <raeburn@gnu.org>
4076
4077 * minibuf.c (Ftest_completion): Fix odd syntax in test.
4078
4079 2005-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4080
4081 * macfns.c (x_set_cursor_color): Use XSetBackground and XSetForeground.
4082
4083 * macgui.h (struct _XGC): New struct.
4084 (GC): Use it.
4085 (GCForeground, GCBackground, GCFont): Use X11 mask values.
4086 (XCreateGC, XParseGeometry): Move externs to macterm.h.
4087
4088 * macterm.c (x_bitmap_icon, x_make_frame_visible): Remove declarations.
4089 (XSetFont): Add declaration.
4090 (mac_set_forecolor, mac_set_backcolor, mac_set_colors):
4091 Remove functions.
4092 (GC_FORE_COLOR, GC_BACK_COLOR, GC_FONT, MAC_WINDOW_NORMAL_GC):
4093 New defines.
4094 (XDrawLine, mac_draw_line_to_pixmap, XClearWindow)
4095 (mac_draw_bitmap, XCreatePixmapFromBitmapData, XFillRectangle)
4096 (mac_draw_rectangle, mac_draw_string_common, mac_scroll_area):
4097 Use them.
4098 (mac_erase_rectangle): New function.
4099 (XClearArea, x_draw_fringe_bitmap, x_clear_glyph_string_rect)
4100 (x_draw_stretch_glyph_string): Use it.
4101 (XChangeGC, XCreateGC, XGetGCValues, XSetForeground)
4102 (XSetBackground, XSetFont): Adjust for new GC implementation.
4103 (x_draw_fringe_bitmap, x_draw_box_rect): Use GC to set colors.
4104 (XTset_vertical_scroll_bar): Clear area under scroll bar.
4105
4106 * macterm.h (struct mac_display_info): Change types of
4107 scratch_cursor_gc black_relief.gc, and white_relief.gc to GC.
4108 (XCreateGC, XParseGeometry): Move externs from macgui.h.
4109
4110 * xfaces.c [MAC_OS] (XCreateGC): Remove extern.
4111
4112 2005-07-16 Richard M. Stallman <rms@gnu.org>
4113
4114 * buffer.c (Fmake_overlay): Doc fix.
4115
4116 2005-07-16 Eli Zaretskii <eliz@gnu.org>
4117
4118 * w32proc.c (syms_of_ntproc): staticpro Qhigh, Qlow,
4119 Vw32_valid_locale_ids, and Vw32_valid_codepages.
4120
4121 2005-07-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4122
4123 * mac.c [TARGET_API_MAC_CARBON] (Fmac_code_convert_string):
4124 Use Fstring_as_unibyte instead of string_make_unibyte.
4125
4126 2005-07-15 Richard M. Stallman <rms@gnu.org>
4127
4128 * xdisp.c (select_frame_for_redisplay): Use find_symbol_value.
4129
4130 2005-07-15 Kim F. Storm <storm@cua.dk>
4131
4132 * xdisp.c: Fix redisplay loop in last change.
4133 (IT_POS_VALID_AFTER_MOVE_P): New macro.
4134 (move_it_vertically_backward, move_it_by_lines): Use it.
4135
4136 2005-07-14 Jason Rumney <jasonr@gnu.org>
4137
4138 * w32.c (init_environment): Default HOME directory to user's
4139 appdata directory if possible.
4140
4141 2005-07-14 Kim F. Storm <storm@cua.dk>
4142
4143 * .gdbinit (pitx): Fix output format. Print string charpos.
4144
4145 * lread.c (syms_of_lread): Initialize seen_list.
4146
4147 * search.c (syms_of_search): Staticpro searchbuf.whitespace_regexp.
4148
4149 * syntax.c (syms_of_syntax): Staticpro lisp objects in gl_state.
4150 Staticpro re_match_object.
4151
4152 2005-07-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4153
4154 * macselect.c (get_scrap_target_type_list): Avoid NULL pointer
4155 dereference.
4156
4157 * macterm.c (mac_window_to_frame): Remove duplicate define.
4158
4159 2005-07-14 Kenichi Handa <handa@m17n.org>
4160
4161 * coding.c (code_convert_region_unwind): ARG is changed to a cons.
4162 (code_convert_region): Adjust for the above change.
4163 (set_conversion_work_buffer): If the work buffer is already in
4164 use, generate a new buffer and return it. Otherwise return Qnil.
4165 (run_pre_post_conversion_on_str): Adjust for the above change.
4166 (run_pre_write_conversin_on_c_str): Likewise.
4167
4168 2005-07-13 Kim F. Storm <storm@cua.dk>
4169
4170 * xdisp.c (start_display): Don't reseat to next visible line start
4171 if current start position is in a string or image.
4172 (move_it_vertically_backward): Be sure to move out of strings and
4173 images when moving it2 forward.
4174 (move_it_by_lines): When moving forward, move to next buffer
4175 position if we end up in a string or image. When moving backward,
4176 count rows moved over when moving to start of current row in case
4177 row starts in middle of a string or image. Also move further
4178 backward if we end up in a string or image.
4179 (try_cursor_movement): If overlay string spans multiple lines,
4180 move backward to set cursor on start of an overlay string.
4181 (cursor_row_p): Row is ok if cursor is at newline from string, but
4182 string starts on this line (so we always position cursor at start
4183 of string).
4184
4185 * indent.c (Fvertical_motion): If start position is on an image,
4186 don't move back if we move too far (that's almost certain to happen).
4187
4188 * xdisp.c (cursor_row_fully_visible_p): Allow partially visible
4189 row in minibuffer windows.
4190 (try_window): Don't check margins in minibuffer windows.
4191
4192 2005-07-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4193
4194 * macterm.c: Don't include stdlib.h or composite.h.
4195 (x_use_underline_position_properties, last_mouse_press_frame)
4196 (x_noop_count, Qvendor_specific_keysyms): Remove unused variables.
4197 (syms_of_macterm, mac_initialize): Don't initialize them.
4198 (waiting_for_input, initial_argv, initial_argc)
4199 (Vcommand_line_args, Vx_no_window_manager, errno, window_scroll)
4200 (set_frame_menubar, path_from_vol_dir_name): Remove externs.
4201 (extra_keyboard_modifiers): Fix type in extern.
4202 (x_window_to_frame, x_window_to_scroll_bar): Remove declarations.
4203 (x_scroll_bar_report_motion): Add argument types to declaration.
4204 (mac_compute_glyph_string_overhangs): Add declaration.
4205 (disable_mouse_highlight): Remove unused variable.
4206 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click)
4207 (x_scroll_bar_handle_press, x_scroll_bar_handle_release)
4208 (x_scroll_bar_handle_drag): Remove argument `timestamp'.
4209 All callers changed.
4210 [USE_TOOLKIT_SCROLL_BARS] (construct_scroll_bar_click): Don't set
4211 timestamp.
4212 [USE_CARBON_EVENTS] (mac_handle_mouse_event): Likewise.
4213 (x_scroll_bar_create, XTset_vertical_scroll_bar): Show scroll bar
4214 only when its width is less than the height.
4215 (XTredeem_scroll_bar): Sync with xterm.c.
4216 (font_name_table, font_name_table_size, font_name_count):
4217 Make static.
4218 (drag_and_drop_file_list): Remove variable. Previous use is now
4219 local to function.
4220 (do_ae_open_documents): Move DRAG_N_DROP event construction part
4221 from XTread_socket.
4222 (XTread_socket): Consolidate setting of event timestamp.
4223 Move DRAG_N_DROP event construction part to do_ae_open_documents.
4224 Support extra_keyboard_modifiers.
4225
4226 * xfaces.c (try_font_list) [MAC_OS]: Try font family name
4227 beginning with that for ASCII.
4228
4229 2005-07-13 Stefan Monnier <monnier@iro.umontreal.ca>
4230
4231 * alloc.c (gc_cons_combined_threshold, Vgc_cons_percentage): New vars.
4232 (Fgarbage_collect, init_alloc_once): Set gc_cons_combined_threshold.
4233 (syms_of_alloc): Declare gc-cons-percentage.
4234
4235 * eval.c (Feval, Ffuncall):
4236 * keyboard.c (read_char):
4237 * bytecode.c (MAYBE_GC): Use gc_cons_combined_threshold.
4238
4239 * lisp.h (gc_cons_combined_threshold): Declare.
4240
4241 2005-07-12 Kim F. Storm <storm@cua.dk>
4242
4243 * coding.c (Qprocess_argument):
4244 * coding.h (Qprocess_argument): Remove unused var.
4245
4246 * xselect.c (intern): Remove dup. intern and staticpro for QTIMESTAMP.
4247
4248 2005-07-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4249
4250 * mac.c [!TARGET_API_MAC_CARBON]: Include charset.h, coding.h, and
4251 Endian.h.
4252 [!MAC_OSX] (fchmod, fchown): New functions.
4253 (mac_get_code_from_arg): Don't accept Lisp integer as argument.
4254 Use SBYTES and EndianU32_BtoN.
4255 (mac_get_object_from_code): Return 4 byte string even if argument
4256 is 0. Use make_unibyte_string and EndianU32_NtoB.
4257 (Fmac_get_file_creator, Fmac_get_file_type, Fmac_set_file_creator)
4258 (Fmac_set_file_type): Fix documents and argument declarations.
4259 Don't specify kFSCatInfoNodeFlags. Support Mac OS Classic.
4260
4261 2005-07-11 Stefan Monnier <monnier@iro.umontreal.ca>
4262
4263 * window.c (Frecenter): Yet another int/Lisp_Object mixup (YAILOM).
4264
4265 2005-07-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4266
4267 * xfaces.c (x_update_menu_appearance): Use fontSet resource for
4268 Lucid if X_I18N, font otherwise.
4269
4270 2005-07-10 Steven Tamm <steventamm@mac.com>
4271
4272 * mac.c (Fmac_get_file_type, Fmac_get_file_creator): Add.
4273 (Fmac_set_file_type, Fmac_set_file_creator): Add.
4274 (mac_get_object_from_code, mac_get_code_from_arg): Add.
4275
4276 2005-07-10 Richard M. Stallman <rms@gnu.org>
4277
4278 * lread.c (Qeval_buffer_list, Veval_buffer_list): New vars.
4279 (syms_of_lread): Set up eval-buffer-list.
4280 (Feval_buffer, Feval_region): Bind eval-buffer-list.
4281
4282 2005-07-08 Richard M. Stallman <rms@gnu.org>
4283
4284 * eval.c (Fdefvar): Allow defvaring a constant to itself quoted.
4285
4286 2005-07-08 Kim F. Storm <storm@cua.dk>
4287
4288 * keyboard.c (menu_bar_items): Don't GCPRO menu_bar_items_vector here.
4289 (syms_of_keyboard): Initialize and staticpro menu_bar_items_vector.
4290
4291 2005-07-07 Kim F. Storm <storm@cua.dk>
4292
4293 * window.c (Frecenter): Fix last change (set iarg before use).
4294
4295 2005-07-06 Richard M. Stallman <rms@gnu.org>
4296
4297 * window.c (Frecenter): When arg is inside the scroll margin,
4298 move it out of the margin.
4299
4300 2005-07-06 Jason Rumney <jasonr@gnu.org>
4301
4302 * w32console.c (initialize_w32_display): Detect when the console
4303 dimensions are insane, and default to 80x25 instead.
4304 (w32_use_full_screen_buffer): Default to NIL.
4305
4306 2005-07-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4307
4308 * macterm.c (mac_draw_vertical_window_border): Use foreground of
4309 VERTICAL_BORDER_FACE_ID for vertical border line.
4310 (mac_encode_char): Call check_ccl_update in advance.
4311 (mac_to_x_fontname, x_font_name_to_mac_font_name)
4312 (init_font_name_table, mac_do_list_fonts, XLoadQueryFont):
4313 Don't assume that font family length is less than 32.
4314 (x_compute_min_glyph_bounds): Make static.
4315 (x_load_font): Never set fonts_changed_p to zero.
4316
4317 2005-07-04 Lute Kamstra <lute@gnu.org>
4318
4319 * Update FSF's address in GPL notices.
4320
4321 2005-07-03 Richard M. Stallman <rms@gnu.org>
4322
4323 * xdisp.c (try_window): Fix previous change in how it handles
4324 a partially-visible line or one only partly past the margin.
4325
4326 * window.c (window_scroll_pixel_based): Take account
4327 of this_scroll_margin when finding point when scrolling up.
4328
4329 2005-06-29 Ralf Angeli <angeli@iwi.uni-sb.de>
4330
4331 * window.c (window_scroll_pixel_based, window_scroll_line_based):
4332 Handle `scroll-preserve-screen-position' non-nil, non-t specially.
4333 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
4334
4335 2005-07-02 Juri Linkov <juri@jurta.org>
4336
4337 * w32term.c (w32_draw_vertical_window_border): Use foreground of
4338 VERTICAL_BORDER_FACE_ID for vertical border line.
4339
4340 2005-07-02 Eli Zaretskii <eliz@gnu.org>
4341
4342 * fileio.c (Fcopy_file): Rearrange the code that calls fchown and
4343 fchmod so that chmod doesn't get called on MSDOS before the file
4344 is closed.
4345
4346 2005-07-01 Jason Rumney <jasonr@gnu.org>
4347
4348 * w32term.c (cleartype_active): New flag for enabling sub-pixel
4349 workaround.
4350 (w32_initialize): Initialize it.
4351 (w32_native_per_char_metric): Allow a couple of extra pixels when
4352 Cleartype is active.
4353
4354 * w32term.c (w32_initialize): Move check for screen reader here
4355 from syms_of_w32term.
4356
4357 2005-06-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4358
4359 * xterm.c (handle_one_xevent): bzero compose_status when nbytes
4360 is not zero.
4361
4362 2005-07-01 Masatake YAMATO <jet@gyve.org>
4363
4364 * emacs.c (main): Passing ADD_NO_RANDOMIZE to `personality'.
4365
4366 2005-06-30 Juri Linkov <juri@jurta.org>
4367
4368 * xdisp.c (x_draw_vertical_border): If left fringe is not present
4369 decrease x coord of vertical border by 1 pixel to not occupy text
4370 area of the right window.
4371
4372 * xterm.c (x_draw_vertical_window_border): Use foreground of
4373 VERTICAL_BORDER_FACE_ID for vertical border line.
4374
4375 * term.c (turn_on_face): In standout mode apply specified
4376 fg to bg, and specified bg to fg (this makes the logic of
4377 inversion on terminal consistent with X).
4378
4379 2005-06-29 Juanma Barranquero <lekktu@gmail.com>
4380
4381 * eval.c (user_variable_p_eh): New function.
4382 (Fuser_variable_p): Use it. Clarify docstring.
4383 Return t for aliases of user options, nil for alias loops.
4384
4385 2005-06-27 Richard M. Stallman <rms@gnu.org>
4386
4387 * eval.c (Fdefvar): Improve error message.
4388
4389 2005-06-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4390
4391 * macterm.c [USE_CARBON_EVENTS] (mac_convert_event_ref): Fix last
4392 change.
4393
4394 2005-06-27 Juanma Barranquero <lekktu@gmail.com>
4395
4396 * eval.c (Fdefvar): Don't try to set constant symbols.
4397
4398 2005-06-25 Richard M. Stallman <rms@gnu.org>
4399
4400 * macfns.c (Fx_show_tip): Pass new arg to try_window.
4401
4402 * w32fns.c (Fx_show_tip): Pass new arg to try_window.
4403
4404 * xfns.c (Fx_show_tip): Pass new arg to try_window.
4405
4406 * xdisp.c (try_window): New arg CHECK_MARGINS. Calls changed.
4407 (redisplay_window): Handle try_window reporting point in scroll margin.
4408
4409 * dispextern.h (try_window): Declare new arg.
4410
4411 * fileio.c (Fcopy_file): New arg PRESERVE_UID_GID.
4412 Use fchmod to copy the file modes.
4413 (Frename_file): Don't copy UID and GID here;
4414 instead, specify t for PRESERVE_UID_GID when calling Fcopy_file.
4415
4416 * eval.c (call_debugger): Take full care of extending stack limits
4417 to make space for the debugger, and restore the change afterward.
4418 Bind debug-on-error to nil.
4419 (restore_stack_limits): New subroutine.
4420 (Fsignal): Extend specpdl bound along with eval depth bound,
4421 for calling edebug. Don't do either one, for calling debugger.
4422 (find_handler_clause): Don't bind debug-on-error here.
4423 Don't unbind anything either.
4424 Temporarily advance max_specpdl_size for calling
4425 internal_with_output_to_temp_buffer.
4426 (grow_specpdl): Don't alter max_specpdl_size before signaling
4427 an error.
4428 (syms_of_eval) <max-specpdl-size>: Doc fix.
4429
4430 * lread.c (read1): 0.0e+NaN should make a "positive" NaN.
4431
4432 2005-06-24 Eli Zaretskii <eliz@gnu.org>
4433
4434 * fileio.c (Frename_file): Undo last change: no need to ifdef away
4435 chown on DOS_NT platforms.
4436
4437 * w32.c (sys_chown): New function.
4438
4439 * s/ms-w32.h (chown): New; define to sys_chown.
4440
4441 2005-06-24 Juanma Barranquero <lekktu@gmail.com>
4442
4443 * xdisp.c (syms_of_xdisp) <nobreak-char-display>: Doc fix.
4444 (syms_of_xdisp) <void-text-area-pointer>: Doc fix.
4445
4446 * fileio.c (Frename_file)[!DOS_NT]: Don't call chown on MSDOS/Windows.
4447
4448 2005-06-23 Richard M. Stallman <rms@gnu.org>
4449
4450 * xdisp.c (get_next_display_element): Finish reversing the tests of
4451 Vnobreak_char_display.
4452
4453 * xdisp.c (Vnobreak_char_display): Rename from Vshow_nonbreak_escape.
4454 All uses changed.
4455 (Qnobreak_space): Rename from Qno_break_space. All uses changed.
4456 (syms_of_xdisp): Define nobreak-char-display and nobreak-space.
4457
4458 * fileio.c (Frename_file): Preserve owner and group, if possible,
4459 when copying.
4460
4461 2005-06-23 Juanma Barranquero <lekktu@gmail.com>
4462
4463 * abbrev.c (Funexpand_abbrev):
4464 * category.c (Fmake_category_set):
4465 * dispnew.c (Fsleep_for, Fsit_for):
4466 * editfns.c (Fsubst_char_in_region):
4467 * eval.c (Fdefvar, Fdefconst, Feval, Ffuncall):
4468 * frame.c (make_frame_without_minibuffer):
4469 * lread.c (read_vector):
4470 * macfns.c (check_x_frame):
4471 * process.c (Fstop_process, Fcontinue_process):
4472 * search.c (Freplace_match):
4473 * syntax.c (Fstring_to_syntax):
4474 * w32fns.c (check_x_frame, check_x_display_info):
4475 * xfaces.c (x_supports_face_attributes_p):
4476 * xselect.c (Fx_own_selection_internal): Follow error conventions.
4477
4478 * image.c (fn_png_init_io): Don't define it.
4479 (init_png_functions) [HAVE_NTGUI]: Don't initialize fn_png_init_io.
4480 (png_read_from_file): New function, based on png_read_from_memory.
4481 (png_load): Use it, instead of fn_png_init_io.
4482
4483 2005-06-23 Kim F. Storm <storm@cua.dk>
4484
4485 * search.c (Fmatch_data): Remove evaporate option.
4486 (Fset_match_data): Do not mention evaporate option in doc string.
4487 Add commentary explaining evaporate arg (for internal use only).
4488 (unwind_set_match_data): Add comment on evaporate use.
4489
4490 2005-06-22 Miles Bader <miles@gnu.org>
4491
4492 * xfaces.c (Qvertical_border): Rename from `Qvertical_divider'.
4493 (realize_basic_faces, syms_of_xfaces): Update references to it.
4494 * dispextern.h (enum face_id): Rename `VERTICAL_DIVIDER_FACE_ID'
4495 to `VERTICAL_BORDER_FACE_ID'.
4496 * dispnew.c (build_frame_matrix_from_leaf_window): Update references.
4497
4498 2005-06-21 Juri Linkov <juri@jurta.org>
4499
4500 * dispextern.h: Add extern Qframe_set_background_mode.
4501
4502 * xfaces.c: Rename obsolete function Qframe_update_face_colors to
4503 Qframe_set_background_mode.
4504
4505 * frame.c (Fmodify_frame_parameters):
4506 Call frame-set-background-mode after changing the background color
4507 on non-window non-dos branch.
4508
4509 2005-06-21 Juanma Barranquero <lekktu@gmail.com>
4510
4511 * fns.c (Fchar_table_range):
4512 * process.c (Fmake_network_process): Fix spellings.
4513
4514 2005-06-20 Kim F. Storm <storm@cua.dk>
4515
4516 * fns.c (Fsort): Doc fix.
4517
4518 2005-06-20 Miles Bader <miles@gnu.org>
4519
4520 * xfaces.c (Qvertical_divider): New variable.
4521 (realize_basic_faces): Realize its face.
4522 (syms_of_xfaces): Initialize it.
4523
4524 * dispextern.h (enum face_id): Add `VERTICAL_DIVIDER_FACE_ID'.
4525
4526 * dispnew.c (build_frame_matrix_from_leaf_window): Display vertical
4527 window-separator on ttys using `vertical-divider' face by default.
4528
4529 2005-06-17 Richard M. Stallman <rms@gnu.org>
4530
4531 * xdisp.c (get_next_display_element):
4532 Reverse test of Vshow_nonbreak_escape.
4533
4534 * term.c (produce_special_glyphs): Use spec_glyph_lookup_face.
4535 (Ftty_no_underline): New function.
4536 (syms_of_term): defsubr it.
4537
4538 * keyboard.c (read_char): Call restore_getcjmp after jump occurs.
4539
4540 * dispnew.c (spec_glyph_lookup_face): New function.
4541 (build_frame_matrix_from_leaf_window): Use it.
4542
4543 * dispextern.h (spec_glyph_lookup_face): Add declaration.
4544
4545 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
4546
4547 2005-06-12 Richard M. Stallman <rms@gnu.org>
4548
4549 * keyboard.c (read_char): After catching a longjmp,
4550 call restore_getcjmp.
4551
4552 2005-06-17 Juanma Barranquero <lekktu@gmail.com>
4553
4554 * xselect.c (lisp_data_to_selection_data): Fix spelling.
4555
4556 2005-06-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4557
4558 * macterm.c (mac_compute_glyph_string_overhangs): Don't set
4559 overhangs unless the given glyph type is noncomposite CHAR_GLYPH.
4560 [USE_CARBON_EVENTS] (mac_convert_event_ref): Convert dead key down
4561 events.
4562 (XTread_socket): Don't pass keyboard events with the option
4563 modifier to the system when Vmac_command_key_is_meta is nil or
4564 Vmac_option_modifier is non-nil.
4565 [USE_CARBON_EVENTS] (read_socket_inev): New variable.
4566 [USE_CARBON_EVENTS] (init_command_handler): Fix argument.
4567 [USE_CARBON_EVENTS] (mac_handle_mouse_event): New Carbon event
4568 handler function.
4569 (install_window_handler) [USE_CARBON_EVENTS]: Install it.
4570 (XTread_socket) [USE_CARBON_EVENTS]: Move mouse wheel event
4571 handler part to mac_handle_mouse_event.
4572
4573 2005-06-14 Juanma Barranquero <lekktu@gmail.com>
4574
4575 * eval.c (Fdefvaralias): Rename arguments SYMBOL and ALIASED to
4576 NEW-ALIAS and BASE-VARIABLE, respectively.
4577
4578 2005-06-13 Stefan Monnier <monnier@iro.umontreal.ca>
4579
4580 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4581 (get_phys_cursor_geometry, format_mode_line_unwind_data)
4582 (get_line_height_property, x_produce_glyphs): Remove unused vars.
4583
4584 * coding.c (run_pre_post_conversion_on_str): Remove unused var `buf'.
4585
4586 2005-06-13 Eli Zaretskii <eliz@gnu.org>
4587
4588 * w32term.c (x_use_underline_position_properties): New variable.
4589 (x_draw_glyph_string): Remind in a comment to change doc string of
4590 x-use-underline-position-properties if/when underline positioning
4591 is implemented.
4592 (syms_of_w32term): DEFVAR_BOOL x-use-underline-position-properties,
4593 and initialize it to nil.
4594
4595 2005-06-12 Jason Rumney <jasonr@gnu.org>
4596
4597 * w32fns.c (NEWOPENFILENAME): New struct.
4598 (Fx_file_dialog): Use it to trick the system into giving us up to
4599 date dialogs on systems that are documented to support it.
4600 Do not set OFN_FILEMUSTEXIST flag if looking for a directory.
4601
4602 2005-06-12 Eli Zaretskii <eliz@gnu.org>
4603
4604 * w32fns.c (w32_abort): Use the MB_YESNO dialog instead of
4605 MB_ABORTRETRYIGNORE. Never return, even if DebugBreak does.
4606
4607 2005-06-11 Eli Zaretskii <eliz@gnu.org>
4608
4609 * image.c (x_create_x_image_and_pixmap) [HAVE_NTGUI]: Cast 4th arg
4610 to CreateDIBSection to avoid a compiler warning.
4611 (pbm_load): Cast 3rd arg to IMAGE_BACKGROUND to avoid a compiler
4612 warning.
4613 (png_load): Cast return values of fn_png_create_read_struct and
4614 fn_png_create_info_struct, to avoid compiler warnings on W32.
4615 Cast 3rd arg to IMAGE_BACKGROUND and image_background_transparent
4616 to avoid compiler warnings.
4617 (jpeg_load): Cast return value of fn_jpeg_std_error to avoid a
4618 compiler warning on W32. Cast 3rd arg to IMAGE_BACKGROUND to
4619 avoid a compiler warning.
4620 (tiff_load): Cast return values of fn_TIFFOpen and
4621 fn_TIFFClientOpen to avoid compiler warning on W32. Cast 3rd arg
4622 to IMAGE_BACKGROUND to avoid a compiler warning.
4623 (gif_load): Cast return values of fn_DGifOpenFileName and
4624 fn_DGifOpen to avoid compiler warnings on W32. Cast 3rd arg to
4625 IMAGE_BACKGROUND to avoid a compiler warning.
4626 (DrawText) [HAVE_NTGUI || MAC_OS]: If already defined, undef
4627 before redefining.
4628
4629 * w32bdf.c (create_offscreen_bitmap): Cast `bitsp' to `void **' in
4630 the call to CreateDIBSection, to avoid a compiler warning.
4631
4632 2005-06-11 Jason Rumney <jasonr@gnu.org>
4633
4634 * w32fns.c (Fx_file_dialog): Unblock input before falling back to
4635 minibuffer.
4636 * macfns.c (Fx_file_dialog): Likewise.
4637
4638 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4639
4640 * makefile.w32-in ($(TEMACS)): Depend on addsection.exe.
4641
4642 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4643
4644 * process.c (syms_of_process) [ADAPTIVE_READ_BUFFERING]:
4645 * w32fns.c (syms_of_w32fns): Fix spellings.
4646
4647 2005-06-10 Eli Zaretskii <eliz@gnu.org>
4648
4649 * unexw32.c (COPY_CHUNK, COPY_PROC_CHUNK): Add a new argument
4650 `verbose'; print diagnostic messages only if it is non-zero.
4651 All callers changed to pass a zero value unless DEBUG_DUMP is defined
4652 in the environment.
4653 (copy_executable_and_dump_data): Print section names with %.8s.
4654
4655 2005-06-10 Masatake YAMATO <jet@gyve.org>
4656
4657 * xdisp.c (note_mode_line_or_margin_highlight): Call clear_mouse_face
4658 when mouse_face is not given.
4659
4660 2005-06-09 Luc Teirlinck <teirllm@auburn.edu>
4661
4662 * window.c (Fselect_window): Adapt call to Fselect_frame.
4663
4664 * lisp.h: Update EXFUN of Fselect_frame.
4665
4666 * keyboard.c (command_loop_1): Adapt call to Fselect_frame.
4667
4668 * frame.c (Fhandle_switch_frame, Fselect_frame): Delete unused arg
4669 no_enter.
4670 (Fset_mouse_position, Fset_mouse_pixel_position, Ficonify_frame):
4671 Adapt to above change.
4672
4673 2005-06-10 Juanma Barranquero <lekktu@gmail.com>
4674
4675 * fns.c (Fmemq, Fmaphash): Doc fixes.
4676
4677 2005-06-09 Juanma Barranquero <lekktu@gmail.com>
4678
4679 * xfaces.c (Fdisplay_supports_face_attributes_p):
4680 Fix typo in docstring.
4681
4682 2005-06-08 Steven Tamm <steventamm@mac.com>
4683
4684 * unexmacosx.c (copy_data_segment): Copy __la_sym_ptr2 section
4685 used by gcc4 on intel mac.
4686
4687 2005-06-09 Kim F. Storm <storm@cua.dk>
4688
4689 * search.c (Fmatch_data): Add optional RESEAT arg. Unchain markers
4690 in REUSE list if non-nil; free them if equal to evaporate.
4691 (Fset_match_data): Add optional RESEAT arg. Unchain markers in LIST
4692 if non-nil; free them if equal to evaporate. Use XCAR/XCDR.
4693 (restore_search_regs): Rename from restore_match_data. Uses changed.
4694 (unwind_set_match_data): New function.
4695 (record_unwind_save_match_data): New function like save-match-data.
4696
4697 * lisp.h (Fmatch_data, Fset_match_data): Fix EXFUN.
4698 (record_unwind_save_match_data): Add prototype.
4699 (restore_search_regs): Rename from restore_match_data.
4700
4701 * composite.c (compose_chars_in_text):
4702 * eval.c (do_autoload):
4703 * macmenu.c (set_frame_menubar):
4704 * process.c (read_process_output, exec_sentinel):
4705 * xmenu.c (set_frame_menubar):
4706 * xdisp.c (prepare_menu_bars, update_menu_bar, update_tool_bar):
4707 * w32menu.c (set_frame_menubar):
4708 Use record_unwind_save_match_data.
4709
4710 2005-06-08 Richard M. Stallman <rms@gnu.org>
4711
4712 * xdisp.c (get_next_display_element): Alter previous change:
4713 Distinguish Vshow_nonbreak_escape = t or not t.
4714 For t, use escape_glyph once again, as before previous change.
4715 Use space or hyphen for display, instead of the non-ASCII char.
4716 (syms_of_xdisp) <show-nonbreak-escape>: Doc fix.
4717
4718 * process.c (Fstart_process): Don't touch command_channel_p slot.
4719
4720 * process.h (struct process): Delete command_channel_p.
4721
4722 2005-06-07 Masatake YAMATO <jet@gyve.org>
4723
4724 * xdisp.c (note_mode_line_or_margin_highlight):
4725 Check the overlapping of re-rendering area to avoid flickering.
4726 (note_mouse_highlight): Call clear_mouse_face if PART
4727 is not ON_MODE_LINE nor ON_HEADER_LINE.
4728
4729 2005-06-07 Kim F. Storm <storm@cua.dk>
4730
4731 * process.c: Improve commentary for adaptive read buffering.
4732
4733 2005-06-06 Stefan Monnier <monnier@iro.umontreal.ca>
4734
4735 * xterm.c (x_create_toolkit_scroll_bar): Use XtNarrowScrollbars
4736 if available.
4737
4738 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4739
4740 * macmenu.c (menu_quit_handler, install_menu_quit_handler):
4741 New functions for popping down menus on C-g.
4742 (set_frame_menubar, mac_menu_show): Call install_menu_quit_handler.
4743
4744 * macterm.c: Make mac_quit_char_modifiers and mac_quit_char_keycode
4745 non-static.
4746
4747 * config.in: Add HAVE_CANCELMENUTRACKING.
4748
4749 2005-06-06 Eli Zaretskii <eliz@gnu.org>
4750
4751 * w32heap.h (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_PTR): Remove macros.
4752
4753 * unexw32.c (RVA_TO_PTR): Move here from w32heap.h.
4754
4755 * w32proc.c (RVA_TO_PTR): New macro.
4756
4757 * w32heap.c (RVA_TO_PTR): No need to #undef now.
4758
4759 * makefile.w32-in ($(BLD)/emacs.$(O), $(BLD)/w32select.$(O)):
4760 Depend on w32heap.h.
4761
4762 2005-06-06 Luc Teirlinck <teirllm@auburn.edu>
4763
4764 * keyboard.c (command_loop_1): Update Vthis_original_command.
4765
4766 2005-06-06 Richard M. Stallman <rms@gnu.org>
4767
4768 * xmenu.c (popup_get_selection): Undo previous change.
4769
4770 2005-06-06 Juri Linkov <juri@jurta.org>
4771
4772 * xdisp.c (Qno_break_space): New variable.
4773 (syms_of_xdisp): Initialize it.
4774 (get_next_display_element): Add no-break space and soft hypen
4775 codes for iso8859-2 and iso8859-5. Don't add `\' for them.
4776 Use `no-break-space' face for no-break spaces.
4777
4778 2005-06-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4779
4780 * window.c (delete_window): Handle the case where a h/vchild has
4781 a h/vchild.
4782
4783 2005-06-05 Eli Zaretskii <eliz@gnu.org>
4784
4785 * w32.c (sys_setsockopt): Change arg 4 to `const void *'. In the
4786 call to pfn_setsockopt, cast optval to `const char *'.
4787
4788 2005-06-04 Eli Zaretskii <eliz@gnu.org>
4789
4790 * w32.c (gettimeofday): Use struct _timeb, not struct timeb.
4791 (open_unc_volume): Cast return value of map_w32_filename, to avoid
4792 compiler warnings.
4793
4794 * s/ms-w32.h (fileno): Don't define if already defined.
4795
4796 * emacs.c: Include w32heap.h, to avoid compiler warning about sbrk.
4797
4798 * makefile.w32-in (DOC): Define to point to the generated DOC-X.
4799
4800 2005-06-04 Richard M. Stallman <rms@gnu.org>
4801
4802 * xmenu.c (popup_get_selection): Click not in menu deactivates menu.
4803
4804 2005-06-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
4805
4806 * macmenu.c (cleanup_popup_menu): New function.
4807 (Fx_popup_menu): Unwind protect cleanup_popup_menu in case
4808 mac_menu_show Quit:s.
4809 (mac_menu_show): Quit on cancel if not popped up on click (i.e.
4810 a dialog).
4811
4812 2005-06-04 Kim F. Storm <storm@cua.dk>
4813
4814 * coding.c (decode_coding_string): Handle CODING_FINISH_INTERRUPT.
4815
4816 * callproc.c (Fcall_process): Don't use alloca to gradually
4817 increase size of buf, as it effectively uses twice the necessary
4818 space on the stack. Instead, pre-allocate buf of full size, and
4819 gradually increase the read size.
4820
4821 * bytecode.c (BYTE_CODE_QUIT): Check Vthrow_on_input.
4822
4823 * eval.c (unbind_to): Preserve value of Vquit_flag.
4824
4825 * xterm.c (handle_one_xevent): Also ignore mouse motion just
4826 before a button release event.
4827
4828 2005-06-03 Juanma Barranquero <lekktu@gmail.com>
4829
4830 * xfaces.c (Finternal_lisp_face_equal_p): Really report
4831 on faces in a frame, if the argument FRAME is non-nil.
4832 Improve argument/docstring consistency.
4833
4834 2005-06-02 Kim F. Storm <storm@cua.dk>
4835
4836 * xdisp.c (MODE_LINE_NOPROP_LEN): New macro.
4837 (x_consider_frame_title, Fformat_mode_line): Save offset into
4838 mode_line_noprop_buf rather than pointer, in case buffer is relocated.
4839
4840 2005-06-01 Kim F. Storm <storm@cua.dk>
4841
4842 * fns.c (mapcar1): Maybe exit loop if original sequence was modified.
4843
4844 2005-06-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
4845
4846 * macterm.c (mac_to_x_fontname, mac_do_list_fonts): Set XLFD
4847 resolution fields for scalable fonts to 0.
4848
4849 * xfaces.c (build_scalable_font_name): Round pixel size to the
4850 nearest integer.
4851
4852 2005-06-01 Kim F. Storm <storm@cua.dk>
4853
4854 * xdisp.c (display_mode_line): Support nested calls to redisplay
4855 and format-mode-line. Set mode_line_target to MODE_LINE_DISPLAY.
4856
4857 2005-05-31 Stefan Monnier <monnier@iro.umontreal.ca>
4858
4859 * fileio.c (Finsert_file_contents):
4860 * xdisp.c (note_mode_line_or_margin_highlight): Lisp_Object/int mixup.
4861
4862 2005-05-31 Kim F. Storm <storm@cua.dk>
4863
4864 * xdisp.c (mode_line_noprop_buf, mode_line_noprop_buf_end)
4865 (mode_line_noprop_ptr): Rename from frame_title_*.
4866 (store_mode_line_noprop_char): Rename from store_frame_title_char.
4867 (store_mode_line_noprop): Rename from store_frame_title.
4868 (mode_line_target): New enum to specify current output target
4869 for mode line formatting.
4870 (display_mode_element): Test it rather than frame_title_ptr and
4871 mode_line_string_list to determine where output should go.
4872 (mode_line_proptrans_alist, mode_line_string_alist): Make static.
4873 (Vmode_line_unwind_vector): New variable.
4874 (format_mode_line_unwind_data, unwind_format_mode_line):
4875 New functions for unwind protection in mode line formatting.
4876 (x_consider_frame_title): Use them and new local var 'title_start'
4877 to support nested calls to format-mode-line and redisplay.
4878 Set mode_line_target to MODE_LINE_TITLE.
4879 (Fformat_mode_line): Use them and new local var 'string_start' to
4880 support nested calls to format-mode-line and redisplay.
4881 Set mode_line_target to MODE_LINE_NOPROP or MODE_LINE_STRING.
4882 Don't trim trailing dashes.
4883 (decode_mode_spec): Don't make infinite number of trailing dashes
4884 for MODE_LINE_NOPROP and MODE_LINE_STRING targets.
4885 (syms_of_xdisp): Initialize and staticpro mode_line_string_face,
4886 mode_line_string_face_prop, and Vmode_line_unwind_vector.
4887 (init_xdisp): Initialize mode_line_noprop_ptr to start of _buf.
4888 Initialize mode_line_target to MODE_LINE_DISPLAY.
4889
4890 2005-05-29 Richard M. Stallman <rms@gnu.org>
4891
4892 * buffer.c (Fbuffer_local_value): Call indirect_variable.
4893
4894 2005-05-28 Masatake YAMATO <jet@gyve.org>
4895
4896 * xdisp.c (note_mode_line_or_margin_highlight): Change the
4897 pointer to a hand cursor when hoovering over a mouse-face.
4898
4899 2005-05-27 Kenichi Handa <handa@m17n.org>
4900
4901 * xterm.c (x_encode_char): Call check_ccl_update in advance.
4902
4903 * ccl.c: Now an element of Vccl_program_table is a vector of
4904 length 4, not 3.
4905 (ccl_get_compiled_code): New arg idx. Caller changed.
4906 Adjust for the change of Vccl_program_table.
4907 (setup_ccl_program): Adjust for the change of Vccl_program_table.
4908 (check_ccl_update): New function.
4909 (Fregister_ccl_program): Use ASET to set an element of a vector.
4910 Adjusted for the change of Vccl_program_table.
4911
4912 * ccl.h (struct ccl_program): New member idx.
4913 (check_ccl_update): Extern it.
4914
4915 2005-05-27 Juanma Barranquero <lekktu@gmail.com>
4916
4917 * image.c (Vimage_library_alist): Move from image.el.
4918 (syms_of_image): Defvar it.
4919 (lookup_image_type): Use it.
4920
4921 * buffer.c (Fbuffer_local_value): Make argument name match its use
4922 in docstring.
4923
4924 2005-05-26 Juanma Barranquero <lekktu@gmail.com>
4925
4926 * keyboard.c (Frecursive_edit): Fix typo in docstring.
4927 (Fposn_at_x_y): Make argument name match its use in docstring.
4928
4929 2005-05-26 Lute Kamstra <lute@gnu.org>
4930
4931 * eval.c (Frun_hooks): Mention run-mode-hooks in docstring.
4932
4933 2005-05-24 Masatake YAMATO <jet@gyve.org>
4934
4935 * xdisp.c (note_mode_line_or_margin_highlight): Use b and e
4936 as loop sentinels.
4937
4938 2005-05-24 Nick Roberts <nickrob@snap.net.nz>
4939
4940 * xmenu.c (Fx_popup_dialog): Add a third boolean argument to
4941 select frame title ("Question"/"Information").
4942 (xdialog_show): Use it.
4943
4944 * macmenu.c (Fx_popup_dialog, mac_dialog_show): As for xmenu.c.
4945
4946 * w32menu.c (Fx_popup_dialog, w32_dialog_show): As for xmenu.c.
4947
4948 * fns.c (Fyes_or_no_p, Fy_or_n_p): Call Fx_popup_dialog with
4949 a third argument (Qnil).
4950
4951 * lisp.h: x-popup-dialog can have three arguments.
4952
4953 * editfns.c (Fmessage_box): Use "Information" for frame title.
4954
4955 2005-05-23 Thien-Thi Nguyen <ttn@gnu.org>
4956
4957 * termcap.c [VMS]: Include <starlet.h>.
4958
4959 2005-05-23 Masatake YAMATO <jet@gyve.org>
4960
4961 * xdisp.c (note_mode_line_or_margin_highlight): Add code
4962 for mouse-face. Change the type of the first argument from `window'
4963 to `Lisp_Object'.
4964 (note_mouse_highlight): Call note_mode_line_or_margin_highlight with
4965 window instead of w.
4966
4967 2005-05-22 Andreas Schwab <schwab@suse.de>
4968
4969 * process.c (send_process): Move misplaced volatile.
4970
4971 2005-05-21 Richard M. Stallman <rms@gnu.org>
4972
4973 * xdisp.c (display_mode_element): If we're processing a list and
4974 padding is specified, put it after the last element.
4975
4976 2005-05-21 Eli Zaretskii <eliz@gnu.org>
4977
4978 * fileio.c (Fexpand_file_name) [DOS_NT]: Don't try to support
4979 "superroot" on DOS_NT systems.
4980
4981 2005-05-21 David Hunter <hunterd42@comcast.net> (tiny change)
4982
4983 * process.c (send_process): Restore the SIGPIPE handler if we
4984 catch a SIGPIPE.
4985
4986 2005-05-20 Juanma Barranquero <lekktu@gmail.com>
4987
4988 * image.c (lookup_image, png_read_from_memory): Remove hacks (and
4989 misleading comments).
4990 (DEF_IMGLIB_FN): Use C calling convention for image libraries.
4991
4992 2005-05-20 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
4993
4994 * window.c (Fwindow_inside_edges, Fwindow_inside_pixel_edges):
4995 Correct the right value.
4996
4997 2005-05-19 Nick Roberts <nickrob@snap.net.nz>
4998
4999 * keyboard.c (syms_of_keyboard): Remove Lisp variables
5000 post-command-idle-hook and post-command-idle-delay.
5001 (command_loop_1): Don't try to execute post-command-idle-hook.
5002
5003 2005-05-16 Kim F. Storm <storm@cua.dk>
5004
5005 * xdisp.c (handle_display_prop): Handle empty replacement.
5006 (handle_single_display_spec): Return -1 for empty replacement.
5007
5008 * keyboard.c (adjust_point_for_property): Skip empty overlay string.
5009
5010 * .gdbinit (pitx): Print more info about iterator.
5011
5012 2005-05-16 Andreas Schwab <schwab@suse.de>
5013
5014 * unexmacosx.c (unexec_realloc): Move declarations before statements.
5015
5016 2005-05-14 Richard M. Stallman <rms@gnu.org>
5017
5018 * xdisp.c (message3): Call cancel_echoing.
5019
5020 * alloc.c (Fmemory_full_p): New function.
5021 (syms_of_alloc): defsubr it.
5022
5023 * process.c (send_process_trap): Unblock SIGPIPE.
5024 (send_process): Reset SIGPIPE handler before reporting error.
5025
5026 2005-05-14 Nick Roberts <nickrob@snap.net.nz>
5027
5028 * emacs.c (syms_of_emacs): Fix doc string for system-type.
5029
5030 2005-05-13 Richard M. Stallman <rms@gnu.org>
5031
5032 * fileio.c (Ffind_file_name_handler): Handle lambda-exp as handler.
5033 (Finsert_file_contents): If we read 0 bytes from a special file,
5034 unlock the visited file if we locked it.
5035 (Fmake_symbolic_link, Frecent_auto_save_p): Doc fixes.
5036 (Ffile_exists_p, Ffile_symlink_p): Doc fixes.
5037
5038 2005-05-13 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5039
5040 * emacs.c (main) [MAC_OS8]: Call init_atimer before mac_term_init.
5041
5042 * keyboard.c (readable_events) [USE_TOOLKIT_SCROLL_BARS]:
5043 Regard toolkit scroll bar thumb drag events as squeezable and prevent
5044 redisplay from being paused by them.
5045
5046 * mac.c [!MAC_OSX]: Include keyboard.h and syssignal.h.
5047 [!MAC_OSX] (target_ticks): Remove variable.
5048 [!MAC_OSX] (check_alarm, pause, index): Remove functions.
5049 [!MAC_OSX && __MRC__] (sys_strftime): Likewise.
5050 [!MAC_OSX] (select): If fd 0 is not set in rfds and some input
5051 event occurs before timeout, behave as if the function were interrupted.
5052 [!MAC_OSX] (sigblock, sigsetmask, alarm): Simulate SIGALRM
5053 handling using Time Manager routines.
5054 [!MAC_OSX] (mac_atimer_task, mac_atimer_qlink, signal_mask):
5055 New variables.
5056 [!MAC_OSX] (mac_atimer_handler, set_mac_atimer, remove_mac_atimer)
5057 (setitimer): New functions.
5058
5059 * macfns.c, macmenu.c: Don't include signal.h.
5060
5061 * macterm.c [USE_TOOLKIT_SCROLL_BARS] (get_control_part_bounds):
5062 Rename from get_control_part_bound. All callers changed.
5063 (x_scroll_bar_clear): New function.
5064 (x_clear_frame): Use it.
5065 (XTset_vertical_scroll_bar): Don't call Draw1Control.
5066 (x_scroll_bar_handle_click): Change type of second argument from
5067 int to ControlPartCode.
5068 (check_alarm): Remove declaration.
5069 (XTread_socket) [!TARGET_API_MAC_CARBON]: Don't call it.
5070 (XTread_socket): Use ControlPartCode instead of SInt16.
5071
5072 2005-05-13 Nozomu Ando <nand@mac.com>
5073
5074 * unexmacosx.c: Include assert.h.
5075 (MACOSX_MALLOC_MULT16): New define.
5076 [MACOSX_MALLOC_MULT16] (ptr_in_unexec_regions): Determine whether
5077 ptr is in unexec regions by checking it is multiple of 16.
5078 (unexec_malloc_header_t): New typedef.
5079 (unexec_malloc, unexec_realloc, unexec_free): Store and use
5080 allocated size information in unexec_malloc_header.
5081
5082 2005-05-10 Richard M. Stallman <rms@gnu.org>
5083
5084 * xterm.c (noinclude): Add #undef.
5085
5086 * image.c, xfns.c, xmenu.c: Don't include signal.h.
5087
5088 2005-05-09 Juanma Barranquero <lekktu@gmail.com>
5089
5090 * fileio.c (Fexpand_file_name, Frename_file, Fadd_name_to_file)
5091 (Fmake_symbolic_link, Faccess_file, Frecent_auto_save_p):
5092 Doc fixes.
5093
5094 * dired.c (Ffile_name_completion): Make argument name
5095 match its use in docstring.
5096
5097 2005-05-08 Luc Teirlinck <teirllm@auburn.edu>
5098
5099 * eval.c (Fdefvaralias): Remove any pre-existing
5100 variable-documentation property of the alias.
5101
5102 2005-05-07 Thien-Thi Nguyen <ttn@gnu.org>
5103
5104 * xfns.c (start_hourglass): Do nothing when running on a tty.
5105
5106 2005-05-07 Juanma Barranquero <lekktu@gmail.com>
5107
5108 * fns.c (Fchar_table_range): Fix typos in docstring.
5109
5110 2005-05-06 Stefan Monnier <monnier@iro.umontreal.ca>
5111
5112 * fns.c (Fchar_table_range): Yet Another Int/Lisp_Object Mixup.
5113
5114 2005-05-06 Eli Zaretskii <eliz@gnu.org>
5115
5116 * lread.c (Flocate_file_internal): Doc fix.
5117
5118 * Makefile.in (lisp, shortlisp): Add jka-cmpr-hook.elc.
5119
5120 2005-05-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5121
5122 * macselect.c (x_own_selection): Accept Lisp string as result of
5123 selection converter function.
5124 (x_clear_frame_selections): Don't call x-lost-selection-functions
5125 if Emacs is not owner of the selection.
5126 (Vmac_services_selection): Put variable and initialization in
5127 #ifdef MAC_OSX.
5128 (syms_of_macselect) [MAC_OSX]: Set default value of
5129 Vmac_services_selection to PRIMARY.
5130
5131 * macterm.c (toolkit_scroll_bar_interaction): Remove unused variable.
5132 (mac_handle_tool_bar_click): Remove unused function and declaration.
5133 [USE_TOOLKIT_SCROLL_BARS] (scroll_bar_timer_callback)
5134 (install_scroll_bar_timer, set_scroll_bar_timer)
5135 (control_part_code_to_scroll_bar_part, construct_scroll_bar_click)
5136 (get_control_part_bound, x_scroll_bar_handle_press)
5137 (x_scroll_bar_handle_release, x_scroll_bar_handle_drag)
5138 (x_set_toolkit_scroll_bar_thumb): New functions and declarations.
5139 [USE_TOOLKIT_SCROLL_BARS] (last_scroll_bar_part, scroll_bar_timer)
5140 (scroll_bar_timer_event_posted_p): New variables.
5141 [USE_TOOLKIT_SCROLL_BARS] (SCROLL_BAR_FIRST_DELAY)
5142 (SCROLL_BAR_CONTINUOUS_DELAY): New macros.
5143 (x_scroll_bar_create): Set control reference with NewControl.
5144 (x_scroll_bar_create) [USE_TOOLKIT_SCROLL_BARS]:
5145 Initialize track_top and track_height to nil.
5146 (x_scroll_bar_set_handle, x_scroll_bar_note_movement):
5147 Put functions in #ifndef USE_TOOLKIT_SCROLL_BARS.
5148 (XTset_vertical_scroll_bar): Don't make space between scroll bar
5149 and associated window.
5150 (XTset_vertical_scroll_bar) [MAC_OSX]: Get scroll bar area width
5151 from window config.
5152 (XTset_vertical_scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
5153 Set track_top and track_height to nil when scroll bar size is changed.
5154 Recalculate them if they are nil.
5155 (XTread_socket) [MAC_OSX]: Use control kind to determine if the
5156 clicked control is a scroll bar.
5157 (XTread_socket) [USE_TOOLKIT_SCROLL_BARS]: Use toolkit scroll bar
5158 event handler functions. Don't add modifiers to scroll bar click
5159 events. Call scroll bar release handler when window is deactivated.
5160 (mac_initialize): Remove unused code for X toolkit.
5161 (syms_of_macterm) [!USE_TOOLKIT_SCROLL_BARS]:
5162 Initialize Vx_toolkit_scroll_bars to nil.
5163
5164 * macterm.h (struct scroll_bar) [USE_TOOLKIT_SCROLL_BARS]:
5165 New members track_top and track_height.
5166
5167 * sysselect.h [DARWIN || MAC_OSX]: Temporarily undefine
5168 init_process when including sys/select.h.
5169
5170 2005-05-05 Luc Teirlinck <teirllm@auburn.edu>
5171
5172 * eval.c (Fdefvaralias): Doc fix.
5173
5174 * xmenu.c (Fx_popup_menu, Fx_popup_dialog): Doc fixes.
5175
5176 2005-05-05 Kim F. Storm <storm@cua.dk>
5177
5178 * buffer.c (init_buffer_once): Set cursor_in_non_selected_windows
5179 default value.
5180 (syms_of_buffer): Add default-cursor-in-non-selected-windows.
5181 Fix type of cursor-in-non-selected-windows.
5182
5183 2005-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5184
5185 * mac.c: #undef init_process so not to conflict with system headers.
5186
5187 2005-05-02 Richard M. Stallman <rms@gnu.org>
5188
5189 * buffer.c (syms_of_buffer): Define cursor-in-non-selected-windows.
5190
5191 * buffer.h (struct buffer): Add cursor_in_non_selected_windows slot.
5192
5193 * xdisp.c (Vcursor_in_non_selected_windows)
5194 (Qcursor_in_non_selected_windows): Vars deleted.
5195 (syms_of_xdisp): Don't initialize them.
5196 (get_window_cursor_type): Use cursor_in_non_selected_windows
5197 buffer slot.
5198
5199 2005-05-02 Kim F. Storm <storm@cua.dk>
5200
5201 * macros.c (executing_kbd_macro_index): Rename from
5202 executing_macro_index. All uses changed.
5203 (executing_kbd_macro_iterations): Rename from
5204 executing_macro_iterations. All uses changed.
5205 (executing_kbd_macro): Rename from executing_macro.
5206 All uses changed.
5207 (syms_of_macros): Rename Lisp var executing-macro-index to
5208 executing-kbd-macro-index.
5209
5210 * xdisp.c (move_it_in_display_line_to): Fix last change.
5211
5212 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
5213
5214 * xmenu.c (Fx_popup_menu): Doc fix.
5215
5216 * charset.c (syms_of_charset): Delete defsubr for Schars_in_region.
5217
5218 2005-05-02 Jason Rumney <jasonr@gnu.org>
5219
5220 * emacs.c (USAGE3, USAGE4): Keep strings below 2048 bytes.
5221
5222 2005-05-02 Nozomu Ando <nand@mac.com>
5223
5224 * sysselect.h: Fix typo.
5225
5226 2005-05-02 Nick Roberts <nickrob@snap.net.nz>
5227
5228 * charset.c (Fchars_in_region): Remove as obsolete.
5229
5230 2005-05-01 Kim F. Storm <storm@cua.dk>
5231
5232 * xdisp.c (move_it_in_display_line_to): Stop if we move beyond
5233 TO_CHARPOS. This may happen if last glyphs was an image or stretch
5234 glyph.
5235
5236 2005-05-01 Luc Teirlinck <teirllm@auburn.edu>
5237
5238 * dispnew.c (sit_for): Vexecuting_macro -> Vexecuting_kbd_macro.
5239
5240 2005-05-01 Richard M. Stallman <rms@gnu.org>
5241
5242 * xmenu.c [not HAVE_X_TOOLKIT] (xmenu_show):
5243 If user cancels the menu, quit unless FOR_CLICK.
5244
5245 * macros.c (Vexecuting_kbd_macro): Rename from Vexecuting_macro.
5246 All uses changed.
5247 (syms_of_macros): Define only executing-kbd-macro, not executing-macro.
5248 * keyboard.c: Change Vexecuting_macro to Vexecuting_kbd_macro.
5249 * macros.h (Vexecuting_kbd_macro): Declare instead of Vexecuting_macro.
5250 * commands.h (Vexecuting_kbd_macro): Likewise.
5251
5252 2005-05-01 Thien-Thi Nguyen <ttn@gnu.org>
5253
5254 * sysdep.c (get_frame_size) [VMS]: Use a fresh i/o channel.
5255
5256 2005-04-30 Richard M. Stallman <rms@gnu.org>
5257
5258 * fileio.c (Ffind_file_name_handler): Handle the `operations'
5259 property of the file name handler.
5260 (Qoperations): New variable.
5261 (syms_of_fileio): Initialize and staticpro it.
5262
5263 * xdisp.c (set_message_1): Delete xassert.
5264
5265 2005-04-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5266
5267 * mac.c: Don't include time.h. Include sysselect.h after systime.h.
5268
5269 * macfns.c (Fx_server_version): Add BLOCK_INPUT around Gestalt.
5270
5271 * macgui.h [HAVE_CARBON && MAC_OSX]: Don't undefine/define mktime
5272 before/after including Carbon.h if there is a working mktime.
5273
5274 2005-04-28 Kim F. Storm <storm@cua.dk>
5275
5276 * xfaces.c (resolve_face_name): Add arg SIGNAL_P. Calls changed.
5277 Fix cyclic alias check. If alias loop is detected, signal
5278 circular-list error if SIGNAL_P, and return Qdefault if !SIGNAL_P.
5279
5280 2005-04-28 Lute Kamstra <lute@gnu.org>
5281
5282 * eval.c (do_autoload): Record only autoloads in the autoload
5283 property of symbols.
5284
5285 2005-04-28 Nick Roberts <nickrob@snap.net.nz>
5286
5287 * emacs.c (USAGE1): Add --basic-display and --quick options.
5288
5289 2005-04-27 Kim F. Storm <storm@cua.dk>
5290
5291 * data.c (syms_of_data) Staticpro Qcyclic_variable_indirection.
5292
5293 2005-04-26 Richard M. Stallman <rms@gnu.org>
5294
5295 * window.c (Fsame_window_p, Fspecial_display_p): Doc fixes.
5296 (syms_of_window): Doc fixes.
5297
5298 * indent.c (Fvertical_motion): Undo previous change.
5299
5300 2005-04-26 Kenichi Handa <handa@m17n.org>
5301
5302 * fns.c (char_table_range): New function.
5303 (Fchar_table_range): Signal an error if characters in the range
5304 have inconsistent values. Don't check the parent.
5305
5306 2005-04-25 Kenichi Handa <handa@m17n.org>
5307
5308 * fontset.c (fontset_set): Fix previous change.
5309
5310 2005-04-24 Richard M. Stallman <rms@gnu.org>
5311
5312 * indent.c (Fvertical_motion): Bind fontification-functions to nil.
5313
5314 2005-04-24 Eli Zaretskii <eliz@gnu.org>
5315
5316 * regex.c (re_search_2, re_match_2_internal): Convert second arg
5317 of RE_TRANSLATE to int, to shut up GCC warnings.
5318
5319 * fileio.c (Fcopy_file): Doc fix.
5320 [MSDOS]: Fix call to emacs_open: buffer_file_type not defined and
5321 not needed.
5322
5323 2005-04-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5324
5325 * Makefile.in [HAVE_CARBON] (MAC_OBJ): Add macselect.o.
5326 (SOME_MACHINE_OBJECTS): Likewise.
5327 (mac.o): Depend on ccl.h.
5328 (macselect.o): New target.
5329
5330 * emacs.c (main) [MAC_OS8 || MAC_OSX && HAVE_CARBON]:
5331 Call syms_of_macselect.
5332
5333 * frame.c (Fdelete_frame) [MAC_OS]: Call x_clear_frame_selections.
5334
5335 * mac.c [!TARGET_API_MAC_CARBON]: Don't include charset.h or coding.h.
5336 (QCLIPBOARD): Remove variable.
5337 (syms_of_mac): Don't initialize it.
5338 (Fmac_paste_function, Fmac_cut_function, Fx_selection_exists_p):
5339 Remove functions.
5340 (syms_of_mac): Don't defsubr them.
5341 [TARGET_API_MAC_CARBON] (Qmime_charset, QNFD, QNFKD, QNFC, QNFKC)
5342 (QHFS_plus_D, QHFS_plus_C): New variables.
5343 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5344 [TARGET_API_MAC_CARBON] (get_cfstring_encoding_from_lisp)
5345 (cfstring_create_normalized): New functions.
5346 [TARGET_API_MAC_CARBON] (Fmac_code_convert_string): Likewise.
5347 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5348
5349 * macterm.c (handling_window_update, terminate_flag):
5350 Remove variables.
5351 (do_window_update, do_ae_quit_application, XTread_socket):
5352 Don't use them.
5353 (WNE_SLEEP_AT_SUSPEND, WNE_SLEEP_AT_RESUME): Don't define.
5354 [USE_CARBON_EVENTS && MAC_OSX] (mac_handle_service_event)
5355 (init_service_handler): Move to macselect.c. Remove declarations.
5356 [USE_CARBON_EVENTS && MAC_OSX] (init_service_handler): Add extern.
5357 (Qapplication, Qabout): New variables.
5358 (syms_of_mac): Initialize them.
5359 [USE_CARBON_EVENTS && MAC_OSX] (Qpreferences, Qservices, Qpaste)
5360 (Qperform): New variables.
5361 (syms_of_mac) [USE_CARBON_EVENTS && MAC_OSX]: Initialize them.
5362 (do_get_menus) [TARGET_API_MAC_CARBON]: Don't call AppendResMenu.
5363 (do_menu_choice): Unhighlight menu bar also when menu_id is 0.
5364 (mac_store_application_menu_event, init_menu_bar): New functions.
5365 [USE_CARBON_EVENTS] (mac_handle_command_event)
5366 (init_command_handler): New functions.
5367 (mac_handle_window_event): Return noErr on window update event.
5368 (do_ae_quit_application): Call mac_store_application_menu_event.
5369 (mac_initialize) [USE_CARBON_EVENTS]: Call init_command_handler
5370 and init_menu_bar.
5371
5372 * macterm.h (x_clear_frame_selections): Add extern.
5373
5374 * macselect.c: New file for selection processing on Mac OS.
5375
5376 2005-04-23 Richard M. Stallman <rms@gnu.org>
5377
5378 * fileio.c (Fcopy_file): New arg MUSTBENEW.
5379 (Frename_file): Pass new arg to Fcopy_file.
5380
5381 * window.c (window_size_fixed): Variable deleted.
5382 (syms_of_window): Initialize window-size-fixed to nil.
5383 But don't DEFVAR window_size_fixed.
5384
5385 2005-04-23 Andreas Schwab <schwab@suse.de>
5386
5387 * m/macppc.h (LD_SWITCH_MACHINE) [LINUX]: Don't define.
5388 (START_FILES, LIB_STANDARD) [LINUX && _ARCH_PPC64]: Override to
5389 use lib64 instead of lib.
5390 (_LP64) [_ARCH_PPC64]: Define if not defined.
5391
5392 2005-04-23 David Hunter <hunterd42@comcast.net> (tiny change)
5393
5394 * s/ms-w32.h (HAVE_PWD_H): Define.
5395
5396 2005-04-22 Kenichi Handa <handa@m17n.org>
5397
5398 * fns.c (copy_sub_char_table): Explicitly copy the default value
5399 of the sub-chartable.
5400
5401 * fontset.c (fontset_set): When a sub-chartable is created,
5402 explicitly sets the defalt value.
5403
5404 2005-04-22 Kim F. Storm <storm@cua.dk>
5405
5406 * fns.c (Fplist_get): Replace by Fsafe_plist_get.
5407 (Fsafe_plist_get): Rename to Fplist_get.
5408 (Fsafe_get): Remove, as Fget now uses safe Fplist_get.
5409 (defsubr): Remove defsubr for Fsafe_plist_get and Fsafe_get.
5410
5411 * lisp.h (Fsafe_plist_get, Fsafe_get): Remove EXFUN.
5412
5413 * xdisp.c (store_mode_line_string, produce_stretch_glyph)
5414 (note_mode_line_or_margin_highlight, note_mouse_highlight):
5415 Use Fplist_get instead of Fsafe_plist_get.
5416
5417 * xfaces.c (resolve_face_name): Use Fget instead of Fsafe_get.
5418
5419 2005-04-21 Miles Bader <miles@gnu.org>
5420
5421 * xdisp.c (dump_glyph_row): Don't display overlay_arrow_p field.
5422
5423 2005-04-20 Thien-Thi Nguyen <ttn@gnu.org>
5424
5425 * sysdep.c: Remove reference to defunct vms-pwd.h.
5426 * dired.c: Likewise. Also, for pwd.h, use HAVE_PWD_H, not !VMS.
5427 * editfns.c, fileio.c, filelock.c, sysdep.c, xrdb.c: Likewise.
5428
5429 * config.in: Regenerate.
5430
5431 2005-04-20 Kenichi Handa <handa@m17n.org>
5432
5433 * lisp.h (CHAR_TABLE_DEFAULT_SLOT_ASCII): New macro.
5434 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_CONTROL): New macro.
5435 (CHAR_TABLE_DEFAULT_SLOT_8_BIT_GRAPHIC): New macro.
5436
5437 * alloc.c (make_sub_char_table): Argument changed to initial
5438 value of the slots.
5439
5440 * data.c (Faref): Handle special slots used as default values of
5441 ascii, eight-bit-control, eight-bit-control. Don't ignore a
5442 default value set for a group of characters.
5443 (Faset): Signal an error if IDXVAL is not a valid character code.
5444 Make a sub-chartable with correct initial value.
5445
5446 * fns.c (Fset_char_table_range): Don't set slots used as default
5447 values for ascii, eight-bit-control, eight-bit-graphic.
5448 Don't call Faref with charset-id.
5449 (Fset_char_table_default): Document how to treat normal character
5450 argument. Handle special slots used as default values of ascii,
5451 eight-bit-control, eight-bit-control. Make a sub chartable if
5452 necessary.
5453
5454 2005-04-20 Kenichi Handa <handa@m17n.org>
5455
5456 * search.c (boyer_moore): Fix previous change.
5457
5458 2005-04-19 Kim F. Storm <storm@cua.dk>
5459
5460 * xdisp.c (setup_for_ellipsis): Reset saved_face_id to use default
5461 face unless last visible char and first invisible char have the
5462 same face. Also use default face if saved_face_id is undefined.
5463
5464 2005-04-19 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5465
5466 * macgui.h (MacFontStruct): Remove member `fontname'. Add member
5467 `full_name'.
5468 [TARGET_API_MAC_CARBON] (MacFontStruct): Use type int for
5469 mac_scriptcode member.
5470
5471 * macterm.c (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): Remove variables.
5472 (syms_of_mac): Don't initialize them.
5473 (Vmac_charset_info_alist): New variable.
5474 (syms_of_mac): Defvar it.
5475 (create_text_encoding_info_alist): New function.
5476 (decode_mac_font_name, mac_to_x_fontname)
5477 (x_font_name_to_mac_font_name, init_font_name_table): Don't hard
5478 code the correspondence among XLFD charsets, Mac script codes, and
5479 Emacs coding systems. Use Vmac_charset_info_alist and result of
5480 create_text_encoding_info_alist instead.
5481 (init_font_name_table) [TARGET_API_MAC_CARBON]: Use Font Manager
5482 routines also on Mac OS Classic.
5483 (init_font_name_table) [!TARGET_API_MAC_CARBON]:
5484 Use add_font_name_table_entry.
5485 (mac_do_list_fonts): Regard 0 in XLFD scaleble fields as
5486 specified. Derive unspecified scalable fields from specified one.
5487 (x_list_fonts): Consider Valternate_fontname_alist.
5488 (kDefaultFontSize): Change value from 9 to 12.
5489 (XLoadQueryFont): Get decoded font family, font face, and charset
5490 from x_font_name_to_mac_font_name. Set full name of loaded font.
5491 (mac_unload_font): Free `full_name' member.
5492 (x_load_font): Don't try XLoadQueryFont if x_list_fonts returns
5493 NULL. Copy full_name member of struct MacFontStruct to that of
5494 struct font_info.
5495
5496 2005-04-19 Kim F. Storm <storm@cua.dk>
5497
5498 * xdisp.c (handle_stop): Set saved_face_id to current face if
5499 selective_display_ellipsis_p so ellipsis will be shown in same
5500 face as preceding text.
5501 (setup_for_ellipsis): Don't set saved_face_id here.
5502 (next_element_from_display_vector): Default to saved_face_id.
5503
5504 * fns.c (Fsafe_get): New function.
5505 (syms_of_fns): Defsubr it.
5506
5507 * lisp.h (Fsafe_get): EXFUN it.
5508
5509 * xfaces.c (resolve_face_name): Use Fsafe_get to avoid redisplay
5510 loops in case of bad face property lists. Limit number of face
5511 alias lookups to 10 (in case of face alias loops).
5512
5513 2005-04-18 Kim F. Storm <storm@cua.dk>
5514
5515 * dispextern.h (struct glyph_row): New member overlay_arrow_bitmap.
5516 It replaces the corresponding member from struct window, as a
5517 window may now show multiple overlay arrows.
5518 Remove member overlay_arrow_p, superseeded by overlay_arrow_bitmap.
5519
5520 * dispnew.c (row_equal_p, update_window_line, scrolling_window):
5521 Compare overlay_arrow_bitmap than overlay_arrow_p members.
5522
5523 * fringe.c (draw_fringe_bitmap): Use overlay_arrow_bitmap from row
5524 rather than from window.
5525 (update_window_fringes): Compare overlay_arrow_bitmap rather than
5526 overlay_arrow_p members.
5527 (Ffringe_bitmaps_at_pos): Return fringe overlay_arrow_bitmap name
5528 if not default.
5529
5530 * window.h (struct window): Remove member overlay_arrow_bitmap.
5531
5532 * window.c (make_window): Don't initialize overlay_arrow_bitmap.
5533
5534 * xdisp.c (overlay_arrow_string_or_property): Remove PBITMAP arg.
5535 Calls changed. Don't check for overlay-arrow-bitmap property here.
5536 (overlay_arrow_at_row): Remove PBITMAP arg. Instead, if left
5537 fringe is present, return Lisp integer for bitmap (or -1 for default).
5538 Fix value of overlay-arrow-bitmap property to be a symbol, use
5539 lookup_fringe_bitmap to parse it.
5540 (display_line): Change call to overlay_arrow_at_row. Store integer
5541 return value as overlay bitmap in row rather than window.
5542 Only show overlay arrow if row displays text, or if no other overlay
5543 arrow is seen in window (if overlay marker is at point-max).
5544
5545 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
5546
5547 * xfaces.c (realize_x_face) [!HAVE_WINDOW_SYSTEM]: Return NULL.
5548
5549 2005-04-18 Lute Kamstra <lute@gnu.org>
5550
5551 * lread.c (Vloads_in_progress): Static.
5552 * fns.c (Vloads_in_progress): Remove extern.
5553 (load_in_progress): Add extern.
5554 (Frequire): Use load_in_progress instead of Vloads_in_progress.
5555
5556 2005-04-18 Thien-Thi Nguyen <ttn@gnu.org>
5557
5558 * xmenu.c (Fx_popup_menu): Initialize error_name to NULL.
5559
5560 2005-04-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5561
5562 * macterm.c (XTread_socket): Don't beep on keyboard input even if
5563 no frame is visible.
5564
5565 2005-04-16 Dan Nicolaescu <dann@ics.uci.edu>
5566
5567 * term.c (struct keys): Add support for shifted keys.
5568
5569 2005-04-16 Richard M. Stallman <rms@gnu.org>
5570
5571 * xdisp.c (with_echo_area_buffer): Delete WHICH < 0 case.
5572 (set_message): Call with_echo_area_buffer with WHICH = 0.
5573 (set_message_1): Erase the echo area buffer first thing.
5574 (echo_area_display): Don't clear echo_message_buffer.
5575
5576 2005-04-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5577
5578 * Makefile.in (mac.o): Depend on charset.h and coding.h.
5579
5580 * mac.c: Include charset.h and coding.h.
5581 [TARGET_API_MAC_CARBON] (Qutf_8): Remove extern.
5582 [TARGET_API_MAC_CARBON] (cfstring_create_with_string): New function.
5583 [TARGET_API_MAC_CARBON] (Fmac_get_preference): Use it.
5584
5585 * macfns.c [TARGET_API_MAC_CARBON] (Fx_file_dialog): Likewise.
5586
5587 * image.c [MAC_OSX] (image_load_quartz2d): Likewise.
5588
5589 * macterm.c (x_autoselect_window_p): Remove variable.
5590 (last_window): New variable.
5591 (XTreassert_line_highlight, x_change_line_highlight):
5592 Remove declarations.
5593 (mac_focus_changed, x_detect_focus_change): New functions and
5594 declarations.
5595 (XTextExtents16, front_emacs_window): Remove function.
5596 (mac_focus_frame): New function.
5597 (XTmouse_position, do_menu_choice, do_zoom_window, XTread_socket)
5598 (mac_check_for_quit_char): Use it instead of front_emacs_window.
5599 (x_scroll_bar_report_motion): Obtain window from control owner.
5600 (x_make_frame_invisible): Set window manager size hint.
5601 (do_mouse_moved): Remove function.
5602 (XTread_socket): Move its contents here. Generate select-window
5603 event on mouse movement if needed. Use x_detect_focus_change on
5604 activate/deactivate events. Don't deiconify frame or invalidate
5605 window rectangle when dnd items are dropped.
5606 Don't activate/deactivate root control.
5607 (frame_highlight, frame_unhighlight): Activate/deactivate root
5608 control here.
5609 (syms_of_macterm): Delete DEFVAR_BOOL for x_autoselect_window_p.
5610
5611 * macterm.h (cfstring_create_with_string) [TARGET_API_MAC_CARBON]:
5612 New extern.
5613
5614 2005-04-15 Luc Teirlinck <teirllm@auburn.edu>
5615
5616 * Makefile.in: Define new macro TOOLTIP_SUPPORT.
5617 (lisp): Use it.
5618 (SOME_MACHINE_LISP): Add tooltip.
5619
5620 2005-04-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5621
5622 * mac.c [!TARGET_API_MAC_CARBON]: Include MacLocales.h.
5623 Don't include TextEncodingConverter.h.
5624 (mac_system_script_code, Vmac_system_locale): New variables.
5625 (syms_of_mac): Defvar them.
5626 (mac_get_system_locale): New function.
5627
5628 * macfns.c (x_set_name, x_set_title) [!TARGET_API_MAC_CARBON]:
5629 Use ENCODE_SYSTEM to encode title bar string.
5630 (x_create_tip_frame): Apply 2005-03-18 change for xfns.c.
5631 (Fx_file_dialog) [TARGET_API_MAC_CARBON && !MAC_OSX]:
5632 Use CFStringGetSystemEncoding to get system default string encoding.
5633
5634 * macterm.c [!TARGET_API_MAC_CARBON]: Don't include
5635 TextEncodingConverter.h.
5636
5637 2005-04-13 Steven Tamm <steventamm@mac.com>
5638
5639 * macterm.c (syms_of_macterm): Remove redundant definition of
5640 mac-pass-control-to-system.
5641
5642 2005-04-12 Stefan Monnier <monnier@iro.umontreal.ca>
5643
5644 * window.c (Fset_window_configuration): Be careful when you choose
5645 among several possible points for the new_current_buffer.
5646
5647 2005-04-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5648
5649 * keyboard.c (poll_for_input) [SYNC_INPUT]: Don't call
5650 poll_for_input_1. Set interrupt_input_pending to 1 instead.
5651 (Qlanguage_change) [MAC_OS]: New variable.
5652 (syms_of_keyboard) [MAC_OS]: Intern and staticpro it.
5653 (kbd_buffer_get_event) [MAC_OS]: Make event for LANGUAGE_CHANGE_EVENT.
5654
5655 * macterm.c (mac_keyboard_text_encoding)
5656 (current_mac_keyboard_text_encoding): Remove variables.
5657 (XTread_socket): Store language-change event if keyboard script change
5658 is detected. Don't convert input to `mac_keyboard_text_encoding'.
5659 (syms_of_macterm): Delete DEFVAR_INT for mac-keyboard-text-encoding.
5660
5661 * termhooks.h (enum event_kind) [MAC_OS]: Add LANGUAGE_CHANGE_EVENT.
5662
5663 2005-04-10 Richard M. Stallman <rms@gnu.org>
5664
5665 * emacs.c (standard_args): Rename --bare-bones to --quick.
5666 Add -D aka --basic-display.
5667
5668 * buffer.c (Fmake_indirect_buffer): Clear out some local variables.
5669
5670 2005-04-09 Richard M. Stallman <rms@gnu.org>
5671
5672 * keymap.c (where_is_internal): Convert a string used as event type
5673 into "(any string)".
5674
5675 * lread.c (Vloads_in_progress): Not static.
5676 * fns.c (Vloads_in_progress): Add extern.
5677 (Frequire): Don't do LOADHIST_ATTACH if Vloads_in_progress is nil.
5678
5679 2005-04-09 Thien-Thi Nguyen <ttn@surf.glug.org>
5680
5681 * dispnew.c (mirror_line_dance): Avoid crash if W2 is null.
5682
5683 2005-04-09 Lute Kamstra <lute@gnu.org>
5684
5685 * print.c (PRINTPREPARE): Check if the marker PRINTCHARFUN is
5686 within the accessible part of the buffer.
5687
5688 2005-04-09 Kim F. Storm <storm@cua.dk>
5689
5690 * lread.c (readevalloop): Add args START and END as region in
5691 current buffer to read. Callers changed.
5692 When specified, narrow to this region only when reading,
5693 not during eval. Track next point to read from during eval.
5694 Also restore point to "real" buffer position before eval.
5695 (Feval_region): Don't save excursion and restriction here, and
5696 don't narrow to region. Just pass region to readevalloop.
5697 Note: Point is now preserved even when PRINTFLAG is nil.
5698
5699 2005-04-08 Kim F. Storm <storm@cua.dk>
5700
5701 * xdisp.c (syms_of_xdisp): Init overlay-arrow-string to "=>".
5702
5703 2005-04-06 Kim F. Storm <storm@cua.dk>
5704
5705 * emacs.c (standard_args): Add -Q, --bare-bones, -bare-bones.
5706
5707 2005-04-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5708
5709 * mac.c (cfdate_to_lisp): Add `const' for variable `epoch_gdate'.
5710 (Fmac_get_preference): Doc fix.
5711
5712 * macfns.c (Fx_create_frame, x_create_tip_frame):
5713 Add "fontset-mac" to fallback font/fontsets.
5714
5715 2005-04-04 Kim F. Storm <storm@cua.dk>
5716
5717 * alloc.c (Fgarbage_collect): Call CHECK_CONS_LIST before and after gc.
5718
5719 * eval.c (Ffuncall): Always call CHECK_CONS_LIST on entry.
5720 Call it again after autoload.
5721
5722 2005-04-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5723
5724 * alloc.c (allocate_string_data): Call BLOCK_INPUT before calling
5725 mallopt.
5726
5727 * ralloc.c (r_alloc_init): Ditto.
5728
5729 2005-04-01 Kenichi Handa <handa@m17n.org>
5730
5731 * lisp.h (Vascii_upcase_table, Vascii_canon_table)
5732 (Vascii_eqv_table): Extern them.
5733
5734 * casetab.c (set_case_table): If standard is nonzero, setup
5735 Vascii_upcase_table, Vascii_canon_table, and Vascii_eqv_table.
5736
5737 * search.c (looking_at_1): Use current_buffer->case_canon_table,
5738 not DOWNCASE_TABLE.
5739 (string_match_1): Likewise.
5740 (fast_c_string_match_ignore_case): Use Vascii_canon_table, not
5741 Vascii_downcase_table.
5742 (fast_string_match_ignore_case): Likewise.
5743 (search_buffer): Fix checking of boyer-moore usability.
5744 (boyer_moore): Calculate translate_prev_byte1/2/3 in advance.
5745 No need of tranlating characters in PAT. Fix calculation of
5746 simple_translate.
5747
5748 2005-03-31 Stefan Monnier <monnier@iro.umontreal.ca>
5749
5750 * xterm.c [HAVE_XAW3D]: Include ThreeD.h for XtNbeNiceToColormap.
5751 (x_create_toolkit_scroll_bar): Test XtNbeNiceToColormap before using it.
5752 Use XtNtopShadowPixel and XtNbottomShadowPixel.
5753 (x_set_toolkit_scroll_bar_thumb): Remove ugly old hack that didn't
5754 really work and that breaks with some versions of Xaw3d.
5755
5756 2005-03-31 Kenichi Handa <handa@m17n.org>
5757
5758 * coding.c (syms_of_coding): Fix previous change.
5759
5760 2005-03-30 Stefan Monnier <monnier@iro.umontreal.ca>
5761
5762 * fileio.c (search_embedded_absfilename): Fix last change.
5763
5764 2005-03-25 Kenichi Handa <handa@m17n.org>
5765
5766 * coding.c (syms_of_coding): Suggest to use set-coding-category in
5767 the docstring of coding-category-list.
5768
5769 2005-03-31 Kim F. Storm <storm@cua.dk>
5770
5771 * keyboard.c (Qmouse_fixup_help_message): New var.
5772 (syms_of_keyboard): Intern and staticpro it.
5773 (show_help_echo): Apply mouse-fixup-help-message to help string.
5774
5775 2005-03-30 Kim F. Storm <storm@cua.dk>
5776
5777 * xdisp.c (display_line): Allow multiple overlay arrows in window.
5778
5779 2005-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
5780
5781 * fileio.c (Fexpand_file_name): Use IS_DEVICE_SEP.
5782 (file_name_absolute_p): New fun, extracted from Ffile_name_absolute_p.
5783 (Ffile_name_absolute_p): Use it.
5784 (search_embedded_absfilename): New fun, extracted from
5785 Fsubstitute_in_file_name. Use file_name_absolute_p.
5786 Free the pw data after use.
5787 (Fsubstitute_in_file_name): Use it.
5788 After cutting a prefix, re-check file-name-handler.
5789
5790 2005-03-26 Lennart Borgman <lennart.borgman.073@student.lu.se>
5791
5792 * w32term.h (x_output): Add focus_state.
5793
5794 * w32term.c (x_focus_changed, w32_detect_focus_change): New functions.
5795 (w32_read_socket) [WM_SETFOCUS]: Call w32_detect_focus_change.
5796
5797 2005-03-25 Stefan Monnier <monnier@iro.umontreal.ca>
5798
5799 * minibuf.c (Fminibuffer_complete_and_exit, Fself_insert_and_exit):
5800 Use Fexit_minibuffer.
5801 (Fexit_minibuffer): Mark it as no-return, deactivate the mark.
5802
5803 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5804
5805 * dired.c (Ffile_attributes): Add a missing gcpro.
5806
5807 * alloc.c (make_number): The arg can be bigger than `int'.
5808 * lisp.h (make_number): Make prototype more precise.
5809
5810 * process.c, dired.c (Vfile_name_coding_system)
5811 (Vdefault_file_name_coding_system):
5812 * callproc.c (Vdoc_file_name, Vfile_name_coding_system)
5813 (Vdefault_file_name_coding_system): Remove unused declarations.
5814
5815 2005-03-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5816
5817 * xmenu.c (create_and_show_popup_menu): Just remove menu and return
5818 if it failed to pop up (Gnome "show pointer on ctrl" option makes
5819 menus fail to pop up).
5820
5821 2005-03-24 Stefan Monnier <monnier@iro.umontreal.ca>
5822
5823 * xdisp.c (get_next_display_element): Also use `\ ' & `\-' for latin-9.
5824 Just prepend a backslash without replacing the NBSP by an SPC.
5825
5826 2005-03-22 Kim F. Storm <storm@cua.dk>
5827
5828 * xfaces.c (lookup_derived_face): Add arg SIGNAL_P.
5829 * dispextern.h (lookup_derived_face): Fix prototype.
5830 * msdos.c (XMenuActivate): Fix call to lookup_derived_face.
5831
5832 * xdisp.c (handle_single_display_spec): Derive left-fringe and
5833 right-fringe face from fringe face.
5834
5835 * fringe.c (draw_fringe_bitmap_1, Fset_fringe_bitmap_face):
5836 Derive face from fringe face.
5837
5838 2005-03-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5839
5840 * xrdb.c (x_load_resources): Undo previous change (2005-03-18).
5841
5842 2005-03-22 David Kastrup <dak@gnu.org>
5843
5844 * textprop.c (Fnext_char_property_change)
5845 (Fprevious_char_property_change): Allow marker as limit.
5846 (Fnext_single_char_property_change)
5847 (Fprevious_single_char_property_change): Check that limit is a
5848 number in strings.
5849 (Fnext_single_char_property_change): Coerce position to integer.
5850 (Fprevious_single_char_property_change): Same here.
5851
5852 2005-03-21 Thien-Thi Nguyen <ttn@gnu.org>
5853
5854 * s/openbsd.h (LD_SWITCH_SYSTEM_tmp): Define if undefined.
5855
5856 2005-03-19 Stefan Monnier <monnier@iro.umontreal.ca>
5857
5858 * frame.c (Fignore_event): Remove.
5859 (syms_of_frame): Don't defsubr it.
5860
5861 * keyboard.c (keys_of_keyboard): Just use `ignore' instead of the
5862 redundant `ignore-event'.
5863
5864 2005-03-19 Eli Zaretskii <eliz@gnu.org>
5865
5866 * unexec.c (write_segment, unexec): Move these functions to avoid
5867 forward references (which cause errors with "gcc -gcoff").
5868
5869 2005-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
5870
5871 * xfns.c (x_create_tip_frame): Remove setting of Vx_resource_name so
5872 that it doesn't become "tooltip". The specbind is enough.
5873
5874 * xrdb.c (x_load_resources): Use different char *helv when I18N
5875 is present.
5876
5877 2005-03-17 Kenichi Handa <handa@m17n.org>
5878
5879 * coding.c (syms_of_coding): Docstring of coding-category-list fixed.
5880
5881 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5882
5883 * xfaces.c (x_update_menu_appearance) [HAVE_X_I18N]:
5884 Use xic_create_fontsetname even for non-Motif menus.
5885 Don't forget to free the fontsetname.
5886
5887 * xfns.c (xic_create_fontsetname): Add a final catch-all font pattern.
5888
5889 2005-03-17 Richard M. Stallman <rms@gnu.org>
5890
5891 * dispnew.c (mirror_line_dance): Set W2 according to FRAME_FROM.
5892
5893 * fileio.c (Fcopy_file, Frename_file, Fadd_name_to_file)
5894 (Fmake_symbolic_link): Use G to read the new file name.
5895
5896 * callint.c (Finteractive): Document G option.
5897 (Fcall_interactively): Implement G option.
5898
5899 * buffer.c (buffer_lisp_local_variables): New function,
5900 broken out from Fbuffer_local_variables.
5901 (clone_per_buffer_values): Use buffer_lisp_local_variables.
5902
5903 2005-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
5904
5905 * xfns.c (xic_create_fontsetname): Add `motif' argument.
5906 Always return a freshly allocated string.
5907 (xic_create_xfontset): Adjust call.
5908
5909 * xfaces.c (x_update_menu_appearance) [USE_MOTIF]:
5910 Use xic_create_fontsetname to create a fontset so utf-8 locales work.
5911 (dump_realized_face): Fix warning.
5912
5913 * emacs.c (Fkill_emacs): YAILOM.
5914
5915 * frame.c (Fignore_event): Fix ancient obscure C-u handling bug.
5916
5917 2005-03-17 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5918
5919 * mac.c (HASHKEY_TERMINAL): Remove.
5920 (HASHKEY_MAX_NID): New macro.
5921 (xrm_q_get_resource_1): Rename from xrm_q_get_resource. Add extra
5922 argument.
5923 (xrm_q_get_resource): Call xrm_q_get_resource_1 with extra argument.
5924 (xrm_create_database, xrm_q_put_resource)
5925 (xrm_merge_string_database, xrm_q_get_resource_1)
5926 (xrm_q_get_resource): Change resource database representation so
5927 that it may not use multiple hash tables for a single database.
5928 [TARGET_API_MAC_CARBON] (xrm_cfproperty_list_to_value): YAILOM.
5929
5930 2005-03-16 Stefan Monnier <monnier@iro.umontreal.ca>
5931
5932 * xmenu.c (ENCODE_MENU_STRING) [HAVE_X_I18N]: Use ENCODE_SYSTEM.
5933
5934 * coding.h (ENCODE_SYSTEM, DECODE_SYSTEM) [!WINDOWSNT]: Use the
5935 locale-coding-system, as was already done for WINDOWSNT.
5936
5937 * keyboard.c (read_char): Only do the 7-bit-meta -> 27-bit-meta
5938 translation for chars in the 0-255 range.
5939
5940 2005-03-16 Lute Kamstra <lute@gnu.org>
5941
5942 * floatfns.c (Ffloor): Doc fix.
5943
5944 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5945
5946 * mac.c: Include macterm.h instead of directly including Carbon.h.
5947 [TARGET_API_MAC_CARBON] (Qstring, Qnumber, Qboolean, Qdate, Qdata)
5948 (Qarray, Qdictionary): New variables.
5949 (syms_of_mac) [TARGET_API_MAC_CARBON]: Initialize them.
5950 [TARGET_API_MAC_CARBON] (Qutf_8): Add extern.
5951 [TARGET_API_MAC_CARBON] (DECODE_UTF_8): New macro.
5952 [TARGET_API_MAC_CARBON] (struct cfdict_context): New struct used
5953 in callback for CFDictionaryApplyFunction.
5954 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5955 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5956 (cfobject_desc_to_lisp, cfdictionary_add_to_list)
5957 (cfdictionary_puthash, cfproperty_list_to_lisp): New functions.
5958 [TARGET_API_MAC_CARBON] (Fmac_get_preference): New function.
5959 (syms_of_mac) [TARGET_API_MAC_CARBON]: Defsubr it.
5960 (P, LOOSE_BINDING, SINGLE_COMPONENT, HASHKEY_TERMINAL): New macro.
5961 (skip_white_space, parse_comment, parse_include_file)
5962 (parse_binding, parse_component, parse_resource_name, parse_value)
5963 (parse_resource_line, xrm_create_database, xrm_q_put_resource)
5964 (xrm_merge_string_database, xrm_q_get_resource, xrm_get_resource)
5965 (xrm_cfproperty_list_to_value, xrm_get_preference_database):
5966 New functions.
5967
5968 * macfns.c (mac_get_rdb_resource): Remove function.
5969 (x_get_string_resource): Use xrm_get_resource.
5970
5971 * macgui.h (XrmDatabase): Typedef to Lisp_Object.
5972
5973 * macterm.c (x_list_fonts): FONT-LIST-CACHE is now cadr part of
5974 name_list_element.
5975 (mac_make_rdb): Create resource database from preferences and
5976 argument string.
5977 (mac_term_init): Save resource database to cddr part of
5978 name_list_element.
5979
5980 * macterm.h (xrm_merge_string_database, xrm_get_resource)
5981 (xrm_get_preference_database): Add externs.
5982 [TARGET_API_MAC_CARBON] (cfdata_to_lisp, cfstring_to_lisp)
5983 (cfnumber_to_lisp, cfdate_to_lisp, cfboolean_to_lisp)
5984 (cfobject_desc_to_lisp, cfproperty_list_to_lisp): Likewise.
5985
5986 * process.c (init_process): Change `#ifdef DARWIN' to `#if
5987 defined (DARWIN) || defined (MAC_OSX)'
5988
5989 * s/darwin.h (DARWIN): Don't define.
5990
5991 2005-03-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
5992
5993 * macfns.c (Qhyper, Qsuper, Qmeta, Qalt, Qctrl, Qcontrol, Qshift):
5994 Remove unused variables.
5995 (syms_of_macfns): Don't initialize them. Likewise for
5996 Qface_set_after_frame_default. Defvar and initialize
5997 Vx_window_horizontal_drag_shape.
5998 (x_set_mouse_color): Change mouse pointer shape.
5999 (mac_window) [!MAC_OSX]: Create root control.
6000 (Fx_create_frame): Remove initializations of mouse pointer shapes.
6001 (hourglass_started): New function (from xfns.c).
6002 (start_hourglass, cancel_hourglass): Put function body in #ifdef
6003 MAC_OSX.
6004 (show_hourglass) [TARGET_API_MAC_CARBON]: Create progress
6005 indicator for each non-tooltip frame if needed, and show it.
6006 (hide_hourglass) [TARGET_API_MAC_CARBON]: Hide progress indicators.
6007
6008 * macgui.h [!TARGET_API_MAC_CARBON]: Include Appearance.h and
6009 Controls.h. Use ThemeCursor instead of CursHandle.
6010
6011 * macterm.c (activate_scroll_bars, deactivate_scroll_bars):
6012 Remove functions and declarations.
6013 (mac_set_colors): Take argument for saving background color.
6014 All callers changed.
6015 (XDrawLine, XClearArea, mac_draw_bitmap, XFillRectangle)
6016 (mac_draw_rectangle, mac_draw_string_common): Save and Restore
6017 background color.
6018 (x_update_end, mac_do_track_drag): Don't reset background color.
6019 (mac_define_frame_cursor) [!TARGET_API_MAC_CARBON]:
6020 Use SetThemeCursor.
6021 (x_set_window_size) [TARGET_API_MAC_CARBON]: Move progress
6022 indicator control to the upper-right corner of the window.
6023 (arrow_cursor) [!TARGET_API_MAC_CARBON]: Remove variable.
6024 (do_init_managers) [!TARGET_API_MAC_CARBON]: Don't initialize it.
6025 (do_window_update): Update controls after updating content area.
6026 (mac_handle_window_event): Remove unused extern.
6027 (XTread_socket): Check both control handle and control part code
6028 to determine whether a scroll bar is clicked. Activate/deactivate
6029 root control instead of contained scroll bar controls.
6030 (make_mac_terminal_frame): Use ThemeCursor constants.
6031
6032 * macterm.h (struct mac_output) [TARGET_API_MAC_CARBON]:
6033 New member hourglass_control.
6034 (HOURGLASS_WIDTH, HOURGLASS_HEIGHT): New defines.
6035 (activate_scroll_bars, deactivate_scroll_bars): Remove declarations.
6036
6037 2005-03-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6038
6039 * macterm.c (keycode_to_xkeysym_table): Change mapping so that it
6040 coincides with that in Apple X11 except `clear', `enter' on
6041 laptops, and fn + `enter' on laptops.
6042
6043 2005-03-12 Stefan Monnier <monnier@iro.umontreal.ca>
6044
6045 * xmenu.c (ENCODE_MENU_STRING): Explicitly use string_make_unibyte.
6046 (list_of_panes, list_of_items, Fx_popup_menu): Use XCAR/XCDR.
6047 (digest_single_submenu, xmenu_show): Use ENCODE_MENU_STRING.
6048
6049 * xfns.c (xic_defaut_fontset): New constant.
6050 (xic_create_fontsetname): New function.
6051 Extracted from create_frame_xic. Try to generate a slightly
6052 better fontset.
6053 (xic_create_xfontset): Use it.
6054 (create_frame_xic): Simplify.
6055
6056 2005-03-11 Stefan Monnier <monnier@iro.umontreal.ca>
6057
6058 * fileio.c (Fmake_symbolic_link): Fix last change.
6059
6060 2005-03-11 Richard M. Stallman <rms@gnu.org>
6061
6062 * fileio.c (Frename_file, Fadd_name_to_file)
6063 (Fmake_symbolic_link): If NEWNAME or LINKNAME is a directory,
6064 expand the basename of FILE relative to it.
6065
6066 2005-03-11 Kenichi Handa <handa@m17n.org>
6067
6068 * fileio.c (Finsert_file_contents): Call Fcheck_coding_system
6069 before calling setup_coding_system so that autoloading of a coding
6070 system work.
6071
6072 2005-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6073
6074 * xfns.c (hourglass_started): New function.
6075
6076 * dispextern.h: Declare hourglass_started.
6077
6078 * keyboard.c (Fexecute_extended_command): Restart hourglass
6079 after call to Fcompleting_read if already started.
6080
6081 * gtkutil.c (xg_update_scrollbar_pos): Call x_sync so that the
6082 GTK main loop is entered in xterm.c, thus doing the redraw.
6083
6084 2005-03-10 Kim F. Storm <storm@cua.dk>
6085
6086 * xdisp.c (pos_visible_p): Fix X value in last line of buffer.
6087
6088 2005-03-08 Kenichi Handa <handa@m17n.org>
6089
6090 * frame.c (x_set_font): Call set_default_ascii_font if an
6091 available font is found.
6092
6093 * fontset.c (set_default_ascii_font): New function.
6094 (syms_of_fontset): Don't set FONTSET_ASCII (Vdefault_fontset) here.
6095
6096 * fontset.h (set_default_ascii_font): Extern it.
6097
6098 2005-03-07 Kim F. Storm <storm@cua.dk>
6099
6100 * xdisp.c (CLEAR_IMAGE_CACHE_COUNT): New const.
6101 (clear_image_cache_count): New var.
6102 (redisplay_internal): Don't clear face and image caches in the
6103 middle of redisplay; do it afterwards.
6104
6105 * blockinput.h (TOTALLY_UNBLOCK_INPUT): Avoid dangling else.
6106
6107 * xdisp.c (notice_overwritten_cursor): Check that phys_cursor.vpos
6108 is valid. If not, clear phys_cursor_on_p and return.
6109
6110 2005-03-07 Andreas Schwab <schwab@suse.de>
6111
6112 * blockinput.h (UNBLOCK_INPUT_TO): Always call UNBLOCK_INPUT.
6113
6114 2005-03-06 Richard M. Stallman <rms@gnu.org>
6115
6116 * keyboard.c (Ftop_level): Let Fthrow deal with UNBLOCK_INPUT.
6117
6118 * eval.c (unwind_to_catch): Use UNBLOCK_INPUT_TO.
6119 (Feval, Ffuncall): Use CHECK_CONS_LIST.
6120
6121 * lisp.h (CHECK_CONS_LIST): New macro (two definitions).
6122
6123 * blockinput.h (UNBLOCK_INPUT_TO): New macro.
6124 (TOTALLY_UNBLOCK_INPUT): Handle a pending signal if any.
6125
6126 2005-03-05 Juri Linkov <juri@jurta.org>
6127
6128 * emacs.c (USAGE1): Replace Info node name "command arguments"
6129 with "emacs invocation".
6130 (USAGE3): Fix usage of `--color=MODE' which actually doesn't
6131 allow arguments `--color' and `MODE' to be separated by space.
6132 Add --no-blinking-cursor, -nbc.
6133 (standard_args): Add -nbc, --no-blinking-cursor.
6134
6135 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
6136
6137 * s/vms.h: Define NO_HYPHENS_IN_FILENAMES.
6138 * s/vms4-4.h, s/vms5-5.h: Undefine NO_HYPHENS_IN_FILENAMES.
6139 * fileio.c (Fexpand_file_name) [VMS]:
6140 Use NO_HYPHENS_IN_FILENAMES, not VMS4_4.
6141 * doc.c (munge_doc_file_name) [VMS]: Likewise.
6142 (Fsnarf_documentation): Call munge_doc_file_name.
6143
6144 2005-03-04 Thien-Thi Nguyen <ttn@gnu.org>
6145
6146 * s/vms.h (FILE_SYSTEM_CASE): New macro.
6147 * fileio.c (Fexpand_file_name) [VMS]: Don't upcase the name
6148 "manually"; this is now handled generally via FILE_SYSTEM_CASE.
6149
6150 2005-03-04 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6151
6152 * emacs.c (main): Change `#ifdef HAVE_CARBON' to `#if
6153 defined (MAC_OSX) && defined (HAVE_CARBON)'.
6154
6155 * image.c [!MAC_OSX && TARGET_API_MAC_CARBON]: Include QuickTime.h.
6156
6157 * mac.c [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
6158 [!MAC_OSX] (select) [TARGET_API_MAC_CARBON]: Use ReceiveNextEvent.
6159 (posix_pathname_to_fsspec, fsspec_to_posix_pathname): New functions.
6160 (mac_clear_font_name_table): Move extern to macterm.h.
6161
6162 * macfns.c (install_window_handler): Move extern to macterm.h.
6163 (Fx_file_dialog): Check STRINGP (default_filename) to see it is
6164 valid. Don't check !NILP (dir) because it is already checked with
6165 CHECK_STRING.
6166 (Fx_file_dialog) [!MAC_OSX]: Use FSSpec instead of FSRef for
6167 specifying the default location and obtaining the selected filename.
6168
6169 * macgui.h [!MAC_OSX && HAVE_CARBON]: Include Carbon.h.
6170
6171 * macmenu.c [TARGET_API_MAC_CARBON]: Don't include headers that
6172 are included via Carbon.h.
6173
6174 * macterm.c [TARGET_API_MAC_CARBON && !MAC_OSX]:
6175 Define USE_CARBON_EVENTS to 1.
6176 (qd) [__MRC__ && TARGET_API_MAC_CARBON]: Don't declare.
6177 (x_free_frame_resources): Call remove_window_handler for
6178 non-tooltip windows.
6179 [TARGET_API_MAC_CARBON]: Don't include headers that are included
6180 via Carbon.h.
6181 [TARGET_API_MAC_CARBON] (mac_do_track_dragUPP)
6182 (mac_do_receive_dragUPP): New variables.
6183 (mac_handle_service_event, init_service_handler): Put declarations
6184 and definitions in #ifdef MAC_OSX.
6185 (install_window_handler) [TARGET_API_MAC_CARBON]: Create UPPs for
6186 drag-and-drop handler functions and register them.
6187 (remove_window_handler): New function.
6188 (do_ae_open_documents, mac_do_receive_drag) [!MAC_OSX]:
6189 Use fsspec_to_posix_pathname.
6190 (main): Change #if !TARGET_API_MAC_CARBON to #ifdef MAC_OS8.
6191 (XTread_socket) [!MAC_OSX]: Don't pass keyboard events to TSM.
6192 [MAC_OS8] (make_mac_terminal_frame) [TARGET_API_MAC_CARBON]:
6193 Set default cursors.
6194 (mac_initialize) [USE_CARBON_EVENTS && !MAC_OSX] : Don't call
6195 init_service_handler or init_quit_char_handler.
6196 (mac_initialize) [!MAC_OSX]: Don't call MakeMeTheFrontProcess.
6197
6198 * macterm.h (install_window_handler, remove_window_handler)
6199 (posix_pathname_to_fsspec, fsspec_to_posix_pathname)
6200 (mac_clear_font_name_table): New externs.
6201
6202 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
6203
6204 * fileio.c (FILE_SYSTEM_CASE): Define macro if not already defined.
6205 (Ffile_name_directory): Use FILE_SYSTEM_CASE unconditionally.
6206 (Fexpand_file_name): Likewise.
6207
6208 2005-03-03 Thien-Thi Nguyen <ttn@gnu.org>
6209
6210 * emacs.c (Fkill_emacs): Use EXIT_SUCCESS;
6211 no longer special-case VMS. Add bogus return value.
6212
6213 2005-03-02 Kim F. Storm <storm@cua.dk>
6214
6215 * dispextern.h (XASSERTS): Define to 0 if not already defined.
6216 (xassert) [!XASSERTS]: Define dummy version.
6217
6218 2005-03-02 Kim F. Storm <storm@cua.dk>
6219
6220 * xdisp.c (redisplay_window): YABX (yet another bogus xassert).
6221 Reported by David Kastrup.
6222
6223 2005-03-01 Ehud Karni <ehud@unix.mvs.co.il>
6224
6225 * xdisp.c (get_next_display_element): Fix control and escape
6226 glyph from display vector.
6227
6228 2005-03-01 Stefan Monnier <monnier@iro.umontreal.ca>
6229
6230 * keyboard.c (Fposn_at_x_y): Check integerness of X and Y.
6231
6232 2005-02-27 Richard M. Stallman <rms@gnu.org>
6233
6234 * xdisp.c (fast_find_position): Rename END to BEG.
6235 (syms_of_xdisp) <menu-bar-update-hook>: Doc fix.
6236
6237 2005-02-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6238
6239 * gtkutil.c (xg_resize_outer_widget): Remove unneeded call to
6240 gtk_window_resize and x_wm_set_size_hint.
6241
6242 2005-02-25 Kim F. Storm <storm@cua.dk>
6243
6244 * dispextern.h (OVERLAY_STRING_CHUNK_SIZE): Increase from 3 to 16.
6245
6246 * xdisp.c (init_from_display_pos): Don't read past end of
6247 it->overlay_strings array.
6248
6249 2005-02-25 Stephan Stahl <stahl@eos.franken.de> (tiny change)
6250
6251 * buffer.c (syms_of_buffer): Fix typo.
6252
6253 2005-02-23 Lute Kamstra <lute@gnu.org>
6254
6255 * buffer.c (Foverlay_buffer): Doc fix.
6256
6257 2005-02-22 Kim F. Storm <storm@cua.dk>
6258
6259 * minibuf.c (Ftry_completion, Fall_completions): Allow both string
6260 and symbol keys in alists and hash tables.
6261
6262 * xdisp.c (fast_find_position): Fix search for start of overlay.
6263
6264 2005-02-21 Kim F. Storm <storm@cua.dk>
6265
6266 * window.c (window_scroll_pixel_based): When scrolling backwards,
6267 handle partial visible line at end of window even when we hit PT.
6268
6269 2005-02-21 Stefan Monnier <monnier@iro.umontreal.ca>
6270
6271 * keymap.h: Declare Fcurrent_active_maps, used in doc.c.
6272
6273 2005-02-21 Kim F. Storm <storm@cua.dk>
6274
6275 * xdisp.c (move_it_vertically_backward): Eliminate two xasserts.
6276 I think those asserts are bogus if buffer contains invisible text
6277 or images.
6278
6279 2005-02-21 David Kastrup <dak@gnu.org>
6280
6281 * gtkutil.c (xg_create_frame_widgets): UNBLOCK_INPUT on error.
6282
6283 2005-02-20 Kim F. Storm <storm@cua.dk>
6284
6285 * xdisp.c (pos_visible_p): Be sure to move to the specified
6286 position. Always get the full ascent / descent of the
6287 corresponding row, to return reliable rtop and rbot values.
6288 (back_to_previous_visible_line_start): Fix 2005-01-18 change.
6289 Must look one character back, as back_to_previous_line_start
6290 returns position after the newline.
6291 (move_it_vertically_backward): Fix heuristic for when to move further
6292 back in case line_height * 2/3 is larger than window height.
6293 (cursor_row_fully_visible_p): Rename make_cursor_line_fully_visible_p
6294 as it does not do anything anymore. Add arg current_matrix_p to
6295 use current matrix rather than desired matrix when set.
6296 (try_cursor_movement): Don't scroll to make cursor row fully
6297 visible if cursor didn't move. This avoids unexpected recentering
6298 in case of blinking cursor or accepting process output.
6299 Use current matrix to check cursor row visibility.
6300 (redisplay_window): Fix whether to recenter or move to top in case
6301 cursor line is taller than window height.
6302 (find_first_unchanged_at_end_row): Stop search if we reach a row
6303 which not enabled (instead of abort).
6304
6305 2005-02-18 Kim F. Storm <storm@cua.dk>
6306
6307 * xfaces.c (Finternal_set_lisp_face_attribute): Allow :color property
6308 to be nil in a :box attribute value list; customize prints that
6309 as lisp value when no box color is specified.
6310
6311 * .gdbinit (pitx, pit): Pretty print display iterator.
6312 (prowx, prow): Pretty print glyph row.
6313 (pcursorx, pcursor): Pretty print a window cursor.
6314 (pwinx, pwin): Pretty print struct window.
6315
6316 2005-02-18 Stefan Monnier <monnier@iro.umontreal.ca>
6317
6318 * alloc.c (BLOCK_BYTES): Harmless typo.
6319
6320 2005-02-17 Andreas Schwab <schwab@suse.de>
6321
6322 * xfns.c (hack_wm_protocols): Use correct type for last parameter
6323 of XGetWindowProperty to avoid aliasing issues.
6324 (Fx_window_property): Likewise.
6325
6326 * xselect.c (Fx_disown_selection_internal): Use union of struct
6327 input_event and struct selection_input_event to avoid aliasing issues.
6328
6329 * xterm.c (handle_one_xevent): Use union of struct input_event and
6330 struct selection_input_event to avoid aliasing issues.
6331 (SET_SAVED_MENU_EVENT): Adapt reference to inev.
6332
6333 2005-02-17 Kim F. Storm <storm@cua.dk>
6334
6335 * dispextern.h (enum it_method): New enum.
6336 (GET_FROM_*): Its members.
6337 (struct it): Change member method from function pointer to enum.
6338
6339 * xdisp.c (check_it, init_from_display_pos, handle_stop)
6340 (setup_for_ellipsis, handle_single_display_spec)
6341 (handle_composition_prop, next_overlay_string)
6342 (get_overlay_strings, reseat_1, reseat_to_string)
6343 (next_element_from_ellipsis, BUFFER_POS_REACHED_P)
6344 (in_display_vector_p, display_line, get_next_display_element):
6345 Change it->method from function pointer to enum.
6346 (get_next_element): New array to map it->method to function.
6347 (get_next_display_element): Use it.
6348 (set_iterator_to_next): Use switch instead of if/else chain.
6349
6350 2005-02-15 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
6351
6352 * w32select.c: Summary: Thorough rework to implement Unicode
6353 clipboard operations and delayed rendering.
6354
6355 Drop last_clipboard_text and related code, keep track of
6356 ownership via clipboard_owner instead. Drop old #if0 sections.
6357
6358 (DEFAULT_LCID, ANSICP, OEMCP, QUNICODE, QANSICP, QOEMCP)
6359 (clipboard_owner, modifying_clipboard, cfg_coding_system)
6360 (cfg_codepage, cfg_lcid, cfg_clipboard_type, current_text)
6361 (current_coding_system, current_requires_encoding)
6362 (current_num_nls, current_clipboard_type, current_lcid):
6363 New static variables.
6364
6365 (convert_to_handle_as_ascii, convert_to_handle_as_coded)
6366 (render, render_all, run_protected, lisp_error_handler)
6367 (owner_callback, create_owner, setup_config)
6368 (enum_locale_callback, cp_from_locale, coding_from_cp):
6369 New local functions.
6370
6371 (term_w32select, globals_of_w32select): New global functions.
6372
6373 (Fw32_set_clipboard_data): Ignore parameter FRAME, use
6374 clipboard_owner instead. Use delayed rendering and provide
6375 all text formats. Provide CF_LOCALE if necessary.
6376
6377 (Fw32_get_clipboard_data): Handle CF_UNICODETEXT and
6378 CF_LOCALE. Fall back to CF_TEXT, if CF_UNICODETEXT is not
6379 available. Force DOS line-ends for decoding.
6380
6381 (Fx_selection_exists_p): Handle CF_UNICODETEXT.
6382
6383 (syms_of_w32select): Init and register new variables.
6384
6385 * w32.h: Add prototypes for globals_of_w32select and
6386 term_w32select. Make the neighboring K&R declarations into
6387 prototypes, too.
6388
6389 * emacs.c: Include w32.h to get function prototypes.
6390 (main): Call globals_of_w32select.
6391
6392 * w32.c (term_ntproc): Call term_w32select.
6393
6394 * s/ms-w32.h: Guard MSC-specific #pragmas with an #ifdef.
6395
6396 2005-02-16 Kim F. Storm <storm@cua.dk>
6397
6398 * xdisp.c (BUFFER_POS_REACHED_P): Return true if pos reached and
6399 at end of display vector.
6400
6401 2005-02-15 Richard M. Stallman <rms@gnu.org>
6402
6403 * xdisp.c (get_next_display_element): Fix escape-glyph criterion
6404 for mode and header lines.
6405
6406 * lread.c (syms_of_lread) <user-init-file>: Doc fix.
6407
6408 * keymap.h (describe_map_tree): Change decl.
6409
6410 * keyboard.c (command_loop_1): Always use safe_run_hooks
6411 to run Qdeferred_action_function.
6412
6413 * keymap.c (describe_map_tree): New arg MENTION_SHADOW. Calls changed.
6414 (describe_map, describe_vector): Likewise. When it's 1,
6415 don't omit shadowed bindings, instead mark them as shadowed.
6416
6417 * doc.c (Fsubstitute_command_keys): Compute list of shadowing maps
6418 for describe_map_tree. Pass 1 for MENTION_SHADOW.
6419
6420 * data.c (Fsetq_default): Allow no arg case.
6421
6422 2005-02-14 Kenichi Handa <handa@m17n.org>
6423
6424 * coding.c (encode_coding_string): Always return a unibyte string.
6425 If NOCOPY is nonzero and there's no need of encoding, make STR
6426 unibyte directly.
6427
6428 * xselect.c (lisp_data_to_selection_data): If OBJ is a non-ASCII
6429 multibyte string, signal an error instead of aborting.
6430
6431 2005-02-12 Dan Nicolaescu <dann@ics.uci.edu>
6432
6433 * keyboard.c: If HAVE_FCNTL_H include fcntl.h.
6434
6435 2005-02-12 Kim F. Storm <storm@cua.dk>
6436
6437 * xdisp.c (expose_window): Don't fix overlaps for mode lines.
6438
6439 2005-02-10 Kim F. Storm <storm@cua.dk>
6440
6441 * xdisp.c (try_window_id): Set first_unchanged_at_end_row to NULL
6442 if it moves outside window or it doesn't display text.
6443
6444 2005-02-09 Kim F. Storm <storm@cua.dk>
6445
6446 * undo.c (Fprimitive_undo): Check that undo function does not
6447 switch buffer.
6448
6449 2005-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6450
6451 * xselect.c (selection_data_to_lisp_data): For the special case
6452 type == XA_ATOM, data contains array of int, not array of Atom.
6453 (x_property_data_to_lisp, selection_data_to_lisp_data):
6454 Comment update: data must be array of int for format == 32.
6455
6456 2005-02-08 Stefan Monnier <monnier@iro.umontreal.ca>
6457
6458 * undo.c (Fprimitive_undo): Check veracity of delta,start,end.
6459
6460 2005-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6461
6462 * xfns.c (Fx_change_window_property): Use long array when format is 32.
6463 (Fx_window_property): If format is 32 and long is bigger than 32 bits,
6464 convert long array returned from XGetWindowProperty to an int array.
6465 (x_set_tool_bar_lines): Check that width and height is greater than
6466 zero before clearing area.
6467
6468 * xselect.c (x_reply_selection_request): Pass long array to
6469 XChangeProperty so that 64 bit longs are handeled correctly.
6470 (x_get_window_property): If format is 32 and long is bigger than 32
6471 bits convert data from XGetWindowProperty from long array to int array.
6472 (lisp_data_to_selection_data): When the input is a vector and the
6473 format is 32, allocate a long array even if long is bigger than 32 bits.
6474 (x_fill_property_data): Use char, short and long as the man page
6475 for XChangeProperty specifies. This way the data returned is OK for
6476 both 32 and 64 bit machines.
6477 (x_handle_dnd_message): Calculate size correctly even for 64 bit
6478 machines.
6479 (Fx_send_client_event): Undo change from 2005-02-05,
6480 x_fill_property_data now handles that case.
6481
6482 * xfns.c (Fx_backspace_delete_keys_p): Add comment about the
6483 reason for the approach in the code.
6484
6485 2005-02-07 Kim F. Storm <storm@cua.dk>
6486
6487 * undo.c (Fprimitive_undo): Record max one dummmy apply element.
6488
6489 2005-02-06 Richard M. Stallman <rms@gnu.org>
6490
6491 * eval.c (Frun_hook_with_args)
6492 (Frun_hook_with_args_until_success)
6493 (Frun_hook_with_args_until_failure): Doc fixes.
6494
6495 2005-02-05 Andreas Schwab <schwab@suse.de>
6496
6497 * sysdep.c (sys_subshell): Properly terminate execlp argument list.
6498
6499 2005-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6500
6501 * xselect.c (Fx_send_client_event, x_handle_dnd_message): Handle
6502 the longs in a XClientMessageEvent correctly when long is 64 bits.
6503
6504 2005-02-05 Eli Zaretskii <eliz@gnu.org>
6505
6506 * xfaces.c (face_color_supported_p): Use HAVE_WINDOW_SYSTEM
6507 instead of HAVE_X_WINDOWS, for non-X windowed sessions.
6508
6509 2005-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6510
6511 * xmenu.c (menubar_selection_callback): Force out GTK buffered
6512 events so the menu event comes after them. This is to prevent sit-for
6513 from exiting on buffered events directly after a menu selection,
6514 lisp code for Help => About Emacs uses sit-for.
6515
6516 * gtkutil.c (create_menus): Connect selection-done event instead of
6517 the deactivate event to deactivate_cb. This will make the last
6518 leave event come before the call to deactivate_cb, so the leave
6519 event does not make sit-for exit after a menu selection.
6520
6521 2005-02-03 Kim F. Storm <storm@cua.dk>
6522
6523 * dispnew.c (build_frame_matrix_from_leaf_window)
6524 [!GLYPH_DEBUG]: Fix xassert.
6525
6526 * xfaces.c (x_free_gc) [!GLYPH_DEBUG]: Fix xassert.
6527
6528 * xfns.c (unwind_create_frame) [!GLYPH_DEBUG]: Fix xassert.
6529
6530 2005-02-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6531
6532 * mac.c: Use MAC_OS_X_VERSION_MAX_ALLOWED to conditionalize by
6533 the compiling OS version.
6534
6535 * macfns.c (x_create_tip_frame): Likewise.
6536
6537 * macterm.c (mac_draw_string_common, x_make_frame_visible): Likewise.
6538
6539 2005-02-03 Richard M. Stallman <rms@gnu.org>
6540
6541 * xterm.c (x_error_quitter): On GCC 3 and up, specify noinline.
6542
6543 * xdisp.c (echo_area_display): Clear echo_message_buffer.
6544
6545 * buffer.c (Fbury_buffer): Doc fix.
6546
6547 2005-02-02 Steven Tamm <steventamm@mac.com>
6548
6549 * macfns.c (unwind_create_frame): Fix compile error due to
6550 xassert being uncondition, but predicate is.
6551 * dispnew.c (update_window): Fix compile error due to
6552 xassert being uncondition, but predicate is.
6553
6554 2005-02-02 Miles Bader <miles@gnu.org>
6555
6556 * dispextern.h (xassert): Enable unconditionally.
6557
6558 2005-02-02 Kim F. Storm <storm@cua.dk>
6559
6560 * undo.c (Fprimitive_undo): Fix dummy apply undo entry.
6561
6562 2005-02-02 Kenichi Handa <handa@m17n.org>
6563
6564 * casefiddle.c (casify_object): Enable changing characters of
6565 different byte length.
6566 (casify_region): Fix loop condition, args to replace_range_2, and
6567 update opoint_byte.
6568
6569 * insdel.c (replace_range_2): Fix bugs in adjusting markers and point.
6570
6571 2005-02-01 Kim F. Storm <storm@cua.dk>
6572
6573 * xdisp.c (back_to_previous_visible_line_start): Reset iterator
6574 stack before calling handle_display_prop.
6575
6576 2005-01-31 Kim F. Storm <storm@cua.dk>
6577
6578 * undo.c (Qapply): New lisp var.
6579 (syms_of_undo): Intern and staticpro it.
6580 (Fprimitive_undo): Support formats (apply FUNNAME . ARGS) and
6581 (apply DELTA BEG END FUNNAME . ARGS) instead of (FUNNAME . ARGS).
6582
6583 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6584
6585 2005-01-30 Jesper Harder <harder@phys.au.dk>
6586
6587 * macterm.c (syms_of_macterm) <mac-reverse-ctrl-meta>
6588 <mac-emulate-three-button-mouse>: Fix docstring indentation.
6589
6590 2005-01-29 Luc Teirlinck <teirllm@auburn.edu>
6591
6592 * undo.c (syms_of_undo) <undo-outer-limit>: Doc update.
6593 Increase value to 3 Meg.
6594
6595 2005-01-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6596
6597 * xfns.c (show_hourglass): Use FRAME_X_WINDOW as parent for GTK,
6598 button events are not received otherwise.
6599
6600 2005-01-29 Richard M. Stallman <rms@gnu.org>
6601
6602 * buffer.c (syms_of_buffer) <buffer-undo-list>: Doc fix.
6603
6604 * undo.c (Fprimitive_undo): Handle (FUNNAME . ARGS) by calling FUNNAME.
6605
6606 2005-01-28 Stefan Monnier <monnier@iro.umontreal.ca>
6607
6608 * keymap.c (access_keymap): YAILOM.
6609
6610 2005-01-27 Kim F. Storm <storm@cua.dk>
6611
6612 * xdisp.c (get_phys_cursor_geometry): New function to calculate
6613 phys cursor position and size for hollow cursor. Position is
6614 aligned with get_glyph_string_clip_rect and ensures that a hollow
6615 cursor is shown, even when the actual glyph is not visible.
6616
6617 * dispextern.h (get_phys_cursor_geometry): Add prototype.
6618
6619 * xterm.c (x_clip_to_row): Ensure y >= 0.
6620 (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6621
6622 * w32term.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6623
6624 * macterm.c (x_draw_hollow_cursor): Use get_phys_cursor_geometry.
6625
6626 2005-01-27 Stefan Monnier <monnier@iro.umontreal.ca>
6627
6628 * xterm.c (x_error_quitter): Add a prototype. Make it static again.
6629
6630 2005-01-27 Kim F. Storm <storm@cua.dk>
6631
6632 * xdisp.c (get_glyph_string_clip_rect): Always show a cursor
6633 glyph, even when row is only partially visible and actual cursor
6634 position is not visible.
6635
6636 2005-01-24 Richard M. Stallman <rms@gnu.org>
6637
6638 * xterm.c (x_error_quitter): No longer static, and moved after
6639 x_error_handler.
6640
6641 2005-01-24 Kim F. Storm <storm@cua.dk>
6642
6643 * xdisp.c (move_it_by_lines): If we move forward after going too
6644 far back, cancel move if end position is same as start position.
6645
6646 2005-01-24 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6647
6648 * dispextern.h (struct glyph_string): New members clip_head and
6649 clip_tail.
6650
6651 * xdisp.c (get_glyph_string_clip_rect): Restrict horizontal clip
6652 region to the area between clip_head and clip_tail.
6653 (draw_glyphs): Record the area that need to be actually redrawn to
6654 the new variables clip_head and clip_tail when there are
6655 overhangs. Set values of these variables to the corresponding
6656 members in struct glyph_string. Refine x coordinates for
6657 notice_overwritten_cursor using clip_head and clip_tail.
6658
6659 * macgui.h (STORE_XCHARSETSTRUCT): New macro.
6660
6661 * macterm.c (mac_compute_glyph_string_overhangs): Implement with
6662 QDTextBounds.
6663 (x_draw_glyph_string): Don't fill the background of the successor
6664 of a glyph with a right overhang if the successor will draw a cursor.
6665 (XLoadQueryFont): Obtain font metrics using QDTextBounds.
6666 (x_redisplay_interface): Add entry for compute_glyph_string_overhangs.
6667
6668 2005-01-24 Kim F. Storm <storm@cua.dk>
6669
6670 * window.c (window_scroll_pixel_based): Fix scrolling in the wrong
6671 direction if window height was smaller than next-screen-context-lines.
6672 Now always scroll at least one line in the requested direction.
6673 Ensure that we actually do scroll backwards when requested to do so.
6674
6675 * xdisp.c (redisplay_window): Only try to make cursor line fully
6676 visible once (to avoid redisplay loop).
6677
6678 2005-01-23 Kim F. Storm <storm@cua.dk>
6679
6680 * window.c (Fpos_visible_in_window_p): Simplify return value for
6681 partially visible rows.
6682 (window_scroll_pixel_based): Adapt to that change.
6683
6684 * window.c (window_scroll_pixel_based): Force moving to next line
6685 if scrolling doesn't move start point, e.g. if looking at tall image.
6686
6687 * xdisp.c (pos_visible_p): Return 0 if non-interactive.
6688 Clear last_height before calling line_bottom_y to get real height.
6689 Fix calculation of y.
6690
6691 2005-01-22 Steven Tamm <steventamm@mac.com>
6692
6693 * s/darwin.h: Removed PTY_ITERATION from here.
6694 (DARWIN): Define.
6695
6696 * process.c (init_process): Default process-connection-type to
6697 nil on darwin 6 or less, t if it is 7 or higher. This way the
6698 broken pty behavior is still allowed on darwin 6 for interactive
6699 processes for people that know what they are doing.
6700
6701 2005-01-22 Kim F. Storm <storm@cua.dk>
6702
6703 * window.c (auto_window_vscroll_p): New boolean.
6704 (syms_of_window): DEFVAR_BOOL it.
6705 (Fpos_visible_in_window_p): Extend return value to include RTOP
6706 and RBOT values if FULLY is nil.
6707 (window_scroll_pixel_based): Adjust vscroll for partially visible
6708 rows if auto_window_vscroll_p is set.
6709 (Fset_window_vscroll): Do nothing if vscroll is not modified.
6710
6711 * xdisp.c (pos_visible_p): Replace FULLY arg by RTOP and RBOT args
6712 to return number of partially invisible pixels at top and bottom
6713 of the dislay row at POS.
6714
6715 * lisp.h (pos_visible_p): Fix prototype.
6716
6717 2005-01-21 Richard M. Stallman <rms@gnu.org>
6718
6719 * fileio.c (Fcopy_file): Doc fix.
6720
6721 2005-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6722
6723 * gtkutil.c (xg_tool_bar_detach_callback): Remove unused variable bw.
6724 (xg_get_file_name): Move declaration ofx_use_old_gtk_file_dialog to
6725 start of function for older compilers.
6726
6727 2005-01-20 Richard M. Stallman <rms@gnu.org>
6728
6729 * editfns.c (Fmessage): If arg is "", return "" (as before).
6730
6731 * keymap.c (access_keymap): Protect from bad value of meta_prefix_char.
6732
6733 * .gdbinit (xgetptr, xgetint, xgettype): Copy $arg0 into a temp
6734 variable.
6735
6736 2005-01-20 Steven Tamm <steventamm@mac.com>
6737
6738 * editfns.c (Voperating_system_release): Add.
6739 (init_editfns): Assign new variable operating-system-release
6740 based on call to uname if available.
6741 (get_operating_system_release): Add function to
6742 allow c-level access to operating system release.
6743
6744 * config.h: Regenerated.
6745
6746 * s/darwin.h (PTY_ITERATION): Don't allow PTYs on darwin 6 or less.
6747 (MIN_PTY_KERNEL_VERSION): Define minimum kernel version for
6748 using ptys as '7'.
6749
6750 2005-01-20 Kim F. Storm <storm@cua.dk>
6751
6752 * alloc.c (STRING_MARKED_P, VECTOR_MARKED_P): Return boolean.
6753
6754 * xterm.c (x_draw_glyph_string_box): Fix last_x for full width rows.
6755 Thanks to Chong Yidong <cyd@stupidchicken.com> for debugging this.
6756
6757 * macterm.c (x_draw_glyph_string_box): Likewise.
6758
6759 * w32term.c (x_draw_glyph_string_box): Likewise.
6760
6761 * indent.c (Fvertical_motion): Temporarily disable selective display.
6762
6763 2005-01-19 Kim F. Storm <storm@cua.dk>
6764
6765 * xdisp.c (note_mode_line_or_margin_highlight): Fix :pointer
6766 image property.
6767
6768 * fns.c (sweep_weak_table): Advance prev pointer when we keep a pair.
6769
6770 2005-01-18 Kim F. Storm <storm@cua.dk>
6771
6772 * xdisp.c (fast_find_position): Backtrack to find first row if
6773 charpos is inside a display overlay that spans multiple lines.
6774
6775 2005-01-18 Kenichi Handa <handa@m17n.org>
6776
6777 * coding.c (decode_coding_iso2022): Translate invalid codes if
6778 translation-table is specified.
6779
6780 2005-01-18 Kim F. Storm <storm@cua.dk>
6781
6782 * xdisp.c (back_to_previous_visible_line_start): Undo 2004-12-28
6783 change. If handle_display_prop indicates newline is replaced by
6784 image or text, move back to start of relevant overlay or interval
6785 and continue scan from there. Simplify.
6786
6787 2005-01-17 Kim F. Storm <storm@cua.dk>
6788
6789 * dispnew.c (mode_line_string, marginal_area_string):
6790 Fix off-by-one error in search for glyph.
6791
6792 2005-01-16 Kim F. Storm <storm@cua.dk>
6793
6794 * macterm.c (syms_of_macterm) <mac-allow-anti-aliasing>: Doc fix.
6795
6796 2005-01-16 Steven Tamm <steventamm@mac.com>
6797
6798 * macterm.c (mac_to_x_fontname): Remove spurious argument.
6799
6800 2005-01-16 Andreas Schwab <schwab@suse.de>
6801
6802 * macterm.c (mac_draw_string_common): Fix compilation on OSX 10.1.
6803
6804 2005-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6805
6806 * fringe.c (Fdefine_fringe_bitmap, init_fringe): When assigning
6807 fringe_faces, cast result from xmalloc/xrealloc to Lisp_Object *.
6808
6809 2005-01-16 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6810
6811 * keyboard.c (READABLE_EVENTS_DO_TIMERS_NOW)
6812 (READABLE_EVENTS_FILTER_EVENTS, READABLE_EVENTS_IGNORE_SQUEEZABLES):
6813 New flags for readable_events.
6814 (get_filtered_input_pending, readable_filtered_events): Remove.
6815 (tracking_off): Call readable_events and get_input_pending with
6816 flag READABLE_EVENTS_DO_TIMERS_NOW.
6817 (readable_events): Move code from old readable_filtered_events here,
6818 but check new READABLE_EVENTS_* in argument flags instead of previous
6819 two boolean arguments do_timers_now and filter_events.
6820 If we are doing mouse tracking and the mouse moved, return only if
6821 READABLE_EVENTS_IGNORE_SQUEEZABLES is not set in flags.
6822 (swallow_events): Call get_input_pending with flag
6823 READABLE_EVENTS_DO_TIMERS_NOW.
6824 (get_input_pending): Move code from old get_filtered_input_pending
6825 here. Replace boolean arguments do_timers_now, filter_events with
6826 flags, and pass flags to readable_events. Document new
6827 READABLE_EVENTS_* flags.
6828 (detect_input_pending_ignore_squeezables): New function.
6829 (detect_input_pending_run_timers): Call get_input_pending with flag
6830 READABLE_EVENTS_DO_TIMERS_NOW.
6831 (Finput_pending_p): Call get_input_pending with flags
6832 READABLE_EVENTS_DO_TIMERS_NOW and READABLE_EVENTS_FILTER_EVENTS.
6833
6834 * dispnew.c (update_window, update_frame_1): Replace calls to
6835 detect_input_pending with detect_input_pending_ignore_squeezables
6836 so that redisplay is not paused if the event queue contains only
6837 mouse movements.
6838
6839 * lisp.h: Declare detect_input_pending_ignore_squeezables.
6840
6841 2005-01-15 Steven Tamm <steventamm@mac.com>
6842
6843 * macterm.c (Vmac_use_core_graphics): Declare variable for
6844 mac-allow-anti-aliasing.
6845 (syms_of_macterm): DEFVAR_LISP and initialize it.
6846 (mac_draw_string_common): Use core graphics text rendering if
6847 mac-allow-anti-aliasing is enabled.
6848
6849 * macfns.c (Fx_file_dialog): Save As dialog includes only the
6850 file name in the text box.
6851
6852 2005-01-15 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6853
6854 * macfns.c (x_set_foreground_color, x_set_background_color):
6855 Sync with xfns.c.
6856 (mac_window, x_create_tip_frame): Use XSetWindowBackground.
6857 * macterm.c (XSetBackground, XSetWindowBackground): New functions.
6858 * macterm.h (XSetBackground, XSetWindowBackground): Add externs.
6859
6860 2005-01-14 Kim F. Storm <storm@cua.dk>
6861
6862 * keyboard.c (Fposn_at_x_y): Add optional arg WHOLE.
6863
6864 2005-01-13 Richard M. Stallman <rms@gnu.org>
6865
6866 * keymap.c (Fcurrent_active_maps): Ignore Voverriding_local_map
6867 if Voverriding_terminal_local_map is non-nil.
6868
6869 * keyboard.c (syms_of_keyboard): Doc fix.
6870
6871 2005-01-13 Kim F. Storm <storm@cua.dk>
6872
6873 * xdisp.c (Fformat_mode_line): Fix last change. Remove NO_PROPS arg
6874 (specify 0 for FACE instead). Reorder arg list. Doc fix.
6875
6876 2005-01-12 Richard M. Stallman <rms@gnu.org>
6877
6878 * xdisp.c (Fformat_mode_line): New arg FACE specifies a default
6879 face property for characters that don't specify one.
6880
6881 * fns.c (Frequire): Record in load-history unconditionally.
6882
6883 2005-01-10 Kim F. Storm <storm@cua.dk>
6884
6885 * dispextern.h (merge_faces): Rename from merge_into_realized_face.
6886
6887 * xfaces.c (merge_faces): Rename from merge_into_realized_face.
6888 Callers changed.
6889 Add support to merge with lisp face id too (if face_name is t).
6890
6891 * xdisp.c (get_next_display_element, next_element_from_display_vector):
6892 Don't lookup lface_id from display table glyphs here; instead use
6893 merge_faces to merge the lisp face id into current face.
6894
6895 2005-01-09 Kim F. Storm <storm@cua.dk>
6896
6897 * dispextern.h (struct it): New member dpvec_face_id.
6898 (merge_into_realized_face): Add prototype.
6899
6900 * xfaces.c (merge_into_realized_face): New function. Used to
6901 merge escape-glyph face or face from display table into current face.
6902
6903 * xdisp.c (Vshow_nonbreak_escape): New lisp var.
6904 (syms_of_xdisp): DEFVAR_LISP it.
6905 (escape_glyph_face): Remove var.
6906 (redisplay_window): Don't initialize it.
6907 (setup_for_ellipsis, get_next_display_element):
6908 Set it->dpvec_face_id to -1.
6909 (get_next_display_element): Test Vshow_nonbreak_escape.
6910 Do not setup escape_glyph_face.
6911 Properly merge escape-glyph face or face from display table with
6912 current face for escape and control characters.
6913 Set it->dpvec_face_id to relevant face id instead of adding it to each
6914 element of display vector.
6915 (next_element_from_display_vector): If it->dpvec_face_id is set,
6916 use that instead of lface_id from glyph itself.
6917
6918 2005-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6919
6920 * xterm.h (struct x_output): New member, toolbar_detached.
6921
6922 * gtkutil.c (xg_create_frame_widgets): Set initial tool bar height to
6923 38.
6924 (xg_tool_bar_detach_callback): Set toolbar_detached to 1.
6925 (xg_tool_bar_attach_callback): Set toolbar_detached to 0.
6926 (xg_create_tool_bar): Initialize toolbar_detached.
6927 (update_frame_tool_bar): Only set FRAME_TOOLBAR_HEIGHT (f) if
6928 toolbar_detached is zero.
6929
6930 2005-01-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
6931
6932 * xmenu.c (create_and_show_popup_menu): Pass zero as button to
6933 gtk_menu_popup if not for_click, so callbacks for the menu are called.
6934
6935 * gtkutil.c (xg_gtk_scroll_destroy, xg_create_scroll_bar)
6936 (xg_tool_bar_callback, xg_tool_bar_help_callback)
6937 (update_frame_tool_bar): Cast to EMACS_INT to avoid compiler warning.
6938
6939 * xselect.c (x_get_foreign_selection, x_fill_property_data)
6940 (Fx_get_atom_name, Fx_send_client_event): Replace XFLOAT with
6941 XFLOAT_DATA to get extract number from Lisp object.
6942
6943 2005-01-07 Kim F. Storm <storm@cua.dk>
6944
6945 * xdisp.c (set_iterator_to_next): Fix 2004-12-13 change.
6946 Set stop_charpos to current charpos instead of 0.
6947
6948 2005-01-06 Nick Roberts <nickrob@snap.net.nz>
6949
6950 * xdisp.c (Fformat_mode_line): First arg now required.
6951
6952 2005-01-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6953
6954 * macterm.c (XLoadQueryFont): Correctly handle 0 size
6955 font widths that are returned from some Japanese fonts.
6956
6957 2005-01-06 Kim F. Storm <storm@cua.dk>
6958
6959 * fringe.c (fringe_faces): Change to Lisp_Object pointer.
6960 (draw_fringe_bitmap_1): Lookup user defined fringe faces here.
6961 (destroy_fringe_bitmap): Set fringe_faces element to nil.
6962 (Fdefine_fringe_bitmap, init_fringe): Change allocation of
6963 fringe_faces array and init elements to nil.
6964 (Fset_fringe_bitmap_face): Set fringe_faces to face name instead of
6965 non-persistent face id.
6966 (mark_fringe_data): New function for GC.
6967
6968 * alloc.c (mark_fringe_data): Declare extern.
6969 (Fgarbage_collect): Call mark_fringe_data.
6970
6971 * alloc.c (overrun_check_free): Invalidate freed memory if
6972 XMALLOC_CLEAR_FREE_MEMORY is defined.
6973
6974 2005-01-05 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
6975
6976 * macfns.c: Include sys/param.h.
6977 [TARGET_API_MAC_CARBON] (mac_nav_event_callback): New declaration
6978 and function.
6979 [TARGET_API_MAC_CARBON] (Fx_file_dialog): Use MAXPATHLEN for size
6980 of filename string. Set event callback function when creating
6981 dialog boxes. Add code conversions for filenames. Don't dispose
6982 of apple event descriptor record if failed to create it.
6983
6984 * macterm.c: Include sys/param.h.
6985 [USE_CARBON_EVENTS] (mac_handle_window_event): Add handler for
6986 kEventWindowUpdate.
6987 (install_window_handler) [USE_CARBON_EVENTS]: Register it.
6988 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Get FSRef instead
6989 of FSSpec from apple event descriptor record.
6990 (do_ae_open_documents) [TARGET_API_MAC_CARBON]: Use MAXPATHLEN for
6991 size of filename string.
6992 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Likewise.
6993 [TARGET_API_MAC_CARBON] (mac_do_receive_drag): Return error when a
6994 file dialog is in action.
6995 [TARGET_API_MAC_CARBON] (mac_do_track_drag): Likewise.
6996 Reject only when there are no filename items. Set background color
6997 before (un)highlighting the window below the dragged items.
6998 (XTread_socket) [USE_CARBON_EVENTS]: Don't call do_window_update.
6999
7000 2005-01-05 Romain Francoise <romain@orebokech.com>
7001
7002 * term.c (encode_terminal_code): Fix buffer size computation.
7003
7004 2005-01-04 Richard M. Stallman <rms@gnu.org>
7005
7006 * xdisp.c (Fformat_mode_line): Doc fix.
7007
7008 2005-01-04 Stefan Monnier <monnier@iro.umontreal.ca>
7009
7010 * alloc.c (refill_memory_reserve): Move.
7011 (emacs_blocked_free, emacs_blocked_malloc, emacs_blocked_realloc)
7012 (reset_malloc_hooks, uninterrupt_malloc) [SYNC_INPUT]: Don't define.
7013
7014 2005-01-03 Richard M. Stallman <rms@gnu.org>
7015
7016 * window.c (window_scroll_pixel_based): Don't correct preserve_y
7017 for CURRENT_HEADER_LINE_HEIGHT when moving backwards.
7018
7019 2005-01-03 Jason Rumney <jasonr@gnu.org>
7020
7021 * w32bdf.c (w32_load_bdf_font): Set fontp->average_width and
7022 fontp->space_width to FONT_WIDTH so they are valid.
7023
7024 * w32fns.c (w32_load_system_font): Set FONT_WIDTH to maximum, not
7025 average width. Set fontp->average_width and fontp->space_width to
7026 their appropriate values.
7027
7028 * w32term.c (x_new_font): Set FRAME_COLUMN_WIDTH to
7029 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
7030 fontp->space_width.
7031
7032 2005-01-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7033
7034 * macterm.c (x_new_font): Set FRAME_SPACE_WIDTH.
7035 (x_font_min_bounds, XLoadQueryFont): Use the correct font width
7036 metrics for max and min bounds.
7037 (x_load_font): Correctly calculate average font width metrics.
7038
7039 2005-01-02 Richard M. Stallman <rms@gnu.org>
7040
7041 * alloc.c (Fgarbage_collect): Don't truncate_undo_list on dead buffers.
7042
7043 2004-12-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7044
7045 * xterm.c (handle_one_xevent): Clear area in expose event for GTK.
7046
7047 2004-12-31 Richard M. Stallman <rms@gnu.org>
7048
7049 * xdisp.c (setup_for_ellipsis, get_next_display_element):
7050 Set it->ellipsis_p to 1 or 0.
7051 (display_line): Record whether row ends in mid-ellipsis.
7052 (set_cursor_from_row): If ends in ellipsis, find start of it.
7053 (cursor_row_p): If PT's at the end of the ellipsis the row
7054 ends within, don't display cursor on this row.
7055
7056 * dispextern.h (struct it): New element ellipsis_p.
7057 (struct glyph_row): New element ends_in_ellipsis_p.
7058
7059 * xdisp.c (BUFFER_POS_REACHED_P): We haven't reached the specified
7060 position if we're reading from something other than the buffer.
7061
7062 * window.c (window_scroll_pixel_based): Only look at
7063 Vscroll_preserve_screen_position if the old PT can't be kept.
7064 (syms_of_window) <scroll-preserve-screen-position>: Doc fix.
7065
7066 2004-12-30 Kim F. Storm <storm@cua.dk>
7067
7068 * xdisp.c (get_line_height_property): New function extracted from
7069 original calc_line_height_property.
7070 (calc_line_height_property): Rework. Handle t and (nil . ratio).
7071 (x_produce_glyphs): Use them to handle line-height and
7072 line-spacing according to new height spec.
7073 (Qtotal): Remove.
7074 (syms_of_xdisp): Remove intern and staticpro for Qtotal.
7075
7076 2004-12-30 Kenichi Handa <handa@m17n.org>
7077
7078 * fileio.c (Finsert_file_contents): Don't use
7079 current_buffer->buffer_file_coding_system even if REPLACE is
7080 non-nil. Call Qafter_insert_file_set_coding with the second arg VISIT.
7081
7082 * fontset.h (struct font_info): New members space_width and
7083 average_width.
7084
7085 * frame.h (struct frame): New member space_width.
7086 (FRAME_SPACE_WIDTH): New macro.
7087
7088 * xterm.h (struct x_display_info): New member Xatom_AVERAGE_WIDTH.
7089
7090 * xterm.c (x_new_font): Set FRAME_COLUMN_WIDTH to
7091 fontp->average_width, not FONT_WIDTH. Set FRAME_SPACE_WIDTH to
7092 fontp->space_width.
7093 (x_load_font): Calculate fontp->space_width and fontp->average_width.
7094 (x_term_init): Initialize dpyinfo->Xatom_AVERAGE_WIDTH.
7095
7096 * xdisp.c (x_produce_glyphs): Calculate tab width by
7097 FRAME_SPACE_WIDTH, not FRAME_COLUMN_WIDTH.
7098
7099 2004-12-29 Sanghyuk Suh <han9kin@mac.com>
7100
7101 * macterm.c (SelectionRange): Add Xcode position apple event struct.
7102 (do_ae_open_documents): Handle Xcode-style file position open events.
7103
7104 2004-12-29 Luc Teirlinck <teirllm@auburn.edu>
7105
7106 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Correct typo.
7107
7108 2004-12-29 Richard M. Stallman <rms@gnu.org>
7109
7110 * buffer.c (syms_of_buffer) <vertical-scroll-bar>: Doc fix.
7111
7112 2004-12-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7113
7114 * macfns.c (install_window_handler): Modify extern to return OSErr
7115 value.
7116 (mac_window): Handle return value of install_window_handler.
7117
7118 * macterm.c (reflect_byte): Remove function.
7119 (mac_create_bitmap_from_bitmap_data): Don't call reflect_byte.
7120 Lookup table instead.
7121 (mac_do_font_lists): Simplify calculation of the longest
7122 nonspecial string.
7123 (init_mac_drag_n_drop): Remove function and declaration.
7124 (mac_initialize) [TARGET_API_MAC_CARBON]: Don't call
7125 init_mac_drag_n_drop.
7126 (mac_do_track_drag): New function and declaration.
7127 (install_window_handler): Return OSErr value.
7128 (install_window_handler) [TARGET_API_MAC_CARBON]:
7129 Register handlers for tracking/receiving drag-and-drop items.
7130 (do_ae_open_documents): Generate unibyte strings for filenames.
7131 (mac_do_receive_drag) [TARGET_API_MAC_CARBON] : Likewise.
7132 Reject only non-filename items. Set event modifiers, and return value.
7133
7134 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
7135
7136 * coding.c (decode_coding): Fix previous change.
7137
7138 2004-12-28 Richard M. Stallman <rms@gnu.org>
7139
7140 * xdisp.c (back_to_previous_visible_line_start):
7141 Don't call handle_display_prop.
7142
7143 2004-12-28 Dan Nicolaescu <dann@ics.uci.edu>
7144
7145 * coding.c (decode_coding_XXX, decode_composition_emacs_mule)
7146 (decode_coding_emacs_mule, encode_coding_emacs_mule)
7147 (decode_coding_iso2022, encode_designation_at_bol)
7148 (encode_coding_iso2022, decode_coding_sjis_big5, decode_eol)
7149 (decode_coding): Constify arguments and local vars.
7150
7151 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7152
7153 * xmenu.c (popup_get_selection): Only pop down dialogs
7154 on C-g and Escape.
7155 (popup_get_selection): Remove parameter down_on_keypress.
7156 (create_and_show_popup_menu, create_and_show_dialog):
7157 Remove parameter down_on_keypress to popup_get_selection.
7158
7159 2004-12-27 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7160
7161 * dispextern.h: Change HAVE_CARBON to MAC_OS.
7162 (struct glyph_string): Likewise.
7163
7164 * emacs.c (main) [MAC_OS8]: Call mac_term_init instead of
7165 mac_initialize.
7166
7167 * fileio.c (Fnext_read_file_uses_dialog_p, Fread_file_name):
7168 Change TARGET_API_MAC_CARBON to HAVE_CARBON.
7169
7170 * fns.c (vector): Change MAC_OSX to MAC_OS.
7171
7172 * frame.c (x_set_frame_parameters, x_report_frame_params)
7173 (x_set_fullscreen): Remove #ifndef HAVE_CARBON.
7174 (x_set_border_width, Vdefault_frame_scroll_bars):
7175 Change HAVE_CARBON to MAC_OS.
7176
7177 * image.c [MAC_OS]: Include sys/stat.h.
7178 [MAC_OS && !MAC_OSX]: Include sys/param.h, ImageCompression.h, and
7179 QuickTimeComponents.h.
7180
7181 * mac.c [!MAC_OSX] (mac_wait_next_event): Add extern.
7182 [!MAC_OSX] (select): Use mac_wait_next_event.
7183 [!MAC_OSX] (run_mac_command): Change EXEC_SUFFIXES to Vexec_suffixes.
7184 [!MAC_OSX] (select, run_mac_command): Change `#ifdef
7185 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
7186 (mac_clear_font_name_table): Add extern.
7187 (Fmac_clear_font_name_table): New defun.
7188 (syms_of_mac): Defsubr it.
7189 [MAC_OSX] (SELECT_POLLING_PERIOD_USEC): New define.
7190 [MAC_OSX] (select_and_poll_event): New function.
7191 [MAC_OSX] (sys_select): Use it.
7192 [MAC_OSX && SELECT_USE_CFSOCKET] (socket_callback): New function.
7193 [MAC_OSX && SELECT_USE_CFSOCKET]
7194 (SELECT_TIMEOUT_THRESHOLD_RUNLOOP, EVENT_CLASS_SOCK): New defines.
7195 [MAC_OSX] (sys_select) [SELECT_USE_CFSOCKET]: Use CFSocket and
7196 RunLoop for simultaneously monitoring two kinds of inputs, window
7197 events and process outputs, without periodically polling.
7198
7199 * macfns.c (mac_initialized): Remove extern.
7200 (stricmp): Put in #if 0. All callers changed to use xstricmp in
7201 xfaces.c.
7202 (strnicmp): Decrement `n' at the end of each loop, not the beginning.
7203 (check_mac): Use the term "Mac native windows" instead of "Mac OS".
7204 (check_x_display_info, x_display_info_for_name): Sync with xfns.c.
7205 (mac_get_rdb_resource): New function (from w32reg.c).
7206 (x_get_string_resource): Use it.
7207 (install_window_handler): Add extern.
7208 (mac_window): New function.
7209 (Fx_create_frame): Use it instead of make_mac_frame.
7210 Set parameter for Qfullscreen. Call x_wm_set_size_hint.
7211 (Fx_open_connection, Fx_close_connection): New defuns.
7212 (syms_of_macfns): Defsubr them.
7213 (x_create_tip_frame) [TARGET_API_MAC_CARBON]:
7214 Add kWindowNoUpdatesAttribute to the window attribute.
7215 (x_create_tip_frame) [!TARGET_API_MAC_CARBON]: Use NewCWindow.
7216 (x_create_tip_frame): Don't call ShowWindow.
7217 (Fx_show_tip): Call ShowWindow.
7218 (Fx_file_dialog): Change `#ifdef TARGET_API_MAC_CARBON' to `#if
7219 TARGET_API_MAC_CARBON'.
7220 (mac_frame_parm_handlers): Set handlers for Qfullscreen.
7221 (syms_of_macfns) [MAC_OSX]: Initialize mac_in_use to 0.
7222
7223 * macgui.h [!MAC_OSX]: Don't include Controls.h. Include Windows.h.
7224 (Window): Typedef to WindowPtr and move outside `#if
7225 TARGET_API_MAC_CARBON'.
7226 (XSizeHints): New struct.
7227
7228 * macterm.c (x_update_begin, x_update_end)
7229 [TARGET_API_MAC_CARBON]: Disable screen updates during update of a
7230 frame.
7231 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
7232 [MAC_OS8]: Use XDrawImageString/XDrawImageString16.
7233 (construct_mouse_click): Put in #if 0.
7234 (x_check_fullscreen, x_check_fullscreen_move): Remove decls.
7235 (x_scroll_bar_create, x_scroll_bar_handle_click): Change `#ifdef
7236 TARGET_API_MAC_CARBON' to `#if TARGET_API_MAC_CARBON'.
7237 (activate_scroll_bars, deactivate_scroll_bars)
7238 [!TARGET_API_MAC_CARBON]: Use ActivateControl/DeactivateControl.
7239 (x_make_frame_visible) [TARGET_API_MAC_CARBON]: Reposition window
7240 if the position is neither user-specified nor program-specified.
7241 (x_free_frame_resources): Free size_hints.
7242 (x_wm_set_size_hint): Allocate size_hints if needed. Set size_hints.
7243 (mac_clear_font_name_table): New function.
7244 (mac_do_list_fonts): Initialize font_name_table if needed.
7245 (x_list_fonts): Don't initialize font_name_table. Add BLOCK_INPUT
7246 around mac_do_list_fonts.
7247 (mac_unload_font): New function.
7248 (x_load_font): Add BLOCK_INPUT around XLoadQueryFont.
7249 (init_mac_drag_n_drop, mac_do_receive_drag): Enclose declarations
7250 and definitions with #if TARGET_API_MAC_CARBON.
7251 [USE_CARBON_EVENTS] (mac_handle_window_event): Add decl.
7252 (install_window_handler): Add decl.
7253 (do_window_update): Add BeginUpdate/EndUpdate for the tooltip
7254 window. Use UpdateControls. Get the rectangle that should be
7255 updated and restrict the target of expose_frame to it.
7256 (do_grow_window): Set minimum height/width according to size_hints.
7257 (do_grow_window) [TARGET_API_MAC_CARBON]: Use ResizeWindow.
7258 (do_zoom_window): Don't use x_set_window_size.
7259 [USE_CARBON_EVENTS] (mac_handle_window_event): New function.
7260 (install_window_handler): New function.
7261 [!USE_CARBON_EVENTS] (mouse_region): New variable.
7262 [!USE_CARBON_EVENTS] (mac_wait_next_event): New function.
7263 (XTread_socket) [USE_CARBON_EVENTS]: Move call to
7264 GetEventDispatcherTarget inside BLOCK_INPUT.
7265 (XTread_socket) [!USE_CARBON_EVENTS]: Use mac_wait_next_event.
7266 Update mouse_region when mouse is moved.
7267 (make_mac_frame): Remove.
7268 (make_mac_terminal_frame): Put in #ifdef MAC_OS8.
7269 Initialize mouse pointer shapes. Change values of f->left_pos and
7270 f->top_pos. Don't use make_mac_frame. Use NewCWindow.
7271 Don't call ShowWindow.
7272 (mac_initialize_display_info) [MAC_OSX]: Create mac_id_name from
7273 Vinvocation_name and Vsystem_name.
7274 (mac_make_rdb): New function (from w32term.c).
7275 (mac_term_init): Use it. Add BLOCK_INPUT. Error if display has
7276 already been opened. Don't pass argument to
7277 mac_initialize_display_info. Don't set dpyinfo->height/width.
7278 Add entries to x_display_list and x_display_name_list.
7279 (x_delete_display): New function.
7280 (mac_initialize): Don't call mac_initialize_display_info.
7281 (syms_of_macterm) [!MAC_OSX]: Don't call Fprovide.
7282
7283 * macterm.h (check_mac): Add extern.
7284 (struct mac_output): New member size_hints.
7285 (FRAME_SIZE_HINTS): New macro.
7286 (mac_unload_font): Add extern.
7287
7288 * xdisp.c (expose_window, expose_frame): Remove kludges for Mac.
7289
7290 * xfaces.c (clear_font_table) [MAC_OS]: Call mac_unload_font.
7291
7292 2004-12-27 Richard M. Stallman <rms@gnu.org>
7293
7294 * buffer.c (Fbuffer_disable_undo): Delete (move to simple.el).
7295 (syms_of_buffer): Don't defsubr it.
7296
7297 * process.c (list_processes_1): Set undo_list instead
7298 of calling Fbuffer_disable_undo.
7299
7300 * xdisp.c (single_display_spec_string_p): Rename from
7301 single_display_prop_string_p.
7302 (single_display_spec_intangible_p): Rename from
7303 single_display_prop_intangible_p.
7304 (handle_single_display_spec): Rename from handle_single_display_prop.
7305 Rewritten to be easier to understand.
7306
7307 Change in load-history format. Functions now get (defun . NAME),
7308 and variables get just NAME.
7309
7310 * data.c (Fdefalias): Use (defun . FN_NAME) in LOADHIST_ATTACH.
7311
7312 * eval.c (Fdefun, Fdefmacro): Use (defun . FN_NAME) in LOADHIST_ATTACH.
7313 (Fdefvaralias, Fdefvar, Fdefconst): Use just SYM in LOADHIST_ATTACH.
7314 (Qdefvar): Var deleted.
7315 (syms_of_eval): Don't initialze it.
7316
7317 * lread.c (syms_of_lread) <load-history>: Doc fix.
7318
7319 2004-12-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7320
7321 * xmenu.c (popup_get_selection): Pop down on C-g.
7322 (set_frame_menubar): Install translations for Lucid/Motif/Lesstif that
7323 pops down menu on C-g.
7324 (xdialog_show): If dialog popped down and no button in the dialog was
7325 pushed, call Fsignal to quit.
7326 (xmenu_show): In no toolkit version, if menu returns NO_SELECT call
7327 Fsignal to quit.
7328
7329 * xfns.c (Fx_file_dialog): Motif/Lesstif version: Pop down on C-g.
7330
7331 * gtkutil.c (xg_initialize): Install bindings for C-g so that
7332 dialogs and menus pop down.
7333
7334 2004-12-27 Kenichi Handa <handa@m17n.org>
7335
7336 * coding.c (code_convert_region): Fix calculation of `ratio'.
7337
7338 2004-12-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7339
7340 * gtkutil.c (update_frame_tool_bar): Make the value of
7341 tool-bar-button-margin control margins of images in tool bar.
7342
7343 * alloc.c (check_depth): New variable.
7344 (overrun_check_malloc, overrun_check_realloc): Only add
7345 overhead and write check pattern if check_depth is 1 (to handle
7346 recursive calls). Increase/decrease check_depth in entry/exit.
7347 (overrun_check_free): Only check for overhead if check_depth is 1.
7348 Increase/decrease check_depth in entry/exit.
7349
7350 2004-12-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7351
7352 * keyboard.c (input_available_signal): Call SIGNAL_THREAD_CHECK
7353 before touching input_available_clear_time, to avoid accessing it
7354 from multiple threads.
7355
7356 2004-12-23 Jason Rumney <jasonr@gnu.org>
7357
7358 * image.c (__WIN32__) [HAVE_NTGUI]: Define for correct behaviour
7359 of JPEG library.
7360
7361 2004-12-22 Richard M. Stallman <rms@gnu.org>
7362
7363 * emacs.c (main): If batch mode, set Vundo_outer_limit to nil.
7364
7365 * lisp.h (Vundo_outer_limit): Fix decl.
7366
7367 * undo.c (Vundo_outer_limit): Replaces undo_outer_limit.
7368 Uses changed.
7369 (syms_of_undo): Initialize appropriately.
7370 (truncate_undo_list): If it's nil, there's no limit.
7371
7372 2004-12-22 Kenichi Handa <handa@m17n.org>
7373
7374 * xselect.c (Fx_get_cut_buffer_internal): Return a unibyte string.
7375
7376 2004-12-21 Richard M. Stallman <rms@gnu.org>
7377
7378 * eval.c (unwind_to_catch): Clear immediate_quit.
7379
7380 * xdisp.c (get_next_display_element): Display codes 8a0 and 8ad
7381 specially as `\ ' and `\-'.
7382
7383 * keyboard.c (kbd_buffer_store_event_hold):
7384 In the code for while-no-input, handle immediate_quit.
7385
7386 * alloc.c (Fgarbage_collect): Update call to truncate_undo_list.
7387 Call that at the very start.
7388 (undo_limit, undo_strong_limit, undo_outer_limit): Move to undo.c.
7389 (syms_of_alloc): Don't define undo-limit,
7390 undo-strong-limit and undo-outer-limit here.
7391
7392 * undo.c (truncate_undo_list): Return void.
7393 Take just one argument, the buffer.
7394 Make it current, and inhibit recursive GC.
7395 Access and update the undo list directly; return void.
7396 Refer to the undo...limit variables directly.
7397 Test undo_outer_limit only after counting the whole current command.
7398 When it's exceeded, call the function in undo-outer-limit-function.
7399 (undo_limit, undo_strong_limit, undo_outer_limit): From alloc.c.
7400 (Vundo_outer_limit_function): New variable.
7401 (syms_of_undo): Define undo-limit, undo-strong-limit
7402 and undo-outer-limit here, and undo-outer-limit-function.
7403 Doc fixes.
7404
7405 * lisp.h (truncate_undo_list): Update decl.
7406
7407 2004-12-21 Piet van Oostrum <piet@cs.uu.nl>
7408
7409 * fileio.c (Fread_file_name): Delete duplicates in
7410 file-name-history when history_delete_duplicates is true.
7411
7412 2004-12-20 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7413
7414 * macterm.c (mac_do_list_fonts): Fix memory leak
7415
7416 2004-12-20 Richard M. Stallman <rms@gnu.org>
7417
7418 * regex.c (re_match_2_internal) <symend, wordend>:
7419 Fix calls to UPDATE_SYNTAX_TABLE_FORWARD.
7420
7421 2004-12-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7422
7423 * macterm.c (endif, x_font_name_to_mac_font_name):
7424 Use maccentraleurroman instead of maccentraleuropean
7425 (mac_c_string_match, mac_do_list_fonts): Speed up font search by
7426 quickly finding a specific font without needing regexps.
7427
7428 2004-12-15 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7429
7430 * syssignal.h: Declare main_thread.
7431 (SIGNAL_THREAD_CHECK): New macro.
7432
7433 * keyboard.c (input_available_signal): Move thread checking code
7434 to macro SIGNAL_THREAD_CHECK and call that macro.
7435 (interrupt_signal): Call SIGNAL_THREAD_CHECK.
7436
7437 * alloc.c (uninterrupt_malloc): Move main_thread to emacs.c.
7438
7439 * emacs.c: Define main_thread.
7440 (main): Initialize main_thread.
7441 (handle_USR1_signal, handle_USR2_signal, fatal_error_signal)
7442 (memory_warning_signal): Call SIGNAL_THREAD_CHECK.
7443
7444 * floatfns.c (float_error): Call SIGNAL_THREAD_CHECK.
7445
7446 * dispnew.c (window_change_signal): Call SIGNAL_THREAD_CHECK.
7447
7448 * sysdep.c (select_alarm): Call SIGNAL_THREAD_CHECK.
7449
7450 * process.c (send_process_trap, sigchld_handler):
7451 Call SIGNAL_THREAD_CHECK.
7452
7453 * data.c (arith_error): Call SIGNAL_THREAD_CHECK.
7454
7455 * atimer.c (alarm_signal_handler): Call SIGNAL_THREAD_CHECK.
7456
7457 * xterm.c (xg_scroll_callback): Update XG_LAST_SB_DATA before
7458 returning when xg_ignore_gtk_scrollbar is true.
7459
7460 2004-12-14 Kim F. Storm <storm@cua.dk>
7461
7462 * keyboard.c (read_char): Save and restore echo_string when
7463 handling input method.
7464
7465 2004-12-13 Richard M. Stallman <rms@gnu.org>
7466
7467 * eval.c (syms_of_eval) <quit-flag>: Doc fix.
7468
7469 * keyboard.c (Vthrow_on_input): New variable.
7470 (syms_of_keyboard): Defvar and initialize it.
7471 (kbd_buffer_store_event_hold): Handle Vthrow_on_input.
7472
7473 * lisp.h (QUIT): Check for Vthrow_on_input.
7474 (Vthrow_on_input): Declare it.
7475
7476 2004-12-13 Kim F. Storm <storm@cua.dk>
7477
7478 * xdisp.c (set_iterator_to_next): Reset stop_charpos after display
7479 vector.
7480
7481 2004-12-12 Richard M. Stallman <rms@gnu.org>
7482
7483 * indent.c (Fvertical_motion): Call move_it_by_lines even if LINES = 0.
7484
7485 * minibuf.c (Fall_completions): Add var `zero' and use it in loop.
7486 (Ftry_completion): Really use outer `zero'; eliminate inner one.
7487
7488 2004-12-12 Kenichi Handa <handa@m17n.org>
7489
7490 * term.c (encode_terminal_code): Fix previous change.
7491
7492 2004-12-11 Stefan Monnier <monnier@iro.umontreal.ca>
7493
7494 * keyboard.c (handle_async_input): Remove pthread mutex handling.
7495 (input_available_signal): Move pthread thingy to !SYNC_INPUT branch.
7496
7497 * syntax.c (Fforward_word): Avoid non-idempotent side-effects
7498 in macro arguments.
7499
7500 * minibuf.c (Ftry_completion, Fall_completions): Don't use
7501 XFASTINT blindly.
7502
7503 * emacs.c (main, Fdump_emacs): Don't touch malloc hooks if SYNC_INPUT.
7504
7505 2004-12-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7506
7507 * w32term.c (x_calc_absolute_position): Remove calculation of
7508 difference between inner and outer window. Don't subtract difference
7509 for left and top calculations.
7510
7511 * xterm.c (x_calc_absolute_position): Don't subtract outer_pixel_diff
7512 for left and top calculations. Remove call to x_real_positions.
7513 [Bug report by Drew Adams in November]
7514 (x_check_expected_move): Do not set change_gravity to 1 when calling
7515 x_set_offset.
7516
7517 2004-12-08 Richard M. Stallman <rms@gnu.org>
7518
7519 * xdisp.c (get_next_display_element): Use `escape-glyph' for
7520 control chars and escaped octal codes.
7521 (Qescape_glyph): New variable.
7522 (syms_of_xdisp): Initialize it.
7523 (escape_glyph_face): New variable.
7524 (redisplay_window): Initialize it.
7525
7526 2004-12-07 Paul Eggert <eggert@cs.ucla.edu>
7527
7528 * image.c (our_fill_input_buffer, jpeg_load, CHECK_LIB_AVAILABLE)
7529 (init_image): Use 1 rather than TRUE. TRUE's not always defined.
7530
7531 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7532
7533 * emacs.c (Fdump_emacs): Add ! defined (SYSTEM_MALLOC) around
7534 reset_malloc_hooks.
7535
7536 * keyboard.c (handle_async_input, input_available_signal):
7537 Add ! defined (SYSTEM_MALLOC) around thread code.
7538
7539 * alloc.c: Add comment about the reason for (UN)BLOCK_INPUT_ALLOC.
7540
7541 2004-12-07 Stefan Monnier <monnier@iro.umontreal.ca>
7542
7543 * eval.c (init_eval_once): Increase max_specpdl_size to 1000.
7544
7545 * config.in: Regenerate.
7546
7547 2004-12-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7548
7549 * xmenu.c (Fx_popup_menu): Correct documentation about position.
7550 (xmenu_show): Do not call XTranslateCoordinates. Adjust position
7551 if not given by a mouse click to correspond with x-popup-menu
7552 documentation.
7553
7554 * config.in: Regenerate.
7555
7556 * gtkutil.c: Include signal.h and syssignal.h.
7557 (xg_get_file_name): Block and unblock __SIGRTMIN if defined.
7558
7559 * alloc.c: If HAVE_GTK_AND_PTHREAD, include pthread.h,
7560 new variables main_thread and alloc_mutex,
7561 define (UN)BLOCK_INPUT_ALLOC to use alloc_mutex to protect
7562 emacs_blocked_* calls and only do (UN)BLOCK_INPUT in the main thread.
7563 If not HAVE_GTK_AND_PTHREAD, (UN)BLOCK_INPUT_ALLOC is the same as
7564 (UN)BLOCK_INPUT.
7565 (emacs_blocked_free, emacs_blocked_malloc)
7566 (emacs_blocked_realloc): Use (UN)BLOCK_INPUT_ALLOC.
7567 (uninterrupt_malloc): Initialize main_thread and alloc_mutex.
7568 (reset_malloc_hooks): New function.
7569
7570 * lisp.h: Declare reset_malloc_hooks.
7571
7572 * emacs.c (Fdump_emacs): Call reset_malloc_hooks.
7573
7574 * keyboard.c: Conditionally include pthread.h
7575 (handle_async_input, input_available_signalt): If not in the main
7576 thread, block signal, send signal to main thread and return.
7577
7578 * gtkutil.c (xg_get_file_with_chooser): Handle local files only.
7579 Set current folder in file chooser if default_filename is a directory.
7580
7581 2004-12-05 Stefan Monnier <monnier@iro.umontreal.ca>
7582
7583 * regex.c (GET_UNSIGNED_NUMBER): Signal an error when reaching the end.
7584 Remove redundant correctness checks.
7585 (regex_compile): Fix up error codes for \{..\} expressions.
7586
7587 2004-12-05 Richard M. Stallman <rms@gnu.org>
7588
7589 * regex.c (regex_compile): Fix end-of-pattern case for space.
7590
7591 2004-12-03 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7592
7593 * macterm.h (cfstring_create_with_utf8_cstring): Add prototype.
7594 * mac.c (cfstring_create_with_utf8_cstring): Add to prevent
7595 crashes with invalid characters.
7596 * macmenu.c (add_menu_item): Use it.
7597 * image.c (image_load_quartz2d): Likewise.
7598 * macfns.c (x_set_name, x_set_title): Likewise.
7599 (Fx_file_dialog): Likewise. Use constant CFRefs instead of
7600 creating them each time for labels.
7601
7602 2004-12-02 Richard M. Stallman <rms@gnu.org>
7603
7604 * config.in (RE_TRANSLATE_P): If make_number is not a macro,
7605 don't use it here.
7606
7607 * eval.c (Fcalled_interactively_p): Don't check INTERACTIVE.
7608 (interactive_p): Skip Scalled_interactively_p frames
7609 like Sinteractive_p frames.
7610 (unwind_to_catch): Clear handling_signal.
7611
7612 * data.c (Fmake_variable_buffer_local): Doc fix.
7613 (Fmake_local_variable): Doc fix.
7614
7615 * insdel.c (insert_from_string_before_markers)
7616 (insert_from_string): Don't modify buffer on empty insertion.
7617
7618 * window.c (Fget_lru_window, Fget_largest_window): Doc fixes.
7619
7620 2004-12-01 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7621
7622 * macmenu.c (add_menu_item): Fallback on MacRoman if encoding
7623 menu text as UTF8 fails.
7624
7625 2004-12-01 Kim F. Storm <storm@cua.dk>
7626
7627 * alloc.c: Add commentary for last change.
7628 (XMALLOC_PUT_SIZE, XMALLOC_GET_SIZE): New macros to handle
7629 sizeof(size_t) != 4.
7630 (overrun_check_malloc, overrun_check_realloc, overrun_check_free):
7631 Use them. Also clear header and trailer of freed memory.
7632 (GC_STRING_OVERRUN_COOKIE_SIZE): Rename from GC_STRING_EXTRA.
7633 (string_overrun_cookie): Rename from string_overrun_pattern.
7634 (GC_STRING_EXTRA): Define from GC_STRING_OVERRUN_COOKIE_SIZE.
7635
7636 2004-12-01 Andreas Schwab <schwab@suse.de>
7637
7638 * lisp.h: Declare string_to_multibyte.
7639
7640 2004-12-01 Kenichi Handa <handa@m17n.org>
7641
7642 * w32console.c (w32con_write_glyphs): Decide coding here.
7643 Adjusted for the change of encode_terminal_code.
7644
7645 * term.c (encode_terminal_code): Don't make it "static".
7646
7647 2004-11-30 Kenichi Handa <handa@m17n.org>
7648
7649 * term.c (encode_terminal_buf, encode_terminal_bufsize): New variables.
7650 (encode_terminal_code): Argument changed. Encode all
7651 characters at once, and return a pointer to the result of encoding.
7652 (write_glyphs): Decide coding here. Adjusted for the above change.
7653 (insert_glyphs): Likewise.
7654 (term_init): Initialize encode_terminal_bufsize to 0.
7655
7656 * coding.c (Vcode_conversion_workbuf_name): New variable.
7657 (syms_of_coding): Initialize and staticpro it.
7658 (set_conversion_work_buffer): New function.
7659 (run_pre_post_conversion_on_str): Use it.
7660 (run_pre_write_conversin_on_c_str): New function.
7661
7662 * coding.h (run_pre_write_conversin_on_c_str): Extern it.
7663
7664 2004-11-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
7665
7666 * keyboard.c: Don't undef SIGIO
7667 * s/darwin.h (NO_SOCK_SIGIO): Define NO_SOCK_SIGIO on carbon
7668 * Makefile.in (mac.o): Depend on blockinput.h and atimer.h.
7669 (macfns.o): Don't depend on ccl.h.
7670 * macfns.c (mac_frame_parm_handlers): Set handlers for
7671 Qleft_fringe and Qright_fringe.
7672 * macterm.c (mac_fill_rectangle_to_pixmap)
7673 (mac_draw_rectangle_to_pixmap, mac_copy_area_to_pixmap)
7674 (mac_copy_area_with_mask_to_pixmap, x_draw_image_foreground_1):
7675 Put in #if 0.
7676 (mac_scroll_area) [TARGET_API_MAC_CARBON]: Use ScrollWindowRect.
7677 (x_flush) [TARGET_API_MAC_CARBON]: Don't traverse frames.
7678 (XFlush) [TARGET_API_MAC_CARBON]: Define to an empty replacement.
7679 (x_draw_glyph_string_background, x_draw_glyph_string_foreground)
7680 [!MAC_OS8]: Added ifdef'd out code for os8. Don't use
7681 XDrawImageString. Always draw background and foreground separately.
7682 (x_draw_image_foreground): Use clipping instead of computing the
7683 intersection rectangle.
7684 (x_draw_image_glyph_string): Don't draw an image with mask to a
7685 pixmap.
7686 (x_redisplay_interface): Set flush_display_optional member to 0.
7687 (XTread_socket): Correctly reset the TEConverter
7688 object.
7689
7690 2004-11-30 Kim F. Storm <storm@cua.dk>
7691
7692 * lisp.h: New defines to enable buffer overrun checking.
7693 (GC_CHECK_STRING_OVERRUN, GC_CHECK_STRING_FREE_LIST)
7694 (XMALLOC_OVERRUN_CHECK, GC_CHECK_CONS_LIST): Add.
7695
7696 * alloc.c: Add more checks for buffer overruns.
7697 (XMALLOC_OVERRUN_CHECK_SIZE, xmalloc_overrun_check_header)
7698 xmalloc_overrun_check_trailer, overrun_check_malloc)
7699 overrun_check_realloc, overrun_check_free): Add.
7700 (GC_STRING_EXTRA, string_overrun_pattern): Add.
7701 (check_sblock, allocate_string_data, compact_small_strings):
7702 Set and check string_overrun_pattern if GC_CHECK_STRING_OVERRUN.
7703 (check_cons_list): Condition on GC_CHECK_CONS_LIST.
7704 (check_string_free_list): Add.
7705 (allocate_string, sweep_strings): Call check_string_free_list.
7706
7707 * emacs.c (malloc_initialize_hook): Don't free malloc_state_ptr if
7708 XMALLOC_OVERRUN_CHECK to avoid crash during load.
7709
7710 2004-11-29 Kim F. Storm <storm@cua.dk>
7711
7712 * fns.c (concat): Use SAFE_ALLOCA.
7713
7714 2004-11-29 Stefan Monnier <monnier@iro.umontreal.ca>
7715
7716 * sysdep.c (emacs_write): Don't use QUIT.
7717
7718 2004-11-29 Kenichi Handa <handa@m17n.org>
7719
7720 * buffer.c (init_buffer): Set current_buffer->directory to a
7721 multibyte string made by string_to_multibyte.
7722
7723 * emacs.c (init_cmdargs): Set unibyte strings in Vcommand_line_args.
7724
7725 2004-11-27 Andreas Schwab <schwab@suse.de>
7726
7727 * alloc.c (mark_stack): Call GC_MARK_SECONDARY_STACK if defined.
7728
7729 * s/gnu-linux.h: Enable no-op gcpros on ia64.
7730 (GC_MARK_SECONDARY_STACK) [__ia64__]: Define.
7731
7732 * filelock.c (lock_file_1): Call get_boot_time early.
7733 Increase buffer size.
7734
7735 2004-11-27 Eli Zaretskii <eliz@gnu.org>
7736
7737 * lisp.h (DECL_ALIGN): Define non-trivially only if NO_DECL_ALIGN
7738 is not defined.
7739
7740 2004-11-27 Kim F. Storm <storm@cua.dk>
7741
7742 * search.c (syms_of_search) <search-spaces-regexp>: Move 'doc:'
7743 marker out of doc string.
7744
7745 2004-11-26 Stefan Monnier <monnier@iro.umontreal.ca>
7746
7747 * s/darwin.h (POSIX_SIGNALS): Undo the removal of 2002-08-25,
7748 which was not mentioned in the log.
7749
7750 2004-11-26 Kim F. Storm <storm@cua.dk>
7751
7752 * fringe.c (update_window_fringes): Prefer truncation bitmaps over
7753 angle bitmaps at top/bottom line.
7754
7755 * xdisp.c: Undo recent changes for restoring saved_face_id. Instead,
7756 set it when it->method is set to next_element_from_display_vector.
7757 (setup_for_ellipsis): Add LEN argument. Callers changed.
7758 Set it->saved_face_id.
7759 (get_next_display_element): Use loop instead of recursion.
7760 Set it->saved_face_id. Combine duplicate code for ctr chars.
7761 (next_element_from_display_vector): Do not set it->saved_face_id.
7762 (next_element_from_ellipsis): Use setup_for_ellipsis.
7763
7764 2004-11-26 Eli Zaretskii <eliz@gnu.org>
7765
7766 * eval.c (Fdefvar): Declare pdl from last change as `volatile' to
7767 prevent compiler warnings.
7768
7769 2004-11-25 Stefan Monnier <monnier@iro.umontreal.ca>
7770
7771 * keyboard.c (command_loop_1): Print a message describing the key
7772 the user just pressed when this key has no binding.
7773
7774 * sysdep.c (sys_signal): Don't use SA_RESTART if SYNC_INPUT is set.
7775 (emacs_open, emacs_read, emacs_write): Check QUIT when interrupted.
7776
7777 * lread.c (readchar): Check QUIT when `getc' is interrupted.
7778
7779 2004-11-24 Richard M. Stallman <rms@gnu.org>
7780
7781 * coding.c (run_pre_post_conversion_on_str): Bind Qinhibit_read_only.
7782
7783 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>: Doc fix.
7784
7785 2004-11-24 Kim F. Storm <storm@cua.dk>
7786
7787 * xdisp.c (move_it_in_display_line_to, display_line):
7788 Restore saved_face_id also when truncate-lines or hscrolled.
7789
7790 2004-11-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7791
7792 * gtkutil.c (xg_get_file_name): Rename use-old-gtk-file-dialog to
7793 x-use-old-gtk-file-dialog.
7794
7795 * xfns.c: Define x_use_old_gtk_file_dialog.
7796 (syms_of_xfns): Rename use-old-gtk-file-dialog to x-... Move it
7797 outside ifdef USE_GTK.
7798
7799 2004-11-23 Stefan Monnier <monnier@iro.umontreal.ca>
7800
7801 * coding.h (ENCODE_FILE, DECODE_FILE, ENCODE_SYSTEM, DECODE_SYSTEM):
7802 Don't use XFASTINT blindly.
7803
7804 * config.in (RE_TRANSLATE_P): Don't use XFASTINT blindly.
7805
7806 * indent.c (skip_invisible): Avoid non-idempotent side-effects
7807 in macro arguments.
7808
7809 * keymap.c (Flookup_key): Check INTEGERP before XINT.
7810
7811 * lread.c (oblookup): Don't use XFASTINT blindly.
7812
7813 * window.c (Fset_window_scroll_bars): Don't use XINT if it isn't int.
7814 (decode_next_window_args, window_loop): Don't use XFASTINT blindly.
7815
7816 2004-11-23 Kim F. Storm <storm@cua.dk>
7817
7818 * dispextern.h (MATRIX_ROW_ENDS_IN_MIDDLE_OF_CHAR_P)
7819 (MATRIX_ROW_STARTS_IN_MIDDLE_OF_CHAR_P): Not if dpvec_index is zero.
7820
7821 * xfaces.c (lookup_named_face): Add signal_p arg. Return -1 if
7822 signal_p is zero and face name is unknown.
7823 (Fx_list_fonts): Don't signal error in lookup_named_face.
7824 (Fface_font): Signal error in lookup_named_face.
7825 (ascii_face_of_lisp_face): Likewise.
7826
7827 * dispextern.h (lookup_named_face): Fix prototype.
7828
7829 * xdisp.c (handle_single_display_prop): Don't signal error in
7830 lookup_named_face for unknown fringe face name.
7831 (highlight_trailing_whitespace): Don't signal error in
7832 lookup_named_face if trailing-whitespace face unknown.
7833 (calc_line_height_property): Don't signal error in
7834 lookup_named_face if specified face name is unknown.
7835
7836 * fringe.c (update_window_fringes): Show top row indicator if
7837 window has header-line. Don't show arrow at bob and eob
7838 if the boundary indicators are not used.
7839 (Fset_fringe_bitmap_face): Signal error in lookup_named_face.
7840
7841 * window.c (set_window_buffer): Clear display_error_modiff.
7842
7843 2004-11-22 Kim F. Storm <storm@cua.dk>
7844
7845 * fringe.c (update_window_fringes): Provide sensible fall-back
7846 value for non-nil indicate-buffer-boundaries setting.
7847
7848 2004-11-22 Markus Rost <rost@ias.edu>
7849
7850 * minibuf.c (Fminibuffer_complete_and_exit): Fix previous change.
7851
7852 2004-11-22 Stefan Monnier <monnier@iro.umontreal.ca>
7853
7854 * eval.c (Fdefvar): Warn when var is let-bound but globally void.
7855
7856 2004-11-21 Kim F. Storm <storm@cua.dk>
7857
7858 * xdisp.c (erase_phys_cursor): Clear hollow cursor inside TEXT_AREA.
7859
7860 * xterm.c (x_clip_to_row): Add area arg. Callers changed.
7861 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7862
7863 * w32term.c (w32_clip_to_row): Add area arg. Callers changed.
7864 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7865
7866 * macterm.c (x_clip_to_row): Add area arg. Callers changed.
7867 (x_draw_hollow_cursor, x_draw_bar_cursor): Clip to TEXT_AREA.
7868
7869 * xdisp.c (move_it_in_display_line_to, display_line):
7870 Restore saved_face_id if overflow-newline-into-fringe is enabled and
7871 line is continued before or in middle of element from display vector.
7872
7873 * indent.c (Fvertical_motion): Fix last change. Use another
7874 method to detect if iterator moved too far ahead after reseat.
7875
7876 * xdisp.c (IT_EXPAND_MATRIX_WIDTH): New macro. Do not
7877 expand matrix width for overflow in zero-width area.
7878 (append_glyph, append_composite_glyph, produce_image_glyph)
7879 (append_stretch_glyph): Use it to avoid loop in redisplay.
7880 (note_mode_line_or_margin_highlight): Don't let help-echo from
7881 string override help-echo from image map.
7882
7883 2004-11-20 Luc Teirlinck <teirllm@auburn.edu>
7884
7885 * fns.c (Fyes_or_no_p): Call Fread_from_minibuffer with extra argument.
7886 * callint.c (Fcall_interactively): Ditto.
7887
7888 2004-11-20 Stefan Monnier <monnier@iro.umontreal.ca>
7889
7890 * minibuf.c (Fminibuffer_complete_and_exit):
7891 Fixup the case of the completed value, for case-indep completion.
7892
7893 2004-11-20 Richard M. Stallman <rms@gnu.org>
7894
7895 * lisp.h (Fread_from_minibuffer): Add arg in decl.
7896
7897 * minibuf.c (read_minibuf): New arg KEEP_ALL. Callers changed.
7898 (Fread_from_minibuffer): New arg KEEP_ALL. Callers changed.
7899
7900 * search.c (Vsearch_spaces_regexp):
7901 Rename from Vsearch_whitespace_regexp. All uses changed.
7902
7903 2004-11-20 Thien-Thi Nguyen <ttn@gnu.org>
7904
7905 * eval.c (init_eval_once): Increase `max_specpdl_size' to 650.
7906
7907 2004-11-19 Richard M. Stallman <rms@gnu.org>
7908
7909 * search.c (Vsearch_whitespace_regexp): New variable.
7910 (syms_of_search): Defvar it.
7911 (compile_pattern_1): Call re_set_whitespace_regexp with it.
7912 (search_buffer): No regexp is trivial if Vsearch_whitespace_regexp
7913 is non-nil.
7914 (struct regexp_cache): New element whitespace_regexp.
7915 (syms_of_search): Initialize whitespace_regexp elements.
7916 (compile_pattern): Compare whitespace_regexp elements.
7917 (compile_pattern_1): Set whitespace_regexp elements.
7918
7919 * regex.c (regex_compile): Substitute whitespace_regexp
7920 for spaces, if it is nonzero.
7921 (whitespace_regexp): New variable.
7922 (re_set_whitespace_regexp): New function.
7923
7924 2004-11-19 Kim F. Storm <storm@cua.dk>
7925
7926 * indent.c (Fvertical_motion): Fix last change.
7927
7928 2004-11-18 Kim F. Storm <storm@cua.dk>
7929
7930 * indent.c (Fvertical_motion): Undo 2004-11-16 change.
7931 Instead, move back again if reseating moves too far ahead.
7932
7933 2004-11-17 Luc Teirlinck <teirllm@auburn.edu>
7934
7935 * xdisp.c (message3): Call clear_message.
7936
7937 2004-11-17 Kim F. Storm <storm@cua.dk>
7938
7939 * xdisp.c (erase_phys_cursor): Adjust cursor row visible height.
7940
7941 2004-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
7942
7943 * gtkutil.c (xg_get_file_name): Typo in HAVE_GTK_FILE_SELECTION_NEW.
7944
7945 * xmenu.c (x_menu_in_use): Remove.
7946 (x_menu_set_in_use): Also set popup_activated_flag.
7947
7948 * xfns.c (Fx_file_dialog): Call popup_activated instead of
7949 x_menu_in_use. Call x_menu_set_in_use in Motif version also.
7950
7951 * xterm.h (x_menu_in_use): Remove.
7952
7953 2004-11-16 Richard M. Stallman <rms@gnu.org>
7954
7955 * keymap.c (Fmap_keymap): New arg SORT-FIRST.
7956 Use map-keymap-internal to implement that.
7957
7958 * indent.c (Fvertical_motion): In batch mode, use vmotion directly.
7959
7960 2004-11-16 Stefan Monnier <monnier@iro.umontreal.ca>
7961
7962 * xdisp.c (get_glyph_string_clip_rect, init_glyph_string): Check it's
7963 a window before using XWINDOW.
7964
7965 * window.c (make_window, Fselect_window, make_dummy_parent)
7966 (save_window_save):
7967 * frame.c (make_frame):
7968 * fns.c (concat): Avoid side-effects inside XSETFASTINT's arguments.
7969
7970 * lisp.h (NILP): Use EQ rather than XFASTINT.
7971
7972 2004-11-16 Kim F. Storm <storm@cua.dk>
7973
7974 * fringe.c (Fdefine_fringe_bitmap): Always set 'h'. Simplify.
7975
7976 * indent.c (Fvertical_motion): Fix last change. Only reseat when
7977 moving backwards.
7978
7979 2004-11-16 Luc Teirlinck <teirllm@auburn.edu>
7980
7981 * dispextern.h: Extern reseat_at_previous_visible_line_start.
7982
7983 2004-11-16 Kenichi Handa <handa@m17n.org>
7984
7985 * xdisp.c (display_mode_element): Fix previous change (calculate
7986 end position of substring to display correctly).
7987
7988 2004-11-16 Kim F. Storm <storm@cua.dk>
7989
7990 * keyboard.c (Fposn_at_point): Remove extra */ after doc string.
7991 Reported by Andrew M. Scott.
7992
7993 2004-11-15 Kim F. Storm <storm@cua.dk>
7994
7995 * fns.c (Fsafe_plist_get): New defun.
7996 (syms_of_fns): Defsubr it.
7997
7998 * lisp.h (Fsafe_plist_get): Add EXFUN.
7999
8000 * xdisp.c (store_mode_line_string, produce_stretch_glyph):
8001 Use Fsafe_plist_get.
8002 (note_mode_line_or_margin_highlight, note_mouse_highlight):
8003 Fix image map element parsing. Use Fsafe_plist_get.
8004
8005 2004-11-15 Richard M. Stallman <rms@gnu.org>
8006
8007 * xdisp.c (get_next_display_element): Fix previous change.
8008
8009 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8010
8011 * window.c (shrink_windows): Handle special case of one window left
8012 when trying to shrink the final reminder. Grow windows if
8013 total_removed is less than total_shrink.
8014
8015 * xmenu.c (pop_down_menu): Remove global variable current_menu,
8016 extract pointer from arg with XSAVE_VALUE.
8017 (create_and_show_popup_menu, create_and_show_dialog, xmenu_show):
8018 Construct arg to record_unwind_protect with make_save_value.
8019
8020 2004-11-13 Richard M. Stallman <rms@gnu.org>
8021
8022 * xdisp.c (reseat_at_previous_visible_line_start): No longer static.
8023 (get_next_display_element): Fix previous change to apply only to \n.
8024
8025 * indent.c (Fvertical_motion): Scan to PT from start of line to
8026 make iterator consistent.
8027
8028 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
8029
8030 2004-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8031
8032 * gtkutil.c (pop_down_file_dialog): Add BLOCK_INPUT.
8033
8034 * xfns.c (Fx_file_dialog): Call x_menu_in_use and x_menu_set_in_use.
8035 Record unwind with clean_up_file_dialog.
8036
8037 * xterm.h (x_menu_in_use, x_menu_set_in_use, x_menu_wait_for_event):
8038 Declare.
8039
8040 * xmenu.c (x_menu_in_use, x_menu_set_in_use): New functions.
8041
8042 2004-11-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8043
8044 * gtkutil.c (xg_file_sel_ok, xg_file_sel_cancel)
8045 (xg_file_sel_destroy): Remove.
8046 (xg_file_response_cb, pop_down_file_dialog)
8047 (xg_get_file_name_from_chooser, xg_get_file_name_from_selector):
8048 New functions.
8049 (xg_get_file_with_chooser, xg_get_file_with_selection):
8050 Take new arg func, set it to xg_get_file_name_from_chooser/selector.
8051 Move common code to xg_get_file_name. Return widget created.
8052 (xg_get_file_name): Set name, transient for, modal and destroy
8053 with parent here. Connect response signal to xg_file_response_cb,
8054 connect delete-event to gtk_true. Record pop_down_file_dialog
8055 for unwind. Do event loop and call x_menu_wait_for_event in loop.
8056 (xg_create_widget): Make dialogs modal.
8057
8058 * xmenu.c (unuse_menu_items, pop_down_menu): Arg is of type
8059 Lisp_Object.
8060 (popup_get_selection): Move unwind protect ...
8061 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
8062 Move destroy of widget to pop_down_menu.
8063 (popup_widget_loop): Move unwind protect ...
8064 (create_and_show_popup_menu, create_and_show_dialog): ... to here.
8065 Move destroy of widget to pop_down_menu.
8066 (pop_down_menu): BLOCK_INPUT and destroy widget/window.
8067 (xmenu_show): Record unwind pop_down_menu. Move XMenuDestroy,
8068 x_mouse_leave and grabbed = 0 to pop_down_menu.
8069
8070 2004-11-13 Kim F. Storm <storm@cua.dk>
8071
8072 * xdisp.c (make_cursor_line_fully_visible_p): New variable.
8073 (syms_of_xdisp): DEFVAR_BOOL it.
8074 (make_cursor_line_fully_visible, try_cursor_movement)
8075 (try_window_id): Use it.
8076
8077 2004-11-12 Kim F. Storm <storm@cua.dk>
8078
8079 * dispextern.h (struct glyph_row): New member extra_line_spacing.
8080 (struct it): New member max_extra_line_spacing.
8081 (MR_PARTIALLY_VISIBLE, MR_PARTIALLY_VISIBLE_AT_TOP)
8082 (MR_PARTIALLY_VISIBLE_AT_BOTTOM): New helper macros.
8083 (MATRIX_ROW_PARTIALLY_VISIBLE_P): Fix to return false if invisible
8084 part of last line is only extra line spacing (so the text on the
8085 line is fully visible). Use helper macros.
8086 Add W arg (to use them). All callers changed.
8087 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_TOP_P)
8088 (MATRIX_ROW_PARTIALLY_VISIBLE_AT_BOTTOM_P): Use helper macros.
8089
8090 * window.c (window_scroll_pixel_based, Frecenter):
8091 Use move_it_vertically_backward directly.
8092 (Frecenter): Fix calculation of new start pos for negative arg.
8093 Before, the new start pos was sometimes chosen too far back, so
8094 the last line became only partially visible, and thus would be
8095 either only semi-visible or automatically scrolled to the middle
8096 of the window by redisplay.
8097
8098 * xdisp.c (init_iterator): Clear it.max_extra_line_spacing.
8099 (move_it_vertically_backward): Don't recure to move further back.
8100 (move_it_vertically): Remove superfluous condition.
8101 (move_it_by_lines): Clear last_height when moved 0 lines.
8102 (resize_mini_window): Use it.max_extra_line_spacing.
8103 (display_tool_bar_line): Clear row->extra_line_spacing.
8104 (try_scrolling): Use move_it_vertically_backward directly.
8105 (redisplay_window): Likewise.
8106 (compute_line_metrics): Set row->extra_line_spacing.
8107 (display_line, display_string): Likewise.
8108 (x_produce_glyphs): Update it->max_extra_line_spacing.
8109
8110 * xmenu.c (pop_down_menu): Return nil.
8111
8112 2004-11-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8113
8114 * xmenu.c (x_menu_wait_for_event): New function.
8115 (popup_get_selection, popup_widget_loop): Call x_menu_wait_for_event
8116 to handle timers.
8117 (popup_widget_loop): Add argument do_timers.
8118 (create_and_show_popup_menu, create_and_show_dialog): Pass 1 for
8119 do_timers to popup_widget_loop.
8120 (xmenu_show): Call XMenuActivateSetWaitFunction so that
8121 x_menu_wait_for_event is called by XMenuActivate.
8122 (create_and_show_popup_menu): Pass 1 for do_timers to
8123 popup_get_selection.
8124 (pop_down_menu): New function.
8125 (popup_get_selection, popup_widget_loop): Unwind protect to
8126 pop_down_menu.
8127 (popup_widget_loop): Add argument widget.
8128 (create_and_show_popup_menu, create_and_show_dialog): Pass new
8129 argument widget to popup_widget_loop.
8130
8131 2004-11-10 Stefan Monnier <monnier@iro.umontreal.ca>
8132
8133 * keymap.c (Fkeymap_prompt): Accept symbol keymaps.
8134
8135 2004-11-09 Kim F. Storm <storm@cua.dk>
8136
8137 * xselect.c: Include <sys/types.h> and <unistd.h> (for getpid).
8138 Fix various comments referring to XEvents instead of input events.
8139 (x_queue_event): Fix format strings.
8140 (x_stop_queuing_selection_requests): Likewise.
8141
8142 * xdisp.c (produce_image_glyph): Remove unused variable 'face_ascent'.
8143 (pint2hrstr): Add extra braces to silence compiler.
8144
8145 * print.c (print_object): Fix format string.
8146
8147 * lread.c (read1): Fix next_char matching.
8148
8149 * lisp.h (Fdelete): Add EXFUN.
8150 (replace_range_2): Add prototype.
8151
8152 * keyboard.c (read_avail_input): Remove unused variable 'discard'.
8153
8154 * intervals.h (NULL_INTERVAL_P): Add separate version when
8155 ENABLE_CHECKING is not defined to silence compiler.
8156 (compare_string_intervals): Add prototype.
8157
8158 * fringe.c (destroy_fringe_bitmap): Fix return type.
8159 (Ffringe_bitmaps_at_pos): Remove unused var 'old_buffer'.
8160
8161 * emacs.c (Fdump_emacs): Fix format string.
8162
8163 * doc.c: Include <ctype.h>.
8164 (Fsubstitute_command_keys): Remove unused variable 'firstkey'.
8165
8166 * data.c (store_symval_forwarding): Remove unused variables.
8167
8168 * callint.c (Fcall_interactively): Remove unused variable 'funcar'.
8169
8170 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8171
8172 * Makefile.in (stamp-oldxmenu): If HAVE_GTK, don't add dependencies
8173 to ${OLDXMENU}.
8174
8175 2004-11-09 Kim F. Storm <storm@cua.dk>
8176
8177 * process.c (Fmake_network_process): Remove kludge for interrupted
8178 connects on BSD. If connect is interrupted, just close socket and
8179 start over rather than sleeping and retry with same socket.
8180
8181 2004-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8182
8183 * .cvsignore: Add buildobj.lst.
8184
8185 * doc.c: New variable Vbuild_files.
8186 (Fsnarf_documentation): If Vbuild_files is nil, populate it with
8187 file names from buildobj.lst. Only attach docstrings from files
8188 that are in Vbuild_files.
8189 (syms_of_doc): Defvar Vbuild_files.
8190
8191 * Makefile.in (SOME_MACHINE_OBJECTS): Add fringe.o, image.o
8192 and w32*.o.
8193 (temacs${EXEEXT}): Generate buildobj.lst when temacs is linked.
8194 (mostlyclean): Rm buildobj.lst
8195
8196 * makefile.w32-in ($(TEMACS)): Generate buildobj.lst when temacs
8197 is linked.
8198
8199 2004-11-09 Kim F. Storm <storm@cua.dk>
8200
8201 * fringe.c (update_window_fringes): Update fringe bitmaps if
8202 cur and row ends_at_zv_p differs. If bitmaps of a row is updated,
8203 also update previous row to get rid of misc. artifacts.
8204
8205 2004-11-08 Kim F. Storm <storm@cua.dk>
8206
8207 * xdisp.c (fast_find_position): Fix start pos if header line present.
8208 (note_mouse_highlight): Clear mouse face if we move out of text area.
8209
8210 2004-11-08 Eli Zaretskii <eliz@gnu.org>
8211
8212 * editfns.c: Move #include "systime.h" before <sys/resource.h>.
8213 Don't include <sys/time.h> explicitly.
8214 Include <stdio.h> unconditionally, not just on MacOS.
8215
8216 2004-11-08 Kenichi Handa <handa@m17n.org>
8217
8218 * fontset.c (fontset_pattern_regexp): Cancel my previous change;
8219 don't pay attention to '\' before '*'.
8220 (fontset_pattern_regexp): Change the meaning of the second arg.
8221 (Fnew_fontset): Call fs_query_fontset, not Fquery_fontset.
8222 (check_fontset_name): Try NAME as literal at first, and if it
8223 failes, try NAME as pattern.
8224
8225 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8226
8227 * emacs.c (Fdump_emacs): Only output warning on GNU/Linux.
8228
8229 2004-11-07 Andreas Schwab <schwab@suse.de>
8230
8231 * lisp.h (Fmsdos_downcase_filename): Declare.
8232 * dired.c (Fmsdos_downcase_filename): Don't declare here.
8233 * fileio.c: Likewise.
8234
8235 2004-11-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8236
8237 * dosfns.c (Fdos_memget, Fdos_memput): Use integer variable offs in
8238 comparisons with integers instead of Lisp_Object address.
8239 (Fmsdos_set_keyboard): Declare argument allkeys.
8240
8241 * msdos.c (IT_set_frame_parameters): Use EQ, not ==, for Lisp_Object:s.
8242
8243 * dired.c (Fmsdos_downcase_filename): Declare extern on MSDOS to avoid
8244 int/Lisp_Object mixup.
8245
8246 * fileio.c: Ditto.
8247
8248 2004-11-06 Steven Tamm <steventamm@mac.com>
8249
8250 * editfns.c: Need to include sys/time.h before resource.h on darwin.
8251
8252 2004-11-06 Richard M. Stallman <rms@gnu.org>
8253
8254 * callint.c (Fcall_interactively): Avoid reusing EVENT for other data.
8255
8256 * xfaces.c (merge_named_face): GCPRO the face_name in the
8257 named_merge_point struct that we make.
8258 (merge_face_heights): Eliminate GCPRO arg. All callers changed.
8259
8260 * keyboard.c (command_loop_1): Change Vtransient_mark_mode
8261 before deciding whether to inactivate mark.
8262
8263 2004-11-06 Lars Brinkhoff <lars@nocrew.org>
8264
8265 * config.in: Regenerate (add HAVE_GETRUSAGE).
8266 * editfns.c (Fget_internal_run_time): New function.
8267 (syms_of_data): Defsubr it.
8268 * fns.c (sxhash): As far as possible, merge calculation of
8269 hash code for symbols and strings.
8270
8271 2004-11-06 Eli Zaretskii <eliz@gnu.org>
8272
8273 * frame.c (syms_of_frame): Fix the example in the doc string.
8274
8275 2004-11-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8276
8277 * eval.c (Feval): Remove check for INPUT_BLOCKED_P.
8278
8279 * xmenu.c (popup_get_selection, create_and_show_popup_menu)
8280 (create_and_show_dialog): Revert change from 2004-10-31.
8281
8282 2004-11-05 Luc Teirlinck <teirllm@auburn.edu>
8283
8284 * macros.c (syms_of_macros) <defining-kbd-macro>: Doc fix.
8285
8286 2004-11-05 Kim F. Storm <storm@cua.dk>
8287
8288 * print.c (print_object): Print Lisp_Misc_Save_Value objects.
8289
8290 * fileio.c (Ffile_modes): Doc fix.
8291 (auto_save_1): Check for Ffile_modes nil value.
8292
8293 2004-11-05 Kim F. Storm <storm@cua.dk>
8294
8295 * xselect.c (struct selection_event_queue, selection_queue)
8296 (x_queue_selection_requests, x_queue_event)
8297 (x_start_queuing_selection_requests)
8298 (x_stop_queuing_selection_requests): Add new queue for selection
8299 input events to replace previous XEvent queue in xterm.c.
8300 (queue_selection_requests_unwind): Adapt to new queue.
8301 (x_reply_selection_request): Adapt to new queue.
8302 Unexpect wait_object in case of x errors (memory leak).
8303 (x_handle_selection_request, x_handle_selection_clear): Make static.
8304 (x_handle_selection_event): New function. May queue selection events.
8305 (wait_for_property_change_unwind): Use save_value instead of cons.
8306 Clear property_change_reply_object.
8307 (wait_for_property_change): Abort if already waiting.
8308 Use save_value instead of cons for unwind data.
8309 (x_handle_property_notify): Skip events already arrived, but don't
8310 free them, as "arrived" field is checked by wait_for_property_change,
8311 and it will be freed by unwind or explicit unexpect_property_change.
8312 (x_get_foreign_selection): Add to new queue.
8313 (receive_incremental_selection): Don't unexpect wait_object when done
8314 as it has already been freed by previous wait_for_property_change.
8315
8316 * xterm.h (x_start_queuing_selection_requests)
8317 (x_stop_queuing_selection_requests, x_handle_selection_request)
8318 (x_handle_selection_clear): Remove prototypes.
8319 (x_handle_selection_event): Add prototype.
8320
8321 * xterm.c (handle_one_xevent): Don't queue X selection events
8322 here, it may be too late if we start queuing after we have already
8323 stored some selection events into the kbd buffer.
8324 (struct selection_event_queue, queue, x_queue_selection_requests)
8325 (x_queue_event, x_unqueue_events, x_start_queuing_selection_requests)
8326 (x_stop_queuing_selection_requests): Remove/move to xselect.c.
8327 (x_catch_errors_unwind): Block input around final XSync.
8328
8329 * keyboard.h (kbd_buffer_unget_event): Add prototype.
8330
8331 * keyboard.c (kbd_buffer_store_event_hold): Remove obsolete code.
8332 (kbd_buffer_unget_event): New function.
8333 (kbd_buffer_get_event, swallow_events): Combine SELECTION events
8334 and use x_handle_selection_event.
8335 (mark_kboards): Don't mark x and y of SELECTION_CLEAR_EVENT.
8336
8337 2004-11-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8338
8339 * xselect.c (TRACE3): New debug macro.
8340 (x_reply_selection_request): Use it.
8341 (receive_incremental_selection): In call to TRACE0, the name of
8342 a symbol is in xname.
8343
8344 2004-11-05 Kim F. Storm <storm@cua.dk>
8345
8346 * fontset.c (fontset_pattern_regexp): Use unsigned char.
8347
8348 2004-11-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8349
8350 * fileio.c (Fnext_read_file_uses_dialog_p): New function.
8351
8352 * gtkutil.h (use_old_gtk_file_dialog): Declare.
8353
8354 * gtkutil.c: Make use_old_gtk_file_dialog non-static.
8355 (xg_initialize): Move DEFVAR_BOOL for use_old_gtk_file_dialog ...
8356 * xfns.c (syms_of_xfns): ... to here.
8357
8358 * gtkutil.c (xg_get_file_with_chooser): Expand DEFAULT_FILENAME if
8359 it doesn't start with /.
8360
8361 2004-11-04 Kenichi Handa <handa@m17n.org>
8362
8363 * fontset.c (fontset_pattern_regexp): If '*' is preceded by '\',
8364 treat it as a literal character.
8365
8366 2004-11-03 Kim F. Storm <storm@cua.dk>
8367
8368 * .gdbinit (ppt): New function.
8369
8370 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8371
8372 * xterm.c (x_window_to_scroll_bar): Only call
8373 xg_get_scroll_id_for_window if toolkit scroll bars are used.
8374
8375 * gtkutil.c (xg_get_file_with_chooser): Use GTK_STOCK_OK instead
8376 of save.
8377
8378 2004-11-02 Andreas Schwab <schwab@suse.de>
8379
8380 * window.c (Fscroll_right): Fix last change.
8381
8382 2004-11-02 Kim F. Storm <storm@cua.dk>
8383
8384 * Makefile.in (callproc.o): Depend on blockinput.h atimer.h systime.h.
8385
8386 2004-11-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8387
8388 * callproc.c (Fcall_process): Block input around vfork.
8389
8390 2004-11-02 Kim F. Storm <storm@cua.dk>
8391
8392 * eval.c (Fcalled_interactively_p): Rename from Fcall_interactive_p.
8393 (syms_of_eval): Defsubr it.
8394
8395 2004-11-02 Richard M. Stallman <rms@gnu.org>
8396
8397 * insdel.c (replace_range_2): New function.
8398
8399 * casefiddle.c (casify_region): Handle changes in byte-length
8400 using replace_range_2.
8401
8402 * emacs.c (USAGE3): Delete --horizontal-scroll-bars, -hb.
8403
8404 * xdisp.c (back_to_previous_visible_line_start):
8405 Subtract 1 from pos when checking previous newline for invisibility.
8406
8407 * window.c (window_scroll_pixel_based): Update preserve_y
8408 for header line if any.
8409 (Fscroll_left, Fscroll_right): Don't call interactive_p;
8410 use a new second argument instead.
8411
8412 * eval.c (Fcall_interactive_p): New function.
8413 (interactive_p): Don't test INTERACTIVE here.
8414 (Finteractive_p): Doc fix.
8415
8416 * eval.c (Feval): Abort if INPUT_BLOCKED_P.
8417
8418 2004-11-02 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
8419
8420 * w32fns.c (w32_font_match): Use fast_string_match_ignore_case for
8421 comparing font names.
8422
8423 2004-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8424
8425 * fileio.c (Fread_file_name): Pass Qt as fifth parameter to
8426 Fx_file_dialog if only directories should be read.
8427
8428 * lisp.h: Fx_file_dialog takes 5 parameters.
8429
8430 * xfns.c (Fx_file_dialog): Both Motif and GTK version:
8431 Add parameter only_dir_p.
8432 In Motif version, don't put DEFAULT_FILENAME in filter part of the
8433 dialog, just text field part. Do not add DEFAULT_FILENAME
8434 to list of files if it isn't there.
8435 In GTK version, pass only_dir_p parameter to xg_get_file_name.
8436
8437 * macfns.c (Fx_file_dialog): Add parameter only_dir_p.
8438 Check only_dir_p instead of comparing prompt to "Dired". When using
8439 a save dialog, add option kNavDontConfirmReplacement, change title
8440 to "Enter name", change text for save button to "Ok".
8441
8442 * w32fns.c (Fx_file_dialog): Add parameter only_dir_p.
8443 Check only_dir_p instead of comparing prompt to "Dired".
8444
8445 * gtkutil.c (xg_get_file_with_chooser)
8446 (xg_get_file_with_selection): New functions, only defined ifdef
8447 HAVE_GTK_FILE_CHOOSER_DIALOG_NEW and HAVE_GTK_FILE_SELECTION_NEW
8448 respectively.
8449 (xg_get_file_name): Add parameter only_dir_p.
8450 Call xg_get_file_with_chooser or xg_get_file_with_selection
8451 depending on HAVE_GTK_FILE* and the value of use_old_gtk_file_dialog.
8452 (xg_initialize): New DEFVAR_BOOL use_old_gtk_file_dialog.
8453
8454 * gtkutil.h (xg_get_file_name): Add parameter only_dir_p.
8455
8456 * config.in: Rebuild (added HAVE_GTK_FILE_*).
8457
8458 2004-11-01 Kim F. Storm <storm@cua.dk>
8459
8460 * process.c (connect_wait_mask, num_pending_connects):
8461 Only declare and use them if NON_BLOCKING_CONNECT is defined.
8462 (init_process): Initialize them if NON_BLOCKING_CONNECT defined.
8463 (IF_NON_BLOCKING_CONNECT): New helper macro.
8464 (wait_reading_process_output): Only declare and use local vars
8465 Connecting and check_connect when NON_BLOCKING_CONNECT is defined.
8466
8467 2004-11-01 Andy Petrusenco <Igrek@star-sw.com> (tiny change)
8468
8469 * w32term.c (x_scroll_run): Delete region objects after use.
8470
8471 2004-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8472
8473 * xmenu.c: Add prototypes for forward function declarations.
8474 (popup_get_selection): Remove parameter do_timers, remove call to
8475 timer_check.
8476 (create_and_show_popup_menu, create_and_show_dialog):
8477 Remove parameter do_timers from call to popup_get_selection.
8478
8479 * xdisp.c (update_tool_bar): Pass a copy of f->tool_bar_items to
8480 tool_bar_items and assign the result to f->tool_bar_items if
8481 not equal. Move BLOCK/UNBLOCK_INPUT from around call to
8482 tool_bar_items to assignment of result.
8483
8484 * atimer.c (alarm_signal_handler): Do not call set_alarm if
8485 pending_atmers is non-zero.
8486
8487 2004-10-31 Kim F. Storm <storm@cua.dk>
8488
8489 * dispnew.c (margin_glyphs_to_reserve): Don't use ncols_scale_factor.
8490
8491 2004-10-28 Will <will@glozer.net>
8492
8493 * macterm.c: Allow user to assign key modifiers to the Mac Option
8494 key via a 'mac-option-modifier' variable.
8495
8496 2004-10-28 Stefan Monnier <monnier@iro.umontreal.ca>
8497
8498 * xselect.c (Vx_lost_selection_functions, Vx_sent_selection_functions):
8499 Rename from Vx_lost_selection_hooks and Vx_sent_selection_hooks.
8500 (x_handle_selection_request, x_handle_selection_clear)
8501 (x_clear_frame_selections, syms_of_xselect): Adjust accordingly.
8502
8503 2004-10-28 Richard M. Stallman <rms@gnu.org>
8504
8505 * w32fns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
8506
8507 * xfns.c (Fx_server_vendor, Fx_server_version): Doc fixes.
8508
8509 2004-10-27 Stefan Monnier <monnier@iro.umontreal.ca>
8510
8511 * syntax.c (scan_sexps_forward): Give precedence to a 2-char
8512 comment-starter over a 1-char one.
8513
8514 2004-10-27 Richard M. Stallman <rms@gnu.org>
8515
8516 * xdisp.c (get_next_display_element): In mode lines,
8517 treat newline and tab like other control characters.
8518
8519 * editfns.c (Fmessage): Doc fix.
8520
8521 * indent.c (vmotion): When moving up, check the newline before.
8522 Make prevline an int, not a Lisp_Object.
8523
8524 2004-10-27 Kim F. Storm <storm@cua.dk>
8525
8526 * editfns.c (Fformat): Allocate discarded table with SAFE_ALLOCA.
8527 Only allocate info and discarded tables once.
8528
8529 * lisp.h (USE_SAFE_ALLOCA): Add and init sa_must_free integer.
8530 (SAFE_ALLOCA, SAFE_ALLOCA_LISP): Increment it when malloc is used.
8531 (SAFE_FREE): Test it to determine if we need to unwind to free.
8532 Remove size arg. All users changed.
8533 (SAFE_FREE_LISP) Remove. All users changed to use SAFE_FREE.
8534
8535 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8536
8537 * gtkutil.c: Put empty line between comment and function body.
8538 (xg_destroy_widgets): Rename from remove_from_container.
8539 Just destroy all widgets in list. Argument wcont removed.
8540 (xg_update_menubar, xg_update_submenu): Call xg_destroy_widgets
8541 instead of remove_from_container.
8542 (xg_display_close, xg_create_tool_bar, update_frame_tool_bar)
8543 (free_frame_tool_bar): Add comment.
8544
8545 * xfns.c (xic_create_xfontset): Check that FRAME_XIC_BASE_FONTNAME
8546 is not NULL before strcmp.
8547
8548 2004-10-26 Kim F. Storm <storm@cua.dk>
8549
8550 * callint.c (Fcall_interactively): Add 'U' code to get the
8551 up-event discarded by a previous 'k' or 'K' argument.
8552
8553 2004-10-26 David Kastrup <dak@gnu.org>
8554
8555 * buffer.c (syms_of_buffer): Fix a few typos.
8556
8557 2004-10-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8558
8559 * xsmfns.c: Put empty line between comment and function body.
8560 Use two spaces before comment end.
8561
8562 2004-10-25 Kenichi Handa <handa@m17n.org>
8563
8564 * fontset.c (fontset_pattern_regexp): Optimize for the case that
8565 PATTERN is full XLFD.
8566
8567 2004-10-24 Kenichi Handa <handa@m17n.org>
8568
8569 * regex.h (enum reg_errcode_t): New value REG_ERANGEX.
8570
8571 * regex.c (re_error_msgid): Add an entry for REG_ERANGEX.
8572 (regex_compile): Return REG_ERANGEX if appropriate.
8573
8574 2004-10-22 Kenichi Handa <handa@m17n.org>
8575
8576 * editfns.c (Ftranslate_region_internal): New function.
8577 (syms_of_editfns): Defsubr it.
8578
8579 2004-10-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8580
8581 * xfns.c (xic_create_xfontset): Initialize missing_list to NULL.
8582
8583 2004-10-21 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
8584
8585 * xterm.h (x_output): New member `xic_base_fontname'.
8586 (FRAME_XIC_BASE_FONTNAME): New macro.
8587 (xic_free_xfontset): Declare.
8588
8589 * xfns.c (xic_create_xfontset): Share fontsets between frames
8590 based on base_fontname.
8591 (xic_free_xfontset): New function.
8592 (free_frame_xic): Use it.
8593 (xic_set_xfontset): Ditto.
8594
8595 * xterm.c (xim_destroy_callback): Ditto.
8596
8597
8598 2004-10-20 B. Anyos <banyos@freemail.hu> (tiny change)
8599
8600 * w32term.c (x_draw_glyph_string): Use overline_color for overlines.
8601
8602 2004-10-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8603
8604 * xterm.h (XSync): If USE_GTK, define XSync as process_all and then
8605 XSync.
8606
8607 * emacs.c (my_heap_start, heap_bss_diff, MAX_HEAP_BSS_DIFF):
8608 New variables and constant.
8609 (main): Calculate heap_bss_diff. If we are dumping and the
8610 heap_bss_diff is greater than MAX_HEAP_BSS_DIFF, set PER_LINUX32
8611 and exec ourself again.
8612 (Fdump_emacs): If heap_bss_diff is greater than MAX_HEAP_BSS_DIFF
8613 print a warning.
8614
8615 * lastfile.c: Make my_endbss and my_endbss_static available on all
8616 platforms.
8617
8618 * Makefile.in (RUN_TEMACS): Remove @SETARCH@.
8619 * config.in (HAVE_PERSONALITY_LINUX32): Regenerate.
8620
8621 2004-10-19 Luc Teirlinck <teirllm@auburn.edu>
8622
8623 * data.c (Flocal_variable_if_set_p): Doc fix.
8624
8625 2004-10-19 Jason Rumney <jasonr@gnu.org>
8626
8627 * w32.c (init_environment): Set emacs_dir correctly when running
8628 emacs from the build directory.
8629
8630 2004-10-19 Richard M. Stallman <rms@gnu.org>
8631
8632 * editfns.c (Fdelete_and_extract_region):
8633 If region is empty, return null string.
8634
8635 2004-10-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8636
8637 * gtkutil.h (xg_update_scrollbar_pos): Remove arguments real_left
8638 and canon_width.
8639 (xg_frame_cleared): Remove.
8640
8641 * gtkutil.c (xg_frame_cleared, xg_fixed_handle_expose)
8642 (xg_find_top_left_in_fixed): Remove.
8643 (xg_create_scroll_bar): Put an event box widget between
8644 the scroll bar widget and the edit widget.
8645 (xg_show_scroll_bar): Show the parent widget (the event box).
8646 (xg_remove_scroll_bar): Destroy parent (the event box) also.
8647 (xg_update_scrollbar_pos): Remove arguments real_left and canon_width.
8648 Move the parent (the event box) widget inside the fixed widget.
8649 Move window clear to xterm.c.
8650
8651 * gtkutil.h (xg_frame_cleared): Remove.
8652
8653 * xterm.c (x_clear_frame): Remove call to xg_frame_cleared
8654 (x_scroll_bar_create, XTset_vertical_scroll_bar):
8655 Remove arguments left and width to xg_update_scrollbar_pos.
8656 (XTset_vertical_scroll_bar): Do x_clear_area for USE_GTK also.
8657
8658 2004-10-19 Kenichi Handa <handa@m17n.org>
8659
8660 * xdisp.c (display_mode_element): Fix display of wide chars.
8661
8662 2004-10-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8663
8664 * gtkutil.c (xg_update_scrollbar_pos): Change XClearWindow to
8665 gdk_window_clear and move gdk_window_process_all_updates after
8666 clear so events are sent to the X server in correct order.
8667
8668 2004-10-18 Kenichi Handa <handa@m17n.org>
8669
8670 * fontset.c (fs_load_font): Use fast_string_match_ignore_case for
8671 comparing font names.
8672 (fs_query_fontset): Use fast_string_match for comparing fontset names.
8673 (list_fontsets): Likewise.
8674
8675 * search.c (fast_string_match_ignore_case): New function.
8676
8677 * lisp.h (fast_string_match_ignore_case): Extern it.
8678
8679 2004-10-17 Kim F. Storm <storm@cua.dk>
8680
8681 * xdisp.c (overlay_arrow_at_row): Return overlay string rather
8682 than bitmap if there is not left fringe.
8683 (get_overlay_arrow_glyph_row): Also used on windows system.
8684 (display_line): Display overlay string if no left fringe.
8685
8686 2004-10-16 Jason Rumney <jasonr@gnu.org>
8687
8688 * w32fns.c (w32_font_match): Encode font name being matched.
8689
8690 2004-10-16 Richard M. Stallman <rms@gnu.org>
8691
8692 * window.c (Fspecial_display_p): Doc fix.
8693
8694 2004-10-15 Stefan Monnier <monnier@iro.umontreal.ca>
8695
8696 * doc.c (Fsubstitute_command_keys): Fix remap-handling.
8697 Don't ignore menus, because where-is-internal already does it for us.
8698
8699 2004-10-15 Kim F. Storm <storm@cua.dk>
8700
8701 * xdisp.c (redisplay_window): Only update fringes and vertical
8702 border on window frames.
8703
8704 2004-10-14 Andreas Schwab <schwab@suse.de>
8705
8706 * m/ia64.h (DATA_SEG_BITS): Don't define.
8707
8708 2004-10-14 Kim F. Storm <storm@cua.dk>
8709
8710 * xterm.h: Include Xutil.h after keysym.h to work around bug
8711 in some X versions.
8712
8713 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8714
8715 * fns.c (map_char_table): Add missing gcpros.
8716
8717 2004-10-13 Stefan Monnier <monnier@iro.umontreal.ca>
8718
8719 * keymap.c (get_keymap): An autoload form is not a keymap.
8720
8721 * textprop.c (syms_of_textprop): Make `syntax-table' nonsticky.
8722
8723 2004-10-13 Kim F. Storm <storm@cua.dk>
8724
8725 * callproc.c (Fcall_process): Simplify handling of display arg.
8726 Resume `display_on_the_fly' once a coding system is determined.
8727
8728 * xdisp.c (redisplay_preserve_echo_area): Fix last change.
8729
8730 2004-10-12 Kim F. Storm <storm@cua.dk>
8731
8732 * xdisp.c (redisplay_preserve_echo_area): Flush display in case
8733 caller, such as call-process, is not going to poll for input.
8734 (calc_line_height_property): Handle case where it->object is nil.
8735
8736 * xterm.c (x_redisplay_interface): Fix flush_display_optional.
8737
8738 2004-10-12 Kenichi Handa <handa@m17n.org>
8739
8740 * xdisp.c (get_next_display_element):
8741 If unibyte_display_via_language_environment is zero, display 8-bit
8742 chars in octal in unibyte buffer.
8743
8744 2004-10-12 Kim F. Storm <storm@cua.dk>
8745
8746 * doc.c (Fsubstitute_command_keys): Ignore remappings unless there
8747 are no ordinary bindings.
8748
8749 2004-10-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8750
8751 * xfns.c (syms_of_xfns): Defsubr x-file-dialog for GTK also.
8752
8753 2004-10-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8754
8755 * macterm.c (x_raise_frame): Add BLOCK_INPUT around SelectWindow.
8756 (x_lower_frame): Add BLOCK_INPUT around SendBehind.
8757 (make_mac_frame): Add BLOCK_INPUT around the making of a
8758 terminal frame.
8759 (mac_initialize): Add BLOCK_INPUT around carbon initialization.
8760 * macgui.h (mktime): Use emacs_mktime.
8761 * macfns.c (Fx_file_dialog): Add BLOCK_INPUT around more code.
8762 Make a cancel file-open dialog be like C-g.
8763 * mac.c (mktime): Use emacs_mktime.
8764 (Fdo_applescript): Add BLOCK_INPUT around do_applescript.
8765 (Fmac_paste_function): Add better error handling for carbon cut/paste.
8766
8767 2004-10-10 Kim F. Storm <storm@cua.dk>
8768
8769 * keyboard.c (timer_resume_idle): New function to resume idle
8770 timer without resetting timers on the idle list.
8771 (read_char): Use timer_resume_idle. Remove local var last_idle_start.
8772 (timer_start_idle, timer_stop_idle): Declare static.
8773 (read_key_sequence): Use timer_resume_idle instead of timer_start_idle.
8774
8775 * keyboard.h (timer_start_idle, timer_stop_idle): Remove prototypes.
8776
8777 2004-10-08 Steven Tamm <steventamm@mac.com>
8778
8779 * config.in (HAVE_MALLOC_MALLOC_H): Regenerate.
8780 * macterm.c (mac_check_for_quit_char): Remove warning for using
8781 NULL where 0 should be used.
8782 * unexmacosx.c: Use malloc/malloc.h on Tiger instead of
8783 objc/malloc.h
8784 * mac.c: Include time.h for Tiger compatibility.
8785
8786 2004-10-07 Kim F. Storm <storm@cua.dk>
8787
8788 * xdisp.c (redisplay_window): Fix flicker on vertical line between
8789 windows. Update vertical line after drawing window fringes, but
8790 only if actually drawing any bitmaps--or there is no fringe.
8791
8792 * xterm.c (x_update_window_end): Likewise.
8793 * macterm.c (x_update_window_end): Likewise.
8794 * w32term.c (x_update_window_end): Likewise.
8795
8796 * fringe.c (draw_window_fringes): Return value now indicates if
8797 any fringe bitmaps were redrawn (or there are no fringes).
8798
8799 * dispextern.h (draw_window_fringes): Update prototype.
8800
8801 2004-10-06 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
8802
8803 * macfns.c (mac_get_window_bounds): Add extern.
8804 (x_real_positions): Use mac_get_window_bounds.
8805
8806 * macmenu.c (update_submenu_strings): Apply 2004-09-07 change for
8807 xmenu.c (YAILOM).
8808
8809 * macterm.c [!MAC_OSX]: Include Windows.h.
8810 (front_emacs_window): Rename from mac_front_window. All uses
8811 changed. Return the frontmost non-tooltip emacs window.
8812 (mac_get_window_bounds): New function.
8813 (x_calc_absolute_position): Use the difference of width and height
8814 between the inner and outer window.
8815 (x_set_offset): Specify window position by the coordinae of the
8816 outer window. Adjust the position if the title bar is completely
8817 outside the screen.
8818 (app_is_suspended, app_sleep_time): Remove unused variables.
8819 (do_app_resume, do_app_suspend): Remove their contents because
8820 window-activate/deactivate events will do the job.
8821 (do_zoom_window): Remove unused variables. Make compliant to the
8822 standard way of zooming. Set f->left_pos and f->top_pos.
8823 (XTread_socket): Don't use argument `expected'. Don't use
8824 FrontWindow to determine the clicked window. Exclude unprocessed
8825 mouseUp cases in the early stage. Add parentheses to fix operator
8826 precedence.
8827 (XTread_socket) [TARGET_API_MAC_CARBON]: Don't specify drag area.
8828
8829 2004-10-05 Jan Dj\e,Ad\e(Brv. <jan.h.d@swipnet.se>
8830
8831 * config.in: Regenerate.
8832
8833 * Makefile.in (RUN_TEMACS): Check HAVE_RANDOM_HEAPSTART instead of
8834 HAVE_EXECSHIELD.
8835
8836 2004-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8837
8838 * xterm.c (x_find_modifier_meanings): Ignore any Super or Hyper for
8839 a row if Alt or Meta has been found for that row. Also stop scanning
8840 for Keysyms for that row.
8841
8842 2004-10-04 Kim F. Storm <storm@cua.dk>
8843
8844 * fringe.c (Ffringe_bitmaps_at_pos): Change return value from cons
8845 to list. Include overlay arrow bitmap in return value.
8846
8847 * xterm.c (XTset_vertical_scroll_bar): Improve handling of scroll
8848 bars with fractional column width. If scroll bar separates two
8849 windows, move it towards the window it belongs to. Only update
8850 the padding area below the scroll bar widget when necessary,
8851 i.e. when scroll bar widget is created, moved, or resized.
8852
8853 * xdisp.c (define_frame_cursor1): Do not change frame cursor
8854 while tracking/dragging mouse.
8855 (x_draw_vertical_border): Do not draw line if frame has scroll bars.
8856
8857 * window.c (coordinates_in_window): Relax check for cursor
8858 on vertial border between mode lines.
8859 (Fset_window_fringes): Do not allow negative widths.
8860 (Fset_window_scroll_bars): Likewise.
8861
8862 * .gdbinit (pp): Shorthand for p ARG + pr.
8863 (ff): New command: flush frame updates (X only).
8864
8865 2004-10-03 Michael Albinus <michael.albinus@gmx.de>
8866
8867 * fileio.c (auto_save_1) Call Ffile_modes for remote files.
8868
8869 2004-09-30 Kenichi Handa <handa@m17n.org>
8870
8871 * process.c (send_process): Free composition data.
8872
8873 * fileio.c (Finsert_file_contents): Free composition data.
8874
8875 * coding.c (code_convert_region): Don't skip ASCIIs if there are
8876 compositions to encode.
8877 (encode_coding_string): Likewise. Free composition data.
8878
8879 2004-09-30 Florian Weimer <fw@deneb.enyo.de>
8880
8881 * coding.c (code_convert_region): Free composition data.
8882
8883 2004-09-29 Kim F. Storm <storm@cua.dk>
8884
8885 * fringe.c: Remove limit on number of bitmaps.
8886 (fringe_bitmaps, fringe_faces): Change to pointers.
8887 (max_fringe_bitmaps): New var.
8888 (Fdefine_fringe_bitmap): Expand fringe_bitmaps and fringe_faces.
8889 (init_fringe): Allocate fringe_bitmaps and fringe_faces.
8890
8891 * dispextern.h (FRINGE_ID_BITS): Increase to 16 bits (64K bitmaps).
8892 (struct glyph_row): Reorder fringe_bitmap related fields.
8893 (struct it): Likewise.
8894
8895 * w32term.c (fringe_bmp): Change to pointer.
8896 (max_fringe_bmp): New var.
8897 (w32_define_fringe_bitmap): Expand fringe_bmp.
8898 (w32_draw_fringe_bitmap): Check max_fringe_bmp.
8899 (w32_destroy_fringe_bitmap): Likewise.
8900
8901 2004-09-29 Kim F. Storm <storm@cua.dk>
8902
8903 * fringe.c: Simplify last change.
8904 (lookup_fringe_bitmap): New function.
8905 (valid_fringe_bitmap_p, resolve_fringe_bitmap): Remove.
8906 (Fdestroy_fringe_bitmap): Use lookup_fringe_bitmap.
8907 Keep standard bitmaps in Vfringe_bitmaps.
8908 (Fdefine_fringe_bitmap): Use lookup_fringe_bitmap.
8909 (Fset_fringe_bitmap_face): Likewise.
8910
8911 * dispextern.h (lookup_fringe_bitmap): Add prototype.
8912 (valid_fringe_bitmap_p): Remove prototype.
8913
8914 * xdisp.c (handle_single_display_prop): Use lookup_fringe_bitmap.
8915
8916 2004-09-29 Kim F. Storm <storm@cua.dk>
8917
8918 * fringe.c (destroy_fringe_bitmap, init_fringe_bitmap)
8919 (w32_init_fringe, w32_reset_fringes): Fix bootstrap (NULL rif).
8920
8921 * dispextern.h (valid_fringe_bitmap_p): Fix prototype.
8922
8923 * fringe.c (Vfringe_bitmaps): New variable.
8924 (syms_of_fringe): DEFVAR_LISP it.
8925 (valid_fringe_bitmap_p): Rename from valid_fringe_bitmap_id_p.
8926 Change arg to Lisp_Object and fail if not an integer.
8927 (get_fringe_bitmap_name, resolve_fringe_bitmap)
8928 (destroy_fringe_bitmap): New functions.
8929 (Fdestroy_fringe_bitmap): Change arg to bitmap symbol.
8930 Use destroy_fringe_bitmap. Remove symbol from Vfringe_bitmaps and
8931 clear its fringe property.
8932 (init_fringe_bitmap): Use destroy_fringe_bitmap instead of
8933 Fdestroy_fringe_bitmap.
8934 (Fdefine_fringe_bitmap): Add BITMAP arg specifying new or existing
8935 bitmap symbol; remove WHICH arg. Add symbol to Vfringe_bitmaps
8936 and set fringe property. Signal error if no free slots.
8937 (Fset_fringe_bitmap_face): Change arg to bitmap symbol.
8938 (Ffringe_bitmaps_at_pos): Return bitmap symbols instead of numbers.
8939
8940 * xdisp.c (handle_single_display_prop): Fringe bitmaps are now
8941 symbols with a fringe property.
8942
8943 2004-09-27 Kim F. Storm <storm@cua.dk>
8944
8945 * buffer.c (syms_of_buffer) <indicate-buffer-boundaries>:
8946 Doc fix. Format may now be a symbol or alist, not a cons.
8947
8948 * fringe.c (update_window_fringes): Handle new formats of
8949 indicate-buffer-boundaries (symbol or alist). No longer
8950 allow a simple cons.
8951 (Ffringe_bitmaps_at_pos): Use nil value for no bitmap.
8952
8953 2004-09-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8954
8955 * config.in: Rebuild.
8956
8957 2004-09-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
8958
8959 * config.in: Rebuild.
8960
8961 * Makefile.in: Run setarch i386 ./temacs if exec-shield is present.
8962
8963 2004-09-18 Stefan Monnier <monnier@iro.umontreal.ca>
8964
8965 * xterm.c (x_term_init): Work around a bug in some X servers.
8966
8967 2004-09-18 Richard M. Stallman <rms@gnu.org>
8968
8969 * buffer.c (syms_of_buffer) <default-major-mode>: Doc fix.
8970
8971 * xdisp.c (try_window_reusing_current_matrix):
8972 Handle the case where we reach the old displayed text,
8973 out of sync with the old line boundary.
8974
8975 2004-09-14 Stefan Monnier <monnier@iro.umontreal.ca>
8976
8977 * fileio.c (Finsert_file_contents): Fix case of replacement in a
8978 narrowed buffer.
8979
8980 2004-09-14 Kim F. Storm <storm@cua.dk>
8981
8982 * puresize.h (PURESIZE_RATIO): Define based on BITS_PER_EMACS_INT.
8983
8984 * xfaces.c (Qface_no_inherit): New var.
8985 (syms_of_xfaces): Intern and staticpro it.
8986 (Finternal_make_lisp_face, Finternal_set_lisp_face_attribute)
8987 (Finternal_copy_lisp_face, update_face_from_frame_parameter):
8988 Don't increment face_change_count when face has non-nil
8989 face-no-inherit property.
8990
8991 2004-09-13 Stefan Monnier <monnier@iro.umontreal.ca>
8992
8993 * bytecode.c (BYTE_CODE_QUIT): Add missing AFTER_POTENTIAL_GC.
8994 (Fbyte_code): Remove dead code after `wrong_type_argument'.
8995
8996 * alloc.c (Fgarbage_collect): Mark keyboards, gtk data, and specpdl
8997 before doing the mark_stack_check_gcpros since they're not on the stack.
8998
8999 2004-09-12 Kim F. Storm <storm@cua.dk>
9000
9001 * editfns.c (Fformat): Handle format strings with multiple text
9002 properties. Reverse text property list from the format string,
9003 so the positions are in increasing order.
9004
9005 2004-09-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9006
9007 * xselect.c (x_reply_selection_request): XSync and UNBLOCK before
9008 x_uncatch_errors so that possible protocol errors are delivered.
9009
9010 2004-09-10 Eli Zaretskii <eliz@gnu.org>
9011
9012 * Makefile.in (msdos.o): Depend on buffer.h, commands.h, and
9013 blockinput.h.
9014 (dosfns.o): Depend on blockinput.h, window.h, dispextern.h,
9015 charset.h, and coding.h
9016 (w16select.o): Depend on buffer.h, charset.h, coding.h, and composite.h.
9017 (term.o): Depend on window.h and keymap.h.
9018 (abbrev.o): Depend on syntax.h.
9019 (callint.o): Depend on keymap.h.
9020 (casefiddle.o): Depend on charset.h and keymap.h.
9021 (category.o): Depend on keymap.h.
9022 (coding.o): Depend on dispextern.h.
9023 (cmds.o): Depend on keyboard.h and keymap.h.
9024 (dispnew.o): Depend on indent.h and intervals.h.
9025 (doc.o): Depend on keymap.h.
9026 (editfns.o): Depend on frame.h.
9027 (emacs.o): Depend on dispextern.h.
9028 (fileio.o): Don't depend on ccl.h.
9029 (filelock.o): Depend on charset.h and coding.h.
9030 (frame.o): Depend on w32term.h and macterm.h.
9031 (insdel.o): Depend on region-cache.h.
9032 (keyboard.o): Depend on keymap.h, w32term.h, and macterm.h.
9033 (minibuf.o): Depend on $(INTERVALS_SRC) and keymap.h.
9034 (search.o): Depend on $(INTERVALS_SRC).
9035 (syntax.o): Depend on keymap.h, regex.h, and $(INTERVALS_SRC).
9036 (window.o): Depend on keymap.h, blockinput.h, $(INTERVALS_SRC),
9037 xterm.h, w32term.h, and macterm.h.
9038 (xdisp.o): Depend on keyboard.h, $(INTERVALS_SRC), xterm.h,
9039 w32term.h, and macterm.h.
9040 (xfaces.o): Depend on keyboard.h, $(INTERVALS_SRC),
9041 region-cache.h, xterm.h, w32term.h, and macterm.h.
9042 (bytecode.o): Depend on dispextern.h, frame.h, and xterm.h.
9043 (data.o): Depend on frame.h.
9044 (fns.o): Depend on keymap.h, xterm.h, and blockinput.h.
9045 (print.o): Depend on termchar.h and $(INTERVALS_SRC).
9046 (lread.o): Depend on $(INTERVALS_SRC), termhooks.h, and coding.h.
9047 (intervals.o): Depend on keymap.h.
9048
9049 * msdos.c (msdos_set_cursor_shape, IT_display_cursor):
9050 Add debugging print-out to termscript.
9051
9052 2004-09-09 Richard M. Stallman <rms@gnu.org>
9053
9054 * xdisp.c (decode_mode_spec): Use current buffer for most purposes.
9055
9056 2004-09-08 Richard M. Stallman <rms@gnu.org>
9057
9058 * window.c (Fset_window_buffer): Doc fix.
9059
9060 * xdisp.c (Fformat_mode_line): New arg BUFFER says which buffer to use.
9061
9062 2004-09-08 Dan Nicolaescu <dann@ics.uci.edu>
9063
9064 * minibuf.c (history_delete_duplicates): New variable.
9065 (read_minibuf): Use it.
9066 (syms_of_minibuf): Create the corresponding lisp variable.
9067
9068 2004-09-08 Kim F. Storm <storm@cua.dk>
9069
9070 * xdisp.c (set_cursor_from_row): Also look at 'cursor' property in
9071 overlay just before point.
9072
9073 2004-09-07 Luc Teirlinck <teirllm@auburn.edu>
9074
9075 * buffer.h (struct buffer): Add auto_save_file_format field.
9076 * buffer.c (reset_buffer, init_buffer_once):
9077 Handle auto_save_file_format field.
9078 (syms_of_buffer): Add DEFVAR_PER_BUFFER for
9079 `buffer-auto-save-file-format'.
9080 * fileio.c: Delete declaration for removed Vauto_save_file_format.
9081 (build_annotations): Adapt to replacement of
9082 `auto-save-file-format' with the new buffer-local variable
9083 `buffer-auto-save-file-format'.
9084 (syms_of_fileio): Delete DEFVAR_LISP for auto-save-file-format.
9085
9086 2004-09-07 Jason Rumney <jasonr@gnu.org>
9087
9088 * w32term.h (AppendMenuW_Proc): Move declaration from w32menu.c.
9089
9090 * w32fns.c (w32_wnd_proc) [WM_MEASUREITEM, WM_DRAWITEM]:
9091 Handle Unicode menu titles.
9092
9093 2004-09-07 Kim F. Storm <storm@cua.dk>
9094
9095 * xdisp.c (set_cursor_from_row): Fix last change. Only use 'cursor'
9096 property from text property or overlay strings at point.
9097
9098 2004-09-07 Stefan Monnier <monnier@iro.umontreal.ca>
9099
9100 * xmenu.c (update_submenu_strings): YAILOM.
9101 (set_frame_menubar): Make sure last_i is initialized.
9102
9103 2004-09-03 Jason Rumney <jasonr@gnu.org>
9104
9105 * w32menu.c (_widget_value): Add lname and lkey.
9106 (digest_single_submenu): Set lname and lkey in widget_value
9107 instead of name and key.
9108 (update_submenu_strings): New function.
9109 (set_frame_menubar): Remove call to inhibit_garbage_collection,
9110 call update_submenu_strings.
9111
9112 * w32menu.c (globals_of_w32menu): Check for Unicode API.
9113 (digest_single_submenu, w32_menu_show): Encode menu strings as
9114 UTF-8 if Unicode API is available.
9115 (utf8to16): New function.
9116 (add_menu_item): Use it when calling Unicode API.
9117
9118 2004-09-03 Kim F. Storm <storm@cua.dk>
9119
9120 * xdisp.c (set_cursor_from_row): Look for non-nil `cursor' property
9121 in overlay or text-property strings; set cursor on corresponding
9122 glyph rather than at end of the string.
9123
9124 2004-09-02 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9125
9126 * macfns.c (x_real_positions): Save the current window port and
9127 set a new one before obtaining the global coordinate.
9128 Use FRAME_MAC_WINDOW.
9129 (x_set_name, x_set_title): Encode title to UTF8.
9130 Use SetWindowTitleWithCFString.
9131 (Fx_server_version): Get correct OS version.
9132
9133 * macmenu.c (add_menu_item): Remove unused variable `i'.
9134 Don't let separator items destroy refence constants of other menu items.
9135
9136 * macterm.c (x_update_end): Move SetPortWindowPort to inside
9137 BLOCK_INPUT.
9138 (x_set_offset): Use FRAME_MAC_WINDOW.
9139
9140 * xdisp.c (note_mouse_highlight): Set the mouse pointer shape to
9141 nontext_cursor if it is on a scroll bar.
9142
9143 * s/darwin.h (LIBS_CARBON): New define to specify libraries for
9144 Carbon support.
9145 (LD_SWITCH_SYSTEM_TEMACS): Don't link with unused libstdc++.
9146 Use LIBS_CARBON.
9147
9148 2004-09-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9149
9150 * xfns.c (x_set_name_internal): New function. Check if we shall call
9151 xfree before ENCODE_UTF_8.
9152 (x_set_name, x_set_title): Call x_set_name_internal.
9153
9154 2004-08-31 NAKAMURA Toshikazu <nr-tkz@nifty.com> (tiny change)
9155
9156 * w32fns.c (w32_load_font): If a BDF font is already loaded, do not
9157 reload it.
9158
9159 2004-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9160
9161 * macmenu.c (_widget_value): Add lname and lkey.
9162 (single_submenu): Set lname and lkey in widget_value
9163 instead of name and key.
9164 (update_submenu_strings): New function.
9165 (set_frame_menubar): Remove call to inhibit_garbage_collection,
9166 call update_submenu_strings.
9167
9168 * xmenu.c (digest_single_submenu): Set lname and lkey in widget_value
9169 instead of name and key.
9170 (update_submenu_strings): New function.
9171 (set_frame_menubar): Remove call to inhibit_garbage_collection,
9172 call update_submenu_strings.
9173
9174 * gtkutil.h (_widget_value): Added lname and lkey.
9175
9176 2004-08-30 Steven Tamm <steventamm@mac.com>
9177
9178 * macmenu.c (mac_menu_show): Remove shadowing of menu variable
9179 by using different names for inner loop variables.
9180
9181 2004-08-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9182
9183 * xmenu.c (set_frame_menubar): Reintroduce inhibit_garbage_collection
9184 from 2002-07-15T00:01:34Z!raeburn@raeburn.org so that strings from ENCODE_UTF_8 isn't GC:ed before used.
9185
9186 * gtkutil.c (xg_create_frame_widgets): Compensate for tool bar when
9187 tool bar items is 0.
9188
9189 2004-08-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9190
9191 * macmenu.c (ENCODE_MENU_STRING): Added to handle multibyte
9192 strings in menu items.
9193 (single_submenu): Use ENCODE_MENU_STRING
9194 (mac_menu_show): Use ENCODE_MENU_STRING. Reset grabbed because
9195 button release isn't passed to event loop
9196 (add_menu_item): Use SetMenuItemWithCFString
9197
9198 2004-08-26 Steven Tamm <steventamm@mac.com>
9199
9200 * fileio.c (Fread_file_name): Call x_file_dialog on carbon on
9201 tool-bar/menu click.
9202 * macfns.c (Fx_file_dialog): Implement using NavServices.
9203
9204 2004-08-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9205
9206 * xterm.c (x_catch_errors_unwind): Do not XSync if display has closed.
9207
9208 * xfns.c (x_window_to_frame, x_any_window_to_frame)
9209 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
9210 (x_top_window_to_frame): Return 0 if wdesc is None.
9211
9212 2004-08-22 Richard M. Stallman <rms@gnu.org>
9213
9214 * process.c (process_send_signal) [SIGNALS_VIA_CHARACTERS,
9215 HAVE_TERMIOS]: If there's no char for this signal, drop through
9216 and use system calls.
9217
9218 * bytecode.c (Fbyte_code) <unwind-protect>: Cannot GC.
9219
9220 2004-08-20 Kim F. Storm <storm@cua.dk>
9221
9222 * process.c (wait_reading_process_output): Rename from
9223 wait_reading_process_input. All uses changed.
9224 (wait_reading_process_output_1): Rename from
9225 wait_reading_process_input_1. All uses changed.
9226
9227 * dispnew.c (Fsleep_for): Remove obsolete code.
9228
9229 2004-08-20 Kenichi Handa <handa@m17n.org>
9230
9231 * syntax.c (skip_chars): Fix for unibyte case.
9232
9233 2004-08-19 Stefan Monnier <monnier@iro.umontreal.ca>
9234
9235 * syntax.c (char_quoted): Mixup byte/char pos.
9236 (back_comment): Fixup globals in all cases.
9237
9238 2004-08-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9239
9240 * xfns.c (x_set_name, x_set_title): Encode title to UTF8 before
9241 passing it to gtk_window_set_title.
9242
9243 2004-08-19 Kim F. Storm <storm@cua.dk>
9244
9245 * process.c (wait_reading_process_input): Clean up.
9246 Add wait_for_cell, wait_proc, and just_wait_proc args
9247 to avoid overloading `read_kbd' and `do_display' args.
9248 Change read_kbd arg to int. All callers changed.
9249
9250 * process.c (process_send_signal): Use CDISABLE.
9251
9252 * sysdep.c (child_setup_tty, init_sys_modes): Use CDISABLE.
9253
9254 2004-08-18 Kim F. Storm <storm@cua.dk>
9255
9256 * process.c (Faccept_process_output): Add arg JUST-THIS-ONE;
9257 forward to wait_reading_process_input via DO_DISPLAY arg.
9258 (wait_reading_process_input): If DO_DISPLAY < 0 for a process
9259 object, only process output from that process; also inhibit
9260 running timers if DO_DISPLAY==-2.
9261
9262 2004-08-17 Kim F. Storm <storm@cua.dk>
9263
9264 * process.c (process_send_signal): Fix last change--use
9265 _POSIX_VDISABLE instead of CVDISABLE when available.
9266
9267 2004-08-16 Richard M. Stallman <rms@gnu.org>
9268
9269 * sysdep.c (child_setup_tty) [SIGNALS_VIA_CHARACTERS]:
9270 Set VQUIT and VINTR chars to the standard ones if they are unset.
9271 [AIX]: Don't do that here. And don't force VINTR to standard
9272 when SIGNALS_VIA_CHARACTERS.
9273
9274 * process.c (process_send_signal)
9275 [SIGNALS_VIA_CHARACTERS, HAVE_TERMIOS]: Clean up.
9276 Do nothing if the character is CVDISABLE.
9277
9278 * xfaces.c (merge_face_ref): Specifying `unspecified' is a no-op.
9279
9280 * intervals.c (move_if_not_intangible):
9281 Force POSITION to be between BEGV and ZV.
9282
9283 2004-08-14 John Paul Wallington <jpw@gnu.org>
9284
9285 * buffer.c (Frestore_buffer_modified_p): Doc fix.
9286
9287 * fileio.c (Fread_file_name): Doc fix.
9288
9289 * minibuf.c (syms_of_minibuf) <completion-ignore-case>: Doc fix.
9290
9291 2004-08-09 Luc Teirlinck <teirllm@auburn.edu>
9292
9293 * keymap.c (Fmake_keymap, Fmap_keymap, Fwhere_is_internal): Doc fixes.
9294
9295 2004-08-08 Luc Teirlinck <teirllm@auburn.edu>
9296
9297 * keyboard.c: Declare Qdisabled_command_function instead of
9298 Qdisabled_command_hook.
9299 (Fcommand_execute): Use Qdisabled_command_function instead of
9300 Qdisabled_command_hook.
9301 (syms_of_keyboard): Ditto.
9302
9303 2004-08-07 Luc Teirlinck <teirllm@auburn.edu>
9304
9305 * keymap.c (Flocal_key_binding, Fglobal_key_binding)
9306 (syms_of_keymap) <key-translation-map>: Doc fixes.
9307
9308 2004-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
9309
9310 * window.c (window_list_1): YAILOM.
9311
9312 * fileio.c (make_temp_name): Handle multibyte prefixes.
9313
9314 2004-08-06 Luc Teirlinck <teirllm@auburn.edu>
9315
9316 * keyboard.c (syms_of_keyboard) <overriding-terminal-local-map>:
9317 Doc fix.
9318
9319 2004-08-03 Kenichi Handa <handa@m17n.org>
9320
9321 * coding.c (decode_coding_string): Adjust coding->consumed, and
9322 etc. with shrinked_bytes.
9323
9324 2004-08-03 Kim F. Storm <storm@cua.dk>
9325
9326 * indent.c (compute_motion): Fix check for full width window
9327 in non-window case. Do not count left truncation glyph on
9328 window systems.
9329
9330 2004-08-02 Luc Teirlinck <teirllm@auburn.edu>
9331
9332 * data.c (Finteractive_form): Doc fix.
9333
9334 2004-08-02 Kim F. Storm <storm@cua.dk>
9335
9336 * indent.c (compute_motion): Use actual window width if WIDTH is -1,
9337 properly accounting for continuation glyph on non-window systems.
9338 (Fcompute_motion): Use actual window width if WIDTH is nil, and
9339 actual window width/height if TOPOS is nil, properly accounting for
9340 continuation glyphs on non-window systems, and optional header lines.
9341 (vmotion): Let compute_motion calculate actual window width.
9342
9343 * window.c (window_scroll_line_based): Let compute_motion
9344 calculate actual window width.
9345
9346 2004-08-02 Kim F. Storm <storm@cua.dk>
9347
9348 * process.c (read_process_output): Use whole read buffer.
9349 Don't trigger adaptive read buffering on errors.
9350
9351 2004-07-31 Luc Teirlinck <teirllm@auburn.edu>
9352
9353 * keymap.c (Fset_keymap_parent, Fdefine_prefix_command): Doc fixes.
9354
9355 * keyboard.c (syms_of_keyboard) <disable-point-adjustment>: Doc fix.
9356
9357 * callint.c (Fcall_interactively): Doc fix.
9358
9359 2004-07-30 Richard M. Stallman <rms@gnu.org>
9360
9361 * abbrev.c (Fexpand_abbrev): Undo previous change.
9362
9363 2004-07-30 Kim F. Storm <storm@cua.dk>
9364
9365 * editfns.c (Fformat): Allocate extra (dummy) element in info.
9366
9367 2004-07-28 Luc Teirlinck <teirllm@auburn.edu>
9368
9369 * eval.c (Fdefvar, Fdefconst): Doc fixes.
9370
9371 2004-07-27 Kim F. Storm <storm@cua.dk>
9372
9373 * xdisp.c (move_it_in_display_line_to): Check BUFFER_POS_REACHED_P after
9374 we have ensured that the glyph fits on the current line (or returned
9375 MOVE_LINE_CONTINUED otherwise).
9376
9377 2004-07-26 Kim F. Storm <storm@cua.dk>
9378
9379 * xdisp.c (move_it_in_display_line_to): If overflow-newline-into-fringe
9380 is enabled, return MOVE_LINE_CONTINUED rather than MOVE_POS_MATCH_OR_ZV
9381 if target position is at end of display line but char is not a newline.
9382
9383 2004-07-25 Richard M. Stallman <rms@gnu.org>
9384
9385 * window.c (coordinates_in_window): Return ON_SCROLL_BAR
9386 instead of ON_VERTICAL_BORDER, when on scroll bar.
9387 (Fcoordinates_in_window_p): Handle ON_SCROLL_BAR--return nil.
9388
9389 * dispextern.h (enum window_part): Add ON_SCROLL_BAR.
9390
9391 * window.c (Fcoordinates_in_window_p):
9392 Take account of FRAME_INTERNAL_BORDER_WIDTH.
9393
9394 * alloc.c (check_cons_list): New function (contents commented out).
9395
9396 2004-07-24 Luc Teirlinck <teirllm@auburn.edu>
9397
9398 * xfaces.c (Fcolor_supported_p): Doc fix.
9399
9400 * frame.c (Fselect_frame, Fset_frame_selected_window)
9401 (Fframe_visible_p, Fraise_frame): Doc fixes.
9402
9403 2004-07-24 Richard M. Stallman <rms@gnu.org>
9404
9405 * keyboard.h (not_single_kboard_state): Declare.
9406
9407 * fileio.c (Fwrite_region): Doc fix.
9408
9409 * window.c (Fwindow_at): Take account of FRAME_INTERNAL_BORDER_WIDTH.
9410
9411 * abbrev.c (Fexpand_abbrev): Run Qpre_abbrev_expand_hook
9412 only when a real abbrev is present.
9413
9414 * xfns.c (x_icon_verify): New function.
9415 (Fx_create_frame): Use it.
9416
9417 2004-07-22 Barry Fishman <barry_fishman@att.net> (tiny change)
9418
9419 * s/gnu-linux.h: Use GC_MARK_STACK if __amd64__ is defined.
9420
9421 2004-07-21 Kim F. Storm <storm@cua.dk>
9422
9423 * window.h (struct glyph_matrix): New members nrows_scale_factor
9424 and ncols_scale_factor.
9425
9426 * window.c (make_window): Initialize nrows_scale_factor and
9427 ncols_scale_factor members.
9428
9429 * dispnew.c (margin_glyphs_to_reserve): Apply ncols_scale_factor.
9430 (allocate_matrices_for_frame_redisplay): Fix left/right margin mix-up.
9431 (required_matrix_height): Apply nrows_scale_factor.
9432 (required_matrix_width): Apply ncols_scale_factor.
9433
9434 * xdisp.c (display_line): Increment nrows_scale_factor and set
9435 fonts_changed_p if past last allocated row.
9436 (append_glyph, append_composite_glyph, produce_image_glyph)
9437 (append_stretch_glyph): Increment ncols_scale_factor and set
9438 fonts_changed_p if current area is full.
9439
9440 2004-07-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9441
9442 * widget.c (EmacsFrameDestroy): Don't abort if normal_gc is 0.
9443
9444 2004-07-19 Luc Teirlinck <teirllm@auburn.edu>
9445
9446 * window.c (Fpos_visible_in_window_p, Fset_window_hscroll)
9447 (Fwindow_inside_pixel_edges, Fwindow_end, Fset_window_point)
9448 (Fset_window_start, Fscroll_up, Fscroll_down)
9449 (Fother_window_for_scrolling, Fscroll_other_window)
9450 (Fsave_window_excursion, Fset_window_vscroll)
9451 (syms_of_window) <window-size-fixed>: Doc fixes.
9452
9453 2004-07-19 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9454
9455 * w32fns.c (Fx_file_dialog): Use ENCODE_FILE instead of
9456 ENCODE_SYSTEM for filenames.
9457
9458 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9459
9460 * mac.c (sys_select): Block input around call to
9461 ReceiveNextEvent to prevent breakage. Correctly handle
9462 blocking on event queue only by calling ReceiveNextEvent
9463 instead of select (since GUI events aren't on an fd).
9464 (sys_read): Remove function
9465 * sysdep.c: Remove redefine of read to sys_read if HAVE_CARBON
9466
9467 2004-07-18 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9468
9469 * mac.c (sys_select): Redo sys_select to use alarm-based
9470 polling instead of 1 sec timeouts (like solaris).
9471
9472 * macterm.c (x_make_frame_visible): Comment in polling on
9473 frame creation.
9474
9475 * keyboard.c: Undef SIGIO on Carbon
9476
9477 * atimer.c (alarm_signal_handler): Call alarm handlers after
9478 scheduling.
9479
9480 * eval.c (Feval): Remove quit_char test
9481
9482 * process.c (wait_reading_process_input): Remove clearing
9483 stdin for select call on process input.
9484
9485 2004-07-18 Luc Teirlinck <teirllm@auburn.edu>
9486
9487 * xdisp.c (syms_of_xdisp) <window-scroll-functions>: Correct
9488 capitalization error in docstring.
9489
9490 2004-07-17 Juanma Barranquero <lektu@terra.es>
9491
9492 * keyboard.c (not_single_kboard_state): Do nothing unless
9493 MULTI_KBOARD is defined.
9494
9495 2004-07-17 Richard M. Stallman <rms@gnu.org>
9496
9497 * window.c (coordinates_in_window): Inside the window but outside
9498 its box to the L or R, return ON_VERTICAL_BORDER.
9499 (window_list_1): Rotate the list to start with WINDOW.
9500
9501 * print.c (print_preprocess): Test for print_depth at limit
9502 before entering in being_printed.
9503
9504 * keyboard.c (not_single_kboard_state): New function.
9505 (stuff_buffered_input): Now no-op only if no SIGTSTP.
9506
9507 * frame.c (Fdelete_frame): If we're in single_bboard_state on
9508 this kboard, and we delete its last frame, go to any_kboard_state.
9509
9510 * buffer.c (syms_of_buffer) <transient-mark-mode>: Doc fix.
9511
9512 2004-07-15 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
9513
9514 * w32fns.c (Fx_file_dialog): Encode strings in system coding
9515 system before passing them to OS functions for display.
9516
9517 2004-07-15 David Kastrup <dak@gnu.org>
9518
9519 * search.c (syms_of_search): Staticpro `saved_last_thing_searched'.
9520 Apparently fixes an abort condition.
9521
9522 2004-07-14 Luc Teirlinck <teirllm@auburn.edu>
9523
9524 * fileio.c (Fvisited_file_modtime): Return a list of two integers,
9525 instead of a cons.
9526
9527 2004-07-14 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9528
9529 * keyboard.c (echo_dash): Do nothing if there already is a dash
9530 at the end of the echo string.
9531
9532 2004-07-12 Kim F. Storm <storm@cua.dk>
9533
9534 * alloc.c (mark_object): Only look at Lisp_Misc_Save_Value
9535 if GC_MARK_STACK.
9536
9537 2004-07-10 Luc Teirlinck <teirllm@auburn.edu>
9538
9539 * buffer.c (Fswitch_to_buffer, Fpop_to_buffer): Doc fixes.
9540
9541 * window.c (Fwindow_buffer, Fother_window, Fget_lru_window)
9542 (Fget_largest_window, Fget_buffer_window, Fdelete_windows_on)
9543 (Freplace_buffer_in_windows, Fset_window_buffer)
9544 (Fselect-window, Fdisplay-buffer, Fsplit_window): Doc fixes.
9545 (syms_of_window): Expand docstring of `display-buffer-function'.
9546
9547 2004-07-09 Luc Teirlinck <teirllm@auburn.edu>
9548
9549 * editfns.c (Ffloat_time, Fformat_time_string, Fdecode_time)
9550 (Fcurrent_time_string, Fcurrent_time_zone): Mention in docstrings
9551 that time values of the type (HIGH . LOW) are considered obsolete.
9552
9553 2004-07-06 Luc Teirlinck <teirllm@auburn.edu>
9554
9555 * keyboard.c (syms_of_keyboard): Fix `keyboard-translate-table'
9556 docstring.
9557
9558 * fns.c (Fclear_string): Declare `len' before call to CHECK_STRING.
9559
9560 2004-07-06 John Paul Wallington <jpw@gnu.org>
9561
9562 * eval.c (Fdefmacro): Signal an error if NAME is not a symbol.
9563
9564 * fns.c (Fclear_string): Signal an error if STRING is not a string.
9565
9566 2004-07-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9567
9568 * macterm.c (mac_initialize_display_info): Use CGGetActiveDisplayList
9569 instead of CGMainDisplayID (only in OSX 10.2 and later).
9570
9571 2004-07-04 John Paul Wallington <jpw@gnu.org>
9572
9573 * fileio.c (read_file_name_completion_ignore_case): New variable.
9574 (syms_of_fileio): Declare and initialise it.
9575 (Fread_file_name): Bind `completion-ignore-case' to respect it.
9576
9577 2004-07-03 Eli Zaretskii <eliz@gnu.org>
9578
9579 * msdos.c (dos_rawgetc): Use make_number to produce Lisp objects
9580 for event.x and event.y.
9581
9582 2004-07-01 Kenichi Handa <handa@m17n.org>
9583
9584 * w32select.c (Fw32_set_clipboard_data): Update `nbytes' correctly
9585 after getting a new string by pre-write-conversion.
9586
9587 2004-06-30 Stefan Monnier <monnier@iro.umontreal.ca>
9588
9589 * xterm.c (x_detect_focus_change): Remove unused var `nr_events'.
9590 (x_calc_absolute_position): Remove unused var `child'.
9591
9592 * xfaces.c (x_supports_face_attributes_p)
9593 (Fdisplay_supports_face_attributes_p): YAILOM.
9594 (tty_supports_face_attributes_p): Remove unused var `i'.
9595
9596 * syntax.c (skip_chars): Remove unused labels fwd_unibyte_ok and
9597 back_unibyte_ok.
9598
9599 * search.c (match_limit, Fmatch_data, Fset_match_data): YAILOM.
9600
9601 * fontset.c (Fset_fontset_font): Remove unused vars `family' and `registry'.
9602
9603 * Makefile.in (${etc}DOC): Fix file name of make-docfile.
9604
9605 2004-06-30 Andreas Schwab <schwab@suse.de>
9606
9607 * image.c (CHECK_LIB_AVAILABLE): Add third parameter LIBRARIES.
9608 (Finit_image_library): Pass LIBRARIES through to
9609 CHECK_LIB_AVAILABLE. Declare parameters. Doc fix.
9610 (lookup_image_type): Pass Qnil as second argument to
9611 Finit_image_library.
9612
9613 * lisp.h (Finit_image_library): Declare.
9614
9615 2004-06-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
9616
9617 * macterm.c (do_window_activate, do_window_deactivate): Remove.
9618 (XTread_socket): Send mouse button events to the toolbox
9619 dispatcher even when the mouse is grabbed. Don't process window
9620 activate events for non-Emacs windows. Replace function calls to
9621 do_window_activate and do_window_deactivate with their contents.
9622 Reset mouse grabbing status when a window is deactivated.
9623
9624 2004-06-29 Steven Tamm <steventamm@mac.com>
9625
9626 * macterm.c (mac_get_emulated_btn)
9627 (mac_event_to_emacs_modifiers): Fix emulated mouse button
9628 support to correctly mask out modifiers.
9629
9630 2004-06-29 David Kastrup <dak@gnu.org>
9631
9632 * search.c (Fset_match_data): Allow buffer before end of list
9633 which can happen if set-match-data is using a pre-consed list.
9634
9635 2004-06-28 Steven Tamm <steventamm@mac.com>
9636
9637 * macterm.c (XTread_socket): Correctly set the frame position
9638 after the window is moved.
9639
9640 2004-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9641
9642 * gtkutil.c (xg_get_image_for_pixmap): Call g_object_unref on
9643 gpix and gmask just before return to avoid memory leak.
9644 (xg_get_image_for_pixmap): Add workaround for monochrome displays
9645 so insensitive and activated icons look ok.
9646
9647 2004-06-27 Jason Rumney <jasonr@gnu.org>
9648
9649 * w32fns.c (file_dialog_callback): Disable edit control if set
9650 to directories only on CDN_INITDONE message.
9651 (Fx_file_dialog): Default to directories only when prompt starts
9652 with "Dired".
9653
9654 2004-06-25 Kim F. Storm <storm@cua.dk>
9655
9656 * alloc.c (allocate_misc): Update total_free_markers.
9657 (free_misc): New function.
9658 (safe_alloca_unwind, free_marker): Use it.
9659
9660 * lisp.h (free_misc): Add prototype.
9661
9662 * fns.c (Fmapconcat, Fmapcar): Remove superfluous GCPROs.
9663
9664 2004-06-24 Richard M. Stallman <rms@gnu.org>
9665
9666 * emacs.c (Vsignal_USR1_hook, Vsignal_USR2_hook): Definitions deleted.
9667 (syms_of_emacs): Lisp variables deleted.
9668
9669 2004-06-23 David Kastrup <dak@gnu.org>
9670
9671 * search.c (Freplace_match): Adjust the match-data more thoroughly
9672 when replacing strings in the buffer.
9673 (Fmatch_data): When INTEGERS is non-nil and the last match was in
9674 a buffer, add the buffer as last element to the match data.
9675 (Fset_match_data): If an additional element of the match-data is a
9676 buffer, restore it to last_thing_searched.
9677 (save_search_regs): Save last_thing_searched as part of the match data.
9678 (restore_match_data): Restore it again.
9679
9680 2004-06-23 Luc Teirlinck <teirllm@auburn.edu>
9681
9682 * keymap.c (Ftext_char_description): Doc fix.
9683 * doc.c (Fsnarf_documentation): Doc fix.
9684
9685 2004-06-22 Kim F. Storm <storm@cua.dk>
9686
9687 * fns.c (Fmapcar, Fmapconcat): GCPRO the args array.
9688
9689 * lisp.h (struct Lisp_Save_Value): New member dogc.
9690 (SAFE_ALLOCA_LISP): Change second arg to number of elements.
9691 Set dogc member in Lisp_Save_Value object so it will be GC'ed.
9692 (SAFE_FREE_LISP): New macro.
9693
9694 * alloc.c (safe_alloca_unwind): Clear dogc and pointer members.
9695 (make_save_value): Init new dogc member.
9696 (mark_object): Mark Lisp_Save_Value pointer array if dogc is set.
9697
9698 * fns.c (Fmapconcat, Fmapcar): Use new SAFE_ALLOCA_LISP and
9699 SAFE_FREE_LISP macros.
9700
9701 2004-06-22 Kim F. Storm <storm@cua.dk>
9702
9703 * lisp.h (SAFE_ALLOCA_LISP): New macro to allocate Lisp_Objects.
9704 Temporarily inhibits GC if memory is xmalloc'ed, as the Lisp_Objects
9705 in that memory area are unknown to GC. Add comments.
9706
9707 * fns.c (Fmapconcat, Fmapcar): Use SAFE_ALLOCA_LISP.
9708
9709 2004-06-21 Kim F. Storm <storm@cua.dk>
9710
9711 * lisp.h (MAX_ALLOCA): Define here.
9712 (safe_alloca_unwind): Add prototype.
9713 (USE_SAFE_ALLOCA, SAFE_ALLOCA, SAFE_FREE): New macros.
9714
9715 * alloc.c (safe_alloca_unwind): New function.
9716
9717 * casefiddle.c (casify_object): Use SAFE_ALLOCA.
9718
9719 * charset.c (Fstring): Use SAFE_ALLOCA.
9720
9721 * coding.c (MAX_ALLOCA): Remove define.
9722
9723 * data.c (MAX_ALLOCA): Remove define.
9724 (Faset): Use SAFE_ALLOCA.
9725
9726 * editfns.c (Fformat, Ftranspose_regions): Use SAFE_ALLOCA.
9727
9728 * fns.c (string_make_multibyte, string_to_multibyte)
9729 (string_make_unibyte, Fmapconcat, Fmapcar): Use SAFE_ALLOCA.
9730 (MAX_ALLOCA): Remove define.
9731 (Fbase64_encode_region, Fbase64_encode_string)
9732 (Fbase64_decode_region, Fbase64_decode_string): Use SAFE_ALLOCA.
9733 (Fbase64_encode_region, Fbase64_encode_string): Fix potential
9734 memory leak if encoding fails.
9735
9736 * xdisp.c (add_to_log): Use SAFE_ALLOCA.
9737
9738 2004-06-21 Eli Zaretskii <eliz@gnu.org>
9739
9740 * print.c (Fwith_output_to_temp_buffer): Doc fix.
9741
9742 2004-06-20 Richard M. Stallman <rms@gnu.org>
9743
9744 * xfaces.c (Finternal_copy_lisp_face): Small cleanup; doc fix.
9745
9746 * search.c (match_limit): Cleaner err msg when no match data available.
9747
9748 * window.c (syms_of_window): Doc fix.
9749
9750 * keyboard.c (command_loop_1): Handle values `only' and `identity'
9751 for Vtransient_mark_mode.
9752
9753 * buffer.c (syms_of_buffer): Doc fix.
9754
9755 2004-06-21 David Kastrup <dak@gnu.org>
9756
9757 * minibuf.c (Ftry_completion, Fall_completions): Do lazy binding
9758 and unbinding of `case-fold-search' according to
9759 `completion-ignore-case' around calls of string-match and
9760 predicates, respectively. Should give satisfactory performance
9761 in all relevant cases.
9762
9763 2004-06-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9764
9765 * xterm.c (x_draw_image_foreground_1): Subtract slice.x/y from
9766 clip_x/y_origin.
9767
9768 * fns.c (string_to_multibyte): Use xmalloc/xfree instead of alloca.
9769
9770 * macfns.c (Fx_display_color_cells): Do not limit return value to 256.
9771
9772 * macterm.c (mac_initialize_display_info): Initialize n_planes correctly
9773 on Mac OSX.
9774
9775 2004-06-16 Luc Teirlinck <teirllm@auburn.edu>
9776
9777 * buffer.c (syms_of_buffer): Clarify `fill-column' docstring.
9778
9779 2004-06-16 Kim F. Storm <storm@cua.dk>
9780
9781 * dispextern.h (Vimage_types): Remove extern.
9782
9783 2004-06-16 Miles Bader <miles@gnu.org>
9784
9785 * image.c (lookup_image_type): Initialize image type if necessary.
9786
9787 2004-06-15 Kim F. Storm <storm@cua.dk>
9788
9789 * xdisp.c (try_cursor_movement): Exclude header line from scroll
9790 margin at top of window.
9791 (try_window_reusing_current_matrix): Calculate proper cursor position
9792 after scrolling up with non-zero scroll margin, as the old cursor
9793 position corresponds to value of PT before executing this command.
9794 (try_window_id): Consider scroll margin at bottom of window too;
9795 otherwise we fail to scroll when hl-line-mode is enabled.
9796
9797 * syntax.c (skip_chars): Only recognize [:class:] when it has the
9798 proper format and class is a lower-case word.
9799
9800 2004-06-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
9801
9802 * gtkutil.c (xg_get_image_for_pixmap): New function.
9803 (xg_get_gdk_pixmap_and_mask): Remove.
9804 (update_frame_tool_bar): Call xg_get_image_for_pixmap instead of
9805 xg_get_gdk_pixmap_and_mask.
9806
9807 * xterm.h (struct x_display_info): Typo in comment fixed.
9808
9809 2004-06-14 Juanma Barranquero <lektu@terra.es>
9810
9811 * dispextern.h (Vimage_types): Make it conditional on
9812 HAVE_WINDOW_SYSTEM.
9813
9814 * image.c (Vimage_types): Move from xdisp.c.
9815 (Vimage_type_cache): New variable.
9816 (define_image_type): New argument indicating whether an image
9817 library was loaded; cache loaded status and return t on success,
9818 nil otherwise.
9819 (CACHE_IMAGE_TYPE, ADD_IMAGE_TYPE): New macros.
9820 (w32_delayed_load): New function to load an image library from a
9821 list of possible filenames.
9822 (init_xpm_functions, init_png_functions, init_jpeg_functions)
9823 (init_tiff_functions, init_gif_functions): Use `w32_delayed_load'.
9824 (CHECK_LIB_AVAILABLE): Call `define_image_library' with new argument.
9825 (Finit_image_library): New function, extracted from `init_image'.
9826 Try to initialize an image library on demand and cache whether we
9827 were successful or not.
9828 (syms_of_image): Initialize `Vimage_types' and
9829 `Vimage_type_cache'. Add recognized image types to Vimage_types.
9830 Export `init-image-library'.
9831 (init_image): Remove initialization of all image types, except xbm
9832 and pbm.
9833
9834 * xdisp.c (Vimage_types): Delete (moved to image.c).
9835
9836 2004-06-14 Andreas Schwab <schwab@suse.de>
9837
9838 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
9839 Avoid calling specbind when completion-regexp-list is empty.
9840
9841 2004-06-13 Richard M. Stallman <rms@gnu.org>
9842
9843 * regex.h (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9844 (re_wctype, re_iswctype, re_wctype_to_bit):
9845 Non-function definitions moved here from regex.c.
9846
9847 * regex.c (re_wctype, re_iswctype): Function defs longer static.
9848 (CHAR_CLASS_MAX_LENGTH, re_wctype_t, re_wchar_t)
9849 (re_wctype, re_iswctype, re_wctype_to_bit):
9850 Non-function definitions moved to regex.h.
9851
9852 * window.c (Fselect_window): Doc fix.
9853
9854 * syntax.c: Include regex.h.
9855 (skip_chars): New arg HANDLE_ISO_CLASSES. Callers changed.
9856 If requested, make a list of classes, then check the scanned
9857 chars for membership in them.
9858 (in_classes): New function.
9859 Doc fix.
9860
9861 * keyboard.c (cmd_error): Don't call any_kboard_state
9862 if inside a recursive edit level.
9863
9864 2004-06-13 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
9865
9866 * keyboard.c (command_loop): Call any_kboard_state before
9867 command_loop_2 when at top level.
9868
9869 2004-06-13 Andreas Schwab <schwab@suse.de>
9870
9871 * print.c (print_object): Always use %ld for printing EMACS_INT.
9872
9873 * keyboard.c (cancel_hourglass_unwind): Return a value.
9874 (modify_event_symbol): Always use %ld for printing EMACS_INT.
9875 (Fexecute_extended_command): Likewise.
9876
9877 * syntax.h (SYNTAX_ENTRY_FOLLOW_PARENT): Rename local variable to
9878 avoid clashes.
9879 (SYNTAX): Likewise.
9880 (SYNTAX_WITH_FLAGS): Likewise.
9881 (SYNTAX_MATCH): Likewise.
9882
9883 * syntax.c (char_quoted): Avoid warning about undefined operation.
9884 (find_defun_start): Likewise.
9885 (scan_lists): Likewise.
9886 (INC_FROM): Likewise.
9887 (scan_sexps_forward): Likewise.
9888
9889 * image.c: Include <ctype.h>.
9890
9891 * xfaces.c (face_attr_equal_p): Declare parameters.
9892
9893 2004-06-13 Kenichi Handa <handa@m17n.org>
9894
9895 * ccl.c (CCL_READ_CHAR): If hit EOF, set REG to -1.
9896
9897 2004-06-12 Matthew Mundell <matt@mundell.ukfsn.org>
9898
9899 * eval.c (Fdefun): Signal an error if NAME is not a symbol.
9900
9901 2004-06-12 Kenichi Handa <handa@m17n.org>
9902
9903 * ccl.c (CCL_CALL_FOR_MAP_INSTRUCTION): Save eof_ic in
9904 ccl_prog_stack_struct and update it.
9905 (CCL_INVALID_CMD): If CCL_DEBUG is defined, call ccl_debug_hook.
9906 (CCL_READ_CHAR): Get instruction counter from eof_ic, not from
9907 ccl->eof_ic on EOF.
9908 (ccl_debug_hook): New function.
9909 (struct ccl_prog_stack): New member eof_ic.
9910 (ccl_driver): Handle EOF in subrountine call correctly.
9911
9912 2004-06-11 Kenichi Handa <handa@m17n.org>
9913
9914 * coding.c (encode_coding_string): Check CODING_FINISH_INTERRUPT.
9915
9916 2004-06-11 Kim F. Storm <storm@cua.dk>
9917
9918 * emacs.c (shut_down_emacs): Inhibit redisplay during shutdown.
9919
9920 2004-06-11 Juanma Barranquero <lektu@terra.es>
9921
9922 * keyboard.c (Fposn_at_point): Doc fix.
9923
9924 2004-06-11 David Kastrup <dak@gnu.org>
9925
9926 * search.c (match_limit): Don't flag an error if match-data
9927 exceeding the allocated search_regs.num_regs gets requested, just
9928 return Qnil.
9929
9930 2004-06-08 Miles Bader <miles@gnu.org>
9931
9932 * xfaces.c (push_named_merge_point): Return 0 when a cycle is detected.
9933
9934 2004-06-07 Juanma Barranquero <lektu@terra.es>
9935
9936 * editfns.c (Fuser_login_name, Ffloat_time, Fencode_time)
9937 (Fcurrent_time_string, Fcurrent_time_zone)
9938 (Finsert_buffer_substring, Ftranspose_regions): Doc fixes.
9939
9940 2004-06-07 Miles Bader <miles@gnu.org>
9941
9942 * xfaces.c (struct named_merge_point): New type.
9943 (push_named_merge_point): New function.
9944 (merge_named_face): New function.
9945 (merge_face_ref, face_at_buffer_position, face_at_string_position):
9946 Use `merge_named_face'.
9947 (merge_face_inheritance): Function removed.
9948 (merge_face_ref): Rename from `merge_face_vector_with_property'.
9949 Add new `err_msgs' and `named_merge_points' args. Return error
9950 status. Only print error messages if ERR_MSGS is true. Don't try to
9951 do :inherit attribute validation.
9952 (merge_face_heights): Handle `unspecified' in both directions.
9953 (merge_face_vectors): Rename `cycle_check' arg to `named_merge_points'.
9954 Call `merge_face_ref' instead of `merge_face_inheritance'.
9955 (Fdisplay_supports_face_attributes_p, Fface_attributes_as_vector)
9956 (compute_char_face, face_at_buffer_position)
9957 (face_at_string_position): Call `merge_face_ref' instead of
9958 `merge_face_vector_with_property'.
9959
9960 2004-06-07 Kenichi Handa <handa@m17n.org>
9961
9962 * coding.c (find_safe_codings): Check NILP (safe_codings) only at
9963 the necessary places.
9964
9965 2004-06-07 Kim F. Storm <storm@cua.dk>
9966
9967 * process.c (Fdelete_process): Undo 2004-05-28 change.
9968 Instead, call status_notify also for network process.
9969 (status_message): Use process instead of status as arg.
9970 Give messages "deleted" or "connection broken by remote peer" for
9971 an exited network process.
9972 (status_notify): Change call to status_message.
9973 (read_process_output): Increase readmax to 4096. Do not increase
9974 buffer size for datagram channels (default is now large enough).
9975
9976 2004-06-06 Steven Tamm <tamm@Steven-Tamms-Computer.local>
9977
9978 * macfns.c (x_create_tip_frame): Fix Mac OS X 10.1 compilation
9979 problem due to newly defined variable.
9980
9981 2004-06-06 Miles Bader <miles@gnu.org>
9982
9983 * xfaces.c (Fdisplay_supports_face_attributes_p): Give up
9984 immediately if non-interactive or not initialized.
9985
9986 2004-06-05 Richard M. Stallman <rms@gnu.org>
9987
9988 * minibuf.c (Fcompleting_read): Doc fix.
9989
9990 2004-06-05 Andreas Schwab <schwab@suse.de>
9991
9992 * macfns.c (x_create_tip_frame): Fix declaration after statement.
9993
9994 2004-06-05 Juanma Barranquero <lektu@terra.es>
9995
9996 * keymap.c (Fdescribe_vector): Fix docstring.
9997 (Fkey_description, Fglobal_key_binding): Fix typo in docstring.
9998
9999 2004-06-05 Miles Bader <miles@gnu.org>
10000
10001 * xfaces.c (tty_supports_face_attributes_p): Make sure the specified
10002 attributes have different values than the default face.
10003
10004 2004-06-04 Eli Zaretskii <eliz@gnu.org>
10005
10006 * xfaces.c (x_supports_face_attributes_p): Make this function
10007 conditional on HAVE_WINDOW_SYSTEM.
10008 (Fdisplay_supports_face_attributes_p) [HAVE_WINDOW_SYSTEM]:
10009 Don't call x_supports_face_attributes_p if it was not compiled in.
10010
10011 2004-06-04 Miles Bader <miles@gnu.org>
10012
10013 * xfaces.c (tty_supports_face_attributes_p): New function, mostly
10014 from Ftty_supports_face_attributes_p.
10015 (x_supports_face_attributes_p): New function.
10016 (Ftty_supports_face_attributes_p): Function deleted.
10017 (Fdisplay_supports_face_attributes_p): New function.
10018 (syms_of_xfaces): Initialize Sdisplay_supports_face_attributes_p.
10019 (face_attr_equal_p): New function.
10020 (lface_equal_p): Use it.
10021
10022 2004-06-03 Juanma Barranquero <lektu@terra.es>
10023
10024 * w32fns.c (Fx_display_grayscale_p, Fw32_send_sys_command)
10025 (Vw32_color_map): Fix typo in docstring.
10026 (Fx_create_frame, Fw32_find_bdf_fonts, Fx_show_tip)
10027 (Fw32_unregister_hot_key, Fw32_reconstruct_hot_key):
10028 Make argument names match their use in docstring.
10029
10030 2004-06-02 Juanma Barranquero <lektu@terra.es>
10031
10032 Work around bugs/problems with MinGW builds of graphics libraries
10033 called from MSVC builds of Emacs.
10034
10035 * image.c (lookup_image): Make pointer to img static.
10036 (png_read_from_memory): Disable "global" optimization.
10037
10038 2004-06-01 Stefan Monnier <monnier@iro.umontreal.ca>
10039
10040 * eval.c (Fcondition_case): Fix usage. Simplify.
10041
10042 * mem-limits.h (EXCEEDS_LISP_PTR) [USE_LSB_TAG]: Never true.
10043
10044 2004-05-29 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10045
10046 * macfns.c: Don't include ccl.h.
10047 [MAC_OSX]: Don't include QuickTime/QuickTime.h.
10048 [!MAC_OSX]: Don't include alloca.h, Windows.h, Gestalt.h, or
10049 TextUtils.h.
10050 (Fx_create_frame): Sync with xfns.c. Initialize cursor descriptors.
10051 (Fx_display_mm_height, Fx_display_mm_width): Calculate length from
10052 display height/width.
10053 (compute_tip_xy, Vx_max_tooltip_size): Declare.
10054 (unwind_create_tip_frame, compute_tip_xy): New functions.
10055 (x_create_tip_frame, Fx_show_tip, Fx_hide_tip): Sync with xfns.c.
10056 (syms_of_macfns): Initialize Qcancel_timer, Vx_max_tooltip_size,
10057 and last_show_tip_args.
10058
10059 * macgui.h [!MAC_OSX]: Include Gestalt.h.
10060 (Cursor, No_Cursor): New defines.
10061 [!TARGET_API_MAC_CARBON] (SetPortWindowPort): New compatibility macro.
10062 [!TARGET_API_MAC_CARBON] (arrow_cursor): Declare.
10063
10064 * macmenu.c (mac_menu_show, mac_dialog): Use SetPortWindowPort.
10065
10066 * macterm.c: Don't include Gestalt.h.
10067 (enum mouse_tracking_type, mouse_tracking_in_progress): Remove.
10068 (XDrawLine, XClearArea, XClearWindow, mac_draw_bitmap)
10069 (mac_set_clip_rectangle, mac_reset_clipping, XCreatePixmap)
10070 (XFillRectangle, mac_draw_rectangle, mac_draw_string_common)
10071 (mac_copy_area, mac_copy_area_with_mask, x_update_end)
10072 (construct_mouse_click, XTmouse_position)
10073 (x_scroll_bar_report_motion, x_calc_absolute_position)
10074 (do_mouse_moved, do_zoom_window, mac_do_receive_drag)
10075 (XTread_socket, make_mac_frame): Use SetPortWindowPort.
10076 (note_mouse_movement): Clear the mouse face and reset the pointer
10077 shape when the pointer goes outside the frame without grabbing.
10078 (mac_front_window): New function.
10079 (mac_window_to_frame): New macro.
10080 (XTmouse_position, x_scroll_bar_report_motion, do_window_update)
10081 (do_window_activate, do_window_deactivate, do_app_resume)
10082 (do_app_suspend, do_mouse_moved, do_menu_choice, do_grow_window)
10083 (do_zoom_window, mac_do_receive_drag, XTread_socket)
10084 (mac_check_for_quit_char): Use mac_front_window and/or
10085 mac_window_to_frame.
10086 (x_scroll_bar_handle_click): Set `(PORTION . WHOLE)' part in a
10087 scroll-bar click event.
10088 (mac_define_frame_cursor): Change the pointer shape.
10089 (x_free_frame_resources): Reset tip_window to NULL when it is
10090 disposed of.
10091 [!TARGET_API_MAC_CARBON] (arrow_cursor): New variable.
10092 [!TARGET_API_MAC_CARBON] (do_init_managers): Initialize arrow_cursor.
10093 (do_window_update): Don't do anything if the updated window is the
10094 tooltip window.
10095 (do_mouse_moved): Handle mouse movement events here (previously in
10096 XTread_socket). Clear the mouse face if
10097 dpyinfo->mouse_face_hidden is set.
10098 (do_os_event, do_events): Remove (now in XTread_socket).
10099 (XTread_socket): Immediately return if interrupt_input_blocked.
10100 Loop until all the events in the queue are processed.
10101 Rearrange codes for mouse grabbing. Add tooltip support. Include the
10102 contents of do_os_event and do_events. Remove mouse movement
10103 handling (now in do_mouse_moved). Add the case where
10104 Vmouse_highlight has an integer value.
10105 (NewMacWindow): Remove.
10106 (make_mac_frame): Do what NewMacWindow previously did. Don't do
10107 excess initializations.
10108 (make_mac_terminal_frame): Previous initializations in
10109 make_mac_frame are moved here.
10110 (mac_initialize_display_info):
10111 Initialize dpyinfo->mouse_face_overlay and dpyinfo->mouse_face_hidden.
10112
10113 * xdisp.c [MAC_OS] (No_Cursor): Remove variable.
10114 (define_frame_cursor1): Don't treat HAVE_CARBON as a special case.
10115
10116 2004-05-29 Richard M. Stallman <rms@gnu.org>
10117
10118 * lisp.h (truncate_undo_list): Update decl.
10119
10120 * alloc.c (undo_outer_limit): New variable.
10121 (syms_of_alloc): Defvar it.
10122 (Fgarbage_collect): Pass undo_outer_limit to truncate_undo_list.
10123
10124 * undo.c (truncate_undo_list): New arg LIMITSIZE.
10125
10126 * alloc.c (lisp_align_malloc): Check for base == 0
10127 regardless of HAVE_POSIX_MEMALIGN.
10128 Clean up HAVE_POSIX_MEMALIGN handling of `err'.
10129
10130 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
10131
10132 * alloc.c: Undo Kim's recent changes and fix the same bug differently.
10133 (marker_blocks_pending_free): Remove.
10134 (Fgarbage_collect): Sweep after cleaning up undo-lists.
10135 Mark the undo lists after claning them up.
10136 Don't free block in marker_blocks_pending_free.
10137 (mark_buffer): Don't mark undo_list.
10138 (gc_sweep): Sweep hash-tables and strings first.
10139 Do free marker blocks that are empty.
10140
10141 2004-05-28 Jim Blandy <jimb@redhat.com>
10142
10143 * regex.c (print_partial_compiled_pattern): Add missing 'break'
10144 after 'case wordend'. For symbeg and symend, print to stderr,
10145 like the other cases.
10146
10147 2004-05-28 Noah Friedman <friedman@splode.com>
10148
10149 * process.c (Fdelete_process): Do not call remove_process.
10150
10151 2004-05-28 Stefan Monnier <monnier@iro.umontreal.ca>
10152
10153 * alloc.c (struct backtrace): Remove.
10154 (Fgarbage_collect): Use the new mark_backtrace.
10155
10156 * eval.c (mark_backtrace): New function.
10157
10158 * minibuf.c (run_exit_minibuf_hook): New function.
10159 (read_minibuf_unwind): Don't run exit-minibuffer-hook any more.
10160 (read_minibuf): Use separate unwind handler to run exit-minibuf-hook.
10161
10162 2004-05-27 Kim F. Storm <storm@cua.dk>
10163
10164 * xdisp.c (back_to_previous_visible_line_start): Skip backwards
10165 over display properties, e.g. images, that replace buffer text.
10166
10167 2004-05-25 Kim F. Storm <storm@cua.dk>
10168
10169 * alloc.c (marker_blocks_pending_free): New var.
10170 (gc_sweep): Store free marker blocks on that list.
10171 (Fgarbage_collect): Free them after undo-list cleanup.
10172
10173 * process.c (wait_reading_process_input): Check connect_wait_mask
10174 before actually accepting connection in case it has already been
10175 accepted due to recursion.
10176
10177 2004-05-23 K\e,Ba\e(Broly L\e,Bu\e(Brentey <lorentey@elte.hu>
10178
10179 * coding.c (Fset_safe_terminal_coding_system_internal):
10180 Set suppress_error in safe_terminal_coding, not terminal_coding.
10181
10182 2004-05-22 Richard M. Stallman <rms@gnu.org>
10183
10184 * alloc.c (Fmake_string): Doc fix.
10185
10186 * buffer.c (clone_per_buffer_values): Copy the alist of local vars,
10187 and the alist pairs too.
10188
10189 * casefiddle.c (casify_object): Return OBJ unchanged if not real char.
10190
10191 * emacs.c (main): Update copyright year.
10192
10193 * fileio.c (Fread_file_name): Expand DIR if not absolute.
10194
10195 * insdel.c (del_range_2, replace_range): Don't write an anchor
10196 if the gap is empty.
10197
10198 * xdisp.c (try_scrolling): If scroll-up-aggressively or
10199 scroll-down-aggressively is small but positive, put point
10200 near the screen edge.
10201
10202 2004-05-22 Juanma Barranquero <lektu@terra.es>
10203
10204 * keymap.c (Fdefine_key): Doc fix.
10205
10206 2004-05-22 Kim F. Storm <storm@cua.dk>
10207
10208 * alloc.c (struct backtrace): Add debug_on_exit member.
10209 (Fgarbage_collect): Clear out buffer undo_list markers after gc_sweep.
10210 Identify those markers as Lisp_Misc_Free objects. Clear car and cdr of
10211 the removed cons cells.
10212 (mark_object): Undo previous change - disallow Lisp_Misc_Free objects.
10213 (gc_sweep): Clear cons_blocks before sweeping strings, so we don't have
10214 any cons cells pointing to unallocated stings.
10215 Do not lisp_free any marker blocks, as there may still be pointers
10216 to them from buffer undo lists at this stage of GC.
10217
10218 * keyboard.c (struct backtrace): Add debug_on_exit member.
10219 (Fcommand_execute): Clear it.
10220
10221 2004-05-20 Luc Teirlinck <teirllm@auburn.edu>
10222
10223 * intervals.c (lookup_char_property): Do not prematurely return nil.
10224
10225 2004-05-19 Jim Blandy <jimb@redhat.com>
10226
10227 Add support for new '\_<' and '\_>' regexp operators, matching the
10228 beginning and end of symbols.
10229
10230 * regex.c (enum syntaxcode): Add Ssymbol.
10231 (init_syntax_once): Set the syntax for '_' to Ssymbol, not Sword.
10232 (re_opcode_t): New opcodes `symbeg' and `symend'.
10233 (print_partial_compiled_pattern): Print the new opcodes properly.
10234 (regex_compile): Parse the new operators.
10235 (analyse_first): Skip sym(beg|end) (they match only the empty string).
10236 (mutually_exclusive_p): `symend' is mutually exclusive with \s_ and
10237 \sw; `symbeg' is mutually exclusive with \S_ and \Sw.
10238 (re_match_2_internal): Match symbeg and symend.
10239
10240 * search.c (trivial_regexp_p): \_ is no longer a trivial regexp.
10241
10242 2004-05-19 Kim F. Storm <storm@cua.dk>
10243
10244 * .gdbinit (xsymbol): Fix last change.
10245
10246 2004-05-18 Stefan Monnier <monnier@iro.umontreal.ca>
10247
10248 * .gdbinit (xprintstr): New fun.
10249 (xstring, xprintsym): Use it.
10250
10251 * w32proc.c (create_child): Use INTMASK.
10252
10253 * alloc.c (Fgarbage_collect): Do all the marking before flushing
10254 unmarked elements of the undo list.
10255
10256 2004-05-18 David Ponce <david@dponce.com>
10257
10258 * print.c (print): Reset print_depth before to call print_object.
10259
10260 2004-05-18 Jason Rumney <jasonr@gnu.org>
10261
10262 * w32console.c: Prefix RIF functions with w32con_ to avoid
10263 namespace clash with functions in term.c and w32term.c.
10264
10265 * w32menu.c (add_menu_item, w32_menu_display_help)
10266 [USE_LISP_UNION_TYPE]: Cast from Lisp_Object using i member.
10267
10268 * w32term.h (display_x_get_resource, vga_stdcolor_name): Add prototype.
10269
10270 2004-05-18 Eli Zaretskii <eliz@gnu.org>
10271
10272 * lisp.h (DECL_ALIGN): Remove restriction on MS-DOS systems.
10273
10274 * msdos.c (syms_of_msdos): Initialize dos-unsupported-char-glyph
10275 with make_number.
10276 (IT_write_glyphs): Extract glyph from dos-unsupported-char-glyph
10277 with XINT.
10278
10279 2004-05-18 Kim F. Storm <storm@cua.dk>
10280
10281 * blockinput.h (INPUT_BLOCKED_P): New macros.
10282
10283 * keyboard.c (Frecursive_edit): Return immediately if input blocked.
10284 (Ftop_level): Unblock input if blocked.
10285
10286 * buffer.h (GET_OVERLAYS_AT): New macro.
10287 * msdos.c (IT_note_mouse_highlight): Use it.
10288 * textprop.c (get_char_property_and_overlay): Use it.
10289 * xdisp.c (next_overlay_change, note_mouse_highlight): Use it.
10290 * xfaces.c (face_at_buffer_position): Use it.
10291
10292 * print.c (print_object): Increase buf size.
10293
10294 2004-05-17 Jason Rumney <jasonr@gnu.org>
10295
10296 * w32fns.c (Fw32_register_hot_key, Fw32_unregister_hot_key)
10297 (Fw32_toggle_lock_key) [USE_LISP_UNION_TYPE]: Cast from
10298 Lisp_Object using i member.
10299 (w32_quit_key): Rename from Vw32_quit_key, and make an int.
10300 (syms_of_w32fns, globals_of_w32fns): Use Lisp_Object and int
10301 consistently.
10302
10303 * w32proc.c (create_child): Use make_number instead of masking pid.
10304
10305 * w32fns.c (w32_color_map_lookup): Return a Lisp_Object.
10306 (x_to_w32_charset, w32_to_x_charset, w32_to_all_x_charsets):
10307 Use EQ to compare Lisp_Objects.
10308 (w32_parse_hot_key): Use int for lisp_modifiers consistently.
10309
10310 * w32term.c (w32_num_mouse_buttons): Rename from
10311 Vw32_num_mouse_buttons and make it an int.
10312
10313 * w32.c (init_environment): Use it.
10314
10315 * w32fns.c (w32_wnd_proc): Likewise.
10316
10317 * w32proc.c (w32_pipe_read_delay): Rename from
10318 Vw32_pipe_read_delay and make it an int.
10319
10320 * w32.c (_sys_read_ahead): Use it.
10321
10322 * lisp.h (egetenv) [USE_CRT_DLL]: Remove condition.
10323
10324 * w32proc.c (create_child) [USE_LSB_TAG]: Don't try to mask pid.
10325
10326 * w32inevt.c (w32_console_mouse_position, do_mouse_event)
10327 (key_event): Don't mix Lisp_Object and int.
10328
10329 * w32heap.c (init_heap) [USE_LSB_TAG]: Don't check heap location.
10330
10331 * keyboard.c (kbd_buffer_get_event): Don't use event->code and
10332 modifiers in language change event.
10333
10334 2004-05-17 Kim F. Storm <storm@cua.dk>
10335
10336 * alloc.c (mark_object): Ignore Lisp_Misc_Free objects.
10337 Such objects may be freed markers which still exist on an undo list.
10338
10339 2004-05-16 Juanma Barranquero <lektu@terra.es>
10340
10341 * data.c (Fset_default): Make argument names match their use in
10342 docstring.
10343
10344 2004-05-15 Andreas Schwab <schwab@suse.de>
10345
10346 * emacs.c (gdb_array_mark_flag): Define.
10347 * .gdbinit: Mask off gdb_array_mark_flag from vector sizes.
10348
10349 2004-05-15 Eli Zaretskii <eliz@gnu.org>
10350
10351 * lisp.h (DECL_ALIGN) [MSDOS]: Don't define DECL_ALIGN to use
10352 __attribute__((__aligned__)), so that USE_LSB_TAG would not become
10353 defined for the MS-DOS build.
10354
10355 2004-05-14 Stefan Monnier <monnier@iro.umontreal.ca>
10356
10357 * w32fns.c (Fw32_define_rgb_color): Avoid XSET.
10358
10359 2004-05-14 Kenichi Handa <handa@m17n.org>
10360
10361 * ccl.c (Fccl_execute_on_string): Fix setting elements of STATUS.
10362
10363 2004-05-14 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10364
10365 * lisp.h (Vx_resource_name, Vx_resource_class): Move from xfns.c
10366 section to frame.c section.
10367 (Fxw_display_color_p, Fx_file_dialog): Declare if
10368 HAVE_WINDOW_SYSTEM defined.
10369
10370 * macfns.c (Fx_create_frame): Fix int/Lisp_Object mixup.
10371
10372 * macmenu.c (set_frame_menubar): Use NILP to test a lisp value.
10373
10374 * macterm.c (mac_get_emulated_btn, mac_event_to_emacs_modifiers)
10375 (mac_get_mouse_btn): Use NILP and EQ to test/compare lisp values.
10376 (XTread_socket): Fix int/Lisp_Object mixup.
10377 (mac_check_for_quit_char): Fix pointer/Lisp_Object mixup.
10378
10379 * macterm.h (struct frame, struct face, struct image)
10380 (display_x_get_resource, Fx_display_color_p)
10381 (Fx_display_grayscale_p, Fx_display_planes, x_free_gcs):
10382 Add prototypes.
10383
10384 2004-05-14 Kim F. Storm <storm@cua.dk>
10385
10386 * process.c (wait_reading_process_input): Make reentrant.
10387 Make Available and Connecting non-static. Save and restore value
10388 of waiting_for_user_input_p.
10389
10390 2004-05-13 Kim F. Storm <storm@cua.dk>
10391
10392 * keyboard.c (mark_kboards): Don't mark x and y members
10393 that are overloaded in selection request events.
10394
10395 2004-05-13 Stefan Monnier <monnier@iro.umontreal.ca>
10396
10397 * lisp.h (USE_LSB_TAG): Make it the default when it is known to work.
10398
10399 2004-05-13 Glenn Morris <gmorris@ast.cam.ac.uk>
10400
10401 * window.c (Fdisplay_buffer, Fsplit_window)
10402 (split-height-threshold): Doc fix.
10403
10404 2004-05-13 Juanma Barranquero <lektu@terra.es>
10405
10406 * xfaces.c (Ftty_supports_face_attributes_p)
10407 (Finternal_copy_lisp_face): Fix typo in docstring.
10408 (Finternal_get_lisp_face_attribute): Fix docstring.
10409
10410 2004-05-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10411
10412 * xfns.c (syms_of_xfns): Provide x-toolkit also for GTK.
10413
10414 2004-05-11 Steven Tamm <steventamm@mac.com>
10415
10416 * macfns.c (Fx_create_frame): Default to using tool-bar by
10417 setting tool-bar-lines to 1 in default-frame-alist.
10418
10419 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10420
10421 * image.c (xpm_scan, xpm_make_color_table_v, xpm_put_color_table_v)
10422 (xpm_get_color_table_v, xpm_make_color_table_h)
10423 (xpm_put_color_table_h, xpm_get_color_table_h)
10424 (xpm_str_to_color_key, xpm_load_image, xpm_load)
10425 (syms_of_image): Support XPM on Carbon Emacs. Does not
10426 depend on libXpm, but only supports XPM version 3 without extensions.
10427
10428 2004-05-11 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10429
10430 * macterm.c (x_flush, XTframe_up_to_date): Use FRAME_MAC_P
10431 instead of FRAME_X_P
10432
10433 2004-05-11 Kim F. Storm <storm@cua.dk>
10434
10435 * process.c (read_process_output): Grow decoding_buf when needed;
10436 this could cause a crash in allocate_string and compact_small_strings.
10437
10438 2004-04-29 Jim Blandy <jimb@redhat.com>
10439
10440 * regex.c (mutually_exclusive_p): In 'case wordbeg', compare op2
10441 against proper opcode.
10442
10443 2004-05-10 Juanma Barranquero <lektu@terra.es>
10444
10445 * process.c (Fstart_process): Fix docstring.
10446
10447 * charset.c (Fget_unused_iso_final_char): Fix typos in docstring.
10448 (Fchar_bytes, Fchar_width, Fstring_width, Fchar_direction)
10449 (Fsplit_char, Fchar_charset): Make argument names match their use
10450 in docstring.
10451
10452 2004-05-10 Richard M. Stallman <rms@gnu.org>
10453
10454 * print.c (print_preprocess): Use being_printed, loop_count and
10455 halftail to detect overdeep nesting and cyclic cdr chains.
10456
10457 2004-05-10 Andreas Schwab <schwab@suse.de>
10458
10459 * lisp.h (Fmake_symbolic_link): Declare.
10460
10461 * fileio.c (Frename_file): Remove extra argument in call to
10462 Fmake_symbolic_link.
10463
10464 2004-05-10 Kim F. Storm <storm@cua.dk>
10465
10466 * xdisp.c (calc_line_height_property): Use string position when
10467 object is a string.
10468
10469 2004-05-10 Kenichi Handa <handa@m17n.org>
10470
10471 * print.c (temp_output_buffer_setup): Bind inhibit-read-only and
10472 inhibit-modification-hooks to t temporarily before calling
10473 Ferase_buffer.
10474
10475 * xfns.c (x_create_tip_frame): Bind inhibit-read-only and
10476 inhibit-modification-hooks to t temporarily before calling
10477 Ferase_buffer.
10478
10479 * w32fns.c (x_create_tip_frame): Bind inhibit-read-only and
10480 inhibit-modification-hooks to t temporarily before calling
10481 Ferase_buffer.
10482
10483 * fns.c (count_combining): Delete it.
10484 (concat): Don't check combining bytes.
10485
10486 2004-05-09 Jason Rumney <jasonr@gnu.org>
10487
10488 * w32fns.c (Vw32_ansi_code_page): New Lisp variable.
10489 (globals_of_w32fns): Set it.
10490
10491 2004-05-09 Piet van Oostrum <piet@cs.uu.nl>
10492
10493 * data.c (Fquo): Simplify.
10494
10495 2004-05-08 Peter Whaite <emacs@whaite.ca> (tiny change)
10496
10497 * data.c (Fquo): If any argument is float, do the computation in
10498 floating point.
10499
10500 2004-05-08 Juanma Barranquero <lektu@terra.es>
10501
10502 * process.c (Fwaiting_for_user_input_p, Fmake_network_process)
10503 (Fset_process_query_on_exit_flag, Vprocess_adaptive_read_buffering):
10504 Fix spelling of Emacs on docstring.
10505 (Fset_process_coding_system, Fprocess_coding_system)
10506 (Fset_process_filter_multibyte, Fprocess_filter_multibyte_p):
10507 Make argument names match their use in docstring.
10508 (Fprocess_id, Fprocess_query_on_exit_flag, Finterrupt_process):
10509 Fix docstring.
10510
10511 * editfns.c (Finsert_buffer_substring): Make argument names match their
10512 use in docstring.
10513
10514 * syntax.c (Fmodify_syntax_entry): Fix docstring.
10515
10516 2004-05-07 Steven Tamm <steventamm@mac.com>
10517
10518 * macterm.c (mac_check_for_quit_char): Adding BLOCK_INPUT
10519 around call to ReceiveEvent to avoid certain crashes.
10520
10521 2004-05-07 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
10522
10523 * macterm.c (mac_draw_line_to_pixmap, XCreatePixmapFromBitmapData)
10524 (mac_fill_rectangle_to_pixmap, mac_draw_rectangle_to_pixmap)
10525 (mac_copy_area_to_pixmap, mac_copy_area_with_mask_to_pixmap):
10526 Save/restore the current graphics port and device handle when
10527 drawing into an offscreen graphics world.
10528
10529 * image.c [MAC_OS] (XPutPixel, XGetPixel, image_load_qt_1)
10530 (gif_load): Likewise.
10531
10532 2004-05-07 Juanma Barranquero <lektu@terra.es>
10533
10534 * window.c (Fset_window_buffer): Fix docstring.
10535
10536 2004-05-06 Thien-Thi Nguyen <ttn@gnu.org>
10537
10538 * emacs.c (main) [VMS]: Fix var ref.
10539
10540 2004-05-06 Romain Francoise <romain@orebokech.com>
10541
10542 * data.c (Fsetq_default): Fix docstring.
10543
10544 2004-05-06 Jason Rumney <jasonr@gnu.org>
10545
10546 * image.c (Display) [HAVE_NTGUI]: Redefine while loading xpm.h
10547 to avoid name clash.
10548
10549 2004-05-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10550
10551 * fileio.c (barf_or_query_if_file_exists): Use lstat.
10552 (Frename_file): Handle renaming of symlinks across file systems.
10553 (Frename_file): Put symlink handling inside #ifdef S_IFLNK.
10554
10555 2004-05-04 Kim F. Storm <storm@cua.dk>
10556
10557 * xdisp.c (Qtotal): New var.
10558 (syms_of_xdisp): Intern and staticpro it.
10559 (calc_line_height_property): New arg total. Set it if
10560 line-spacing property has format (total . VALUE).
10561 (x_produce_glyphs): Ignore line-spacing if line-height is 0.
10562 Handle total line-spacing property.
10563
10564 2004-05-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10565
10566 * gtkutil.c (xg_update_scrollbar_pos): Call XClearWindow to clear
10567 "under" scroll bar when size/position changes.
10568
10569 2004-05-03 Jason Rumney <jasonr@gnu.org>
10570
10571 * makefile.nt: Remove.
10572
10573 2004-05-02 Eli Zaretskii <eliz@gnu.org>
10574
10575 * syntax.h (SET_RAW_SYNTAX_ENTRY, SYNTAX_ENTRY_INT):
10576 Avoid compiler warnings.
10577
10578 * Makefile.in (region-cache.o): Depend on config.h.
10579
10580 2004-05-02 Romain Francoise <romain@orebokech.com>
10581
10582 * indent.c (compute_motion): Save vpos in prev_vpos when dealing
10583 with continuation lines, too.
10584
10585 2004-05-02 Thien-Thi Nguyen <ttn@gnu.org>
10586
10587 * syssignal.h (init_signals): Move decl outside `#ifdef POSIX_SIGNALS'.
10588
10589 2004-05-01 Stefan Monnier <monnier@iro.umontreal.ca>
10590
10591 * xdisp.c (calc_line_height_property): YAILOM (yet another
10592 int/Lisp_Object mixup).
10593
10594 2004-05-01 Eli Zaretskii <eliz@gnu.org>
10595
10596 * msdos.c (top-level): Add "#pragma pack(0)" after <dir.h>, to
10597 undo bad effect of pack(4) in some versions of system headers.
10598
10599 2004-05-01 Jason Rumney <jasonr@gnu.org>
10600
10601 * w32term.c (x_draw_hollow_cursor): Sync with xterm.c
10602
10603 2004-04-30 Kim F. Storm <storm@cua.dk>
10604
10605 * buffer.c (syms_of_buffer) <line-spacing>: Allow float value.
10606 (syms_of_buffer) <cursor-type>: Doc fix.
10607
10608 * dispextern.h (struct it): Remove member use_default_face.
10609 Add members override_ascent, override_descent, override_boff.
10610
10611 * xdisp.c (init_iterator): Handle line-spacing float value.
10612 Initialize override_ascent member.
10613 (append_space_for_newline): Reset override_ascent.
10614 Remove use_default_face.
10615 (calc_line_height_property): New function to calculate value of
10616 line-height and line-spacing properties. Look at overlays, too.
10617 Set override_ascent, override_descent, override_boff members when
10618 using another face than the current face. Float values are now
10619 relative to the frame default font, by default; accept a cons
10620 of ratio and face name to specify value relative to a specific face.
10621 (x_produce_glyphs): Use calc_line_height_property.
10622 Use override_ascent etc. when set to handle different face heights.
10623 A negative line-spacing property value is interpreted as a total
10624 line height, rather than inter-line spacing.
10625 (note_mouse_highlight): Allocate room for 40 overlays initially.
10626
10627 2004-04-29 Stefan Monnier <monnier@iro.umontreal.ca>
10628
10629 * data.c (Fsubr_name): New fun.
10630 (syms_of_data): Defsubr it.
10631
10632 2004-04-29 Kim F. Storm <storm@cua.dk>
10633
10634 * xdisp.c (null_glyph_slice): New var.
10635 (append_glyph, append_composite_glyph, append_stretch_glyph):
10636 Use it to initialize glyph slice.
10637
10638 2004-04-27 Stefan Monnier <monnier@iro.umontreal.ca>
10639
10640 * xdisp.c (x_produce_glyphs): Fix the proverbial int/Lisp_Object mixup.
10641 (on_hot_spot_p): Make sure we always return a value.
10642 (Flookup_image_map): Remove unused var ix and iy.
10643 (note_mode_line_or_margin_highlight): Remove unused var `image'.
10644
10645 2004-04-27 Eli Zaretskii <eliz@gnu.org>
10646
10647 * msdos.c (init_environment): If one of the TMP... environment
10648 variables is set to a drive letter without a trailing slash,
10649 append a slash.
10650
10651 2004-04-27 Matthew Mundell <matt@mundell.ukfsn.org>
10652
10653 * editfns.c (lisp_time_argument): Provide externally.
10654
10655 * fileio.c (Fset_file_times): New function.
10656 (syms_of_fileio): Intern and staticpro it.
10657
10658 2004-04-27 Kim F. Storm <storm@cua.dk>
10659
10660 * xdisp.c (x_produce_glyphs): Fix last change; handle newline in
10661 header line strings.
10662
10663 * dispextern.h (struct it): New member use_default_face.
10664
10665 * xdisp.c (Qline_height): New variable.
10666 (syms_of_xdisp): Intern and staticpro it.
10667 (append_space_for_newline): Partially undo 2004-04-25 change;
10668 add default_face_p arg, and restore callers.
10669 Clear it->use_default_face after use.
10670 (x_produce_glyphs): Set default font for ascii char if
10671 it->use_default_font is set. Change line-spacing property to set
10672 just extra line spacing. Handle new line-height property.
10673
10674 2004-04-26 Andreas Schwab <schwab@suse.de>
10675
10676 * print.c (print_object): Print non-ascii characters in bool
10677 vector representation as octal escapes.
10678
10679 * lisp.h (BOOL_VECTOR_BITS_PER_CHAR): Define.
10680 * print.c (print_object): Use it instead of BITS_PER_CHAR for
10681 bool vectors.
10682 * lread.c (read1): Likewise.
10683 * alloc.c (Fmake_bool_vector): Likewise.
10684 * data.c (Faref, Faset): Likewise.
10685 * fns.c (Fcopy_sequence, concat, internal_equal, Ffillarray)
10686 (mapcar1): Likewise.
10687
10688 2004-04-26 Steven Tamm <tamm@Steven-Tamms-Computer.local>
10689
10690 * lread.c (init_lread): Fix typo in HAVE_CARBON test logic.
10691
10692 2004-04-26 Miles Bader <miles@gnu.org>
10693
10694 * lisp.h (CYCLE_CHECK): Macro moved from xfaces.c.
10695
10696 2004-04-26 Juanma Barranquero <lektu@terra.es>
10697
10698 * buffer.c (Fpop_to_buffer): Fix docstring.
10699
10700 2004-04-26 Steven Tamm <steventamm@mac.com>
10701
10702 * lread.c (init_lread): Don't display missing lisp directory
10703 warnings with Carbon Emacs because self-contained bundled Emacs
10704 may be built without correct installation path.
10705
10706 2004-04-25 Kim F. Storm <storm@cua.dk>
10707
10708 * macterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10709
10710 * xterm.c (x_draw_hollow_cursor): Fix height of box for narrow lines.
10711
10712 * xdisp.c (append_space_for_newline): Rename from append_space.
10713 Remove DEFAULT_FACE_P arg; always use current face. Callers changed.
10714 (x_produce_glyphs): Handle line-spacing property on newline char.
10715 If value is t, adjust ascent and descent to fit current row height.
10716 If value is an integer or float, set extra_line_spacing to integer
10717 value, or to float value x current line height.
10718
10719 2004-04-23 Kenichi Handa <handa@m17n.org>
10720
10721 * fontset.c (Finternal_char_font): If POSITION is nil, return
10722 font for displaying CH with the default face.
10723
10724 2004-04-23 Juanma Barranquero <lektu@terra.es>
10725
10726 * makefile.w32-in: Add "-*- makefile -*-" mode tag.
10727
10728 2004-04-21 Stefan Monnier <monnier@iro.umontreal.ca>
10729
10730 * lisp.h (XINT) [EXPLICIT_SIGN_EXTEND && !NO_UNION_TYPE]:
10731 Don't make assumptions about the relative place of i and val.
10732 (EQ) [!NO_UNION_TYPE]: Don't forget to check the type match as well.
10733
10734 2004-04-21 Kim F. Storm <storm@cua.dk>
10735
10736 * dispextern.h (struct glyph_slice): New struct.
10737 (struct glyph): New member slice.
10738 (GLYPH_SLICE_EQUAL_P): New macro.
10739 (GLYPH_EQUAL_P): Use it.
10740 (struct glyph_string): New member slice.
10741 (struct it_slice): New struct.
10742 (struct it): New member slice, add member to stack too.
10743 New member constrain_row_ascent_descent_p.
10744 (image_ascent): Add prototype.
10745
10746 * dispnew.c (buffer_posn_from_coords): Return full image width
10747 and height even for image slices (posn is relative to full image).
10748 (marginal_area_string): Adjust x0,y0 for image slice.
10749
10750 * image.c (image_ascent): Add slice arg; calculate ascent for
10751 image slice (or full image).
10752
10753 * keyboard.c (Fposn_at_x_y, Fposn_at_point): New defuns.
10754 (syms_of_keyboard): Defsubr them.
10755
10756 * lisp.h (pos_visible_p): Fix prototype.
10757
10758 * macterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10759 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10760 (x_draw_image_foreground, x_draw_image_relief)
10761 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10762 Draw sliced images.
10763
10764 * w32term.c (w32_draw_relief_rect): Add top_p and bot_p args.
10765 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10766 (x_draw_image_foreground, x_draw_image_relief)
10767 (w32_draw_image_foreground_1, x_draw_image_glyph_string):
10768 Draw sliced images.
10769
10770 * w32term.h (image_ascent): Remove prototype.
10771
10772 * window.c (Fpos_visible_in_window_p): Return pixel position if
10773 PARTIALLY arg is non-nil. Simplify. Doc fix.
10774 (Fwindow_vscroll, Fset_window_vscroll): Add optional PIXEL_P arg
10775 to return/set vscroll in pixels.
10776
10777 * window.h (Fwindow_vscroll, Fset_window_vscroll): Fix EXFUN.
10778
10779 * xdisp.c (Qslice): New variable.
10780 (syms_of_xdisp): Intern and staticpro it.
10781 (pos_visible_p): Return pixel position in new x and y args.
10782 (init_iterator): Reset it->slice info.
10783 (handle_display_prop): Parse (slice ...) property.
10784 (push_it, pop_it): Save/restore slice info.
10785 (make_cursor_line_fully_visible): Fix 2004-04-14 change. Do not
10786 force repositioning of tall row if window is vscrolled, as that
10787 would reset vscroll.
10788 (append_space): Set it->constrain_row_ascent_descent_p to avoid
10789 increasing row height if row is non-empty.
10790 (fill_image_glyph_string): Copy slice info.
10791 (take_vertical_position_into_account): Simplify.
10792 (produce_image_glyph): Handle iterator slice info, setup glyph
10793 slice info. Do not force minimum line height.
10794 (x_produce_glyphs): If it->constrain_row_ascent_descent_p is set,
10795 do not increase height (ascent/descent) of non-empty row when
10796 adding normal character glyph; instead reduce glyph ascent/descent
10797 appropriately; if row is higher than current glyph, adjust glyph
10798 descent/ascent to reposition glyph within the existing row.
10799 Likewise, when char is newline, only set ascent/descent if row is
10800 currently empty.
10801 (note_mouse_highlight): Handle hotspots with sliced image.
10802
10803 * xterm.c (x_draw_relief_rect): Add top_p and bot_p args.
10804 (x_draw_glyph_string_box): Fix call to x_draw_relief_rect.
10805 (x_draw_image_foreground, x_draw_image_relief)
10806 (x_draw_image_foreground_1, x_draw_image_glyph_string):
10807 Draw sliced images.
10808
10809 * xterm.h (image_ascent): Remove prototype.
10810
10811 2004-04-20 Stefan Monnier <monnier@iro.umontreal.ca>
10812
10813 * keymap.c (Fkey_description): Fix the usual int/Lisp_Object mixup.
10814
10815 2004-04-20 John Paul Wallington <jpw@gnu.org>
10816
10817 * fns.c (Fassoc, Feql): Fix indentation.
10818
10819 * fontset.c (regularize_fontname): Rename from regulalize_fontname.
10820
10821 2004-04-19 John Paul Wallington <jpw@gnu.org>
10822
10823 * fns.c (Feql): New function.
10824 (syms_of_fns): Defsubr it.
10825
10826 2004-04-18 Jason Rumney <jasonr@gnu.org>
10827
10828 * w32select.c (Fw32_set_clipboard_data): Get sequence number
10829 after closing the clipboard.
10830
10831 2004-04-16 Luc Teirlinck <teirllm@auburn.edu>
10832
10833 * buffer.c (Fbuffer_base_buffer): Doc fix.
10834
10835 2004-04-17 Kim F. Storm <storm@cua.dk>
10836
10837 * keymap.c (Fkey_description): Add optional PREFIX arg.
10838 Combine prefix with KEYS to make up the full key sequence to describe.
10839 Correlate meta_prefix_char and following (simple) key to describe
10840 as meta modifier. All callers changed.
10841 (describe_map): Rename arg `keys' to `prefix'. Remove local
10842 `elt_prefix' var. Use Fkey_description with prefix instead of
10843 elt_prefix combined with Fsingle_key_description.
10844 (describe_vector): Declare static. Replace arg `elt_prefix' with
10845 `prefix'. Add KEYMAP_P arg. Add local var `elt_prefix'; use it
10846 if !KEYMAP_P. Use Fkey_description with prefix instead of
10847 Fsingle_key_description.
10848
10849 * keymap.h (Fkey_description): Fix prototype.
10850 (describe_vector): Remove prototype.
10851
10852 * xdisp.c (update_overlay_arrows): Fix handling of up_to_date < 0.
10853
10854 * image.c (PNG_BG_COLOR_SHIFT): Remove.
10855 (png_load): Fix calculation of transparent background color on X
10856 and W32 platforms.
10857
10858 2004-04-16 Juanma Barranquero <lektu@terra.es>
10859
10860 * xdisp.c (try_scrolling): Make sure `scroll-conservatively' is
10861 not too large before computing how much to scroll.
10862
10863 2004-04-15 Stefan Monnier <monnier@iro.umontreal.ca>
10864
10865 * dired.c (Ffile_attributes): Don't pass extra nil arg to file-handler.
10866
10867 2004-04-14 Luc Teirlinck <teirllm@auburn.edu>
10868
10869 * fileio.c (Fverify_visited_file_modtime, Fvisited_file_modtime):
10870 Add hyperlink to Elisp manual to the docstring.
10871
10872 2004-04-14 Stefan Monnier <monnier@iro.umontreal.ca>
10873
10874 * callint.c (fix_command): Use XDCR.
10875
10876 2004-04-14 Nick Roberts <nick@nick.uklinux.net>
10877
10878 * window.c (Fget_lru_window): Doc fix.
10879
10880 2004-04-14 Kim F. Storm <storm@cua.dk>
10881
10882 * editfns.c (Fformat): Fix allocation size of precision array.
10883
10884 * dispnew.c (update_window): Only set changed_p if
10885 scrolling_window actually did scroll.
10886 (scrolling_window): Only return 1 if we actually did scroll.
10887
10888 * xdisp.c (get_glyph_string_clip_rect): Fix reduction of cursor
10889 height to glyph height when cursor row is not fully visible.
10890 (make_cursor_line_fully_visible): Add FORCE_P arg to return
10891 failure in case row is higher than window. Callers changed.
10892 (try_scrolling): Fix loop in scrolling if last_line_misfit (from Gerd).
10893 Try to scroll partially visible, higher-than-window cursor row.
10894 (redisplay_window): Always try to scroll partially visible,
10895 higher-than-window cursor row - both initially and again with
10896 centering_position = 0.
10897 Clear desired matrix before retrying with centering_position = 0.
10898
10899 2004-04-13 Stefan Monnier <monnier@iro.umontreal.ca>
10900
10901 * syntax.c (scan_lists): Simplify backward string scan.
10902 Fix off-by-one boundary check for string and comment fences.
10903
10904 2004-04-13 Joe Buehler <jbuehler@hekimian.com>
10905
10906 * sheap.c, unexcw.c: New files.
10907
10908 2004-04-12 Luc Teirlinck <teirllm@auburn.edu>
10909
10910 * buffer.c (Fmake_indirect_buffer): Throw an error if the intended
10911 base buffer has been killed. Correct the error message if the
10912 base buffer does not exist.
10913
10914 2004-04-12 Joe Buehler <jbuehler@hekimian.com>
10915
10916 * s/cygwin.h: Changes for Cygwin unexec() support, changes in
10917 Cygwin itself. Add support for Xaw3d scrollbars.
10918
10919 * puresize.h: Set up PURE_P() for Cygwin unexec() support.
10920
10921 * lastfile.c: Define my_endbss[] for Cygwin unexec() support.
10922
10923 * gmalloc.c (__default_morecore): Use bss_sbrk(), not __sbrk(),
10924 before Cygwin unexec.
10925
10926 * Makefile.in: Link changes for Cygwin unexec() support.
10927
10928 2004-04-12 Andreas Schwab <schwab@suse.de>
10929
10930 * buffer.c (Fmake_indirect_buffer): Check that NAME is a string.
10931
10932 2004-04-11 Luc Teirlinck <teirllm@auburn.edu>
10933
10934 * buffer.c (Fgenerate_new_buffer_name): Return NAME argument if
10935 IGNORE argument equals NAME. Doc fix.
10936
10937 2004-04-11 Masatake YAMATO <jet@gyve.org>
10938
10939 * buffer.c (fix_start_end_in_overlays): Make overlays
10940 empty if they are backwards.
10941
10942 2004-04-09 Stefan Monnier <monnier@iro.umontreal.ca>
10943
10944 * xfaces.c (face_color_supported_p): Fix compilation without X11.
10945
10946 2004-04-07 Stefan Monnier <monnier@iro.umontreal.ca>
10947
10948 * doc.c (Fsnarf_documentation): Ignore new file name entries.
10949
10950 2004-04-06 Kim F. Storm <storm@cua.dk>
10951
10952 * msdos.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10953 (dos_rawgetc): Set mouse_face_hidden after clearing highlight.
10954
10955 * w32term.c (w32_read_socket): Set mouse_face_hidden after
10956 clearing highlight.
10957
10958 * xdisp.c (clear_mouse_face): Only clear mouse highlight if not hidden.
10959
10960 * xterm.c (handle_one_xevent): Set mouse_face_hidden after
10961 clearing highlight.
10962
10963 * indent.c (vmotion): Do not reserve one column for continuation
10964 marks on window frames.
10965
10966 2004-04-04 Eli Zaretskii <eliz@gnu.org>
10967
10968 * charset.h (SINGLE_BYTE_CHAR_P): Fix macro to avoid warnings
10969 from GCC.
10970
10971 2004-04-03 Stefan Monnier <monnier@iro.umontreal.ca>
10972
10973 * .gdbinit-union: Remove.
10974
10975 * .gdbinit: Make it work for USE_LSB_TAG and !NO_LISP_UNION.
10976 (xgetptr, xgetint, xgettype): New funs. Use them everywhere.
10977 ($nonvalbits): Remove.
10978 ($valmask): Set it by calling xreload to avoid redundancy.
10979
10980 * emacs.c (gdb_use_union, gdb_use_lsb): New vars.
10981 (gdb_emacs_intbits): Remove.
10982
10983 2004-03-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
10984
10985 * data.c (Fbyteorder): Make test work even if unsigned is not 4 bytes.
10986
10987 2004-03-30 Kenichi Handa <handa@m17n.org>
10988
10989 * editfns.c (Fformat): Fix initialization of the array info.
10990
10991 2004-03-30 Kim F. Storm <storm@cua.dk>
10992
10993 * xterm.c (x_mouse_click_focus_ignore_position): New var.
10994 (syms_of_xterm): DEFVAR_BOOL it.
10995 (ignore_next_mouse_click_timeout): New var.
10996 (handle_one_xevent): Clear it on KeyPress, set it on EnterNotify.
10997 Use it to filter mouse clicks following focus event.
10998
10999 2004-03-29 David Ponce <david@dponce.com>
11000
11001 * callint.c (Fcall_interactively): Fix last change.
11002
11003 2004-03-28 Stefan Monnier <monnier@iro.umontreal.ca>
11004
11005 * eval.c (Fcommandp): Simplify.
11006
11007 * data.c (Finteractive_form): Rename from Fsubr_interactive_form.
11008 Extend to handle all kinds of functions.
11009
11010 * lisp.h (Finteractive_form): Declare.
11011
11012 * callint.c (Fcall_interactively): Use it.
11013
11014 2004-03-26 Kim F. Storm <storm@cua.dk>
11015
11016 * xdisp.c (syms_of_xdisp): Include `void-variable' in list_of_error
11017 to catch errors in calc_pixel_width_or_height during redisplay.
11018
11019 2004-03-26 Masatake YAMATO <jet@gyve.org>
11020
11021 * buffer.c (fix_start_end_in_overlays): Rename fix_overlays_in_range.
11022
11023 * lisp.h (fix_start_end_in_overlays): Likewise.
11024
11025 * insdel.c (adjust_markers_for_insert): Call fix_start_end_in_overlays.
11026
11027 * editfns.c (Ftranspose_regions): Likewise.
11028
11029 2004-03-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11030
11031 * xterm.c (handle_one_xevent): Do not pass key press events to GTK.
11032
11033 2004-03-19 Richard M. Stallman <rms@gnu.org>
11034
11035 * s/sol2-6.h: Delete previous change.
11036
11037 2004-03-19 Kim F. Storm <storm@cua.dk>
11038
11039 * xdisp.c (move_it_in_display_line_to): Fix MOVE_TO_POS case when
11040 to_charpos corresponds to newline in right fringe. Use local
11041 BUFFER_POS_REACHED_P macro.
11042
11043 2004-03-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11044
11045 * xdisp.c (calc_pixel_width_or_height): Add ifdef HAVE_WINDOW_SYSTEM
11046 to compile on non-window system.
11047
11048 2004-03-19 Kim F. Storm <storm@cua.dk>
11049
11050 * dispextern.h (calc_pixel_width_or_height): Add prototype.
11051
11052 * image.c (Qcenter): Move to xdisp.c.
11053
11054 * xdisp.c (Qcenter): Declare here.
11055 (syms_of_xdisp): Intern and staticpro it.
11056 (handle_single_display_prop): Allow space display property on all
11057 platforms.
11058 (display_mode_line): Set mode_line_p before displaying line.
11059 (calc_pixel_width_or_height): Declare extern. Add separate :align-to
11060 handling. Remove complex cases for fringes and scroll-bars.
11061 Add left, right, and center alignment positions. Add text (area)
11062 width/height. Return width or height for image specs.
11063 (produce_stretch_glyph): Improve handling of :align-to. Is now
11064 relative to left of text area by default, but other base offsets
11065 can be specified -- also for text lines.
11066
11067 * term.c (produce_glyphs): Handle IT_STRETCH.
11068 (produce_stretch_glyph): New function to handle space width and
11069 align-to display properties on non-window systems.
11070
11071 2004-03-17 Stefan Monnier <monnier@iro.umontreal.ca>
11072
11073 * fileio.c (Fread_file_name): Set completion-ignore-case for
11074 case-insensitive systems.
11075
11076 2004-03-14 Masatake YAMATO <jet@gyve.org>
11077
11078 * xdisp.c (note_mode_line_or_margin_highlight): Accept HEADER_LINE
11079 when keymap and cursor are setup.
11080
11081 2004-03-14 Steven Tamm <steventamm@mac.com>
11082
11083 * Makefile.in (XMENU_OBJ) [HAVE_CARBON]: Do not include xmenu.o.
11084
11085 2004-03-14 Kim F. Storm <storm@cua.dk>
11086
11087 * dispextern.h (x_find_image_file): Add prototype.
11088
11089 * image.c (x_find_image_file): Make extern.
11090
11091 * xfns.c (x_find_image_file): Remove prototype.
11092
11093 2004-03-13 Eli Zaretskii <eliz@gnu.org>
11094
11095 * Makefile.in (XMENU_OBJ): Include xmenu.o if HAVE_MENUS is defined.
11096
11097 * emacs.c (main): Call syms_of_xmenu only if HAVE_MENUS is defined.
11098
11099 2004-03-12 Richard M. Stallman <rms@gnu.org>
11100
11101 * fns.c (internal_equal): New arg PROPS controls comparing
11102 text properties. All callers changed.
11103 (Fequal_including_properties): New function.
11104 (syms_of_fns): defsubr it.
11105
11106 2004-03-12 Kim F. Storm <storm@cua.dk>
11107
11108 Fix image support on MAC. From YAMAMOTO Mitsuharu.
11109
11110 * dispextern.h (XImagePtr, XImagePtr_or_DC): Add typedefs.
11111 (image_background, image_background_transparent): Fix prototypes.
11112
11113 * image.c (XImagePtr, XImagePtr_or_DC): Move typedefs to dispextern.h.
11114
11115 * macfns.c (x_list_fonts, x_get_font_info, x_load_font)
11116 (x_query_font, x_find_ccl_program, x_set_window_size)
11117 (x_make_frame_visible, mac_initialize, XCreatePixmap)
11118 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
11119 (mac_draw_line_to_pixmap): Move prototypes to macterm.h.
11120
11121 * macterm.h (x_list_fonts, x_get_font_info, x_load_font)
11122 (x_query_font, x_find_ccl_program, x_set_window_size)
11123 (x_make_frame_visible, mac_initialize, XCreatePixmap)
11124 (XCreatePixmapFromBitmapData, XFreePixmap, XSetForeground)
11125 (mac_draw_line_to_pixmap): Add prototypes.
11126
11127 2004-03-12 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11128
11129 * macterm.c (XTread_socket): Fix mouse click on tool bar.
11130
11131 2004-03-11 Kim F. Storm <storm@cua.dk>
11132
11133 * dispextern.h: Move image related prototypes from xfns.c section
11134 to image.c. Condition them by HAVE_WINDOW_SYSTEM rather than
11135 HAVE_X_WINDOWS.
11136
11137 * Makefile.in (XOBJ): Consolidate into one list. Add image.o.
11138 Move gtkutil.o to new GTK_OBJ list.
11139 (XMENU_OBJ) [HAVE_MENUS]: Move declaration to proper place.
11140 (GTK_OBJ) [USE_GTK]: New declaration.
11141 (obj): Add $(GTK_OBJ) to list.
11142
11143 2004-03-11 Steven Tamm <steventamm@mac.com>
11144
11145 * image.c [MAC_OSX]: Include sys/stat.h.
11146
11147 * macfns.c (syms_of_macfns): Remove definitions of things now
11148 defined in image.c.
11149
11150 2004-03-11 Kim F. Storm <storm@cua.dk>
11151
11152 The following changes consolidates the identical/similar image
11153 support code previously found in xfns.c, w32fns.c, and macfns.c
11154 into a new file image.c.
11155
11156 * makefile.w32-in (OBJ1): Add image.o.
11157 ($(BLD)/image.$(O)): Add dependencies.
11158
11159 * Makefile.in (XOBJ, MAC_OBJ): Add image.o.
11160 (image.o): Add dependencies.
11161
11162 * image.c: New file with consolidated image support code.
11163 (COLOR_TABLE_SUPPORT): New define to control whether
11164 color table support is available (X only).
11165 (Bitmap_Record): Common name for x_bitmap_record,
11166 w32_bitmap_record, and mac_bitmap_record.
11167 (XImagePtr): Common name for pointer to XImage or equivalent.
11168 (XImagePtr_or_DC): New type to simplify code sharing; equivalent
11169 to XImagePtr on X+MAC, and to HDC on W32.
11170 (GET_PIXEL): Wrapper for XGetPixel or equivalent.
11171 (NO_PIXMAP): Common name for "None" or equivalent.
11172 (PNG_BG_COLOR_SHIFT): Bits to shift PNG background colors.
11173 (RGB_PIXEL_COLOR): Common type for an integer "pixel color" value.
11174 (PIX_MASK_RETAIN, PIX_MASK_DRAW): Portability macros (from macfns.c).
11175 (FRAME_X_VISUAL, x_defined_color, DefaultDepthOfScreen):
11176 Define with suitable equivalents on W32 and MAC for code sharing.
11177 (XDrawLine): Define on MAC for code sharing.
11178 (Destroy_Image, Free_Pixmap): Wrappers for code sharing.
11179 (IF_LIB_AVAILABLE): Macro to simplify code sharing.
11180 (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
11181 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11182 (x_reference_bitmap, x_create_bitmap_from_data)
11183 (x_create_bitmap_from_file, x_destroy_bitmap)
11184 (x_destroy_all_bitmaps, x_create_bitmap_mask)
11185 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11186 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
11187 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
11188 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
11189 (define_image_type, lookup_image_type, valid_image_p)
11190 (image_error, enum image_value_type, struct image_keyword)
11191 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
11192 (make_image, free_image, prepare_image_for_display, image_ascent)
11193 (four_corners_best, image_background, image_background_transparent)
11194 (x_clear_image_1, x_clear_image, x_alloc_image_color)
11195 (make_image_cache, free_image_cache, clear_image_cache)
11196 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
11197 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
11198 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
11199 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
11200 (init_image_func_pointer, image_load_quartz2d)
11201 (struct ct_color, init_color_table, free_color_table)
11202 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
11203 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
11204 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
11205 (x_disable_image, x_build_heuristic_mask)
11206 (XBM support, XPM support, PBM support, PNG support, JPEG support)
11207 (TIFF support, GIF support, Ghostscript support): Consolidate image
11208 code from xfns.c, w32fns.c, and macfns.c.
11209 (syms_of_image): Consolidate image related symbol setup here.
11210 (init_image): Consolidate image related initializations here.
11211
11212 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Add calls to syms_of_image
11213 and init_image. Remove call to init_xfns.
11214
11215 * macterm.h (struct mac_bitmap_record): Add file member.
11216 Not currently used, but simplifies code sharing.
11217
11218 * macfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
11219 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11220 (x_reference_bitmap, x_create_bitmap_from_data)
11221 (x_create_bitmap_from_file, x_destroy_bitmap)
11222 (x_destroy_all_bitmaps, x_create_bitmap_mask)
11223 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11224 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
11225 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
11226 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
11227 (define_image_type, lookup_image_type, valid_image_p)
11228 (image_error, enum image_value_type, struct image_keyword)
11229 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
11230 (make_image, free_image, prepare_image_for_display, image_ascent)
11231 (four_corners_best, image_background, image_background_transparent)
11232 (x_clear_image_1, x_clear_image, x_alloc_image_color)
11233 (make_image_cache, free_image_cache, clear_image_cache)
11234 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
11235 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
11236 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
11237 (find_image_fsspec, image_load_qt_1, image_load_quicktime)
11238 (init_image_func_pointer, image_load_quartz2d)
11239 (struct ct_color, init_color_table, free_color_table)
11240 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
11241 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
11242 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
11243 (x_disable_image, x_build_heuristic_mask)
11244 (XBM support, XPM support, PBM support, PNG support, JPEG support)
11245 (TIFF support, GIF support, Ghostscript support): Merge with image
11246 code from xfns.c and macfns.c into image.c.
11247 (syms_of_xfns): Move image related symbols to image.c.
11248 (init_external_image_libraries, init_xfns): Remove; initialization
11249 moved to init_image in image.c.
11250
11251 * w32fns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
11252 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11253 (x_reference_bitmap, x_create_bitmap_from_data)
11254 (x_create_bitmap_from_file, x_destroy_bitmap)
11255 (x_destroy_all_bitmaps, x_create_bitmap_mask)
11256 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
11257 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
11258 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
11259 (define_image_type, lookup_image_type, valid_image_p)
11260 (image_error, enum image_value_type, struct image_keyword)
11261 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
11262 (make_image, free_image, prepare_image_for_display, image_ascent)
11263 (four_corners_best, image_background, image_background_transparent)
11264 (x_clear_image_1, x_clear_image, x_alloc_image_color)
11265 (make_image_cache, free_image_cache, clear_image_cache)
11266 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
11267 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
11268 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
11269 (struct ct_color, init_color_table, free_color_table)
11270 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
11271 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
11272 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
11273 (x_disable_image, x_build_heuristic_mask)
11274 (XBM support, XPM support, PBM support, PNG support, JPEG support)
11275 (TIFF support, GIF support, Ghostscript support): Merge with image
11276 code from xfns.c and macfns.c into image.c.
11277 (syms_of_xfns): Move image related symbols to image.c.
11278 (init_external_image_libraries, init_xfns): Remove; initialization
11279 moved to init_image in image.c.
11280
11281 * xfns.c (Vx_bitmap_file_path, Vimage_cache_eviction_delay)
11282 (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11283 (x_reference_bitmap, x_create_bitmap_from_data)
11284 (x_create_bitmap_from_file, x_destroy_bitmap)
11285 (x_destroy_all_bitmaps, x_create_bitmap_mask)
11286 (QCascent, QCmargin, QCrelief, QCconversion, QCcolor_symbols)
11287 (QCheuristic_mask, QCindex, QCmatrix, QCcolor_adjustment, QCmask)
11288 (Qlaplace, Qemboss, Qedge_detection, Qheuristic, Qcenter)
11289 (define_image_type, lookup_image_type, valid_image_p)
11290 (image_error, enum image_value_type, struct image_keyword)
11291 (parse_image_spec, image_spec_value, Fimage_size, Fimage_mask_p)
11292 (make_image, free_image, prepare_image_for_display, image_ascent)
11293 (four_corners_best, image_background, image_background_transparent)
11294 (x_clear_image_1, x_clear_image, x_alloc_image_color)
11295 (make_image_cache, free_image_cache, clear_image_cache)
11296 (Fclear_image_cache, postprocess_image, lookup_image, cache_image)
11297 (forall_images_in_image_cache, x_create_x_image_and_pixmap)
11298 (x_destroy_x_image, x_put_x_image, x_find_image_file, slurp_file)
11299 (struct ct_color, init_color_table, free_color_table)
11300 (lookup_rgb_color, lookup_pixel_color, colors_in_color_table)
11301 (cross_disabled_images, x_to_xcolors, x_from_xcolors)
11302 (x_detect_edges, x_emboss, x_laplace, x_edge_detection)
11303 (x_disable_image, x_build_heuristic_mask)
11304 (XBM support, XPM support, PBM support, PNG support, JPEG support)
11305 (TIFF support, GIF support, Ghostscript support): Merge with
11306 w32fns.c and macfns.c image code into image.c.
11307 (syms_of_xfns): Move image related symbols to image.c.
11308 (init_xfns): Remove; initialization moved to init_image in image.c.
11309
11310 * lisp.h (syms_of_image, init_image): Add protoypes.
11311 (init_xfns): Remove prototype.
11312
11313 * dispextern.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11314 (x_reference_bitmap, x_create_bitmap_from_data)
11315 (x_create_bitmap_from_file, x_destroy_bitmap)
11316 (x_create_bitmap_mask): Move prototypes from dispextern.h.
11317 (gamma_correct) [MAC_OS]: Add prototype.
11318
11319 * xterm.h (x_bitmap_height, x_bitmap_width, x_bitmap_pixmap)
11320 (x_reference_bitmap, x_create_bitmap_from_data)
11321 (x_create_bitmap_from_file, x_destroy_bitmap)
11322 (x_create_bitmap_mask): Move prototypes to dispextern.h.
11323
11324 2004-03-09 Kenichi Handa <handa@etlken2>
11325
11326 * coding.c (decode_coding_emacs_mule): Handle insufficent source
11327 correctly.
11328
11329 2004-03-04 Richard M. Stallman <rms@gnu.org>
11330
11331 * s/sol2-6.h (LD_SWITCH_SYSTEM_TEMACS): New definition.
11332
11333 * window.c (Fdisplay_buffer): Doc fix.
11334
11335 * buffer.c (Fpop_to_buffer): Doc fix.
11336
11337 2004-03-03 Kim F. Storm <storm@cua.dk>
11338
11339 * xdisp.c (display_line): Fix call to get_overlay_arrow_glyph_row.
11340
11341 2004-03-02 Stefan Monnier <monnier@iro.umontreal.ca>
11342
11343 * editfns.c (Ftranslate_region): Lisp_Object/int mixup.
11344
11345 2004-03-02 Richard M. Stallman <rms@gnu.org>
11346
11347 * indent.c (compute_motion): Save vpos in prev_vpos, like hpos etc.
11348
11349 2004-03-02 Kenichi Handa <handa@m17n.org>
11350
11351 * doc.c (Fsubstitute_command_keys): Fix counding bytes.
11352
11353 2004-03-02 Kim F. Storm <storm@cua.dk>
11354
11355 * window.h (struct window): New member overlay_arrow_bitmap.
11356
11357 * window.c (make_window): Initialize overlay_arrow_bitmap.
11358
11359 * xdisp.c (Voverlay_arrow_variable_list): New variable to properly
11360 implement and integrate multiple overlay arrows with redisplay.
11361 (syms_of_xdisp): DEFVAR_LISP and initialize it.
11362 (last_arrow_position, last_arrow_string): Replace by properties.
11363 (Qlast_arrow_position, Qlast_arrow_string)
11364 (Qoverlay_arrow_string, Qoverlay_arrow_bitmap): New variables.
11365 (syms_of_xdisp): Intern and staticpro them.
11366 (overlay_arrow_string_or_property, update_overlay_arrows)
11367 (overlay_arrow_in_current_buffer_p, overlay_arrows_changed_p)
11368 (overlay_arrow_at_row): New functions for multiple overlay arrows.
11369 (redisplay_internal): Use them instead of directly accessing
11370 Voverlay_arrow_position etc. for multiple overlay arrows.
11371 (mark_window_display_accurate): Use update_overlay_arrows.
11372 (try_cursor_movement): Use overlay_arrow_in_current_buffer_p.
11373 (try_window_id): Use overlay_arrows_changed_p.
11374 (get_overlay_arrow_glyph_row): Add overlay_arrow_string arg.
11375 (display_line): Use overlay_arrow_at_row to check multiple
11376 overlay arrows, and get relevant overlay-arrow-string and
11377 overlay-arrow-bitmap. Set w->overlay_arrow_bitmap accordingly.
11378 (produce_image_glyph): Set pixel_width = 0 for fringe bitmap.
11379 (syms_of_xdisp): Remove last_arrow_position and last_arrow_string.
11380
11381 * fringe.c (draw_fringe_bitmap): Use w->overlay_arrow_bitmap if set.
11382 (update_window_fringes): Remove unused code.
11383
11384 2004-03-01 Jason Rumney <jasonr@gnu.org>
11385
11386 * w32term.c (w32_read_socket): Fix last change to ButtonPress handling.
11387
11388 2004-03-01 Juanma Barranquero <lektu@terra.es>
11389
11390 * fringe.c (Fdefine_fringe_bitmap): Fix typo in docstring.
11391
11392 * makefile.w32-in ($(BLD)/fringe.$(O)): Add dependencies.
11393
11394 2004-03-01 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11395
11396 * xfns.c (Fx_display_color_cells): Use number of planes to calculate
11397 how many colors can be displayed.
11398
11399 2004-03-01 Kenichi Handa <handa@m17n.org>
11400
11401 * editfns.c (Ftranslate_region): Handle multibyte chars in TABLE
11402 correctly.
11403
11404 2004-02-28 Kim F. Storm <storm@cua.dk>
11405
11406 * dispnew.c (update_window): Update header line also if there are
11407 no other changes in window (move code after set_cursor label).
11408
11409 * lisp.h (mark_window_display_accurate): Remove prototype.
11410
11411 * window.c (window_loop, Fforce_window_update): Force mode line
11412 updates by setting prevent_redisplay_optimizations_p and
11413 update_mode_lines.
11414
11415 2004-02-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11416
11417 * xfns.c (x_window): Fix indentation.
11418
11419 * xterm.c (x_calc_absolute_position): Call x_real_positions
11420 to get WM window sizes and use those to calculate position.
11421 (x_set_offset): Remove code commented out.
11422
11423 2004-02-28 Miles Bader <miles@gnu.org>
11424
11425 * keyboard.c (adjust_point_for_property): #ifdef-out dodgy xassert.
11426
11427 2004-02-28 Kim F. Storm <storm@cua.dk>
11428
11429 * keyboard.c (kbd_buffer_store_event_hold): New function to store
11430 an event into kbd fifo, but with special handling of quit event;
11431 a quit event is saved for later, and further events are discarded
11432 until the saved quit event has been processed.
11433 (kbd_buffer_store_event): Use kbd_buffer_store_event_hold.
11434 (gen_help_event): Store help event in kbd fifo.
11435 (NREAD_INPUT_EVENTS): Remove.
11436 (read_avail_input): Adapt to new read_socket_hook interface.
11437 Remove allocation and initialization of local input_event buffer,
11438 as read_socket_hook stores events directly in fifo. Allocate and
11439 initialize local hold_quit event to handle postponed quit event
11440 (and store it if set by kbd_buffer_store_event_hold).
11441
11442 * keyboard.h (kbd_buffer_store_event_hold): Add prototype.
11443 (gen_help_event): Fix prototype.
11444
11445 * macterm.c (XTread_socket): Remove bufp_r and
11446 numcharsp args. Add hold_quit arg.
11447 Rework to use just one, local, inev input_event. Store inev
11448 directly in fifo using kbd_buffer_store_event_hold.
11449
11450 * sysdep.c (BUFFER_SIZE_FACTOR): Remove.
11451 (read_input_waiting): Adapt to new read_socket_hook interface.
11452 Remove allocation and initialization of local input_event buffer,
11453 as read_socket_hook stores events directly in fifo. Allocate and
11454 initialize local hold_quit event to handle postponed quit event
11455 (and store it if set by kbd_buffer_store_event_hold).
11456
11457 * term.c (read_socket_hook): Fix arg list.
11458
11459 * termhooks.h (read_socket_hook): Fix prototype.
11460
11461 * w32inevt.c (w32_console_read_socket): Remove bufp_r and
11462 numcharsp args. Add hold_quit arg.
11463 Rework to use just one, local, inev input_event. Store inev
11464 directly in fifo using kbd_buffer_store_event_hold.
11465
11466 * w32inevt.h (w32_console_mouse_position): Fix prototype.
11467
11468 * w32term.c (w32_read_socket): Remove bufp_r and numcharsp args.
11469 Add hold_quit arg. Rework to use just one, local, inev
11470 input_event. Store inev directly in fifo using
11471 kbd_buffer_store_event_hold. Update count in one place.
11472 Postpone call to gen_help_event until inev is stored; use new
11473 local do_help for this.
11474 Remove local emacs_event in handing of ButtonPress event; just use
11475 inev instead (so no reason to copy it later).
11476
11477 * xsmfns.c (x_session_check_input): Remove numchars arg.
11478
11479 * xterm.c (x_focus_changed, x_detect_focus_change):
11480 Remove numchars arg. Always store event into bufp arg.
11481 Return nothing. Callers changed accordingly.
11482 (glyph_rect): Simplify.
11483 (STORE_KEYSYM_FOR_DEBUG): New macro.
11484 (SET_SAVED_MENU_EVENT): Use inev instead of bufp, etc.
11485 (current_bufp, current_numcharsp) [USE_GTK]: Remove.
11486 (current_hold_quit) [USE_GTK]: Add.
11487 (event_handler_gdk): Adapt to new handle_one_xevent.
11488 (handle_one_xevent): Remove bufp_r and numcharsp args.
11489 Add hold_quit arg. Rework to use just one, local, inev
11490 input_event. Store inev directly in fifo using
11491 kbd_buffer_store_event_hold. Update count in one place.
11492 Postpone call to gen_help_event until inev is stored; use new
11493 local do_help for this.
11494 Simplify handling of keysyms (consolidate common code). Fix bug
11495 where count was updated with nchars instead of nbytes.
11496 Remove local emacs_event in handing of ButtonPress event; just use
11497 inev instead (so no reason to copy it later).
11498 Remove `out' label. Rename label `ret' to `done'; add various
11499 `goto done' to clarify code flow in deeply nested blocks.
11500 (x_dispatch_event): Simplify as handle_one_xevent now calls
11501 kbd_buffer_store_event itself.
11502 (XTread_socket): Remove bufp_r and numcharsp args. Add hold_quit
11503 arg. Call handle_one_xevent with new arglist. Store event from
11504 x_session_check_input in fifo.
11505 [USE_GTK]: Setup current_hold_quit.
11506 Decrement handling_signal before unblocking input.
11507 (x_initialize) [USE_GTK]: Initialize current_count.
11508
11509 * xterm.h (x_session_check_input): Fix prototype.
11510
11511 2004-02-26 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
11512
11513 * s/darwin.h (LD_SWITCH_SYSTEM_TEMACS): Add `-framework QuickTime'.
11514
11515 * dispextern.h [MAC_OSX]: Do not include Carbon/Carbon.h (now in
11516 macgui.h).
11517
11518 * emacs.c (main) [HAVE_CARBON]: Call init_xfns.
11519
11520 * macgui.h [MAC_OSX]: Include Carbon/Carbon.h.
11521 (mktime, DEBUG, Z, free, malloc, realloc, max, min)
11522 (init_process) [MAC_OSX] : Avoid conflicts with Carbon/Carbon.h.
11523 [!MAC_OSX]: Include QDOffscreen.h and Controls.h.
11524 (INFINITY) [MAC_OSX]: Avoid conflict with definition in math.h.
11525 (Bitmap): Remove typedef.
11526 (Pixmap): Change int to GWorldPtr.
11527
11528 * macmenu.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11529
11530 * macterm.h [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11531 (RED16_FROM_ULONG, GREEN16_FROM_ULONG, BLUE16_FROM_ULONG):
11532 New #define to extract 16-bit depth color components from unsigned
11533 long representation.
11534 (PIX_MASK_DRAW, PIX_MASK_RETAIN): New #define to represent pixel
11535 colors used for masks.
11536 (struct mac_display_info): Add color_p. Remove n_cbits.
11537
11538 * macfns.c: Include sys/types.h and sys/stat.h.
11539 [MAC_OSX]: Do not include Carbon/Carbon.h (now in macgui.h).
11540 Include QuickTime/QuickTime.h.
11541 (XCreatePixmap, XCreatePixmapFromBitmapData, XFreePixmap)
11542 (XSetForeground, mac_draw_line_to_pixmap): Add externs for
11543 functions defined in macterm.c.
11544 (XImagePtr): New typedef. Corresponds to XImage * in xfns.c.
11545 (ZPixmap): New #define for compatibility with xfns.c.
11546 (XGetImage, XPutPixel, XGetPixel, XDestroyImage)
11547 (x_create_x_image_and_pixmap, x_destroy_x_image, x_put_x_image)
11548 (find_image_fsspec, image_load_qt_1, image_load_quicktime):
11549 New functions.
11550 (four_corners_best, x_create_x_image_and_pixmap)
11551 (x_destroy_x_image, unwind_create_frame, x_disable_image)
11552 (x_edge_detection, init_color_table, colors_in_color_table)
11553 (lookup_rgb_color, lookup_pixel_color, postprocess_image)
11554 (x_put_x_image, slurp_file, xbm_scan, xbm_load, xbm_load_image)
11555 (xbm_image_p, xbm_read_bitmap_data, xbm_file_p, x_to_xcolors)
11556 (x_from_xcolors, x_detect_edges): New declarations (from xfns.c).
11557 (mac_color_map_lookup, x_to_mac_color): Fix Lisp_Object/unsigned
11558 long mixup.
11559 (mac_defined_color, x_to_x_colors): Use RED16_FROM_ULONG etc.
11560 (x_decode_color): Don't use n_cbits (in struct mac_display_info).
11561 (x_set_foreground_color, x_set_cursor_color): Sync with w32fns.c.
11562 (x_set_cursor_type, Fxw_color_values, valid_image_p)
11563 (image_value_type, parse_image_spec, image_ascent, x_clear_image)
11564 (x_alloc_image_color, clear_image_cache, lookup_image)
11565 (x_find_image_file, xbm_read_bitmap_file_data)
11566 (enum xbm_keyword_index, xbm_format, xbm_image_p, xbm_scan)
11567 (xbm_read_bitmap_data, xbm_load, pbm_image_p, pbm_scan_number)
11568 (enum pbm_keyword_index, pbm_format, enum png_keyword_index)
11569 (png_format, png_image_p, enum jpeg_keyword_index, jpeg_format)
11570 (jpeg_image_p, enum tiff_keyword_index, tiff_format, tiff_image_p)
11571 (enum gif_keyword_index, gif_format, gif_image_p): Sync with xfns.c.
11572 (x_make_gc): Sync with xfns.c. Enclose unused `border_tile' with
11573 #if 0.
11574 (x_free_gcs): Sync with xfns.c. Enclose unused `border_tile' with
11575 #if 0. Free white_relief.gc and black_relief.gc.
11576 (unwind_create_frame, x_emboss, x_laplace, x_edge_detection):
11577 New functions (from xfns.c).
11578 (Fx_create_frame): Record unwind_create_frame.
11579 (Fxw_display_color_p): Use dpyinfo->color_p.
11580 (Fx_display_grayscale_p, Fx_display_planes): Don't use
11581 dpyinfo->n_cbits.
11582 (Fx_display_color_cells): Use dpyinfo->n_planes;
11583 (QCmatrix, QCcolor_adjustment, QCmask, Qemboss, Qedge_detection)
11584 (Qheuristic, cross_disabled_images, emboss_matrix)
11585 (laplace_matrix): New variables (from xfns.c).
11586 (Fimage_size, Fimage_mask_p, four_corners_best, image_background)
11587 (x_clear_image_1, postprocess_image, slurp_file, xbm_load_image)
11588 (xbm_file_p, x_to_xcolors, x_from_xcolors, x_detect_edges)
11589 (image_background_transparent): New function (from xfns.c).
11590 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11591 (image_load_quicktime): Add declaration.
11592 [MAC_OSX] (image_load_quartz2d): Likewise.
11593 [MAC_OSX] (CGImageCreateWithPNGDataProviderProcType): New typedef.
11594 [MAC_OSX] (MyCGImageCreateWithPNGDataProvider): New variable.
11595 [MAC_OSX] (init_image_func_pointer, image_load_quartz2d): New funs.
11596 (xbm_load_image_from_file, x_laplace_read_row)
11597 (x_laplace_write_row, pbm_read_file): Remove functions.
11598 [HAVE_XPM] (enum xpm_keyword_index, xpm_format, xpm_image_p)
11599 (xpm_load): Sync with xfns.c (although XPM is not supported yet).
11600 (colors_in_color_table): Sync with xfns.c (although not used).
11601 (lookup_rgb_color): Don't lookup color table. Just do gamma
11602 correction.
11603 (COLOR_INTENSITY): New #define (from xfns.c).
11604 (x_disable_image): New function (from xfns.c).
11605 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11606 (x_build_heuristic_mask): Sync with xfns.c.
11607 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11608 (HAVE_PBM): Remove #ifdef.
11609 (pbm_load): Sync with xfns.c. Set img->width and img->height
11610 before IMAGE_BACKGROUND.
11611 (png_image_p, png_load): Don't enclose declarations with #if HAVE_PNG.
11612 (Qpng, enum png_keyword_index, png_format, png_type, png_image_p):
11613 Don't enclose with #if HAVE_PNG.
11614 [!HAVE_PNG] (png_load) [MAC_OSX]: Use image_load_quartz2d if a
11615 symbol _CGImageCreateWithPNGDataProvider is defined.
11616 Otherwise use image_load_quicktime.
11617 [!HAVE_PNG] (png_load) [!MAC_OSX]: Use image_load_quicktime.
11618 [HAVE_PNG] (png_load): Sync with xfns.c.
11619 Use PIX_MASK_DRAW/PIX_MASK_RETAIN.
11620 (jpeg_image_p, jpeg_load): Don't enclose declarations with #if
11621 HAVE_JPEG.
11622 (Qjpeg, enum jpeg_keyword_index, jpeg_format, jpeg_type)
11623 (jpeg_image_p): Don't enclose with #if HAVE_JPEG.
11624 [!HAVE_JPEG] (jpeg_load) [MAC_OSX]: Use image_load_quartz2d.
11625 [!HAVE_JPEG] (jpeg_load) [!MAC_OSX]: Use image_load_quicktime.
11626 [HAVE_JPEG] (jpeg_load): Sync with xfns.c.
11627 (tiff_image_p, tiff_load): Don't enclose declarations with #if
11628 HAVE_TIFF.
11629 (Qtiff, enum tiff_keyword_index, tiff_format, tiff_type)
11630 (tiff_image_p): Don't enclose with #if HAVE_TIFF.
11631 [!HAVE_TIFF] (tiff_load): Use image_load_quicktime.
11632 [HAVE_TIFF] (tiff_error_handler, tiff_warning_handler):
11633 New functions (from xfns.c).
11634 [HAVE_TIFF] (tiff_load): Sync with xfns.c.
11635 (gif_image_p, gif_load): Don't enclose declarations with #if HAVE_GIF.
11636 (Qgif, enum gif_keyword_index, gif_format, gif_type, gif_image_p):
11637 Don't enclose with #if HAVE_GIF.
11638 [!HAVE_GIF] (gif_load): Use Quicktime Movie Toolbox if it is
11639 animated gif. Otherwise use image_load_quicktime.
11640 [HAVE_GIF] (gif_lib.h): Temporarily define DrawText as
11641 gif_DrawText to avoid conflict with QuickdrawText.h.
11642 [HAVE_GIF] (gif_load): Sync with xfns.c.
11643 (enum gs_keyword_index, gs_format, gs_image_p, gs_load)
11644 [HAVE_GHOSTSCRIPT] (x_kill_gs_process): Sync with xfns.c (although
11645 Ghostscript is not supported yet).
11646 (syms_of_macfns): Initialize Qemboss, Qedge_detection, Qheuristic,
11647 QCmatrix, QCcolor_adjustment, and QCmask. Add DEFVAR_BOOL
11648 cross_disabled_images (from xfns.c). Remove #if 0 for supported
11649 image types. Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11650 HAVE_PNG. Add defsubr for Simage_size and Simage_mask_p.
11651 (init_xfns): Remove #if HAVE_JPEG, HAVE_TIFF, HAVE_GIF, and
11652 HAVE_PNG. Call EnterMovies to support animated gifs.
11653 Call init_image_func_pointer to bind a symbol
11654 _CGImageCreateWithPNGDataProvider if it is defined.
11655
11656 * macterm.c [MAC_OSX]: Don't include Carbon/Carbon.h (now in macgui.h).
11657 (x_draw_bar_cursor): Sync declaration with xterm.c.
11658 (XFreePixmap, mac_draw_rectangle_to_pixmap, mac_copy_area)
11659 (mac_copy_area_to_pixmap): Implementation with GWorld (offscreen
11660 graphics).
11661 (mac_set_forecolor, mac_set_backcolor): Use RED16_FROM_ULONG etc.
11662 (mac_draw_line_to_pixmap, XCreatePixmap)
11663 (XCreatePixmapFromBitmapData, mac_fill_rectangle_to_pixmap)
11664 (mac_copy_area_with_mask, mac_copy_area_with_mask_to_pixmap):
11665 New functions.
11666 (mac_draw_bitmap) [TARGET_API_MAC_CARBON]:
11667 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11668 Cast bits to char *.
11669 (reflect_byte): New function (from w32fns.c).
11670 (mac_create_bitmap_from_bitmap_data): Use it and don't stuff bits
11671 due to byte alignment.
11672 (mac_scroll_area) [TARGET_API_MAC_CARBON]:
11673 Use GetPortBitMapForCopyBits instead of the cast to Bitmap *.
11674 (XSetForeground): Remove static (now used in macfns.c).
11675 (HIGHLIGHT_COLOR_DARK_BOOST_LIMIT): New #define (from w32term.c).
11676 (mac_alloc_lighter_color, x_destroy_window): Sync with w32term.c.
11677 (x_setup_relief_color, x_setup_relief_colors, x_draw_box_rect)
11678 (x_draw_glyph_string_box, x_draw_image_foreground)
11679 (x_draw_image_foreground_1, x_draw_image_glyph_string)
11680 (x_draw_stretch_glyph_string, x_draw_glyph_string)
11681 (x_draw_hollow_cursor, x_draw_bar_cursor, mac_draw_window_cursor):
11682 Sync with xterm.c.
11683 (x_draw_relief_rect): Sync with xterm.c. Make 1 pixel shorter
11684 than the xterm.c version when a strictly horizontal or vertical
11685 line is drawn.
11686 (XTset_terminal_window): Add static.
11687 (x_make_frame_visible): Add UNBLOCK_INPUT.
11688 (x_free_frame_resources): New funcion (from xterm.c).
11689 (XTread_socket): Call handle_tool_bar_click if mouse up/down event
11690 occurs in tool bar area.
11691 (mac_initialize_display_info): Remove dpyinfo->n_cbits.
11692 Set dpyinfo->color_p. Determine dpyinfo->n_planes using HasDepth.
11693 Initialize image cache.
11694 (stricmp, wildstrieq, mac_font_pattern_match, mac_font_match):
11695 Enclose unused functions with #if 0.
11696 (Qbig5, Qcn_gb, Qsjis, Qeuc_kr): New variables.
11697 (decode_mac_font_name): New function to apply code conversions
11698 from a mac font name to an XLFD font name according to its script code.
11699 (x_font_name_to_mac_font_name): Apply code conversion from an XLFD
11700 font name to a mac font name according to REGISTRY and ENCODING fields.
11701 (init_font_name_table) [TARGET_API_MAC_CARBON]: Don't use a font
11702 whose name starts with `.'.
11703 (init_font_name_table): Use decode_mac_font_name. Add both
11704 jisx0208.1983-sjis and jisx0201.1976-0 entries if the script code
11705 of a font is smJapanese.
11706 (mac_do_list_fonts): New function to list fonts that match a given
11707 pattern.
11708 (x_list_fonts, XLoadQueryFont): Use it.
11709 (XLoadQueryFont): Set rbearing field for each variable width
11710 character to avoid needless redraw.
11711 (syms_of_macterm): Initialize Qbig5, Qcn_gb, Qsjis, and Qeuc_kr.
11712
11713 2004-02-26 Kim F. Storm <storm@cua.dk>
11714
11715 * keyboard.c (NREAD_INPUT_EVENTS): Temporarily increase to 512
11716 as read_socket_hook handler on X aborts if buffer is too small
11717 and W32 handler doesn't always check buffer limit.
11718
11719 * xdisp.c (handle_single_display_prop): Handle left-fringe and
11720 right-fringe similar to a display margin image. Specifically,
11721 the characters having the fringe prop are no longer shown, and
11722 we use IT_IMAGE/next_element_from_image with image_id = -1 to
11723 do this. Set fringe bitmap face_id in it->face_id.
11724 (produce_image_glyph): Handle image_id < 0 as "no image" case, but
11725 still realize it->face (i.e. the fringe bitmap face).
11726
11727 2004-02-25 Miles Bader <miles@gnu.org>
11728
11729 * xdisp.c (check_it): Check string/string_pos consistency.
11730 (init_iterator): Initialize string-related fields properly.
11731
11732 2004-02-11 Miles Bader <miles@gnu.org>
11733
11734 * xdisp.c (produce_image_glyph): Force negative descents to zero.
11735
11736 2004-02-10 Miles Bader <miles@gnu.org>
11737
11738 * xfns.c (lookup_image): Remove xassert(!interrupt_input_blocked);
11739 BLOCK_INPUT can be nested, so it doesn't make much sense.
11740
11741 2004-02-24 Michael Mauger <mmaug@yahoo.com>
11742
11743 * w32fns.c (slurp_file, xbm_scan, xbm_load_image)
11744 (xbm_read_bitmap_data): Use unsigned char for image data.
11745
11746 2004-02-23 Luc Teirlinck <teirllm@auburn.edu>
11747
11748 * abbrev.c (Finsert_abbrev_table_description): Doc fix.
11749
11750 2004-02-22 Jason Rumney <jasonr@gnu.org>
11751
11752 * w32term.c (w32_draw_fringe_bitmap): Draw overlaid bitmaps
11753 correctly over other bitmaps.
11754
11755 2004-02-21 Eli Zaretskii <eliz@gnu.org>
11756
11757 * emacs.c (USAGE1): Split into two halves.
11758 (USAGE2): Second half of the old USAGE1.
11759 (USAGE3): Rename from USAGE2.
11760 (USAGE4): Rename from USAGE3.
11761
11762 2004-02-21 Juri Linkov <juri@jurta.org>
11763
11764 * emacs.c (USAGE1): Add --no-desktop. Move --display from USAGE2.
11765 Fix --multibyte. Move --help, --version to USAGE2. Add alias
11766 --file. Fix -f, -l. Sort options. Untabify.
11767 (USAGE2): Add -hb. Fix --name, --title. Sort options. Untabify.
11768
11769 2004-02-19 Luc Teirlinck <teirllm@auburn.edu>
11770
11771 * category.c (Fdefine_category, Fcategory_docstring)
11772 (Fget_unused_category, Fset_category_table)
11773 (Fcategory_set_mnemonics): Doc fixes.
11774
11775 2004-02-20 Kim F. Storm <storm@cua.dk>
11776
11777 * keyboard.c: Undo 2004-02-16 and 2004-02-17 changes.
11778 The following changes are relative to the 2004-01-21 revision.
11779 (NREAD_INPUT_EVENTS): Define as max number of input events to read
11780 in one call to read_socket_hook. Value is 8.
11781 (read_avail_input): Separate and rework handling of read_socket_hook
11782 and non-read_socket_hook cases. Use smaller input_event buffer
11783 in read_socket_hook case, and repeat if full buffer is read.
11784 Use new local variable 'discard' to skip input after C-g.
11785 In non-read_socket_hook case, just use a single input_event, and
11786 call kbd_buffer_store_event on the fly for each character.
11787
11788 2004-02-19 Stefan Monnier <monnier@iro.umontreal.ca>
11789
11790 * lisp.h (union Lisp_Object): Give a more precise type for `type'.
11791 Remove unused `gu' alternative.
11792
11793 2004-02-19 Andreas Schwab <schwab@suse.de>
11794
11795 * fringe.c (Fdefine_fringe_bitmap): Use && instead of & to avoid
11796 warning.
11797
11798 2004-02-18 Kim F. Storm <storm@cua.dk>
11799
11800 * xdisp.c (get_window_cursor_type, display_and_set_cursor):
11801 Fix last change.
11802
11803 2004-02-17 Kim F. Storm <storm@cua.dk>
11804
11805 * xdisp.c (fast_find_position): Fix return value of new version;
11806 it was inverted compared to the 21.1 version.
11807 (get_window_cursor_type): Don't look at glyph if NULL.
11808 (display_and_set_cursor): Set glyph to NULL if cursor in fringe.
11809
11810 * keyboard.c: Rework previous change; it didn't consider that the
11811 buf array was allocated on the stack.
11812 (prev_read): Remove variable.
11813 (read_avail_input_buf): New static event buffer array.
11814 (in_read_avail_input): New static variable to handle re-entrancy.
11815 (read_avail_input): Change buf to pinter to read_avail_input_buf.
11816 Use in_read_avail_input to handle re-entrance; when re-entered,
11817 fully initialize and use tmp_buf array instead of read_avail_input_buf.
11818 Do not initialize read_avail_input_buf in full here; instead assume it
11819 is always cleared on entry. To ensure that, we clear (just) the
11820 entries that were used before we return.
11821 (init_keyboard): Initialize read_avail_input_buf here.
11822
11823 2004-02-16 Jesper Harder <harder@ifa.au.dk>
11824
11825 * cmds.c (Fend_of_line): Doc fix.
11826
11827 2004-02-16 Dmitry Antipov <dmitry.antipov@mail.ru> (tiny change)
11828
11829 * keyboard.c (prev_read): New static variable.
11830 (read_avail_input): Use it to zero out only those slots in buf[]
11831 that were used last time we were called.
11832
11833 2004-02-16 Eli Zaretskii <eliz@gnu.org>
11834
11835 * Makefile.in (obj): Move fringe.o from here...
11836 (XOBJ, MAC_OBJ): ...to here.
11837
11838 2004-02-16 Stephen Eglen <stephen@gnu.org>
11839
11840 * fringe.c (init_fringe_bitmap): Define j in MAC_OS code.
11841
11842 2004-02-15 Stefan Monnier <monnier@iro.umontreal.ca>
11843
11844 * data.c (Fbyteorder):
11845 * fringe.c (Fdefine_fringe_bitmap):
11846 * xdisp.c (handle_single_display_prop):
11847 * xselect.c (x_handle_dnd_message): Lisp_Object/int mixup.
11848
11849 2004-02-16 Jason Rumney <jasonr@gnu.org>
11850
11851 * w32term.c (w32_draw_fringe_bitmap): Handle overlay fringe bitmaps.
11852
11853 2004-02-15 Steven Tamm <steventamm@mac.com>
11854
11855 * macterm.c (Vmac_emulate_three_button_mouse): New variable for
11856 controlling emulation of a three button mouse with option and
11857 command keys.
11858 (Qreverse, mac_get_enumlated_btn): Handle the emulation.
11859 (mac_event_to_emacs_modifiers, XTread_socket): Ditto.
11860
11861 2004-02-15 Kim F. Storm <storm@cua.dk>
11862
11863 * buffer.c (syms_of_buffer): Doc fix for indicate-buffer-boundaries.
11864
11865 * fringe.c (init_fringe_bitmap) [MAC_OS, WORDS_BIG_ENDIAN]:
11866 Perform byte-swapping.
11867
11868 2004-02-14 Kim F. Storm <storm@cua.dk>
11869
11870 * dispextern.h (struct draw_fringe_bitmap_params): Change member
11871 bits from char to short to facilitate wider bitmaps.
11872 (struct redisplay_interface): Fix prototype of define_fringe_bitmap
11873 member.
11874
11875 * fringe.c (struct fringe_bitmap): Change member bits from char to
11876 short to facilitate 16 bits wide bitmaps. Modify all standard
11877 bitmaps accordingly.
11878 (BYTES_PER_BITMAP_ROW, STANDARD_BITMAP_HEIGHT): New macros.
11879 (FRBITS): Use STANDARD_BITMAP_HEIGHT instead of just sizeof.
11880 (draw_fringe_bitmap): Ditto.
11881 (init_fringe_bitmap) [MAC_OS]: Don't bitswap.
11882 (init_fringe_bitmap) [HAVE_X_WINDOWS]: Enhance bitswapping to
11883 handle up to 16 bits wide bitmaps.
11884 (Fdefine_fringe_bitmap): Doc fix. Handle wider bitmaps.
11885 (Ffringe_bitmaps_at_pos): Add missing arg declarations.
11886
11887 * macterm.c (mac_draw_bitmap): Handle 16 bits wide bitmaps directly.
11888 (x_draw_fringe_bitmap): Use enhanced mac_draw_bitmap, so we no longer
11889 need to call mac_create_bitmap_from_bitmap_data and mac_free_bitmap.
11890
11891 * w32term.c (w32_define_fringe_bitmap): Bitmaps are now 16 bits wide,
11892 so it is no longer necessary to expand them here.
11893
11894 * xterm.c (x_draw_fringe_bitmap): Handle wider bitmaps (max 16 bits).
11895
11896 2004-02-12 Kim F. Storm <storm@cua.dk>
11897
11898 * window.c (Fwindow_fringes): Doc fix.
11899
11900 2004-02-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11901
11902 * xselect.c (x_get_foreign_selection): Add new optional parameter
11903 time_stamp.
11904 (Fx_get_selection_internal): Ditto, pass time_stamp to
11905 x_get_foreign_selection.
11906
11907 * data.c (Fbyteorder): New function.
11908
11909 2004-02-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
11910
11911 * atimer.c: Move include stdio.h to same place as in other files.
11912
11913 * region-cache.c: Ditto.
11914
11915 * sysdep.c: Ditto.
11916
11917 * xfaces.c: Ditto.
11918
11919 2004-02-09 Sam Steingold <sds@gnu.org>
11920
11921 * w32term.c (w32_draw_fringe_bitmap): Fix a typo in the last patch.
11922
11923 2004-02-09 Kim F. Storm <storm@cua.dk>
11924
11925 * fringe.c: New file. Move original fringe related declarations
11926 and code from dispextern.h and xdisp.c here.
11927 Rework code to support user defined fringe bitmaps, redefining
11928 standard bitmaps, ability to overlay user defined bitmap with
11929 overlay arrow bitmap, and add faces to bitmaps.
11930 (Voverflow_newline_into_fringe): Declare here.
11931 (enum fringe_bitmap_align): New enum.
11932 (..._bits): All bitmaps are now defined without bitswapping; that
11933 is now done in init_fringe_once (if necessary).
11934 (standard_bitmaps): New array with specifications for the
11935 standard fringe bitmaps.
11936 (fringe_faces): New array.
11937 (valid_fringe_bitmap_id_p): New function.
11938 (draw_fringe_bitmap_1): Rename from draw_fringe_bitmap.
11939 (draw_fringe_bitmap): New function which draws fringe bitmap,
11940 possibly overlaying bitmap with cursor in right fringe or the
11941 overlay arrow in the left fringe.
11942 (update_window_fringes): Do not handle overlay arrow here.
11943 Compare and copy fringe bitmap faces.
11944 (init_fringe_bitmap): New function.
11945 (Fdefine_fringe_bitmap, Fdestroy_fringe_bitmap): New DEFUNs to
11946 define and destroy user defined fringe bitmaps.
11947 (Fset_fringe_bitmap_face): New DEFUN to set face for a fringe bitmap.
11948 (Ffringe_bitmaps_at_pos): New DEFUN to read current fringe bitmaps.
11949 (syms_of_fringe): New function. Defsubr new DEFUNs.
11950 DEFVAR_LISP Voverflow_newline_into_fringe.
11951 (init_fringe_once, init_fringe): New functions.
11952 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: New functions.
11953
11954 * Makefile.in (obj): Add fringe.o.
11955 (fringe.o): New dependencies.
11956
11957 * dispextern.h (FRINGE_ID_BITS): New definition for number of
11958 bits allocated to hold a fringe number. Increase number of bits
11959 from 4 to 8 to allow user defined fringe bitmaps.
11960 (struct glyph_row, struct it): New members left_user_fringe_bitmap,
11961 left_user_fringe_face_id, right_user_fringe_bitmap,
11962 right_user_fringe_face_id.
11963 (enum fringe_bitmap_type, struct fringe_bitmap, fringe_bitmaps):
11964 Move to new file fringe.c.
11965 (MAX_FRINGE_BITMAPS): Define here.
11966 (struct draw_fringe_bitmap_params): New members bits, cursor_p,
11967 and overlay_p. Change member which to int.
11968 (struct redisplay_interface): New members define_fringe_bitmap
11969 and destroy_fringe_bitmap.
11970 (valid_fringe_bitmap_id_p): Add prototype.
11971 (w32_init_fringe, w32_reset_fringes) [WINDOWS_NT]: Add prototypes.
11972
11973 * dispnew.c (row_equal_p): Compare fringe bitmap faces and overlay
11974 arrows.
11975 (update_frame): Do flush_display if force_flush_display_p to
11976 ensure display (specifically fringes) are updated in a timely
11977 manner when resizing the frame by dragging the mouse.
11978 (update_window_line): Update row if overlay arrow changed.
11979 (scrolling_window): Redraw fringe bitmaps if fringe bitmap faces
11980 or overlay arrow changed.
11981
11982 * emacs.c (main) [HAVE_WINDOW_SYSTEM]: Call init_fringe_once,
11983 syms_of_fringe, and init_fringe.
11984
11985 * frame.h (struct frame): New member force_flush_display_p.
11986
11987 * lisp.h (syms_of_fringe, init_fringe, init_fringe_once):
11988 Add prototypes.
11989
11990 * macterm.c (mac_draw_bitmap): Add overlay_p arg.
11991 (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps;
11992 thanks to YAMAMOTO Mitsuharu for advice on how to do this.
11993 Use cursor color for displaying cursor in fringe.
11994 (x_redisplay_interface): Add null handlers for
11995 define_fringe_bitmap and destroy_fringe_bitmap functions.
11996
11997 * w32term.c (w32_draw_fringe_bitmap): Copy unadapted code from
11998 xterm.c to handle overlayed fringe bitmaps and to use cursor color
11999 for displaying cursor in fringe.
12000 (w32_define_fringe_bitmap, w32_destroy_fringe_bitmap): New W32
12001 specific functions to define and destroy fringe bitmaps in fringe_bmp.
12002 (w32_redisplay_interface): Add them to redisplay_interface.
12003 (w32_term_init): Call w32_init_fringe instead of explicitly
12004 defining fringe bitmaps in fringe_bmp array.
12005 (x_delete_display): Call w32_reset_fringes instead of explicitly
12006 destroying fringe bitmaps in fringe_bmp array.
12007
12008 * xdisp.c (Voverflow_newline_into_fringe, syms_of_xdisp)
12009 (left_bits, right_bits, up_arrow_bits, down_arrow_bits)
12010 (continued_bits, continuation_bits, ov_bits, first_line_bits)
12011 (last_line_bits, filled_box_cursor_bits, hollow_box_cursor_bits)
12012 (bar_cursor_bits, hbar_cursor_bits, zv_bits, hollow_square_bits)
12013 (fringe_bitmaps, draw_fringe_bitmap, draw_row_fringe_bitmaps)
12014 (draw_window_fringes, compute_fringe_widths, update_window_fringes):
12015 Move fringe handling vars and code to new file fringe.c.
12016 (handle_display_prop): Handle left-fringe and right-fringe
12017 display properties; store user fringe bitmaps in iterator.
12018 (move_it_in_display_line_to): Handle cursor in fringe at eob.
12019 (clear_garbaged_frames): Set force_flush_display_p if resized.
12020 (redisplay_window): Redraw fringe bitmaps if not just_this_one_p.
12021 (display_line): Handle cursor in fringe at eob.
12022 (display_line): Set row user fringe bitmaps from iterator.
12023
12024 * xterm.c (x_draw_fringe_bitmap): Handle overlayed fringe bitmaps.
12025 Use cursor color for displaying cursor in fringe.
12026 (x_redisplay_interface): Add null handlers for
12027 define_fringe_bitmap and destroy_fringe_bitmap functions.
12028
12029 2004-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12030
12031 * macfns.c (Fx_change_window_property): Make doc string and
12032 parameters same as for X version.
12033
12034 * w32fns.c (Fx_change_window_property): Ditto.
12035
12036 2004-02-07 Kim F. Storm <storm@cua.dk>
12037
12038 * xdisp.c (hscroll_window_tree): Position cursor near to right
12039 margin in hscrolled window when jumping to end of line (rather
12040 than centering cursor).
12041
12042 * process.c (wait_reading_process_input): Don't do adaptive read
12043 buffering if waiting for a specific process.
12044
12045 2004-02-05 Luc Teirlinck <teirllm@auburn.edu>
12046
12047 * minibuf.c (Fminibufferp, Fread_from_minibuffer)
12048 (Fread_minibuffer, Feval_minibuffer)
12049 (Fread_string, Fread_no_blanks_input)
12050 (Fcompleting_read): Doc fixes.
12051 (syms_of_minibuf): Doc fixes for minibuffer-completion-table and
12052 completion-regexp-list. Define Qcase_fold_search and staticpro it.
12053 (read_minibuf): Fix initial comment.
12054 (Ftry_completion, Fall_completions, Ftest_completion): Bind
12055 case-fold-search to the value of completion-ignore-case when
12056 checking completion-regexp-list.
12057 (Fdisplay_completion_list): Make it handle arguments that are
12058 symbols. Doc fix.
12059
12060 2004-02-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12061
12062 * xterm.h: Add declaration of free_frame_menubar.
12063
12064 * xfns.c (x_create_bitmap_mask): Removed unused variable depth.
12065 (x_set_menu_bar_lines): Added ! defined USE_GTK for olines.
12066 (Fx_change_window_property): Add declaration of parameters type and
12067 format. Remove unused variable cons.
12068
12069 * xselect.c: Include stdio.h.
12070
12071 2004-02-05 Kenichi Handa <handa@m17n.org>
12072
12073 * fns.c (Fset_char_table_range): Fix previous change.
12074
12075 * buffer.c (Fset_buffer_multibyte): Fix docstring.
12076
12077 2004-02-04 Luc Teirlinck <teirllm@auburn.edu>
12078
12079 * editfns.c (Fchar_after, Fchar_before): Doc fixes.
12080
12081 2004-02-04 Stefan Monnier <monnier@iro.umontreal.ca>
12082
12083 * keymap.c (Vmouse_events): Rename from Vmenu_events.
12084 (syms_of_keymap): Add mouse-[45], header-line, and mode-line to it.
12085
12086 2004-02-04 Kenichi Handa <handa@m17n.org>
12087
12088 * fns.c (Fset_char_table_range): Handle charsets ascii,
12089 eight-bit-control, and eight-bit-graphic correctly.
12090
12091 2004-02-03 Jason Rumney <jasonr@gnu.org>
12092
12093 * w32select.c (Fw32_set_clipboard_data): Make coding iso2022 safe.
12094
12095 * w32fns.c (x_to_w32_font): Likewise.
12096
12097 2004-02-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12098
12099 * xterm.h: Add x_handle_dnd_message, x_check_property_data,
12100 x_fill_property_data, x_property_data_to_lisp and check_x_display_info.
12101
12102 * xterm.c (handle_one_xevent): Call x_handle_dnd_message for
12103 ClientMessages.
12104
12105 * xselect.c: Include termhooks.h and X11/Xproto.h
12106 (x_check_property_data, x_fill_property_data)
12107 (x_property_data_to_lisp, mouse_position_for_drop)
12108 (Fx_get_atom_name, x_handle_dnd_message): New functions for DND support.
12109 (Fx_send_client_event): Move here from xfns.c.
12110 (syms_of_xselect): Add Sx_get_atom_name and Sx_send_client_message.
12111
12112 * xfns.c (x-send-client-message): Move to xselect.c
12113 (Fx_change_window_property): Add optional arguments TYPE, FORMAT and
12114 OUTER_P.
12115 (Fx_window_property): Add optional arguments TYPE, SOURCE, DELETE_P,
12116 VECTOR_RET_P. Handle AnyPropertyType. Call x_property_data_to_lisp
12117 if vector_ret_p is true.
12118 (syms_of_xfns): Sx_send_client_message moved to xselect.c.
12119
12120 2004-02-02 Eli Zaretskii <eliz@gnu.org>
12121
12122 * fileio.c (Fcopy_file): If NEWNAME is a directory, expand the
12123 basename of FILE relative to it, not FILE itself.
12124
12125 2004-02-02 Kenichi Handa <handa@m17n.org>
12126
12127 * coding.c (coding_restore_composition): Check invalid
12128 composition data more rigidly.
12129
12130 2004-01-30 Luc Teirlinck <teirllm@auburn.edu>
12131
12132 * fileio.c (Fread_file_name_internal): Correctly handle the case
12133 where insert-default-directory is nil.
12134 (Fread_file_name): Always return an empty string if the user exits
12135 with an empty minibuffer. Adapt the docstring accordingly.
12136 (syms_of_fileio): Adapt the docstring of insert-default-directory
12137 to the change in Fread_file_name.
12138
12139 2004-01-29 Eli Zaretskii <eliz@gnu.org>
12140
12141 * alloca.c [!alloca]: Fix the prototype for xfree.
12142
12143 2004-01-29 Kenichi Handa <handa@m17n.org>
12144
12145 * fns.c (string_char_to_byte): Optimize for ASCII only string.
12146 (string_byte_to_char): Likewise.
12147
12148 2004-01-28 Peter Runestig <peter@runestig.com>
12149
12150 * makefile.w32-in, w32fns.c: Add `default-printer-name' function.
12151
12152 2004-01-27 Steven Tamm <steventamm@mac.com>
12153
12154 * unexmacosx.c (unexec_copy): Do not copy more than was
12155 requested to prevent overwriting during unexec.
12156
12157 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12158
12159 * process.c (sigchld_handler): Add comment about not calling malloc.
12160
12161 * process.h: Add extern to synch_process_termsig.
12162
12163 2004-01-27 Steven Tamm <steventamm@mac.com>
12164
12165 * macterm.c (make_mac_frame, make_mac_terminal_frame):
12166 Move setting of scroll bars from make_mac_frame to
12167 make_mac_terminal_frame to prevent clobbering of scroll-bar-mode.
12168
12169 2004-01-26 Richard M. Stallman <rms@gnu.org>
12170
12171 * search.c (Freplace_match): Handle nonexistent
12172 back-references properly.
12173
12174 2004-01-03 Richard M. Stallman <rms@gnu.org>
12175
12176 * window.c (decode_any_window): New function.
12177 (Fwindow_height, Fwindow_width, Fwindow_edges)
12178 (Fwindow_pixel_edges, Fwindow_inside_edges)
12179 (Fwindow_inside_pixel_edges): Use decode_any_window.
12180
12181 2004-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12182
12183 * process.h: synch_process_termsig new variable.
12184
12185 * callproc.c: Define synch_process_termsig.
12186 (Fcall_process): Initiate synch_process_termsig to zero and
12187 check if non-zero and get signal name after subprocess has ended.
12188
12189 * process.c (sigchld_handler): Set synch_process_termsig
12190 if terminated by a signal. synch_process_death setting removed.
12191
12192 * sysdep.c (mkdir, rmdir): Also check synch_process_termsig.
12193
12194 2004-01-26 Andreas Schwab <schwab@suse.de>
12195
12196 * print.c (print_preprocess): Declare size as EMACS_INT to not
12197 lose bits.
12198 (print_object): Likewise.
12199 * alloc.c (Fpurecopy): Likewise.
12200
12201 2004-01-25 Luc Teirlinck <teirllm@auburn.edu>
12202
12203 * window.c (Fwindow_minibuffer_p): Doc fix.
12204
12205 2004-01-24 Jonathan Yavner <jyavner@member.fsf.org>
12206
12207 * editfns.c (Fformat): Make both passes accept the same set of flags.
12208
12209 2004-01-23 Kenichi Handa <handa@m17n.org>
12210
12211 * fns.c (Fmd5): If OBJECT is a buffer different from the current
12212 one, set buffer to OBJECT temporarily.
12213
12214 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
12215
12216 * keyboard.c (kbd_buffer_gcpro): Remove.
12217 (kbd_buffer_store_event, clear_event, Fdiscard_input)
12218 (stuff_buffered_input, init_keyboard, syms_of_keyboard):
12219 Don't initialize and/or maintain the variable any more. It was made
12220 redundant by my commit of 2003-06-15.
12221
12222 * lisp.h [USE_LSB_TAG && !DECL_ALIGN]: Signal an error.
12223
12224 2004-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12225
12226 * lisp.h: Add undef DECL_ALIGN.
12227
12228 2004-01-21 Stefan Monnier <monnier@iro.umontreal.ca>
12229
12230 * process.c (wait_reading_process_input) [SYNC_INPUT]:
12231 Check interrupt_input_pending explicitly.
12232
12233 * lisp.h (QUIT) [SYNC_INPUT]: Check interrupt_input_pending as well.
12234
12235 * keyboard.c (handle_async_input): New fun,
12236 extracted from input_available_signal.
12237 (input_available_signal, reinvoke_input_signal): Use it.
12238
12239 2004-01-20 Stefan Monnier <monnier@iro.umontreal.ca>
12240
12241 * buffer.c (buffer_defaults, buffer_local_symbols): Use DECL_ALIGN.
12242
12243 * lisp.h [USE_LSB_TAG]: Add definitions for Lisp_Object value
12244 manipulation macros for when tags are in the lower bits.
12245 (struct Lisp_Free) [USE_LSB_TAG]: Add padding.
12246 (DECL_ALIGN): New macro.
12247 (DEFUN): Use it.
12248
12249 * lisp.h [ENABLE_CHECKING]: Don't force union type.
12250
12251 * s/darwin.h (__attribute__): Remove outdated workaround.
12252
12253 * macterm.c (main) [USE_LSB_TAG]: Don't range check the ram.
12254
12255 * alloc.c (lisp_malloc, lisp_align_malloc) [USE_LSB_TAG]:
12256 Don't check range of malloc address.
12257 (pure_alloc) [USE_LSB_TAG]: Enforce alignment.
12258
12259 * process.c (wait_reading_process_input): Lisp_Object/int mixup.
12260
12261 * dired.c (Ffile_attributes): Lisp_Object/int mixup.
12262
12263 2004-01-19 Kenichi Handa <handa@m17n.org>
12264
12265 * fontset.c (fontset_font_pattern): Fix previous change.
12266
12267 2004-01-16 Miles Bader <miles@gnu.ai.mit.edu>
12268
12269 * xdisp.c (Voverflow_newline_into_fringe)
12270 (move_it_in_display_line_to, redisplay_internal)
12271 (update_window_fringes, redisplay_window, display_line, window):
12272 Add `#ifdef HAVE_WINDOW_SYSTEM' around fringe-drawing stuff, so
12273 that it compiles without a window-system.
12274 * dispnew.c (direct_output_for_insert, update_window): Likewise.
12275
12276 2004-01-16 Kim F. Storm <storm@cua.dk>
12277
12278 * buffer.h (struct buffer): New member indicate_buffer_boundaries.
12279
12280 * buffer.c (init_buffer_once): Set buffer_defaults and
12281 buffer_local_flags for indicate_buffer_boundaries.
12282 (syms_of_buffer): Defvar_per_buffer it, and defvar_lisp_nopro
12283 default- variable for it.
12284
12285 * dispextern.h (struct glyph_row): New members left_fringe_bitmap,
12286 right_fringe_bitmap, redraw_fringe_bitmaps_p for new fringe handling.
12287 New members exact_window_width_line_p and cursor_in_fringe_p for
12288 overflowing newlines into right fringe.
12289 New members indicate_bob_p, indicate_top_line_p, indicate_eob_p,
12290 and indicate_bottom_line_p for buffer boundaries and scrolling.
12291 (enum fringe_bitmap_type): Add UP_ARROW_BITMAP, DOWN_ARROW_BITMAP,
12292 FIRST_LINE_BITMAP, LAST_LINE_BITMAP, FILLED_BOX_CURSOR_BITMAP,
12293 HOLLOW_BOX_CURSOR_BITMAP, BAR_CURSOR_BITMAP, HBAR_CURSOR_BITMAP,
12294 and HOLLOW_SQUARE_BITMAP.
12295 (draw_fringe_bitmap, draw_window_fringes, update_window_fringes):
12296 Add prototypes.
12297
12298 * dispnew.c (row_equal_p, update_window_line): Compare fringe bitmaps
12299 instead of related indicator fields.
12300 Compare exact_window_width_line_p and cursor_in_mouse_face_p indicators.
12301 (direct_output_for_insert): Handle exact width lines like
12302 contined lines. Call update_window_fringes.
12303 (update_window): Call update_window_fringes.
12304 (scrolling_window): Don't skip desired rows with changed bitmaps.
12305 Check if fringe bitmaps changes when assigning scrolled rows.
12306
12307 * xdisp.c (Voverflow_newline_into_fringe): New variable.
12308 (IT_OVERFLOW_NEWLINE_INTO_FRINGE): New macro.
12309 (move_it_in_display_line_to): Overflow newline into fringe for
12310 rows that are exactly as wide as the window.
12311 (up_arrow_bits, down_arrow_bits, first_line_bits, last_line_bits)
12312 (filled_box_cursor_bits, hollow_box_cursor_bits, bar_cursor_bits)
12313 (hbar_cursor_bits, hollow_square_bits): New fringe bitmaps.
12314 (fringe_bitmaps): Add new bitmaps.
12315 (draw_fringe_bitmap): Make extern. Remove WHICH arg.
12316 Select proper bitmap for cursor in fringe when appropriate.
12317 Handle alignment of bitmap to top or bottom of row.
12318 (draw_row_fringe_bitmaps): Don't select bitmaps here; that is now
12319 done by update_window_fringes.
12320 (update_window_fringes, draw_window_fringes): New functions.
12321 (redisplay_internal): Call update_window_fringes in case only
12322 cursor row is updated.
12323 (redisplay_window): Call update_window_fringes.
12324 Explicitly call draw_window_fringes if redisplay was done using
12325 the current matrix or the overlay arrow is in the window.
12326 (try_window_reusing_current_matrix): Mark scrolled rows for
12327 fringe update (to update buffer-boundaries / scrolling icons).
12328 (find_last_unchanged_at_beg_row): Handle exact width lines line
12329 continued lines.
12330 (display_line): Overflow newline into fringe for rows that are
12331 exactly as wide as the window. Don't append space for newline
12332 in this case.
12333 (notice_overwritten_cursor): Explicitly clear cursor bitmap
12334 in fringe as if it had been overwritten.
12335 (erase_phys_cursor): Erase cursor bitmap in fringe.
12336 (syms_of_xdisp): Mark show-trailing-whitespace and
12337 void-text-area-pointer as user options.
12338 DEFVAR_LISP Voverflow_newline_into_fringe. Enable by default.
12339
12340 * xterm.c (x_update_window_end): Call draw_window_fringes.
12341 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12342 in row instead of actually drawing fringe bitmaps.
12343 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12344 (x_draw_window_cursor): Draw cursor in fringe.
12345
12346 * w32term.c (x_update_window_end): Call draw_window_fringes.
12347 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12348 in row instead of actually drawing fringe bitmaps.
12349 (w32_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12350 (w32_draw_window_cursor): Draw cursor in fringe.
12351
12352 * macterm.c (x_update_window_end): Call draw_window_fringes.
12353 (x_after_update_window_line): Just set redraw_fringe_bitmaps_p
12354 in row instead of actually drawing fringe bitmaps.
12355 (x_draw_fringe_bitmap): Handle bottom aligned bitmaps.
12356 (mac_draw_window_cursor): Draw cursor in fringe.
12357
12358 2004-01-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12359
12360 * xterm.c (handle_one_xevent): Don't handle characters that are part
12361 of an old style (XLookupString) compose sequence.
12362
12363 2004-01-15 Kenichi Handa <handa@m17n.org>
12364
12365 * search.c (Freplace_match): Use make_multibyte_string or
12366 make_unibyte_string according to the buffer multibyteness.
12367
12368 2004-01-14 Stefan Monnier <monnier@iro.umontreal.ca>
12369
12370 * alloc.c (struct interval_block, struct string_block)
12371 (struct symbol_block, struct marker_block, live_string_p)
12372 (live_cons_p, live_symbol_p, live_float_p, live_misc_p):
12373 Better preserve alignment for objects in blocks.
12374 (FLOAT_BLOCK_SIZE): Adjust for possible alignment padding.
12375
12376 * lread.c (defvar_per_buffer): Remove dead declaration.
12377
12378 * macterm.c (do_check_ram_size): Don't hardcode the lisp address
12379 space size.
12380
12381 2004-01-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12382
12383 * xmenu.c (popup_get_selection): Check new parameter down_on_keypress
12384 if a key press should pop down. Only pop down if a key is pressed
12385 outside the menu/dialog.
12386 (create_and_show_popup_menu): Pass 0 for down_on_keypress to
12387 popup_get_selection.
12388 (create_and_show_dialog): Pass 1 for down_on_keypress to
12389 popup_get_selection.
12390
12391 2004-01-11 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12392
12393 * alloc.c (allocate_vectorlike): Surround calls to mallopt with
12394 BLOCK/UNBLOCK_INPUT.
12395
12396 2004-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12397
12398 * xmenu.c (Fx_popup_dialog): Add an Ok button if no buttons are
12399 specified.
12400
12401 2004-01-08 Kenichi Handa <handa@m17n.org>
12402
12403 * editfns.c (Fformat): Fix '&' to '&&'.
12404
12405 2004-01-08 Andreas Schwab <schwab@suse.de>
12406
12407 * print.c (print_preprocess) <case Lisp_Vectorlike>: Only mask
12408 size if PSEUDOVECTOR_FLAG is set.
12409
12410 2004-01-07 Kenichi Handa <handa@m17n.org>
12411
12412 * charset.c (Fdeclare_equiv_charset): Fix docstring.
12413
12414 * fontset.c (fontset_ref_via_base): Fix previous change.
12415
12416 2004-01-07 Kim F. Storm <storm@cua.dk>
12417
12418 * process.c (read_process_output): Only activate adaptive
12419 buffering if we read less than 256 bytes at a time.
12420
12421 2004-01-06 Kim F. Storm <storm@cua.dk>
12422
12423 * dispnew.c (buffer_posn_from_coords): Return both buffer/string
12424 object and image object. Return glyph width and height.
12425 (mode_line_string, marginal_area_string): Ditto.
12426
12427 * dispextern.h (buffer_posn_from_coords, mode_line_string)
12428 (marginal_area_string): Fix prototypes.
12429
12430 * keyboard.h (POSN_POSN, POSN_SET_POSN): Rename macros from
12431 POSN_BUFFER_POSN and POSN_SET_BUFFER_POSN. All uses changed.
12432 (POSN_INBUFFER_P, POSN_BUFFER_POSN): New macros.
12433
12434 * keyboard.c (make_lispy_position): Use modified mode_line_string,
12435 buffer_posn_from_coords, and marginal_area_string functions to
12436 include both string object and image object in the lispy position.
12437 Also add actual glyph width and height to position.
12438 (read_key_sequence): Use real buffer position from mouse
12439 event to find keymap property even when click is in marginal area.
12440
12441 * xdisp.c (note_mode_line_or_margin_highlight): Use modified
12442 mode_line_string and marginal_area_string functions to handle
12443 both string object and image object properties.
12444
12445 2004-01-06 Andreas Schwab <schwab@suse.de>
12446
12447 * syntax.c (skip_chars): Treat '-' at end of string as ordinary
12448 character.
12449
12450 2004-01-02 Andreas Schwab <schwab@suse.de>
12451
12452 * macterm.c (emacs_options, x_initialized, same_x_server):
12453 Remove unused (and duplicated) definitions.
12454
12455 2004-01-02 Kim F. Storm <storm@cua.dk>
12456
12457 * process.h (struct Lisp_Process): New members for adaptive read
12458 buffering: adaptive_read_buffering, read_output_delay, and
12459 read_output_skip.
12460
12461 * process.c (ADAPTIVE_READ_BUFFERING): New conditional.
12462 (READ_OUTPUT_DELAY_INCREMENT, READ_OUTPUT_DELAY_MAX)
12463 (READ_OUTPUT_DELAY_MAX_MAX): New constants.
12464 (process_output_delay_count, process_output_skip): New vars.
12465 (Vprocess_adaptive_read_buffering): New variable.
12466 (make_process): Initialize adaptive read buffering members.
12467 (Fstart_process): Set adaptive_read_buffering member.
12468 (deactivate_process): Cleanup adaptive read buffering.
12469 (wait_reading_process_input): Temporarily omit delayed
12470 subprocesses from the set of file descriptors to read from;
12471 adjust the select timeout if we skipped any subprocesses.
12472 (read_process_output): Increase adaptive read buffering delay if
12473 we read less than a full buffer; reduce delay when we read a
12474 full buffer.
12475 (send_process): Simplify using local Lisp_Process var.
12476 Reset adaptive read buffering delay after write.
12477 (init_process): Initialize process_output_delay_count and
12478 process_output_skip.
12479 (syms_of_process): DEFVAR_LISP Vprocess_adaptive_read_buffering.
12480
12481 2004-01-01 Jason Rumney <jasonr@gnu.org>
12482
12483 * w32term.c (w32_text_out): Use s->font, for consistency with callers.
12484
12485 2003-12-30 Luc Teirlinck <teirllm@auburn.edu>
12486
12487 * print.c (Ferror_message_string): Add hyperlink in the docstring
12488 to the definition of `signal' in the Elisp manual.
12489 * eval.c (Fsignal): Ditto.
12490
12491 2003-12-29 James Clark <jjc@jclark.com>
12492
12493 * fns.c (internal_equal): Return t for two NaN arguments.
12494
12495 2003-12-29 Richard M. Stallman <rms@gnu.org>
12496
12497 * data.c (store_symval_forwarding): Handle setting
12498 default-fill-column, etc., by changing the value in
12499 buffers that use the default.
12500
12501 * minibuf.c (Fset_minibuffer_window): Doc fix.
12502
12503 * fileio.c (choose_write_coding_system): Ignore auto_saving
12504 if using the visited file for auto saves.
12505 (Fwrite_region): Don't update SAVE_MODIFF
12506 if auto-saving in visited file.
12507
12508 2003-12-29 Kenichi Handa <handa@m17n.org>
12509
12510 * dispextern.h (face_font_available_p): Extern it.
12511
12512 * fontset.c (Voverriding_fontspec_alist): New variable.
12513 (lookup_overriding_fontspec): New function.
12514 (fontset_ref_via_base): Call lookup_overriding_fontspec if necessary.
12515 (fontset_font_pattern): Likewise.
12516 (regulalize_fontname): New function.
12517 (Fset_fontset_font): Call regulalize_fontname.
12518 (Fset_overriding_fontspec_internal): New function.
12519 (syms_of_fontset): Initialize and staticpro Voverriding_fontspec_alist.
12520 Defsubr Sset_overriding_fontspec_internal.
12521
12522 * xfaces.c (face_font_available_p): New function.
12523
12524 2003-12-28 Richard M. Stallman <rms@gnu.org>
12525
12526 * buffer.c (Fother_buffer): Don't crash if BUF is nil
12527 or if its name is nil.
12528
12529 * buffer.c (Fkill_buffer): Don't delete auto-save file
12530 if it's the same as the visited file.
12531
12532 2003-12-28 Luc Teirlinck <teirllm@auburn.edu>
12533
12534 * coding.c (Fcheck_coding_system): Doc fix.
12535
12536 2003-12-28 Kim F. Storm <storm@cua.dk>
12537
12538 * Makefile.in (eval.o): Depend on dispextern.h.
12539
12540 * dispnew.c (buffer_posn_from_coords): Fix calculation of dy for
12541 image glyph using image's ascent.
12542 (mode_line_string): Return image glyph as object clicked on.
12543 Adjust y0 for image glyph using image's ascent.
12544
12545 * dispextern.h (FACE_ID_BITS, MAX_FACE_ID): New defines.
12546 (struct glyph): New members, ascent and descent. Used to save
12547 this glyph's ascent and descent, instead of having.
12548 (struct glyph): Declare member face_id using FACE_ID_BITS.
12549 (find_hot_spot): Add prototype.
12550
12551 * keyboard.c (Qimage): Remove extern (now in lisp.h).
12552 (QCmap): Declare extern.
12553 (make_lispy_position): When position is inside image hot-spot,
12554 use hot-spot element's id as posn element.
12555
12556 * lisp.h (IMAGEP): New macro to test for image object type.
12557 (Qimage): Declare extern.
12558
12559 * macfns.c (Qimage): Remove extern (now in lisp.h).
12560 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12561
12562 * macterm.c (Qface, Qmouse_face): Remove unused externs.
12563
12564 * w32fns.c (Qimage): Remove extern (now in lisp.h).
12565 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12566
12567 * w32menu.c (Qmouse_click, Qevent_kind): Remove unused externs.
12568
12569 * w32term.c (Qface, Qmouse_face): Remove unused externs.
12570
12571 * xdisp.c (Qarrow, Qhand, Qtext, Qpointer): New variables for
12572 pointer types.
12573 (Qrelative_width, Qalign_to): Remove unused variables.
12574 (Vvoid_text_area_pointer): Replace Vshow_text_cursor_in_void.
12575 (QCmap, QCpointer, Qrect, Qcircle, Qpoly): New variables for
12576 image maps.
12577 (x_y_to_hpos_vpos): Return glyph relative coordinates through
12578 new dx and dy args.
12579 Remove buffer_only_p arg (always 0). Simplify code accordingly.
12580 (get_glyph_string_clip_rect): Draw cursor using glyph's rather
12581 than row's ascent and height, to get sensible height on tall rows.
12582 (build_desired_tool_bar_string): Remove Qimage extern.
12583 (get_tool_bar_item): Fix call to x_y_to_hpos_vpos.
12584 (produce_image_glyph): Adjust it.ascent to minimum row ascent if
12585 image glyph is alone on the last line.
12586 (append_glyph, append_composite_glyph, produce_image_glyph)
12587 (append_stretch_glyph): Set glyph's ascent and descent.
12588 (on_hot_spot_p): New function to check if position is inside an
12589 rectangular, circular, or polygon-shaped image hot-spot,
12590 (find_hot_spot): New function to search for image hot-spot.
12591 (Flookup_image_map): New defun to search for image hot-spot.
12592 (define_frame_cursor1): New aux function to determine frame pointer.
12593 (note_mode_line_or_margin_highlight, note_mouse_highlight):
12594 Handle `pointer' text property and :pointer image property to
12595 control frame pointer shape. Detect image hot-spots for pointer
12596 and help_echo properties. Use define_frame_cursor1.
12597 (note_mouse_highlight): Use Vvoid_text_area_pointer.
12598 (syms_of_xdisp): Defsubr new defun. Intern and staticpro new variables.
12599 DEFVAR_LISP Vvoid_text_area_pointer instead of Vshow_text_cursor_in_void.
12600
12601 * xfaces.c (cache_face): Abort if c->size exceeds MAX_FACE_ID.
12602
12603 * xfns.c (x_set_mouse_color): Remove bogus x_check_errors call.
12604 (Qimage): Remove extern (now in lisp.h).
12605 (valid_image_p, parse_image_spec): Use IMAGEP macro.
12606
12607 * xmenu.c (show_help_event): Remove unused code.
12608
12609 * xterm.c (Qface, Qmouse_face): Remove unused externs.
12610 (x_draw_hollow_cursor): Draw cursor using glyph's rather than
12611 row's ascent and descent, to get a sensible height on tall rows.
12612
12613 2003-12-25 Luc Teirlinck <teirllm@auburn.edu>
12614
12615 * minibuf.c (Fcompleting_read): Undo previous change.
12616
12617 2003-12-25 Lars Hansen <larsh@math.ku.dk>
12618
12619 * dired.c (Fdirectory_files, Fdirectory_files_and_attributes):
12620 Arguments GCPRO'ed in call to file name handler.
12621
12622 2003-12-25 Thien-Thi Nguyen <ttn@gnu.org>
12623
12624 * termcap.c (tgetst1): Scan for "%pN"; if all
12625 N are continuous in [1,9], remove all "%pN".
12626
12627 2003-12-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12628
12629 * gtkutil.c (xg_frame_set_char_size): Call x_wm_set_size_hint.
12630
12631 * xfaces.c (lface_fully_specified_p): Take into account that
12632 MAC OS always have unspecified stipple.
12633
12634 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12635
12636 * tparam.c (tparam1): Add handling for `%pN', which
12637 means use param N for the next substitution.
12638
12639 2003-12-24 Thien-Thi Nguyen <ttn@gnu.org>
12640
12641 * xfaces.c (Fcolor_gray_p): Fix omission bug:
12642 In case `frame' is nil, consult the selected frame.
12643 (Fcolor_supported_p): Likewise.
12644
12645 2003-12-23 Luc Teirlinck <teirllm@auburn.edu>
12646
12647 * fns.c (Frandom, Fstring_make_multibyte, Fset_char_table_range):
12648 Doc fixes.
12649
12650 * minibuf.c (read_minibuf): Allow INITIAL to be a cons of a string
12651 and an integer. Adapt the introductory comment accordingly.
12652 (Fread_from_minibuffer): Delete code moved into read_minibuf.
12653 Doc fix.
12654 (Fread_minibuffer, Fread_no_blanks_input): Adapt to changes in
12655 read_minibuf.
12656 (Fcompleting_read): Delete code moved into read_minibuf.
12657 (Ftest_completion): Make it handle obarrays and hash tables correctly.
12658
12659 2003-12-03 Kenichi Handa <handa@m17n.org>
12660
12661 * coding.c (decode_coding_iso2022): Fix for preserving UTF-8
12662 encoding sequence.
12663
12664 2003-12-01 Kenichi Handa <handa@m17n.org>
12665
12666 * composite.c (syms_of_composite): Don't make the compostion hash
12667 table week.
12668
12669 2003-11-30 Luc Teirlinck <teirllm@auburn.edu>
12670
12671 * intervals.h: Add EXFUN for Fget_char_property_and_overlay.
12672 * textprop.c (Fget_char_property_and_overlay): New function.
12673 (syms_of_textprop): Defsubr it.
12674
12675 2003-11-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12676
12677 * dispnew.c (buffer_posn_from_coords): Add ifdef HAVE_WINDOW_SYSTEM
12678 to compile on terminal configuration.
12679
12680 * fileio.c (Fread_file_name): Check use_file_dialog also before
12681 calling Fx_file_dialog.
12682
12683 * fns.c (use_file_dialog): New variable.
12684 (syms_of_fns): DEFVAR_BOOL use-file-dialog.
12685
12686 2003-11-29 Kim F. Storm <storm@cua.dk>
12687
12688 * msdos.c (Qcursor_type, Qbar, Qhbar): Declare extern.
12689 (syms_of_msdos): Don't intern and staticpro them.
12690
12691 2003-11-27 Kim F. Storm <storm@cua.dk>
12692
12693 * dispnew.c (buffer_posn_from_coords): Calculate and return pixel
12694 coordinates relative to glyph at posn. If glyph is an image,
12695 return that as object at posn. Callers changed.
12696 (mode_line_string, marginal_area_string): Calculate and return
12697 pixel coordinates relative to glyph. Callers changed.
12698
12699 * dispextern.h (buffer_posn_from_coords, mode_line_string)
12700 (marginal_area_string): Fix prototypes.
12701 (window_box_left_offset, window_box_right_offset): Add prototypes.
12702
12703 * frame.h (get_specified_cursor_type, get_window_cursor_type):
12704 Remove prototypes.
12705
12706 * keyboard.h (EVENT_CLICK_COUNT, POSN_SCROLLBAR_PART): Fix defines.
12707
12708 * keyboard.c (make_lispy_position): Add x and y coordinates
12709 relative to the current glyph as 7th element of position.
12710 If glyph is an image, return it in the object element.
12711 (read_key_sequence): Skip checks for keymap property in cases
12712 where POSN_STRING is not a string (e.g. an image).
12713
12714 * xdisp.c (Vdisplay_pixels_per_inch): New variable.
12715 (Vshow_text_cursor_in_void): New variable.
12716 (glyph_to_pixel_coords): Don't use negative hpos.
12717 (x_y_to_hpos_vpos): Fix for partially visible first glyph.
12718 (append_stretch_glyph): Change ascent arg to be actual value
12719 in pixels rather than ratio to height. Callers changed.
12720 (calc_pixel_width_or_height): New aux function, implementing
12721 pixel based artihmetic for glyph widths and heights.
12722 (produce_stretch_glyph): Use calc_pixel_width_or_height for
12723 :width, :height, :align-to, and :ascent, thus allowing these to
12724 be specified in pixels as well as multiples of characters.
12725 Don't produce stretch glyphs with zero width or height.
12726 (get_specified_cursor_type): Declare static.
12727 (get_window_cursor_type): Declare static. Add glyph arg to be
12728 able to know when cursor is on an image; always substitute
12729 hollow-box cursor for filled-box cursor on images, to avoid
12730 negative images and flicker when blinking the cursor.
12731 (display_and_set_cursor): Pass glyph to get_window_cursor_type.
12732 (note_mode_line_or_margin_highlight): Use non-text cursor rather
12733 than vertical scroll-bar cursor in display margins.
12734 (note_mouse_highlight): Use non-text cursor rather than text
12735 cursor in fringes and over images in the text area.
12736 Use non-text cursor when mouse pointer is outside editable text,
12737 i.e. in the void after end-of-line or end-of-buffer; this was
12738 already done for W32, but is now standard for all systems --
12739 user can toggle show-text-cursor-in-void to get old behaviour.
12740 (syms_of_xdisp): DEFVAR_LISP Vshow_text_cursor_in_void and
12741 Vdisplay_pixels_per_inch.
12742
12743 2003-11-25 Andreas Schwab <schwab@suse.de>
12744
12745 * fns.c (internal_equal) <case Lisp_Vectorlike>: Declare size as
12746 EMACS_INT to not lose bits.
12747 (Ffillarray): Don't set bits beyond the size of a bool vector.
12748
12749 2003-11-25 Kim F. Storm <storm@cua.dk>
12750
12751 * print.c (Fredirect_debugging_output) [!GNU_LINUX]: Do not
12752 define this defun on systems that cannot use stderr as lvalue.
12753
12754 2003-11-24 Gerd Moellmann <gerd@gnu.org>
12755
12756 * s/freebsd.h (LD_SWITCH_SYSTEM_TEMACS)
12757 [__FreeBSD_version >= 500042]: Define as -znocombreloc because
12758 ld's default is incompatible with unexec.
12759
12760 2003-11-23 Kim F. Storm <storm@cua.dk>
12761
12762 * window.c (enum window_loop): Add REDISPLAY_BUFFER_WINDOWS.
12763 (window_loop): Handle REDISPLAY_BUFFER_WINDOWS.
12764 (Fforce_window_update): New defun.
12765 (syms_of_window): Defsubr it.
12766 (Fset_window_margins, Fset_window_fringes): Doc fix.
12767
12768 * print.c (Fredirect_debugging_output): New defun.
12769 (syms_of_print): Defsubr it.
12770
12771 2003-11-22 Luc Teirlinck <teirllm@auburn.edu>
12772
12773 * fns.c (Fset_char_table_parent): Doc fix.
12774
12775 2003-11-22 Kim F. Storm <storm@cua.dk>
12776
12777 * dispnew.c (buffer_posn_from_coords): Return actual row/column
12778 for glyph clicked on, rather than (unused) pixel positions.
12779 (mode_line_string, marginal_area_string): Change X and Y args to
12780 pointers for returning actual row/column for glyph clicked on.
12781 Simplify and optimize loops.
12782
12783 * dispextern.h (mode_line_string, marginal_area_string):
12784 Update prototypes.
12785
12786 * keyboard.c (make_lispy_position): New function for generating
12787 mouse click positions from frame and pixel coordinates.
12788 Enhanced to return buffer position and actual row/column for
12789 events outside the text area using updated mode_line_string and
12790 marginal_area_string functions.
12791 Return left-fringe and right-fringe clicks as such, rather than
12792 clicks in text area.
12793 (make_lispy_event) [USE_X_TOOLKIT, USE_GTK]: Don't call
12794 pixel_to_glyph_coords, as we never use the results.
12795 (make_lispy_event): Use make_lispy_position for MOUSE_CLICK_EVENT,
12796 WHEEL_EVENT, and DRAG_N_DROP_EVENT to replace redundant code.
12797 Eliminate unused code in WHEEL_EVENT handling.
12798 (make_lispy_movement): Use make_lispy_position.
12799
12800 * window.c (coordinates_in_window): Remove redundant tests.
12801 Fix returned X pixel value for left-margin.
12802
12803 * xdisp.c (note_mode_line_or_margin_highlight): Adapt to new
12804 mode_line_string and marginal_area_string parameters.
12805
12806 2003-11-22 Lars Hansen <larsh@math.ku.dk>
12807
12808 * w32.c (struct the_group, getgrgid): Add.
12809 * mac.c (struct my_group, getgrgid): Add.
12810
12811 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12812
12813 * fns.c (Fassq, Fassoc, Frassq, Frassoc): Doc fixes.
12814
12815 2003-11-21 Lars Hansen <larsh@math.ku.dk>
12816
12817 * dired.c (Ffile_attributes): Add parameter ID-FORMAT and
12818 include in call to file name handler. Optionally translate numeric
12819 UID and GID to strings. Update docstring.
12820 (directory_files_internal): Add parameter ID-FORMAT.
12821 (Fdirectory_files_and_attributes): Add parameter ID-FORMAT and
12822 include in call to file name handler and call to
12823 directory_files_internal. Update Docstring.
12824 (Fdirectory_files): Add dummy parameter in call to
12825 directory_files_internal.
12826 * lisp.h (Qinteger): Add.
12827 (Qinteger_or_floatp, Qinteger_or_float_or_marker_p): Remove.
12828 (Ffile_attributes): Add parameter.
12829 * data.c (Qinteger): Export.
12830
12831 2003-11-21 Luc Teirlinck <teirllm@auburn.edu>
12832
12833 * fns.c (Freverse, Fnreverse): Doc fixes.
12834
12835 2003-11-19 Kim F. Storm <storm@cua.dk>
12836
12837 * xdisp.c (init_iterator): Initialize it->start to position
12838 before reseating (in case start position is invisible).
12839 (init_to_row_start): Set it->start to row-start.
12840 (redisplay_window): Accept optional_new_start if start position
12841 is invisible (in which case IT_CHARPOS overshoots PT).
12842 (display_line): Setup row->start from it->start (rather than
12843 it->current which is wrong if first char on line is invisible).
12844 When done, reseat it->start to it->current (= start of next row).
12845 (expose_area): Fix exposure of text area when first char (e.g. TAB)
12846 is only partially visible.
12847
12848 * dispextern.h (struct it): New member start.
12849
12850 2003-11-17 Stefan Monnier <monnier@iro.umontreal.ca>
12851
12852 * alloc.c (make_float, Fcons): Clear the markbit at init time.
12853 (make_float, Fcons, Fmake_symbol, allocate_misc): Move the increment
12854 of block_index outside of the macro call.
12855 (Fgarbage_collect): Remove null code.
12856
12857 * m/amdx86-64.h: Don't redefine XPNTR.
12858
12859 * keyboard.c (parse_modifiers, apply_modifiers): Use INTMASK instead
12860 of VALMASK.
12861
12862 * fns.c (hashfn_eq, hashfn_eql, hashfn_equal, hash_put)
12863 (sxhash_string, sxhash): Use INTMASK instead of VALMASK.
12864 (maybe_resize_hash_table): Use MOST_POSITIVE_FIXNUM.
12865
12866 * lisp.h (VALMASK): Only define for non-union type.
12867 (MARKBIT): Remove.
12868 (ARRAY_MARK_FLAG): Use previous value of MARKBIT.
12869 (XTYPE): Define unconditionally.
12870 (XSETTYPE): Remove one more remnant.
12871 (EQ): Define differently for the union and non-union cases.
12872 (INTMASK): New bit mask.
12873 (struct Lisp_Marker): Move down to prepare for upcoming patch.
12874 (GC_EQ): Delegate to EQ.
12875
12876 * coding.c (coding_restore_composition): Lisp_Object/int mixup.
12877
12878 2003-11-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12879
12880 * xterm.c (x_window_to_scroll_bar): Move check of display to
12881 where window_id is compared.
12882
12883 2003-11-17 Kim F. Storm <storm@cua.dk>
12884
12885 * dispextern.h (struct it): New member first_vpos.
12886
12887 * xdisp.c (start_display): Set it->first_vpos.
12888 (try_window_id): Use first_vpos to start display in first _text_
12889 line if no reusable lines at start of window with header line.
12890
12891 2003-11-16 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12892
12893 * w32fns.c (XPutPixel):
12894 * w32bdf.c (w32_init_bdf_font):
12895 * sunfns.c (sel_read):
12896 * process.c (Fmake_network_process):
12897 * frame.c (store_frame_param):
12898 * fontset.c (Fset_fontset_font):
12899 * emacs.c (shut_down_emacs):
12900 * ccl.c (ccl_driver): Remove period at end of error message.
12901
12902 * config.in: Regenerate.
12903
12904 * xfns.c (x_window_to_frame, x_any_window_to_frame)
12905 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
12906 (x_top_window_to_frame): Add Display* argument to xg_win_to_widget.
12907 (x_create_bitmap_mask, xg_set_icon, create_frame_xic)
12908 (xic_set_statusarea, x_window, gif_load): Formatting adjustments.
12909
12910 * xterm.h (struct x_display_info): New field xg_cursor for GTK.
12911
12912 * xterm.c: Add Display * to x_window_to_scroll_bar declaration.
12913 (XTmouse_position, handle_one_xevent): Pass Display* to
12914 x_window_to_scroll_bar.
12915 (x_window_to_scroll_bar): Take a Display* argument.
12916 Check that display for frame is equal to Display* argument.
12917 (event_handler_gdk): Remove current_dpyinfo. Get dpyinfo from
12918 x_display_info_for_display instead. Use Display in xev instead
12919 of GDK_DISPLAY.
12920 (x_dispatch_event): Call x_display_info_for_display.
12921 (XTread_socket): Move GTK part out of loop. current_dpyinfo removed.
12922 (x_connection_closed): Call xg_display_close for GTK.
12923 (x_term_init): Call xg_display_open for additional displays.
12924 Initiate dpyinfo->xg_cursor with call to xg_create_default_cursor
12925 for GTK.
12926
12927 * xmenu.c (single_menu_item, mouse_position_for_popup)
12928 (x_activate_menubar): Formatting adjustments.
12929
12930 * xdisp.c (update_tool_bar, redisplay_tool_bar): Formatting
12931 adjustments.
12932
12933 * gtkutil.c (xg_get_gdk_display, xg_set_screen, xg_display_open)
12934 (xg_display_close, xg_create_default_cursor)
12935 (xg_get_gdk_pixmap_and_mask): New functions for multiple display
12936 handling.
12937 (xg_left_ptr_cursor): Remove.
12938 (xg_set_cursor): Change cursor to GdkCursor*. Do not create
12939 cursor here.
12940 (xg_win_to_widget): Take Display* argument, call
12941 gdk_xid_table_lookup_for_display.
12942 (xg_create_frame_widgets, xg_get_file_name, create_menus)
12943 (xg_create_widget, xg_modify_menubar_widgets): Call xg_set_screen.
12944 (xg_create_widget, xg_create_scroll_bar): Use xg_cursor
12945 in FRAME_X_DISPLAY_INFO.
12946 (xg_get_scroll_id_for_window): Take Display* argument.
12947 (update_frame_tool_bar): Call xg_get_gdk_pixmap_and_mask.
12948 (xg_initialize): Remove xg_left_ptr_cursor.
12949
12950 * gtkutil.h (xg_get_scroll_id_for_window, xg_win_to_widget): Add
12951 Display* argument.
12952 (xg_display_open, xg_display_close, xg_create_default_cursor): Declare.
12953
12954 2003-11-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12955
12956 * xterm.c (x_detect_focus_change): Do not change focus frame for
12957 Enter/LeaveNotify if the current focus frame has explicit focus.
12958
12959 2003-11-14 Kim F. Storm <storm@cua.dk>
12960
12961 * dispnew.c (update_text_area): Fix redisplay error when hscroll
12962 is active and first glyph is only partially visible.
12963
12964 2003-11-13 Kenichi Handa <handa@m17n.org>
12965
12966 * xdisp.c (select_frame_for_redisplay): New function.
12967 (redisplay_internal): Record also selected_frame for
12968 unwind_redisplay. Call select_frame_for_redisplay before
12969 redrawing each frame.
12970 (unwind_redisplay): Argument changed to a cons.
12971
12972 2003-11-12 Luc Teirlinck <teirllm@auburn.edu>
12973
12974 * fns.c (Fstring_to_multibyte): Doc fix.
12975
12976 2003-11-11 Kenichi Handa <handa@m17n.org>
12977
12978 * xterm.c (x_list_fonts): Fix excluding of auto-scaled fonts.
12979
12980 2003-11-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12981
12982 * xfns.c (x_window): Set XtNx and XtNy in shell widget for
12983 program specified positions.
12984
12985 2003-11-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
12986
12987 * xterm.c (XAW_ARROW_SCROLLBARS): Define it for Xaw 1.5E.
12988
12989 2003-11-08 Kenichi Handa <handa@m17n.org>
12990
12991 * Makefile.in (lisp): Add kannada.el.
12992 (shortlisp): Likewise.
12993
12994 2003-11-07 Kenichi Handa <handa@m17n.org>
12995
12996 * coding.c (coding_allocate_composition_data):
12997 Reset coding->composing to COMPOSITION_NO.
12998 (coding_restore_composition): Detect invalid composition data.
12999 Give Fstring and Fvector a Lispy integer, not C int.
13000
13001 2003-11-05 Stefan Monnier <monnier@iro.umontreal.ca>
13002
13003 * floatfns.c (Flogb): Don't use VALMASK.
13004
13005 * m/amdx86-64.h (VALBITS, XINT, XUINT): Remove.
13006 * m/ia64.h (VALBITS, XINT, XUINT): Remove.
13007
13008 * lisp.h (XINT): Move the cast to clarify what is going on.
13009 (GCTYPEMASK, XSETTYPE): Remove.
13010 (XGCTYPE): Make it an alias of XTYPE.
13011
13012 2003-11-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13013
13014 * xterm.c (x_term_init): Fix formatting.
13015
13016 2003-11-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13017
13018 * gtkutil.h (xg_have_tear_offs): Declare.
13019 (xg_keep_popup, xg_did_tearoff): Remove.
13020
13021 * gtkutil.c: Remove variable xg_did_tearoff.
13022 (xg_have_tear_offs): New function.
13023 (tearoff_remove): Just decrease xg_detached_menus.
13024 (tearoff_activate): Increase xg_detached_menus and call
13025 tearoff_remove when tearoff is removed.
13026 (xg_keep_popup): Remove function.
13027 (create_menus): Give add_tearoff_p as argument to recursive
13028 call to create_menus.
13029 (xg_create_widget): Use variables instead of multiple
13030 strcmp. Tell create_menus to create tear off only for
13031 menu bar menus.
13032 (xg_update_menubar): Change title for a detached menu also.
13033 (xg_modify_menubar_widgets): Always call xg_update_menubar, regardless
13034 of deep_p.
13035 (xg_initialize): Initialize xg_detached_menus, remove
13036 initialization of xg_did_tearoff.
13037
13038 * xmenu.c (set_frame_menubar): For GTK, set deep_p if
13039 xg_have_tear_offs returns non-zero.
13040 (create_and_show_popup_menu): Remove setting of xg_did_tearoff and
13041 call to xg_keep_popup.
13042
13043 2003-11-01 Andrew Choi <akochoi@shaw.ca>
13044
13045 * macterm.c (XTread_socket): Handle menubar selection and grow
13046 window only for mouseDown events.
13047
13048 2003-10-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13049
13050 * xterm.c (x_term_init): For GTK part, increase x_initialized
13051 to check for more than one display. Use error instead of return 0.
13052
13053 2003-10-31 Andrew Choi <akochoi@shaw.ca>
13054
13055 * unexmacosx.c (unrelocate): New function (contributed by Nozomu Ando).
13056 (copy_dysymtab): Call it.
13057
13058 2003-10-31 Luc Teirlinck <teirllm@auburn.edu>
13059
13060 * eval.c (Fdefvaralias): Doc fix.
13061
13062 2003-10-26 Luc Teirlinck <teirllm@auburn.edu>
13063
13064 * data.c (Fsetplist): Doc fix.
13065
13066 2003-10-14 Lute Kamstra <lute@gnu.org>
13067
13068 * window.c (Fset_window_fringes): Clarify docstring.
13069
13070 2003-10-14 Kim F. Storm <storm@cua.dk>
13071
13072 * window.c (Fset_window_margins): Simplify arg checking.
13073
13074 2003-10-13 Richard M. Stallman <rms@gnu.org>
13075
13076 * regex.c (MAX_BUF_SIZE): Reduce to 2**15.
13077 (print_partial_compiled_pattern): Replace assert with a printout.
13078 (skip_noops, mutually_exclusive_p): Change args, values to re_char *.
13079
13080 * alloc.c (lisp_align_malloc): If BASE is 0, call memory_full.
13081
13082 * window.c (Fset_window_margins): Allow only integers as args.
13083 (syms_of_window) <special-display-buffer-names, special-display-regexps>:
13084 Doc fixes.
13085
13086 2003-10-13 Lute Kamstra <lute@gnu.org>
13087
13088 * window.c (Fset_window_fringes): Elaborate docstring.
13089
13090 2003-10-12 Andrew Choi <akochoi@shaw.ca>
13091
13092 * macterm.c (XTread_socket): Call DragWindow only for mouseDown events.
13093
13094 * s/darwin.h (GC_MARK_STACK): Define.
13095
13096 2003-10-12 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13097
13098 * window.c (shrink_windows): New function.
13099 (size_window): Call shrink_windows to calculate window sizes when
13100 shrinking frame with more than one window.
13101
13102 2003-10-12 Kim F. Storm <storm@cua.dk>
13103
13104 * xdisp.c (compute_fringe_widths): Doc fix.
13105
13106 2003-10-08 Kenichi Handa <handa@m17n.org>
13107
13108 * coding.c (Fcoding_system_p): Return t for auto-loading coding system.
13109
13110 2003-10-07 Kenichi Handa <handa@m17n.org>
13111
13112 * coding.c (Qcoding_system_define_form): New variable.
13113 (syms_of_coding): Intern and staticpro it.
13114 (Fcheck_coding_system): Try to autoload the definition of
13115 CODING-SYSTEM.
13116
13117 2003-10-05 Luc Teirlinck <teirllm@auburn.edu>
13118
13119 * fns.c (Frequire): Doc fix.
13120
13121 2003-10-05 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13122
13123 * xfns.c (Fx_send_client_event): New function as a base for
13124 manipulating extended window manager hints.
13125 (Fx_send_client_event): Remove unused variable s.
13126
13127 * w32term.c (w32_read_socket): Remove call to x_check_fullscreen_move,
13128 that function is removed.
13129
13130 * xterm.c (x_set_offset): Use move_offset_left/top instead of
13131 x/y_pixels_outer_diff.
13132 (x_check_expected_move): Calculate move_offset_left/top.
13133
13134 * xterm.h (struct x_output): New members: move_offset_top/left.
13135
13136 * frame.c (x_set_frame_parameters): Remove x_fullscreen_move,
13137 call x_set_offset directly.
13138
13139 * frame.h (enum): FULLSCREEN_MOVE_WAIT removed.
13140
13141 * frame.c (Fdelete_frame): Free decode_mode_spec_buffer.
13142
13143 * xterm.c (x_delete_display): Free font names and font_encoder
13144 in dpyinfo->font_table.
13145
13146 * xfns.c (Fx_close_connection): Only call XFreeFont here.
13147 Move xfree of font names to x_delete_display.
13148
13149 * xterm.h (struct x_display_info): New member, wm_type.
13150 (struct x_output): New members, expected_top/left and
13151 check_expected_move.
13152
13153 * xterm.c (handle_one_xevent): Reset wm_type when ReparentNotify
13154 is received.
13155 (handle_one_xevent): Rename x_check_expected_move from
13156 x_check_fullscreen_move.
13157 (x_set_offset): Only add WM decoration sizes to modified_top/left
13158 for X_WMTYPE_A. Set check_expected_move when WM type is unknown.
13159 (x_check_expected_move): Rename from x_check_fullscreen_move.
13160 Removed fullscreen specific code. Use check_expected_move,
13161 expected_left/top instead. Also, set wm_type.
13162 (x_term_init): Initialize wm_type to unknown.
13163
13164 * frame.c (x_fullscreen_move): Remove addition of WM decoration
13165 sizes to move_x/y.
13166
13167 2003-10-03 Kenichi Handa <handa@m17n.org>
13168
13169 * macterm.c (x_load_font): Clear all members of FONTP before start
13170 filling them.
13171
13172 2003-10-02 Kenichi Handa <handa@m17n.org>
13173
13174 * fontset.c (fs_load_font): Don't set fontp->font_encoder to NULL
13175 before calling find_ccl_program_func. Call find_ccl_program_func
13176 only when fontp->font_encoder is not NULL.
13177
13178 * xterm.c (x_load_font): Clear all members of FONTP before start
13179 filling them.
13180
13181 2003-10-03 John Paul Wallington <jpw@gnu.org>
13182
13183 * keymap.c (map_keymap): Don't abort when binding is a vector.
13184
13185 2003-10-02 Jason Rumney <jasonr@gnu.org>
13186
13187 * makefile.w32-in (emacs.o, coding.o, bytecode.o):
13188 Sync dependencies with Makefile.in.
13189 (alloca.o): Remove.
13190
13191 * w32fns.c (w32_load_system_font): Clear all members of FONTP before
13192 filling them.
13193
13194 * w32bdf.c (w32_load_bdf_font): Likewise.
13195
13196 2003-09-30 Richard M. Stallman <rms@gnu.org>
13197
13198 * term.c (set_tty_color_mode): Calculate current_mode_spec
13199 regardless of value of VAL.
13200
13201 * intervals.c (graft_intervals_into_buffer):
13202 Set BUF_INTERVALS (buffer)->up_obj when appropriate.
13203 Handle over_used when splitting UNDER.
13204
13205 2003-09-30 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
13206
13207 * regex.c (regex_compile): Free the stack when returning from function.
13208
13209 2003-09-28 Kenichi Handa <handa@m17n.org>
13210
13211 * fontset.c (Finternal_char_font): Change return value to
13212 cons (FONT-NAME . GLYPH-CODE).
13213
13214 2003-09-28 Eli Zaretskii <eliz@gnu.org>
13215
13216 * term.c (tty_setup_colors): Treat any negative argument as -1.
13217
13218 2003-09-27 Gaute B Strokkenes <biggaute@uwc.net> (tiny change)
13219
13220 * process.c (send_process): Delete unused temp_buf.
13221
13222 2003-09-26 Dave Love <fx@gnu.org>
13223
13224 * xterm.c (x_bitmap_mask): Declare.
13225
13226 2003-09-25 Dave Love <fx@gnu.org>
13227
13228 * Makefile.in (fns.o): Depend on md5.h.
13229
13230 2003-09-25 Kim F. Storm <storm@cua.dk>
13231
13232 * window.c (set_window_buffer): Fix redisplay problems when
13233 switching between buffers with different display margin widths.
13234
13235 2003-09-23 Kim F. Storm <storm@cua.dk>
13236
13237 * process.c (set_socket_option): Fix :bindtodevice option.
13238 (Fset_network_process_option): Update process contact list when
13239 setting option succeeds.
13240 (Fmake_network_process): Doc fix.
13241
13242 2003-09-23 Dave Love <fx@gnu.org>
13243
13244 * process.c (Fnetwork_interface_info): Use HAVE_STRUCT_IFREQ... macros.
13245
13246 2003-09-22 Eli Zaretskii <eliz@gnu.org>
13247
13248 * term.c (set_tty_color_mode): Use INTEGERP to test whether a
13249 color mode is an integer number (it could be -1).
13250
13251 2003-09-22 Richard M. Stallman <rms@gnu.org>
13252
13253 * intervals.c (graft_intervals_into_buffer): Correct the main loop
13254 in the case where OVER is longer than UNDER.
13255
13256 2003-09-22 Masatake YAMATO <jet@gyve.org>
13257
13258 * window.c (Fset_window_scroll_bars): Validate the value of
13259 `vertical_type'.
13260
13261 2003-09-21 Kim F. Storm <storm@cua.dk>
13262
13263 * frame.c (Vdefault_frame_scroll_bars): New variable.
13264 (x_set_vertical_scroll_bars): Use it instead of hardcoded values.
13265 (syms_of_frame): DEFVAR_LISP it, and initialize according to
13266 window-system default scroll bar position.
13267
13268 * window.c (Fwindow_scroll_bars): Doc fix.
13269
13270 2003-09-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13271
13272 * xterm.c (x_set_offset): Take window manager decorations into account.
13273
13274 2003-09-19 Richard M. Stallman <rms@gnu.org>
13275
13276 * atimer.h: Don't include lisp.h.
13277 (P_): Define it here (as well as elsewhere).
13278
13279 * print.c (Fprin1_to_string): Move the PRINTPREPARE
13280 later, so that PRINTFINISH won't unbind Qinhibit_modification_hooks.
13281
13282 * data.c (Fvariable_binding_locus): New function.
13283 (syms_of_data): defsubr it.
13284 (Flocal_variable_p): Delete duplicate call to indirect_variable.
13285
13286 2003-09-18 Dave Love <fx@gnu.org>
13287
13288 * alloc.c (GC_MALLOC_CHECK): Move conditional undef after lisp.h.
13289
13290 * process.c (Fnetwork_interface_info): Fix type error.
13291 (Fnetwork_interface_list): Doc fix.
13292 (read_process_output, read_process_output): Delete unused var.
13293
13294 2003-09-17 Kim F. Storm <storm@cua.dk>
13295
13296 * process.c (Fnetwork_interface_list, Fnetwork_interface_info):
13297 Require HAVE_NET_IF_H and HAVE_SYS_IOCTL_H to include these fns.
13298 (Fnetwork_interface_info): Check that ifreq struct has required
13299 fields before accessing them; this requires that those fields are
13300 defined as macros, which may be too restrictive on some platforms,
13301 but it is better than failing on other platforms.
13302 (syms_of_process): Only defsubr above fns when included.
13303
13304 2003-09-17 Dave Love <fx@gnu.org>
13305
13306 * unexalpha.c: Don't include varargs.h.
13307
13308 2003-09-17 Kim F. Storm <storm@cua.dk>
13309
13310 * process.c (Fset_process_sentinel): Add sentinel to childp plist
13311 for network process.
13312 (socket_options): Add `:' prefix to option names. Add optbit field.
13313 (set_socket_option): Remove no_error arg and special handling of s < 0.
13314 Return 1<<optbit for known option, 0 for unknown.
13315 Do not interpret 0 as false for boolean option (only nil).
13316 Pass failed option and value to report_file_error.
13317 (Fset_network_process_options): Replace by Fset_network_process_option.
13318 (Fset_network_process_option): New function to set just one option.
13319 (Fmake_network_process): Allow :coding arg to be a cons.
13320 Allow :server arg to be an integer specifying backlog size.
13321 Remove :options arg, and allow options to be specified directly
13322 as :KEY, VALUE pairs. Parse these options before binding socket.
13323 As before, :reuseaddr t is default for a server process, but this
13324 can now be disabled by specifying :reuseaddr nil.
13325 (Fnetwork_interface_info): Rename from Fget_network_interface_info.
13326 (init_process): Availability of network options is now checked with
13327 simpler syntax (featurep 'make-network-process :OPTION); use loop to
13328 setup features.
13329 (syms_of_process): Fix defsubr's for the replaced functions.
13330
13331 2003-09-16 Dave Love <fx@gnu.org>
13332
13333 * Makefile.in: Depend on coding.h.
13334
13335 2003-09-14 Kim F. Storm <storm@cua.dk>
13336
13337 * process.c [HAVE_SOCKETS]: Include sys/ioctl.h and net/if.h.
13338 (Fnetwork_interface_list, Fget_network_interface_info): New defuns.
13339 (syms_of_process): Defsubr them.
13340
13341 * config.in: Regenerate.
13342
13343 2003-09-12 Stefan Monnier <monnier@iro.umontreal.ca>
13344
13345 * m/sr2k.h (XMARKBIT, XUNMARK): Remove.
13346 * m/news-r6.h (XUNMARK): Remove.
13347 * m/mips.h (XUNMARK): Remove.
13348 * m/mips-siemens.h (XUNMARK): Remove.
13349 * m/iris4d.h (XUNMARK): Remove.
13350 * m/hp800.h (XMARKBIT, XUNMARK): Remove.
13351
13352 2003-09-11 Stefan Monnier <monnier@iro.umontreal.ca>
13353
13354 * lisp.h (VALBITS): Don't remove 1 for the markbit.
13355 (union Lisp_Object): Use unsigned int for types. Remove markbit.
13356 (MARKBIT): Remove 1 from VALBITS so we still use same old val.
13357 (XTYPE): Use unsigned right-shift.
13358 (XMARKBIT, XMARK, XUNMARK): Remove.
13359
13360 * alloc.c (init_intervals, init_symbol, init_marker):
13361 Don't preallocate anything.
13362 (Fgarbage_collect, mark_object): Ignore the markbit.
13363
13364 * bytecode.c (mark_byte_stack, unmark_byte_stack): Ignore the markbit.
13365
13366 2003-09-08 Lute Kamstra <lute@gnu.org>
13367
13368 * xdisp.c (pint2hrstr): New function.
13369 (decode_mode_spec): Add `%i' and `%I' specs.
13370 * buffer.c (syms_of_buffer): Document `%i' and `%I' constructs
13371 for `mode-line-format'.
13372
13373 2003-09-07 Andreas Schwab <schwab@suse.de>
13374
13375 * alloc.c: Use long instead of int when casting ABLOCKS_BUSY to
13376 avoid warning.
13377
13378 2003-09-07 Eli Zaretskii <eliz@gnu.org>
13379
13380 * editfns.c (region_limit): Support any non-zero value of BEGINNINGP.
13381
13382 2003-09-03 Kim F. Storm <storm@cua.dk>
13383
13384 * xdisp.c (get_window_cursor_type): Partially undo 2002-03-01
13385 change (superseded by 2002-08-30 change); the default blink-off
13386 cursor is now again "no cursor".
13387
13388 2003-09-01 Jason Rumney <jasonr@gnu.org>
13389
13390 * makefile.w32-in (alloca.o): Remove.
13391 (coding.o): Depend on intervals.h
13392 (emacs.o, bytecode.o): Depend on window.h
13393
13394 2003-09-01 Dave Love <fx@gnu.org>
13395
13396 * Makefile.in (alloca.o): Remove commands.
13397 (coding.o): Depend on intervals.h composite.h window.h.
13398 (emacs.o): Depend on window.h keyboard.h keymap.h.
13399 (gtkutil.o): Depend on keyboard.h charset.h coding.h.
13400 (bytecode.o): Depend on window.h.
13401
13402 2003-08-31 Jason Rumney <jasonr@gnu.org>
13403
13404 * w32term.c (w32_per_char_metric): Allow cached metrics to be
13405 returned even when font_type is unknown.
13406
13407 * xdisp.c (init_iterator): Remove old WINDOWSNT conditional.
13408
13409 2003-08-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13410
13411 * xterm.c (x_term_init): Initialize new fields in x_display_info.
13412
13413 * xterm.h (struct x_display_info): Add red/green/blue_bits and
13414 *_offset.
13415
13416 * xfns.c (lookup_rgb_color): Use new fields in x_display_info to
13417 calculate pixel value.
13418
13419 2003-08-29 Gerd Moellmann <gerd.moellmann@t-online.de>
13420
13421 * xdisp.c (redisplay_internal): Fix change of 2003-04-30.
13422 Don't tell redisplay display is accurate when it's actually been
13423 paused for pending input.
13424
13425 2003-08-29 Richard M. Stallman <rms@gnu.org>
13426
13427 * dispnew.c (adjust_glyph_matrix): Call window_box
13428 whenever W is nonzero.
13429
13430 * data.c (Fmake_variable_buffer_local, Fmake_local_variable)
13431 (Fkill_local_variable, Fmake_variable_frame_local)
13432 (Flocal_variable_p, Flocal_variable_if_set_p):
13433 Use indirect_variable to trace thru variable aliases.
13434
13435 * config.in: Updated.
13436
13437 * callint.c (Fcall_interactively): Save and restore
13438 Vthis_command, Vthis_original_command, real_this_command,
13439 and current_kboard->Vlast_command.
13440
13441 * abbrev.c (Fexpand_abbrev): Insert before deleting.
13442
13443 2003-08-29 Gerd Moellmann <gerd@gnu.org>
13444
13445 * xfns.c (lookup_rgb_color): Handle TrueColor visuals specially.
13446
13447 2003-08-28 David Abrahams <dave@boost-consulting.com> (tiny change)
13448
13449 * coding.c (decode_coding_iso2022): Initialize local variable c2.
13450 (decode_coding_sjis_big5): Likewise.
13451
13452 2003-08-27 Jason Rumney <jasonr@gnu.org>
13453
13454 * w32.c (sys_pipe): Protect against file descriptor overflow.
13455
13456 * w32fns.c (syms_of_w32fns): Remove non-existent functions.
13457
13458 * w32term.c (w32_read_socket): Fix WM_MOUSEWHEEL assignment.
13459
13460 2003-08-26 Terje Rosten <terjeros@phys.ntnu.no>
13461
13462 * xfns.c (Vgtk_version_string): New variable.
13463 (syms_of_xfns): DEFVAR_LISP it. Provide gtk.
13464
13465 2003-08-24 Eli Zaretskii <eliz@gnu.org>
13466
13467 * term.c (term_init): Remove `const' from buffer_size's declaration.
13468
13469 * Makefile.in (msdos.o): Depend on intervals.h.
13470
13471 * msdos.c: Include intervals.h, since STRING_INTERVALS requires that.
13472
13473 2003-08-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13474
13475 * xterm.h (struct x_display_info): New fields: client_leader_window
13476 and Xatom_wm_client_leader.
13477
13478 * xterm.c (x_initialize): Move call to x_session_initialize to ...
13479 (x_term_init): ... here. Initialize client_leader fields in dpyinfo.
13480
13481 * xsmfns.c (create_client_leader_window): New function.
13482 (x_session_initialize): Call create_client_leader_window, take
13483 dpyinfo as argument.
13484
13485 * xfns.c (Fx_create_frame): Set property WM_CLIENT_LEADER.
13486
13487 * Makefile.in (xsmfns.o): Add more depenedencies.
13488
13489 2003-08-21 Dave Love <fx@gnu.org>
13490
13491 * m/iris4d.h: Use _MIPS_SZLONG, not _LP64.
13492
13493 2003-08-21 Kenichi Handa <handa@m17n.org>
13494
13495 * term.c (term_init): Fix previous change; don't rely on the
13496 length of `buffer' if TERMINFO is defined.
13497
13498 2003-08-20 Dave Love <fx@gnu.org>
13499
13500 * atimer.h: Include lisp.h.
13501
13502 * lisp.h (EMACS_LISP_H): New.
13503 (popup_activated_flag): Don't declare.
13504
13505 * alloca.c: Some merging with gnulib. Change logic and doc
13506 concerning (x)malloc/(x)free -- no longer Emacs-specific.
13507 [DO_BLOCK_INPUT]: Don't include lisp.h.
13508 (xmalloc, xfree): Declare.
13509 (malloc): Don't declare.
13510
13511 * Makefile.in (LWLIB_OPTIONS): Remove (unused).
13512 (alloca.o): Remove obsolete stuff concerning alloca.s. Depend on
13513 atimer.h, blockinput.h.
13514
13515 * alloc.c (lisp_align_malloc): Change type of `aligned'.
13516
13517 * alloca.s: Remove.
13518
13519 2003-08-19 Gerd Moellmann <gerd@gnu.org>
13520
13521 * s/freebsd.h [__FreeBSD_version >= 400000]: Define TERMINFO,
13522 use -lncurses.
13523
13524 * term.c (term_init): Use a buffer of size 4096 for tgetent since
13525 FreeBSD returns something longer than 2044. Abort if the end of
13526 the buffer is overwritten.
13527
13528 2003-08-19 Miles Bader <miles@gnu.org>
13529
13530 * xterm.c (x_term_init): Correctly use result of Ffile_readable_p.
13531
13532 2003-08-19 Gerd Moellmann <gerd@gnu.org>
13533
13534 * alloc.c (lisp_align_malloc): Check for memory full when
13535 allocating ablocks, which also avoids freeing a pointer into an
13536 ablocks structure.
13537
13538 * puresize.h (BASE_PURESIZE): Increase to 1100000.
13539
13540 * buffer.c (Fmove_overlay): Set overlay's next pointer unconditionally.
13541
13542 2003-08-16 Richard M. Stallman <rms@gnu.org>
13543
13544 * editfns.c (Fencode_time): Doc fix.
13545
13546 2003-08-16 David Ponce <david@dponce.com>
13547
13548 * fileio.c (Fwrite_region): Fix conditional expression to issue
13549 the right message.
13550
13551 2003-08-16 Juri Linkov <juri@jurta.org>
13552
13553 * syntax.c (Fforward_word): Argument changed to optional.
13554 Set default value to 1.
13555
13556 2003-08-15 Kenichi Handa <handa@m17n.org>
13557
13558 * xfaces.c (better_font_p): Prefer a real scalable font; i.e. not
13559 what autoscaled.
13560 (best_matching_font): Once we find a better scalable font, set
13561 non_scalable_has_exact_height_p to 1.
13562 (try_font_list): Call try_alternative_families to try any family
13563 with the given registry.
13564
13565 2003-08-09 Andreas Schwab <schwab@suse.de>
13566
13567 * alloc.c (mark_object): Handle Lisp_Misc_Save_Value.
13568
13569 * print.c (print_string): Fix printing of multibyte string with
13570 nontrivial printcharfun.
13571
13572 2003-07-31 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13573
13574 * xfns.c (xg_set_icon): Rewrite to compile with GTK 2.0 and 2.2.
13575
13576 * xterm.c (x_bitmap_icon): Return if xg_set_icon succeeds.
13577
13578 2003-07-31 Kenichi Handa <handa@m17n.org>
13579
13580 * process.c (read_process_output): Return the actually read bytes
13581 instead of the result of decoding.
13582
13583 2003-07-31 Kenichi Handa <handa@m17n.org>
13584
13585 * xterm.h (struct x_bitmap_record): New member have_mask.
13586
13587 * xfns.c (x_create_bitmap_from_data): Initialize have_mask member
13588 to 0.
13589 (x_create_bitmap_from_file): Likewise.
13590 (x_destroy_bitmap): Check have_mask member before freeing a mask.
13591 (x_destroy_all_bitmaps): Likewise.
13592 (x_create_bitmap_mask): Set have_mask member to 1.
13593
13594 2003-07-30 Richard M. Stallman <rms@gnu.org>
13595
13596 * Makefile.in (CFLAGS) [!OPTIMIZE]: Undo previous change.
13597
13598 2003-07-29 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13599
13600 * gtkutil.c (xg_mark_data): Update calls to mark_object.
13601
13602 2003-07-29 Richard M. Stallman <rms@gnu.org>
13603
13604 * xterm.c (xim_open_dpy, xim_initialize, xim_close_dpy):
13605 Conditionalize XIM code on HAVE_XIM.
13606
13607 * fns.c (Fclear_string): New function.
13608 (syms_of_fns): defsubr it.
13609
13610 2003-07-28 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
13611
13612 * xfns.c (xic_set_preeditarea): Add the left fringe width to spot.x.
13613
13614 2003-07-22 Stefan Monnier <monnier@cs.yale.edu>
13615
13616 * xfns.c: Don't check HAVE_PNG_H: autoconf doesn't seem to find it.
13617
13618 * buffer.c (delete_all_overlays): New function.
13619 * buffer.h (delete_all_overlays): Declare.
13620 * coding.c (run_pre_post_conversion_on_str):
13621 * print.c (temp_output_buffer_setup):
13622 * fileio.c (Finsert_file_contents):
13623 * minibuf.c (get_minibuffer): Use it.
13624
13625 2003-07-22 Andrew Choi <akochoi@shaw.ca>
13626
13627 * unexmacosx.c (unexec_regions_sort_compare):
13628 (unexec_regions_merge): New functions. Sort and merge unexec
13629 regions before dumping them.
13630
13631 2003-07-22 Dave Love <fx@gnu.org>
13632
13633 * xfns.c [HAVE_PNG]: Consider both png.h and libpng/png.h.
13634
13635 2003-07-21 Stefan Monnier <monnier@cs.yale.edu>
13636
13637 * alloc.c (MARK_STRING, UNMARK_STRING, STRING_MARKED_P)
13638 (GC_STRING_CHARS, string_bytes): Use ARRAY_MARK_FLAG rather than
13639 MARKBIT as the gcmarkbit for strings.
13640
13641 2003-07-21 Richard M. Stallman <rms@gnu.org>
13642
13643 * s/openbsd.h (LD_SWITCH_SYSTEM_TEMACS): Add undef.
13644
13645 * fns.c (Flocale_info): Rename from Flanginfo. Doc fixes.
13646 (syms_of_fns): Corresponding change.
13647
13648 * alloc.c (syms_of_alloc): Doc fixes.
13649
13650 2003-07-20 Han Boetes <han@mijncomputer.nl> (tiny change)
13651
13652 * s/netbsd.h: Use -Wl syntax.
13653
13654 2003-07-17 Richard M. Stallman <rms@gnu.org>
13655
13656 * xterm.c (xim_initialize): Redo 6/24 change.
13657
13658 2003-07-15 Stefan Monnier <monnier@cs.yale.edu>
13659
13660 * buffer.c (copy_overlays): Use EMACS_INT for positions.
13661 (Fswitch_to_buffer): Don't signal an error when switching to the same
13662 buffer in a dedicated window.
13663
13664 * alloc.c: Use bitmaps for cons, as was done for floats.
13665 (init_float, init_cons): Let the normal code allocate the first block.
13666 (CONS_BLOCK_SIZE): Redefine based on BLOCK_BYTES and bitmap size.
13667 (CONS_BLOCK, CONS_INDEX, CONS_MARKED_P, CONS_MARK, CONS_UNMARK):
13668 New macros.
13669 (struct cons_block): Move conses to the beginning. Add gcmarkbits.
13670 (Fcons): Use lisp_align_malloc and CONS_UNMARK.
13671 (live_cons_p): Check the pointer is not past the `conses' array.
13672 (mark_maybe_object, mark_maybe_pointer): Use CONS_MARKED_P.
13673 (mark_object, mark_buffer): Use CONS_MARKED_P and CONS_MARK.
13674 (survives_gc_p): Use CONS_MARKED_P and simplify.
13675 (gc_sweep): Use CONS_MARKED_P, CONS_UNMARK, and lisp_align_free.
13676
13677 2003-07-13 Paul Eggert <eggert@twinsun.com>
13678
13679 GCC 3.3 (sparc) no longer puts "int foo = 0;" into data; it
13680 puts it into BSS instead, at least on Solaris 8 and 9.
13681 This is a valid optimization, and it may occur on other platforms,
13682 so Emacs should not assume that initializing a static variable to
13683 zero puts it into data.
13684 * alloc.c (pure, staticvec):
13685 Initialize these arrays to nonzero, so that they're not
13686 put into BSS by that optimization.
13687
13688 2003-07-13 Stefan Monnier <monnier@cs.yale.edu>
13689
13690 * alloc.c (BLOCK_PADDING): Rename from ABLOCKS_PADDING. Update users.
13691 (lisp_align_malloc): Use posix_memalign is available.
13692 (ABLOCKS_BASE): Use HAVE_POSIX_MEMALIGN as an optimization.
13693 (STRING_BLOCK_SIZE): Rename from STRINGS_IN_STRING_BLOCK
13694 for consistency. Update users.
13695
13696 2003-07-13 Richard M. Stallman <rms@gnu.org>
13697
13698 * s/netbsd.h (START_FILES_1, END_FILES_1): Always define them.
13699
13700 2003-07-13 Terje Rosten <terjeros@phys.ntnu.no>
13701
13702 * xterm.c (x_bitmap_icon, x_wm_set_icon_pixmap): Modify to add mask,
13703 and use the Gtk+ function gtk_window_icon_from_file if available.
13704
13705 * xfns.c (x_bitmap_mask, x_create_bitmap_mask): New functions to
13706 handle mask of bitmaps.
13707 (x_allocate_bitmap_record, x_destroy_bitmap): Modify to handle the
13708 mask property.
13709 (xg_set_icon): New function, wrapper for gtk_window_icon_from_file.
13710
13711 * xterm.h (xg_set_icon): New function.
13712
13713 2003-07-12 Paul Eggert <eggert@twinsun.com>
13714
13715 * unexelf.c (unexec): Consider a section to precede the .bss
13716 section if its addresses overlap that of .bss.
13717
13718 2003-07-12 Richard M. Stallman <rms@gnu.org>
13719
13720 * Makefile.in (CFLAGS) [!OPTIMIZE]: Set CFLAGS to -g.
13721
13722 * config.in (HAVE_CRTIN): Add #undef.
13723 (INLINE): Really inline only if OPTIMIZE is defined.
13724
13725 * s/netbsd.h (START_FILES, LIB_STANDARD): Use START_FILES_1,
13726 END_FILES_1.
13727 (START_FILES_1, END_FILES_1): New macros (conditional).
13728 (LD_SWITCH_SYSTEM_TEMACS): Define.
13729
13730 * s/openbsd.h: Don't include bsd4-3.h.
13731 (TERMINFO): Define.
13732 (LIBS_TERMCAP): Define.
13733 (LD_SWITCH_SYSTEM): Define (two definitions).
13734
13735 * xfns.c: Include libpng/png.h instead of png.h.
13736
13737 2003-07-11 Andreas Schwab <schwab@suse.de>
13738
13739 * buffer.c (modify_overlay): Update prototype.
13740 * lisp.h (adjust_overlays_for_insert, adjust_overlays_for_delete):
13741 Likewise.
13742
13743 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13744
13745 * lisp.h (VALBITS): Define in terms of GCTYPEBITS.
13746 (struct interval): Move to intervals.h.
13747 (struct Lisp_Marker): Use EMACS_INT for position info.
13748 (forward_point): Remove prototype of defunct function.
13749 (Qmodification_hooks, Qrear_nonsticky, Fnext_property_change)
13750 (Fget_text_property, Fset_text_properties, Ftext_propertes_not_all)
13751 (syms_of_textprop, set_text_properties): Remove prototypes that are
13752 already in intervals.h.
13753
13754 * intervals.h (struct interval): Move from lisp.h.
13755 Use EMACS_INT for position and size info.
13756
13757 * coding.c: Include intervals.h for Fset_text_properties.
13758
13759 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13760 position and length information.
13761
13762 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13763
13764 * buffer.h (struct buffer_text, struct buffer): Use EMACS_INT for
13765 position and length information.
13766
13767 2003-07-09 Stefan Monnier <monnier@cs.yale.edu>
13768
13769 Change overlays_after and overlays_before so the overlays themselves
13770 are linked into lists, rather than using cons cells. After all each
13771 Lisp_Misc already occupies 5 words, so we can add a `next' field to
13772 Lisp_Overlay for free and save up one cons cell per overlay (not
13773 to mention one indirection when traversing the list of overlay).
13774
13775 * lisp.h (struct Lisp_Overlay): New field `next'.
13776
13777 * buffer.h (struct buffer): Change overlays_before and overlays_after
13778 from Lisp lists of overlays to pointers to overlays.
13779
13780 * buffer.c (overlay_strings, recenter_overlay_lists):
13781 Fix typo in eassert in last commit.
13782 (unchain_overlay): New function.
13783 (add_overlay_mod_hooklist): Use AREF.
13784 (copy_overlays, reset_buffer, overlays_at, overlays_in)
13785 (overlay_touches_p, overlay_strings, recenter_overlay_lists)
13786 (fix_overlays_in_range, fix_overlays_before, Fmake_overlay)
13787 (Fmove_overlay, Fdelete_overlay, Foverlay_lists)
13788 (report_overlay_modification, evaporate_overlays, init_buffer_once):
13789 Adjust to new type of overlays_(before|after).
13790
13791 * alloc.c (mark_object): Mark the new `next' field of overlays.
13792 (mark_buffer): Manually mark the overlays_(after|before) fields.
13793
13794 * coding.c (run_pre_post_conversion_on_str):
13795 * editfns.c (overlays_around):
13796 * xdisp.c (load_overlay_strings):
13797 * fileio.c (Finsert_file_contents):
13798 * indent.c (current_column):
13799 * insdel.c (signal_before_change, signal_after_change):
13800 * intervals.c (set_point_both):
13801 * print.c (temp_output_buffer_setup): Use new type for
13802 overlays_(before|after).
13803
13804 2003-07-08 Stefan Monnier <monnier@cs.yale.edu>
13805
13806 * buffer.c (report_overlay_modification): Don't run hooks while
13807 traversing the list of overlays.
13808
13809 * buffer.h (struct buffer): Use an int for overlay_center.
13810 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13811 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13812
13813 * buffer.c (reset_buffer, recenter_overlay_lists)
13814 (adjust_overlays_for_insert, adjust_overlays_for_delete)
13815 (fix_overlays_in_range, Fmake_overlay, Fmove_overlay)
13816 (evaporate_overlays, init_buffer_once): Update use of overlay_center.
13817 (overlays_at, evaporate_overlays, recenter_overlay_lists)
13818 (overlay_strings, fix_overlays_before): Use EMACS_INT for positions.
13819
13820 * xdisp.c (fast_find_position): Remove unused var.
13821
13822 * cmds.c (Qexpand_abbrev): New sym.
13823 (syms_of_cmds): Initialize it.
13824 (internal_self_insert): Use it to call expand-abbrev.
13825
13826 2003-07-09 Kim F. Storm <storm@cua.dk>
13827
13828 * xterm.c (use_xim) [!USE_XIM]: Default to disable XIM if Emacs
13829 was configured with --without-xim.
13830 (x_term_init) [!USE_XIM]: Use `useXIM' resource to turn on XIM.
13831
13832 2003-07-07 Richard M. Stallman <rms@gnu.org>
13833
13834 * xdisp.c (reseat_1): Set it->area to TEXT_AREA.
13835
13836 * alloc.c (Fgarbage_collect): Doc fix.
13837
13838 2003-07-07 Nozomu Ando <nand@mac.com>
13839
13840 * buffer.c (Fkill_buffer): Clear charpos cache if necessary.
13841
13842 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13843
13844 * minibuf.c (read_minibuf): UNGCPRO before returning.
13845 (Ftry_completion, Fall_completions): Doc fix.
13846
13847 * alloc.c (live_float_p): Check that p is not past the `floats' array,
13848 now that `floats' is not the last element of the struct any more.
13849
13850 2003-07-06 Jason Rumney <jasonr@gnu.org>
13851
13852 * w32term.h (ClipboardSequence_Proc): New type.
13853
13854 * w32fns.c (clipboard_sequence_fn): New variable.
13855 (globals_of_w32fns): Initialize it.
13856
13857 * w32select.c (last_clipboard_sequence_number): New variable.
13858 (Fw32_set_clipboard_data, Fw32_get_clipboard_data): Use sequence
13859 number if possible.
13860
13861 2003-07-06 Stefan Monnier <monnier@cs.yale.edu>
13862
13863 * m/amdx86-64.h (MARKBIT):
13864 * m/ia64.h (MARKBIT): Remove definition since lisp.h does not compare
13865 MARKBIT and ARRAY_MARK_FLAG any more.
13866
13867 * m/hp800.h (XSETMARKBIT):
13868 * m/sr2k.h (XSETMARKBIT):
13869 * lisp.h (XSETMARKBIT): Remove unused macro.
13870
13871 * lisp.h (mark_object): Change prototype.
13872
13873 * alloc.c (mark_object): Change arg *Lisp_Object -> Lisp_Object.
13874 (last_marked): Change accordingly.
13875 (mark_interval, mark_maybe_object, mark_maybe_pointer)
13876 (Fgarbage_collect, mark_glyph_matrix, mark_face_cache, mark_image)
13877 (mark_buffer): Update calls to mark_object.
13878
13879 * bytecode.c (mark_byte_stack):
13880 * fns.c (sweep_weak_table):
13881 * keyboard.c (mark_kboards): Update calls to mark_object.
13882
13883 2003-07-06 Jason Rumney <jasonr@gnu.org>
13884
13885 * alloc.c (struct ablock): Only include padding when there is some.
13886
13887 2003-07-04 Stefan Monnier <monnier@cs.yale.edu>
13888
13889 * alloc.c (ALIGN): Add casts to simplify usage.
13890 (BLOCK_ALIGN, BLOCK_BYTES, ABLOCKS_PADDING, ABLOCKS_SIZE)
13891 (ABLOCKS_BYTES, ABLOCK_ABASE, ABLOCKS_BUSY, ABLOCKS_BASE): New macros.
13892 (struct ablock, struct ablocks): New types.
13893 (free_ablock): New global var.
13894 (lisp_align_malloc, lisp_align_free): New functions.
13895 (FLOAT_BLOCK_SIZE): Redefine in terms of BLOCK_BYTES.
13896 (struct float_block): Reorder and add gcmarkbits.
13897 (GETMARKBIT, SETMARKBIT, UNSETMARKBIT, FLOAT_BLOCK, FLOAT_INDEX)
13898 (FLOAT_MARKED_P, FLOAT_MARK, FLOAT_UNMARK): New macros.
13899 (init_float, make_float): Use lisp_align_malloc.
13900 (free_float, live_float_p): Don't use `type' any more.
13901 (make_float): Use FLOAT_UNMARK to access to mark bit.
13902 (mark_maybe_object, mark_maybe_pointer, survives_gc_p):
13903 Use FLOAT_MARKED_P to access the mark bit.
13904 (pure_alloc): Simplify use of ALIGN.
13905 (mark_object): Use FLOAT_MARK to access the mark bit.
13906 (gc_sweep): Use new macros to access the float's mark bit.
13907 (init_alloc_once): Init free_ablock.
13908
13909 * lisp.h (struct Lisp_Float): Remove unused field `type'.
13910
13911 2003-06-27 Stefan Monnier <monnier@cs.yale.edu>
13912
13913 * alloc.c (VECTOR_MARK, VECTOR_UNMARK, VECTOR_MARKED_P): New macros.
13914 (GC_STRING_BYTES): Don't mask markbit (it's only used on `size').
13915 (allocate_buffer): Move.
13916 (string_bytes): Don't mask markbit of `size_byte'.
13917 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13918 (mark_object, mark_buffer, survives_gc_p, gc_sweep):
13919 Use the `size' field of buffers (rather than the `name' field) for
13920 the mark bit, as is done for all other vectorlike objects.
13921 Use the new macros to access the mark bit of vectorlike objects.
13922
13923 2003-06-26 Richard M. Stallman <rms@gnu.org>
13924
13925 * puresize.h (BASE_PURESIZE): Increment base size.
13926
13927 * xdisp.c (fast_find_position): Enable Gerd's new definition.
13928
13929 * xterm.c (xim_initialize): Undo previous change.
13930
13931 2003-06-26 Stefan Monnier <monnier@cs.yale.edu>
13932
13933 * alloc.c (survives_gc_p): Simplify.
13934
13935 * buffer.c (set_buffer_internal_1): Test CONSP for lists.
13936
13937 * window.c (Fset_window_dedicated_p): Simplify.
13938 (display_buffer_1): Don't raise the win from which minibuf was entered.
13939 (temp_output_buffer_show): Don't assume BEG == 1. Simplify.
13940 (Fminibuffer_selected_window): Simplify.
13941
13942 * buffer.h (struct buffer_text): Lisp_Object `markers' => Lisp_Marker.
13943
13944 * lisp.h (unchain_marker): Lisp_Object arg => Lisp_Marker.
13945 (struct Lisp_Marker): Lisp_Object `chain' => Lisp_Marker `next'.
13946
13947 * insdel.c (check_markers, adjust_markers_for_delete)
13948 (adjust_markers_for_insert, adjust_markers_for_replace)
13949 (prepare_to_modify_buffer, RESTORE_VALUE):
13950 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos)
13951 (Fset_marker, set_marker_restricted, set_marker_both, unchain_marker)
13952 (set_marker_restricted_both, Fbuffer_has_markers_at, count_markers):
13953 * alloc.c (Fmake_marker, free_marker, gc_sweep):
13954 * buffer.c (Fget_buffer_create, Fkill_buffer, Fset_buffer_multibyte):
13955 * editfns.c (save_excursion_restore, transpose_markers):
13956 * window.c (delete_window):
13957 * xdisp.c (message_dolog): Update for new types.
13958
13959 2003-06-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
13960
13961 * xfaces.c (set_font_frame_param): Set default_face_done_p to zero.
13962 (realize_default_face): Use default_face_done_p for the force_p
13963 argument to set_lface_from_font_name. Set default_face_done_p to one.
13964
13965 * frame.c (make_frame): Initialize default_face_done_p.
13966
13967 * frame.h (struct frame): Add default_face_done_p.
13968
13969 * config.in: Add XRegisterIMInstantiateCallback_arg6 so it
13970 will be defined.
13971
13972 2003-06-25 Stefan Monnier <monnier@cs.yale.edu>
13973
13974 * alloc.c (make_interval, Fmake_symbol, allocate_misc):
13975 Initialize the new field `gcmarkbit'.
13976 (mark_interval, MARK_INTERVAL_TREE): Use the new `gcmarkbit' field.
13977 (mark_interval_tree): Don't mark the tree separately from the nodes.
13978 (UNMARK_BALANCE_INTERVALS): Don't unmark the tree.
13979 (mark_maybe_object, mark_maybe_pointer, Fgarbage_collect)
13980 (mark_object, survives_gc_p, gc_sweep): Use new `gcmarkbit' fields.
13981
13982 * lisp.h (struct interval, struct Lisp_Symbol, struct Lisp_Free)
13983 (struct Lisp_Marker, struct Lisp_Intfwd, struct Lisp_Boolfwd)
13984 (struct Lisp_Kboard_Objfwd, struct Lisp_Save_Value)
13985 (struct Lisp_Buffer_Local_Value, struct Lisp_Overlay)
13986 (struct Lisp_Objfwd, struct Lisp_Buffer_Objfwd): Add `gcmarkbit' field.
13987
13988 2003-06-24 Dave Love <fx@gnu.org>
13989
13990 * xterm.c (xim_initialize): Use XRegisterIMInstantiateCallback_arg6.
13991
13992 * strftime.c: Test HAVE_SYS__MBSTATE_H, not __hpux. Merge changes
13993 from gnulib.
13994
13995 2003-06-21 Richard M. Stallman <rms@gnu.org>
13996
13997 * fileio.c (Fwrite_region): Alternate messages
13998 for append and partial write.
13999
14000 * keyboard.c (read_key_sequence): When converting upcase fn key to
14001 downcase, update fkey and keytran so `backspace' gets translated.
14002
14003 * keyboard.c (read_avail_input): Don't signal SIGHUP in batch mode.
14004
14005 * process.c (wait_reading_process_input): Don't signal SIGIO
14006 in batch mode.
14007
14008 2003-06-17 Kenichi Handa <handa@m17n.org>
14009
14010 * Makefile.in (xselect.o): Don't depend on charset.h, coding.h,
14011 composite.h.
14012
14013 * xselect.c: Don't include charset.h, coding.h, composite.h.
14014 (Qforeign_selection): New variable.
14015 (syms_of_xselect): Intern and static it.
14016 (selection_data_to_lisp_data): Return a unibyte string made from
14017 data with `foreign-selection' text property.
14018
14019 2003-06-15 Stefan Monnier <monnier@cs.yale.edu>
14020
14021 * termhooks.h (EVENT_INIT): New macro.
14022
14023 * keyboard.c (mark_kboards): Move from alloc.c. Mark kbd_buffer.
14024
14025 * alloc.c (mark_kboards): Move to keyboard.c.
14026
14027 * keyboard.c (record_asynch_buffer_change, read_avail_input):
14028 * xterm.c (x_dispatch_event):
14029 * xmenu.c (find_and_call_menu_selection):
14030 * xdisp.c (handle_tool_bar_click):
14031 * w32menu.c (menubar_selection_callback):
14032 * sysdep.c (kbd_input_ast, read_input_waiting):
14033 * msdos.c (dos_rawgetc):
14034 * macterm.c (mac_check_for_quit_char):
14035 * macmenu.c (menubar_selection_callback):
14036 * gtkutil.c (xg_tool_bar_callback): Don't pass uninitialized
14037 data to kbd_buffer_store_event.
14038
14039 2003-06-15 Kim F. Storm <storm@cua.dk>
14040
14041 * xdisp.c (x_fix_overlapping_area): Always use area relative X
14042 to fix redisplay problem with tall characters (such as \e,AC\e(B).
14043
14044 2003-06-13 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
14045
14046 * fileio.c (Fcopy_file): Doc fix: copies file modes, too.
14047
14048 2003-06-12 Kenichi Handa <handa@m17n.org>
14049
14050 * fileio.c (Fwrite_region): Save and restore restriction.
14051
14052 2003-06-12 Dave Love <fx@gnu.org>
14053
14054 * alloca.c (alloca): Declare arg as size_t.
14055
14056 * sysdep.c: Remove redundant include of unistd.h, stdlib.h.
14057 Use HAVE_DECL_SYS_SIGLIST, not SYS_SIGLIST_DECLARED.
14058
14059 2003-06-11 Dave Love <fx@gnu.org>
14060
14061 * search.c (shrink_regexp_cache): Use xrealloc.
14062 (syms_of_search): Use xmalloc.
14063
14064 2003-06-10 Kim F. Storm <storm@cua.dk>
14065
14066 * xdisp.c (phys_cursor_in_rect_p): Fix 2003-05-24 change.
14067 Adjust phys_cursor.x to be relative to window box, rather than
14068 text area before checking -- to ensure cursor is redrawn when
14069 exposing window.
14070 Note: This also fixes a similar (older) bug if display margins
14071 are present.
14072
14073 2003-06-06 Kenichi Handa <handa@m17n.org>
14074
14075 * coding.c (encoding_buffer_size): If coding->type is
14076 coding_type_ccl, double magnification on CRLF encoding.
14077
14078 2003-06-06 Jason Rumney <jasonr@gnu.org>
14079
14080 * w32reg.c (SYSTEM_DEFAULT_RESOURCES): New constant.
14081 (w32_get_string_resource): Try SYSTEM_DEFAULT_RESOURCES last.
14082
14083 * xfaces.c (Finternal_face_x_get_resource): Do it on Windows and
14084 Mac too.
14085
14086 2003-06-05 Dave Love <fx@gnu.org>
14087
14088 * strftime.c: Merge changes from gnulib.
14089
14090 * mktime.c (__mktime_internal): Merge changes from gnulib
14091 involving year 69 and dst2.
14092
14093 Changes to merge with gnulib version and be consistent with the
14094 autoconf test:
14095
14096 * getloadavg.c: Set NLIST_STRUCT from HAVE_NLIST_H.
14097 Use HAVE_STRUCT_NLIST_N_UN_N_NAME, not NLIST_NAME_UNION.
14098 [HAVE_LOCALE_H]: Include locale.h.
14099 (getloadavg) [HAVE_SETLOCALE]: Run sscanf in C locale.
14100
14101 2003-06-05 Kim F. Storm <storm@cua.dk>
14102
14103 * window.c (coordinates_in_window): Convert X and Y to window
14104 relative coordinates inside mode-line and header-line parts.
14105 Convert X and Y to margin area relative coordinates inside left
14106 and right display margin parts.
14107
14108 2003-06-05 Jason Rumney <jasonr@gnu.org>
14109
14110 * w32fns.c (add_system_logical_colors_to_map): New function.
14111 (Fx_open_connection): Use it.
14112
14113 2003-06-04 Stefan Monnier <monnier@cs.yale.edu>
14114
14115 * process.c (allocate_pty): Revert part of the previous patch.
14116 (Faccept_process_output): Simplify.
14117
14118 2003-06-04 Jason Rumney <jasonr@gnu.org>
14119
14120 * termhooks.h (enum event_kind): Remove MOUSE_WHEEL_EVENT.
14121
14122 * keyboard.c (Qmouse_wheel, mouse_wheel_syms)
14123 (lispy_mouse_wheel_names): Remove.
14124 (syms_of_keyboard): Remove Qmouse_wheel and mouse_wheel_syms.
14125 Always define drag_and_drop_syms.
14126
14127 * macterm.c (XTread_socket): Map mouse wheel events to Emacs
14128 WHEEL_EVENT events.
14129
14130 2003-06-03 Stefan Monnier <monnier@cs.yale.edu>
14131
14132 * xdisp.c (update_tool_bar): Add missing UNGCPRO.
14133
14134 * buffer.c (init_buffer_once): Make kill-buffer-hook permanent-local.
14135
14136 2003-06-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14137
14138 * gtkutil.c (make_menu_item): Make sure we don't crash on a NULL
14139 menu item label.
14140
14141 2003-06-03 Richard M. Stallman <rms@gnu.org>
14142
14143 * window.c (Fwindow_edges): Doc fix.
14144 (Fwindow_pixel_edges, Fwindow_inside_edges)
14145 (Fwindow_inside_pixel_edges): New functions.
14146 (syms_of_window): defsubr them.
14147
14148 * window.h (WINDOW_LEFT_FRINGE_COLS, WINDOW_RIGHT_FRINGE_COLS)
14149 (WINDOW_MODE_LINE_LINES, WINDOW_HEADER_LINE_LINES): New macros.
14150
14151 2003-06-02 Stefan Monnier <monnier@cs.yale.edu>
14152
14153 * dispnew.c (Fsit_for): Don't lie about the number of args.
14154
14155 2003-06-02 Dave Love <fx@gnu.org>
14156
14157 * callproc.c: Use HAVE_FCNTL_H, not USG5.
14158 (syms_of_callproc) <process-environment>: Doc fix.
14159
14160 * doc.c: Use HAVE_FCNTL_H, not USG5.
14161
14162 * xfaces.c (font_rescale_ratio): Fix for K&R.
14163
14164 * termcap.c: Use HAVE_FCNTL_H, not _POSIX_VERSION.
14165
14166 * mem-limits.h: Use HAVE_SYS_RESOURCE_H, HAVE_SYS_VLIMIT_H.
14167
14168 * lread.c [HAVE_FCNTL_H]: Include fcntl.h.
14169
14170 * gtkutil.c: Include keyboard.h, charset.h, coding.h.
14171 (xg_create_frame_widgets): Use ENCODE_UTF_8.
14172
14173 * xterm.c (Qutf_8): Move to coding.c
14174
14175 * xmenu.c (ENCODE_MENU_STRING): New.
14176 (list_of_panes, list_of_items, digest_single_submenu, xmenu_show):
14177 Use it.
14178
14179 * coding.h (ENCODE_UTF_8): New.
14180 (Qutf_8): Declare.
14181
14182 * coding.c (Qutf_8): New.
14183 (syms_of_coding): Intern it.
14184
14185 * fns.c: Doc fixes.
14186
14187 2003-06-02 Kenichi Handa <handa@m17n.org>
14188
14189 * buffer.c (Fset_buffer_multibyte): Fix previous change.
14190
14191 2003-06-01 Stefan Monnier <monnier@cs.yale.edu>
14192
14193 * lread.c (openp): Make sure STR is a string.
14194
14195 2003-06-01 David Ponce <david@dponce.com>
14196
14197 * termhooks.h (enum event_kind): Add new WHEEL_EVENT event.
14198 Declare MOUSE_WHEEL_EVENT only if MAC_OSX defined.
14199
14200 * keyboard.c (Qmouse_wheel): Declare only if MAC_OSX defined.
14201 (mouse_wheel_syms, lispy_mouse_wheel_names): Likewise.
14202 (discard_mouse_events): Discard WHEEL_EVENT events too.
14203 (lispy_wheel_names, wheel_syms): New.
14204 (syms_of_keyboard): Init and staticpro `wheel_syms'. Init and
14205 staticpro `Qmouse_wheel' and `mouse_wheel_syms' only if MAC_OSX defined.
14206 (make_lispy_event): Add WHEEL_EVENT handler.
14207
14208 * w32term.c (construct_mouse_wheel): Construct WHEEL_EVENT.
14209 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
14210 WHEEL_EVENT events.
14211
14212 2003-05-31 John Paul Wallington <jpw@gnu.org>
14213
14214 * Makefile.in (lisp, shortlisp): byte-run, float-sup, map-ynp, and
14215 timer are in lisp/emacs-lisp.
14216
14217 2003-05-31 Kenichi Handa <handa@m17n.org>
14218
14219 * buffer.c (Fset_buffer_multibyte): Correctly recover a narrowed
14220 region when a buffer is changed to unibyte.
14221
14222 * charset.h (VALID_LEADING_CODE_P): New macro.
14223 (UNIBYTE_STR_AS_MULTIBYTE_P): Check more rigidly.
14224
14225 * coding.c (DECODE_EMACS_MULE_COMPOSITION_CHAR): If coding->flags
14226 is nonzero, accept multibyte form of eight-bit-control chars.
14227 (decode_composition_emacs_mule): Likewise.
14228 (decode_coding_emacs_mule): Likewise.
14229 (encode_coding_emacs_mule): If coding->flags is nonzero, produce
14230 multibyte form of eight-bit-control chars.
14231
14232 * fileio.c (Qauto_save_coding, auto_save_coding): New variables.
14233 (Finsert_file_contents): If coding-system-for-read is bound to
14234 Qauto_save_coding, use the coding system emacs-mule with special
14235 setting for recovering a file.
14236 (choose_write_coding_system): On auto saving, use the coding
14237 system emacs-mule with special setting for auto saving.
14238 (syms_of_fileio) <Qauto_save_coding>: Intern and staticpro it.
14239
14240 2003-05-30 Kenichi Handa <handa@m17n.org>
14241
14242 * coding.c (ccl_coding_driver): Set ccl->eight_bit_control
14243 properly before calling ccl_driver.
14244
14245 * ccl.h (struct ccl_program) <eight_bit_control>: Comment fixed.
14246
14247 * ccl.c (CCL_WRITE_CHAR): Increment extra_bytes only when it is nonzero.
14248 (ccl_driver): Initialize extra_bytes to ccl->eight_bit_control.
14249 (setup_ccl_program): Initialize ccl->eight_bit_control to zero.
14250
14251 2003-05-29 Glenn Morris <gmorris@ast.cam.ac.uk>
14252
14253 * xfaces.c (realize_default_face): Do not abort if lface is
14254 non-existent - reverts change from 2003-05-19.
14255
14256 2003-05-29 Kenichi Handa <handa@m17n.org>
14257
14258 * coding.c (decode_coding_iso2022): Pay attention to the byte
14259 sequence of CTEXT extended segment, and retain those bytes as is.
14260
14261 2003-05-28 Kenichi Handa <handa@m17n.org>
14262
14263 * coding.c (ENCODE_UNSAFE_CHARACTER): Adjust for the name change
14264 of CODING_REPLACEMENT_CHARACTER.
14265 (decode_coding_iso2022): If CODING_FLAG_ISO_SAFE, set
14266 CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in coding->mode, and
14267 check this flag on encoding.
14268 (encode_coding_sjis_big5):
14269 Check CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag of coding->mode.
14270 (Fset_terminal_coding_system_internal):
14271 Set CODING_MODE_INHIBIT_UNENCODABLE_CHAR flag in terminal_coding.mode
14272 instead of setting CODING_FLAG_ISO_SAFE flag in terminal_coding.flags.
14273
14274 * coding.h (CODING_REPLACEMENT_CHARACTER): Rename from
14275 CODING_INHIBIT_CHARACTER_SUBSTITUTION.
14276 (CODING_MODE_INHIBIT_UNENCODABLE_CHAR): New macro.
14277
14278 2003-05-28 Richard M. Stallman <rms@gnu.org>
14279
14280 * print.c (syms_of_print) <print-escape-nonascii>: Doc fix.
14281
14282 * eval.c (unbind_to): Move init of this_binding to separate statement.
14283
14284 2003-05-28 Kim F. Storm <storm@cua.dk>
14285
14286 * xdisp.c (expose_window): Fix error in calculation of
14287 window relative coordinates of area to redisplay.
14288
14289 2003-05-27 Jason Rumney <jasonr@gnu.org>
14290
14291 * w32term.c (GET_WHEEL_DELTA_WPARAM): New macro.
14292
14293 2003-05-27 David Ponce <david@dponce.com>
14294
14295 Handle W32 mouse wheel events as mouse click events, like in X.
14296
14297 * keyboard.c (make_lispy_event) [WINDOWSNT]: Don't handle
14298 MOUSE_WHEEL_EVENT anymore.
14299
14300 * w32term.c (construct_mouse_wheel): Result is a MOUSE_CLICK_EVENT.
14301 Scrolling down/up the mouse wheel is respectively mapped to mouse
14302 button 4 and 5.
14303 (w32_read_socket): Map w32 WM_MOUSEWHEEL events to Emacs
14304 MOUSE_CLICK_EVENT events. Forward w32 MSH_MOUSEWHEEL events as
14305 WM_MOUSEWHEEL events.
14306
14307 2003-05-27 Andreas Schwab <schwab@suse.de>
14308
14309 * buffer.c (syms_of_buffer) <default-direction-reversed>: Doc fix.
14310
14311 * xdisp.c (try_window_id): Avoid aborting if PT is inside a
14312 partially visible line.
14313
14314 * alloc.c (Fgarbage_collect): Fix last change.
14315
14316 2003-05-26 John Paul Wallington <jpw@gnu.org>
14317
14318 * xfns.c (Fx_create_frame): Don't call Qface_set_after_frame_default.
14319
14320 2003-05-25 Stefan Monnier <monnier@cs.yale.edu>
14321
14322 * window.c (Fset_window_buffer): Add type of `keep_margins'.
14323 (Fset_window_fringes, Fset_window_scroll_bars): Declare before use.
14324
14325 * window.h (window_box_text_cols): Declare.
14326
14327 * xdisp.c (window_text_bottom_y, draw_row_fringe_bitmaps)
14328 (x_draw_vertical_border): Remove unused var `f'.
14329
14330 * xfaces.c (build_scalable_font_name): Remove `unused var
14331 pixel_size' warning.
14332
14333 * xfns.c (png_load): Remove `unused vars intent, image_gamma' warning.
14334
14335 * unexelf.c (unexec): Remove `unused var n' warning.
14336
14337 * strftime.c (my_strftime_localtime_r): Remove `defined but
14338 unused' warning.
14339
14340 * process.c (allocate_pty): Remove `unused var stb' and
14341 `cp might be used uninitialized' warnings.
14342
14343 * dispnew.c (mode_line_string): Remove unused var `f'.
14344
14345 * coding.c (find_safe_codings): Remove unused var `i'.
14346
14347 * bytecode.c (Fbyte_code): Remove `unused val' warning.
14348
14349 * buffer.c (Fkill_buffer): Remove unused var `list'.
14350
14351 * alloc.c (Fgarbage_collect): Remove `unused var tail' warning.
14352
14353 2003-05-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
14354
14355 * frame.c (make_frame): Condition want_fullscreen with
14356 HAVE_WINDOW_SYSTEM.
14357
14358 2003-05-25 Juanma Barranquero <lektu@terra.es>
14359
14360 * window.c (Fset_window_scroll_bars): Fix typo in argument name.
14361 (Fwindow_scroll_bars): Fix typo in docstring.
14362
14363 2003-05-24 Kim F. Storm <storm@cua.dk>
14364
14365 The following changes serve several purposes:
14366
14367 1) Swap the position of fringes and display margins in windows, i.e.
14368 the fringes are now displayed between the margins and the text area
14369 (by default).
14370
14371 2) Allow fringe and scroll bar parameters to be set per-buffer and
14372 per-window (like display margins). Such settings are now stored
14373 in window configurations, preserved when frames are resized, and
14374 copied when windows are split vertically or horizontally.
14375 Several bugs related to display margins have been fixed.
14376
14377 3) Consistently use FRAME_FONT and FRAME_FONTSET macros.
14378
14379 4) Use FRAME_COLUMN_WIDTH (f) consistently throughout the code
14380 rather than FRAME_WIDTH (FRAME_FONT (f)).
14381
14382 5) Introduce a consistent naming of variables, members and macros
14383 depending on whether their value is measured in pixels or in
14384 canonical columns/lines. Pixel dimensions are named *_width and
14385 *_height, while canonical columns/lines are named *_cols and
14386 *_lines. Pixel positions are named *_x and *_y, while column/line
14387 positions are named *_col and *_line.
14388
14389 6) Consolidate more of the X, W32, and MAC gui code by moving
14390 common data into struct frame, and generalize it for the non-gui
14391 case by using suitable defaults.
14392
14393 7) Cleanup and consolidate the macros controlling frame and window
14394 layout into frame.h and window.h, and generalize the use of the
14395 various window_box_* functions (enhanced to handle the new fringe
14396 position and the per-window fringe and scroll bar settings).
14397
14398 * frame.h (struct frame): Rename members height to text_lines,
14399 width to text_cols, window_height to total_lines, window_width to
14400 total_cols, new_height to new_text_lines, new_width to
14401 new_text_cols. All uses changed.
14402 (struct frame): New members which consolidate common members of
14403 x_output, w32_output, and mac_output structures: left_pos,
14404 top_pos, pixel_height, pixel_width, x_pixels_diff, y_pixels_diff,
14405 win_gravity, size_hint_flags, border_width, internal_border_width,
14406 line_height, fringe_cols, left_fringe_width, right_fringe_width,
14407 want_fullscreen. All uses changed.
14408 (struct frame): New member column_width contaning the canonical
14409 column width, analogue to line_height. All uses changed.
14410 (struct frame): Rename members scroll_bar_pixel_width to
14411 config_scroll_bar_width, and scroll_bar_cols to
14412 config_scroll_bar_cols. All uses changed.
14413 (struct frame): New member scroll_bar_actual_width which
14414 consolidates and renames the vertical_scroll_bar_extra member of
14415 x_output, w32_output, and mac_output structures. All uses changed.
14416 (FRAME_PIXEL_HEIGHT): Rename from PIXEL_HEIGHT and moved
14417 from x/w32/macterm.h files. All uses changed. Also change code
14418 which referred to f->output_data...->pixel_height.
14419 (FRAME_PIXEL_WIDTH): Rename from PIXEL_WIDTH and moved
14420 from x/w32/macterm.h files. All uses changed. Also change code
14421 which referred to f->output_data...->pixel_width.
14422 (FRAME_LINES): Rename from FRAME_HEIGHT. All uses changed.
14423 Also change code which referred to f->height.
14424 (FRAME_COLS): Rename from FRAME_WIDTH. All uses changed.
14425 Also change code which referred to f->width.
14426 (FRAME_NEW_HEIGHT, FRAME_NEW_WIDTH): Remove macros; change uses
14427 to update new_text_lines and new_text_cols members directly.
14428 (FRAME_CONFIG_SCROLL_BAR_WIDTH): Rename from
14429 FRAME_SCROLL_BAR_PIXEL_WIDTH. All uses changed.
14430 (FRAME_CONFIG_SCROLL_BAR_COLS): Rename from
14431 FRAME_SCROLL_BAR_COLS. All uses changed.
14432 (FRAME_LEFT_SCROLL_BAR_COLS, FRAME_RIGHT_SCROLL_BAR_COLS):
14433 Rename from FRAME_LEFT_SCROLL_BAR_WIDTH and
14434 FRAME_RIGHT_SCROLL_BAR_WIDTH, resp. All uses changed.
14435 (FRAME_SCROLL_BAR_AREA_WIDTH, FRAME_LEFT_SCROLL_BAR_AREA_WIDTH)
14436 (FRAME_RIGHT_SCROLL_BAR_AREA_WIDTH): New macros.
14437 (FRAME_TOTAL_COLS): Rename from FRAME_WINDOW_WIDTH.
14438 (SET_FRAME_COLS): Rename from SET_FRAME_WIDTH.
14439 (FRAME_TOTAL_COLS_ARG): Rename from FRAME_WINDOW_WIDTH_ARG.
14440 (WINDOW_VERTICAL_SCROLL_BAR_COLUMN): Remove unused macro.
14441 (WINDOW_VERTICAL_SCROLL_BAR_HEIGHT): Remove unused macro.
14442 (FRAME_LINE_HEIGHT): Rename from CANON_Y_UNIT.
14443 Unconditionally return line_height member (it now has proper value
14444 also for non-window frames).
14445 (FRAME_COLUMN_WIDTH): Rename from CANON_X_UNIT. Unconditionally
14446 return new column_width member (rather than the default font width).
14447 (FRAME_FRINGE_COLS, FRAME_LEFT_FRINGE_WIDTH)
14448 (FRAME_RIGHT_FRINGE_WIDTH): Rename from FRAME_X_... and moved
14449 from x/w32/macterm.h files. Unconditionally return corresponding
14450 member of frame structure (they now have proper values also for
14451 non-window frames).
14452 (FRAME_TOTAL_FRINGE_WIDTH): Rename from FRAME_FRINGE_WIDTH.
14453 Calculate return value from left and right widths.
14454 (FRAME_INTERNAL_BORDER_WIDTH): Unconditionally return
14455 internal_border_width member (has proper value for non-window frame).
14456 (FRAME_PIXEL_X_FROM_CANON_X): Rename from PIXEL_X_FROM_CANON_X.
14457 (FRAME_PIXEL_Y_FROM_CANON_Y): Rename from PIXEL_Y_FROM_CANON_Y.
14458 (FRAME_CANON_X_FROM_PIXEL_X): Rename from CANON_X_FROM_PIXEL_X.
14459 (FRAME_CANON_Y_FROM_PIXEL_Y): Rename from CANON_Y_FROM_PIXEL_Y.
14460 (FRAME_LINE_TO_PIXEL_Y): Rename from CHAR_TO_PIXEL_ROW,
14461 consolidated from xterm.h, macterm.h, and w32term.h.
14462 (FRAME_COL_TO_PIXEL_X): Rename from CHAR_TO_PIXEL_COL,
14463 consolidated from xterm.h, macterm.h, and w32term.h.
14464 (FRAME_TEXT_COLS_TO_PIXEL_WIDTH): Rename from
14465 CHAR_TO_PIXEL_WIDTH consolidated from x/mac/w32term.h.
14466 (FRAME_TEXT_LINES_TO_PIXEL_HEIGHT): Rename from
14467 CHAR_TO_PIXEL_HEIGHT consolidated from x/mac/w32term.h.
14468 (FRAME_PIXEL_Y_TO_LINE): Rename from PIXEL_TO_CHAR_ROW
14469 consolidated from x/mac/w32term.h.
14470 (FRAME_PIXEL_X_TO_COL): Rename from PIXEL_TO_CHAR_COL
14471 consolidated from x/mac/w32term.h.
14472 (FRAME_PIXEL_WIDTH_TO_TEXT_COLS): Rename from
14473 PIXEL_TO_CHAR_WIDTH consolidated from x/mac/w32term.h.
14474 (FRAME_PIXEL_HEIGHT_TO_TEXT_LINES): Rename from
14475 PIXEL_TO_CHAR_HEIGHT consolidated from x/mac/w32term.h.
14476
14477 * window.h (struct window): Rename members left to left_col,
14478 top to top_line, height to total_lines, width to total_cols,
14479 left_margin_width to left_margin_cols, right_margin_width to
14480 right_margin_cols, orig_height to orig_total_lines, orig_top to
14481 orig_top_line. All uses changed.
14482 (struct window): New members left_fringe_width, right_fringe_width,
14483 fringes_outside_margins, scroll_bar_width, vertical_scroll_bar_type.
14484 (WINDOW_XFRAME, WINDOW_FRAME_COLUMN_WIDTH, WINDOW_FRAME_LINE_HEIGHT):
14485 New macros primarily used to simplify other macros.
14486 (WINDOW_TOTAL_COLS): New macro. Change relevant code that
14487 referred to XINT (w->width).
14488 (WINDOW_TOTAL_LINES): New macro. Change relevant code that
14489 referred to XINT (w->height).
14490 (WINDOW_TOTAL_WIDTH): New macro. Change relevant code that
14491 referred to XINT (w->width) * canon_x_unit.
14492 (WINDOW_TOTAL_HEIGHT): New macro. Change relevant code that
14493 referred to XINT (w->height) * canon_y_unit.
14494 (WINDOW_LEFT_EDGE_COL): New macro. Change relevant code that
14495 referred to XINT (w->left).
14496 (WINDOW_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_EDGE. Change
14497 all uses and code that referred to XINT (w->left) + XINT (w->width).
14498 (WINDOW_TOP_EDGE_LINE): New macro. Change relevant code that
14499 referred to XINT (w->top).
14500 (WINDOW_BOTTOM_EDGE_LINE): New macro. Change relevant code that
14501 referred to XINT (w->top) + XINT (w->height).
14502 (WINDOW_LEFT_EDGE_X): New macro. Change relevant code that
14503 referred to XINT (w->left) * canon_x_unit.
14504 (WINDOW_RIGHT_EDGE_X): New macro. Change relevant code that
14505 referred to (XINT (w->left) + XINT (w->width)) * canon_x_unit.
14506 (WINDOW_TOP_EDGE_Y): New macro. Change relevant code that
14507 referred to XINT (w->top) * canon_y_unit.
14508 (WINDOW_BOTTOM_EDGE_Y): New macro. Change relevant code that
14509 referred to (XINT (w->top) + XINT (w->height)) * canon_y_unit.
14510 (WINDOW_LEFTMOST_P): New macro.
14511 (WINDOW_BOX_LEFT_EDGE_COL): Rename from WINDOW_LEFT_MARGIN.
14512 All uses changed.
14513 (WINDOW_BOX_RIGHT_EDGE_COL): Rename from WINDOW_RIGHT_MARGIN.
14514 All uses changed.
14515 (WINDOW_BOX_LEFT_EDGE_X): Rename from
14516 WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, moved from dispextern.h.
14517 Do not exclude left fringe width.
14518 (WINDOW_BOX_RIGHT_EDGE_X): Rename from
14519 WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X, moved from dispextern.h.
14520 Do not exclude fringe widths.
14521 (WINDOW_LEFT_FRINGE_WIDTH, WINDOW_RIGHT_FRINGE_WIDTH)
14522 (WINDOW_FRINGE_COLS, WINDOW_TOTAL_FRINGE_WIDTH): New macros.
14523 Change relevant code that referred to FRAME_LEFT_FRINGE_WIDTH,
14524 FRAME_RIGHT_FRINGE_WIDTH, FRAME_FRINGE_COLS, and
14525 FRAME_TOTAL_FRINGE_WIDTH to allow per-window fringe settings.
14526 (WINDOW_HAS_FRINGES_OUTSIDE_MARGINS): New macro.
14527 (WINDOW_VERTICAL_SCROLL_BAR_TYPE, WINDOW_HAS_VERTICAL_SCROLL_BAR)
14528 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_LEFT)
14529 (WINDOW_HAS_VERTICAL_SCROLL_BAR_ON_RIGHT)
14530 (WINDOW_CONFIG_SCROLL_BAR_WIDTH, WINDOW_CONFIG_SCROLL_BAR_COLS):
14531 New macros. Change code which referenced corresponding
14532 FRAME_VERTICAL_SCROLL_BAR_TYPE, FRAME_HAS_VERTICAL_SCROLL_BARS,
14533 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_LEFT,
14534 FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT,
14535 FRAME_SCROLL_BAR_PIXEL_WIDTH, and FRAME_SCROLL_BAR_COLS macros to
14536 allow per-window scroll-bar settings.
14537 (WINDOW_LEFT_SCROLL_BAR_COLS, WINDOW_RIGHT_SCROLL_BAR_COLS): New macros.
14538 (WINDOW_LEFT_SCROLL_BAR_AREA_WIDTH): New macro. Change code that
14539 referred to FRAME_LEFT_SCROLL_BAR_WIDTH.
14540 (WINDOW_RIGHT_SCROLL_BAR_AREA_WIDTH): New macro. Change code
14541 that referred to FRAME_HAS_VERTICAL_SCROLL_BARS_ON_RIGHT and
14542 FRAME_SCROLL_BAR_WIDTH.
14543 (WINDOW_SCROLL_BAR_COLS, WINDOW_SCROLL_BAR_AREA_WIDTH)
14544 (WINDOW_SCROLL_BAR_AREA_X): New macros.
14545 (WINDOW_HEADER_LINE_HEIGHT): Rename from
14546 WINDOW_DISPLAY_HEADER_LINE_HEIGHT, moved from dispextern.h.
14547 (WINDOW_BOX_HEIGHT_NO_MODE_LINE): Rename from
14548 WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, moved from dispextern.h.
14549 (WINDOW_BOX_TEXT_HEIGHT): Rename from
14550 WINDOW_DISPLAY_PIXEL_WIDTH, moved from dispextern.h.
14551 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
14552 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
14553 (WINDOW_TEXT_TO_FRAME_PIXEL_X): Move here from dispextern.h.
14554 (WINDOW_LEFT_MARGIN_WIDTH): Rename from
14555 WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH, moved from dispextern.h.
14556 (WINDOW_RIGHT_MARGIN_WIDTH): Rename from
14557 WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, moved from dispextern.h.
14558 (window_from_coordinates): Update prototype.
14559 (Fset_window_buffer): Update EXFUN.
14560 (set_window_buffer): Update prototype.
14561
14562 * dispextern.h (struct glyph_matrix): Rename members window_left_x
14563 to window_left_col, window_top_y to window_top_line. All uses
14564 changed.
14565 (FRAME_INTERNAL_BORDER_WIDTH_SAFE): Remove macro; can now safely
14566 use FRAME_INTERNAL_BORDER_WIDTH macro instead as
14567 internal_border_width is now set to 0 for non-window frames.
14568 (WINDOW_DISPLAY_PIXEL_WIDTH, WINDOW_DISPLAY_PIXEL_HEIGHT)
14569 (WINDOW_DISPLAY_MODE_LINE_HEIGHT, WINDOW_DISPLAY_HEADER_LINE_HEIGHT)
14570 (WINDOW_DISPLAY_HEIGHT_NO_MODE_LINE, WINDOW_DISPLAY_TEXT_HEIGHT)
14571 (WINDOW_DISPLAY_LEFT_EDGE_PIXEL_X, WINDOW_DISPLAY_RIGHT_EDGE_PIXEL_X)
14572 (WINDOW_DISPLAY_TOP_EDGE_PIXEL_Y, WINDOW_DISPLAY_BOTTOM_EDGE_PIXEL_Y)
14573 (WINDOW_TO_FRAME_PIXEL_X, WINDOW_TO_FRAME_PIXEL_Y)
14574 (FRAME_TO_WINDOW_PIXEL_X, FRAME_TO_WINDOW_PIXEL_Y)
14575 (WINDOW_DISPLAY_LEFT_AREA_PIXEL_WIDTH)
14576 (WINDOW_DISPLAY_RIGHT_AREA_PIXEL_WIDTH, WINDOW_WANTS_MODELINE_P):
14577 Move to window.h and renamed [see window.h changes].
14578 (WINDOW_AREA_TO_FRAME_PIXEL_X, WINDOW_AREA_PIXEL_WIDTH)
14579 (WINDOW_DISPLAY_TEXT_AREA_PIXEL_WIDTH): Remove macros.
14580 (WINDOW_WANTS_MODELINE_P, WINDOW_WANTS_HEADER_LINE_P):
14581 Use WINDOW_TOTAL_LINES.
14582 (frame_update_line_height): Remove prototype.
14583
14584 * buffer.h (struct buffer): Rename members measured in columns:
14585 left_margin_width to left_margin_cols, right_margin_width to
14586 right_margin_cols. All uses changed.
14587 New members left_fringe_width, right_fringe_width,
14588 fringes_outside_margins for per-buffer fringe settings.
14589 New members scroll_bar_width and vertical_scroll_bar_type for
14590 per-buffer scroll bar settings.
14591
14592 * buffer.c (init_buffer_once): Set buffer_defaults and
14593 buffer_local_flags for new buffer-local variables
14594 left_fringe_width, right_fringe_width, fringes_outside_margins,
14595 scroll_bar_width, and vertical_scroll_bar_type.
14596 (syms_of_buffer): Defvar_per_buffer them, and defvar_lisp_nopro
14597 default-* variables for them.
14598
14599 * dispnew.c: Make (many) trivial substitutions for renamed and
14600 new macros in dispextern.h, frame.h and window.h.
14601 (mode_line_string): No need to adjust width for mode lines, as it
14602 is already adjusted by the caller.
14603 (marginal_area_string): Handle fringes inside/outside margins.
14604
14605 * frame.c: Make (many) trivial substitutions for renamed and
14606 new macros in dispextern.h, frame.h and window.h.
14607 (make_frame): Initialize left_fringe_width, right_fringe_width,
14608 fringe_cols, scroll_bar_actual_width, border_width,
14609 internal_border_width, column_width, line_height, x_pixels_diff,
14610 y_pixels_diff, want_fullscreen, size_hint_flags, and win_gravity
14611 members with values suitable for a non-window frames.
14612
14613 * gtkutil.c: Make (many) trivial substitutions for renamed and
14614 new macros in dispextern.h, frame.h and window.h.
14615
14616 * indent.c: Make (few) trivial substitutions for renamed and
14617 new macros in dispextern.h, frame.h and window.h.
14618
14619 * keyboard.c: Make (many) trivial substitutions for renamed and
14620 new macros in dispextern.h, frame.h and window.h.
14621 (make_lispy_event): Use window positions returned from
14622 window_from_coordinates when constructing the lisp event for
14623 MOUSE_CLICK_EVENT and DRAG_N_DROP_EVENT, rather than calculating
14624 (incorrect) values locally.
14625 (make_lispy_movement): Use window positions returned from
14626 window_from_coordinates when constructing the lisp event, rather
14627 than calculating (incorrect) values locally.
14628
14629 * scroll.c: Make (some) trivial substitutions for renamed and
14630 new macros in dispextern.h, frame.h and window.h.
14631
14632 * sunfns.c (Fsun_menu_internal): Adapt to per-window fringes and
14633 scroll-bars.
14634
14635 * sysdep.c: Make (few) trivial substitutions for renamed and
14636 new macros in dispextern.h, frame.h and window.h.
14637
14638 * term.c: Make (some) trivial substitutions for renamed and
14639 new macros in dispextern.h, frame.h and window.h.
14640
14641 * widget.c: Make (few) trivial substitutions for renamed and
14642 new macros in dispextern.h, frame.h and window.h.
14643
14644 * window.c: Make (many) trivial substitutions for renamed and
14645 new macros in dispextern.h, frame.h and window.h.
14646 (make_window): Initialize new members
14647 left_margin_cols, right_margin_cols, left_fringe_width,
14648 right_fringe_width, fringes_outside_margins, scroll_bar_width,
14649 and vertical_scroll_bar_type.
14650 (coordinates_in_window): Adapt to new fringe/margin positions
14651 and per-window fringes and scroll-bars.
14652 Fix bug related to incorrectly adjusting coordinates by
14653 frame's internal_border_width (the effect normally negible since
14654 the internal_border_width is typically 0 or 1 pixel, but very
14655 noticeable for an internal_border_width of e.g. 25 pixels).
14656 Upon successful return (other than ON_NOTHING), the coordinates
14657 are now always properly converted to window relative for the
14658 given display element.
14659 (window_from_coordinates): Add new parameters wx and wy to
14660 return the window relative x and y position in the returned
14661 window and part. A null arg means, don't return the position.
14662 All callers changed.
14663 (adjust_window_margins): New function which may reduce the width
14664 of the display margins if a window's text area is too small after
14665 resizing or splitting windows.
14666 (size_window): Fix bug that did not account for display margin
14667 widths when checking the minimum width of a window; use
14668 adjust_window_margins.
14669 (set_window_buffer): Call Fset_window_fringes and
14670 Fset_window_scroll_bars to setup per-window elements.
14671 Add new arg KEEP_MARGINS_P. Non-nil means to keep window's
14672 existing display margin, fringe widths, and scroll bar settings
14673 (e.g. after splitting a window or resizing the frame).
14674 All callers changed.
14675 (Fset_window_buffer): New arg KEEP_MARGINS. All callers changed.
14676 (Fsplit_window): Duplicate original window's display margin,
14677 fringe, and scroll-bar settings; then call Fset_window_buffer with
14678 KEEP_MARGINS non-nil. This fixes a bug which caused a split
14679 window to only preserve the display margins in one of the windows.
14680 When splitting horizontally, call adjust_window_margins on both
14681 windows to ensure that the text area of the new windows is non too
14682 narrow. This fixes a bug which could cause Emacs to trap if the
14683 width of the split window was less than the width of the display
14684 margins.
14685 (window_box_text_cols): Rename from window_internal_width.
14686 All uses changed. Adapt to per-window fringes and scroll bars.
14687 Fix bug that caused vertical separator to be subtracted also on
14688 window frames. Fix another bug that did not reduce the returned
14689 value by the columns used for display margins.
14690 (window_scroll_line_based): Fix bug related to scrolling too much
14691 when display margins are present (implicitly fixed by the fix to
14692 window_box_text_cols).
14693 (scroll_left, scroll_right): Fix bug related to scrolling too far
14694 by default when display margins are present (implicitly fixed by
14695 the fix to window_box_text_cols).
14696 (struct saved_window): Rename members left to left_col, top to
14697 top_line, width to total_cols, height to total_lines, orig_top to
14698 orig_top_line, orig_height to orig_total_lines. All uses changed.
14699 New members left_margin_cols, right_margin_cols,
14700 left_fringe_width, right_fringe_width, fringes_outside_margins,
14701 scroll_bar_width, and vertical_scroll_bar_type for saving
14702 per-window display elements.
14703 (Fset_window_configuration): Restore display margins, fringes,
14704 and scroll bar settings. This fixes a bug which caused display
14705 margins to be discarded when saving and restoring a window
14706 configuration.
14707 (save_window_save): Save display margins, fringes, and scroll bar
14708 settings. This fixes a bug which caused display margins to be
14709 discarded when saving and restoring a window configuration.
14710 (Fset_window_margins): Do nothing if display margins are not
14711 really changed. Otherwise, call adjust_window_margins to ensure
14712 the text area doesn't get too narrow. This fixes a bug which
14713 could cause Emacs to trap if setting display margins wider than
14714 the width of the window.
14715 (Fset_window_fringes): New defun to allow user to specifically set
14716 this window's fringe widths and position vs. display margins.
14717 (Fwindow_fringes): New defun to return window's actual fringe settings.
14718 (Fset_window_scroll_bars): New defun to allow user to specifically
14719 set this window's scroll bar width and position.
14720 (Fwindow_scroll_bars): New defun to return window's actual scroll
14721 bar settings.
14722 (compare_window_configurations): Also compare display margins,
14723 fringes, and scroll bar settings.
14724 (syms_of_window): Defsubr new defuns for fringe and scroll bars.
14725
14726 * xdisp.c: Make (many) trivial substitutions for renamed and
14727 new macros in dispextern.h, frame.h and window.h.
14728 (window_box_width): Adapt to per-window fringes and scroll bars,
14729 and new fringe vs. display margin position. Note that returned
14730 value is no longer guaranteed to be a whole multiple of the frame
14731 column width, since per-window fringes may now be any width.
14732 (window_box_left_offset): New function like window_box_left, but
14733 value is relative to left border of window (rather than frame).
14734 (window_box_right_offset): New function like window_box_right,
14735 but value is relative to left border of window.
14736 (window_box_left): Adapt to per-window fringes and scroll bars,
14737 and new fringe vs. display margin position. Simplify by using
14738 WINDOW_LEFT_EDGE_X and window_box_left_offset.
14739 (window_box): Allow null args for unnecessary return values;
14740 change/simplify relevant callers.
14741 (x_y_to_hpos_vpos): Adapt to per-window fringes and scroll bars,
14742 and new fringe vs. display margin position.
14743 Use window_box_left_offset and window_box_right_offset
14744 (get_glyph_string_clip_rect): Adapt to per-window fringes and
14745 scroll bars, and new fringe vs. display margin position.
14746 Use WINDOW_LEFT_EDGE_X and WINDOW_TOTAL_WIDTH.
14747 (draw_fringe_bitmap): Rework to handle per-window fringes and new
14748 fringe vs. display margin position.
14749 (hscroll_window_tree): Use window_box_width instead of window_box.
14750 (redisplay_window): Adapt to per-window scroll bars.
14751 (draw_glyphs): Rework to handle per-window fringes and scroll
14752 bars, and new fringe vs. display margin position.
14753 Use WINDOW_LEFT_EDGE_X, WINDOW_TOTAL_WIDTH, and window_box_left.
14754 (x_clear_end_of_line): Adapt to per-window fringes and scroll
14755 bars, and new fringe vs. display margin position. Fix bug which
14756 increased total width of full_width rows by width of scroll bars
14757 although window's total width already includes that.
14758 (x_fix_overlapping_area): Simplify using window_box_left_offset.
14759 (expose_area): Simplify using window_box_left_offset.
14760 (x_draw_vertical_border): Handle per-window scroll bar settings,
14761 mixing windows with left, right and no scroll bars.
14762
14763 * xfaces.c [WINDOWSNT]: Move redefinition of FONT_WIDTH macro to
14764 where it's used in x_list_fonts (for clarity).
14765 (frame_update_line_height): Remove unused function; functionality
14766 is now done directly when setting the default font in x_set_font.
14767
14768 * xfns.c: Make (many) trivial substitutions for renamed and
14769 new macros in dispextern.h, frame.h and window.h.
14770
14771 * xmenu.c: Make (some) trivial substitutions for renamed and
14772 new macros in dispextern.h, frame.h and window.h.
14773
14774 * xterm.h (struct x_output): Move members left_pos, top_pos,
14775 border_width, pixel_height, pixel_width, line_height,
14776 internal_border_width, vertical_scroll_bar_extra,
14777 left_fringe_width, right_fringe_width, fringe_cols,
14778 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14779 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14780 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14781 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14782 (PIXEL_WIDTH, PIXEL_HEIGHT)
14783 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14784 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14785 frame.h and renamed [see frame.h changes].
14786 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14787 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14788 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14789 and renamed [see frame.h changes].
14790
14791 * xterm.c: Make (several) trivial substitutions for renamed and
14792 new macros in dispextern.h, frame.h and window.h.
14793 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14794 (scroll_run): Adapt to new fringe position.
14795 (glyph_rect): Use window coordinates returned from
14796 window_from_coordinates rather than frame_to_window_pixel_xy.
14797 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14798 scroll-bars.
14799 (handle_one_xevent): Simplify a USE_GTK conditional.
14800 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14801 (fringes are now inside margins, i.e. always in the clipping area).
14802 All callers changed.
14803 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14804 directly, then call compute_fringe_widths. Don't call
14805 frame_update_line_height.
14806
14807 * w32term.h (struct w32_output): Move members left_pos, top_pos,
14808 border_width, pixel_height, pixel_width, line_height,
14809 internal_border_width, vertical_scroll_bar_extra,
14810 left_fringe_width, right_fringe_width, fringe_cols,
14811 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14812 x_pixels_diff, and y_pixels_diff to struct frame (frame.h).
14813 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14814 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14815 (PIXEL_WIDTH, PIXEL_HEIGHT)
14816 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14817 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14818 frame.h and renamed [see frame.h changes].
14819 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14820 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14821 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14822 and renamed [see frame.h changes].
14823
14824 * w32term.c: Make (several) trivial substitutions for renamed and
14825 new macros in dispextern.h, frame.h and window.h.
14826 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14827 (glyph_rect): Use window coordinates returned from
14828 window_from_coordinates rather than frame_to_window_pixel_xy.
14829 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14830 scroll-bars.
14831 (w32_clip_to_row): Remove superfluous whole_line_p arg and code
14832 (fringes are now inside margins, i.e. always in the clipping area).
14833 All callers changed.
14834 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14835 directly, then call compute_fringe_widths. Don't call
14836 frame_update_line_height.
14837
14838 * w32console.c: Make (few) trivial substitutions for renamed and
14839 new macros in dispextern.h, frame.h and window.h.
14840
14841 * w32fns.c: Make (many) trivial substitutions for renamed and
14842 new macros in dispextern.h, frame.h and window.h.
14843
14844 * w32menu.c: Make (few) trivial substitutions for renamed and
14845 new macros in dispextern.h, frame.h and window.h.
14846
14847 * macterm.h (struct mac_output): Move members left_pos, top_pos,
14848 border_width, pixel_height, pixel_width, line_height,
14849 internal_border_width, vertical_scroll_bar_extra,
14850 left_fringe_width, right_fringe_width, fringe_cols,
14851 fringes_extra, win_gravity, size_hint_flags, want_fullscreen,
14852 x_pixels_diff, y_pixels_diff to struct frame (frame.h).
14853 (FRAME_INTERNAL_BORDER_WIDTH, FRAME_LINE_HEIGHT): Move to frame.h.
14854 (FRAME_DEFAULT_FONT_WIDTH): Remove macro.
14855 (PIXEL_WIDTH, PIXEL_HEIGHT)
14856 (FRAME_X_FRINGE_COLS, FRAME_X_FRINGE_WIDTH)
14857 (FRAME_X_LEFT_FRINGE_WIDTH, FRAME_X_RIGHT_FRINGE_WIDTH): Move to
14858 frame.h and renamed [see frame.h changes].
14859 (CHAR_TO_PIXEL_ROW, CHAR_TO_PIXEL_COL, CHAR_TO_PIXEL_WIDTH)
14860 (CHAR_TO_PIXEL_HEIGHT, PIXEL_TO_CHAR_ROW, PIXEL_TO_CHAR_COL)
14861 (PIXEL_TO_CHAR_WIDTH, PIXEL_TO_CHAR_HEIGHT): Move to frame.h
14862 and renamed [see frame.h changes].
14863
14864 * macterm.c: Make (several) trivial substitutions for renamed and
14865 new macros in dispextern.h, frame.h and window.h.
14866 (x_draw_glyph_string_box): Adapt to per-window fringes and scroll-bars.
14867 (glyph_rect): Use window coordinates returned from
14868 window_from_coordinates rather than frame_to_window_pixel_xy.
14869 (XTset_vertical_scroll_bar): Adapt to per-window fringes and
14870 scroll-bars.
14871 (x_clip_to_row): Remove superfluous whole_line_p arg and code
14872 (fringes are now inside margins, i.e. always in the clipping area).
14873 All callers changed.
14874 (x_new_font): Set FRAME_COLUMN_WIDTH and FRAME_LINE_HEIGHT
14875 directly, then call compute_fringe_widths. Don't call
14876 frame_update_line_height.
14877
14878 * macfns.c: Make (several) trivial substitutions for renamed and
14879 new macros in dispextern.h, frame.h and window.h.
14880 (x_real_positions): Set f->x_pixels_diff and f->y_pixels_diff to 0.
14881
14882 * macmenu.c: Make (few) trivial substitutions for renamed and
14883 new macros in dispextern.h, frame.h and window.h.
14884
14885 * msdos.h (struct x_output): Remove members left_pos, top_pos,
14886 and line_height, and use corresponding new members in struct
14887 frame. All uses changed.
14888 (FRAME_LINE_HEIGHT, FRAME_INTERNAL_BORDER_WIDTH): Remove macros;
14889 superseeded by corresponding macros in frame.h.
14890
14891 * msdos.c: Make (several) trivial substitutions for renamed and
14892 new macros in dispextern.h, frame.h and window.h.
14893 (IT_note_mouse_highlight): Use updated window coordinates returned
14894 by window_from_coordinates, rather than adjusting them locally.
14895 (internal_terminal_init): No need to initialize line_height here;
14896 it now defaults to 1.
14897
14898 2003-05-24 Stefan Monnier <monnier@cs.yale.edu>
14899
14900 * keyboard.c (read_key_sequence): Adjust fkey and keytran when
14901 dropping `down' events.
14902
14903 2003-05-24 Andreas Schwab <schwab@suse.de>
14904
14905 * coding.c (find_safe_codings): Fix last change.
14906
14907 2003-05-24 Istvan Marko <mi@imarko.dhs.org> (tiny change)
14908
14909 * xfns.c (x_window): Fix typo from 2003-05-21 change.
14910
14911 2003-05-23 Stefan Monnier <monnier@cs.yale.edu>
14912
14913 * xdisp.c (display_mode_element): Increase max depth.
14914 Simplify the error handling code. Use a different error string
14915 for the case where we hit the depth limit.
14916
14917 * lisp.h (Vfundamental_mode_abbrev_table): Don't declare.
14918
14919 * buffer.c (reset_buffer_local_variables): Remove redundant setting.
14920
14921 2003-05-21 Stefan Monnier <monnier@cs.yale.edu>
14922
14923 * intervals.c (get_local_map): Don't get char-property of previous
14924 point any more: get_pos_property already does it and better.
14925
14926 2003-05-21 Dave Love <fx@gnu.org>
14927
14928 [Merged from unicode branch.]
14929
14930 * xfns.c (x_window, x_window): Use use_xim.
14931
14932 * xterm.c (use_xim): Initialize.
14933 (xim_open_dpy, xim_initialize, xim_close_dpy): Use use_xim.
14934 (x_term_init): Maybe set use_xim.
14935
14936 * xterm.h (use_xim) [HAVE_X_I18N]: Declare.
14937
14938 2003-05-21 Jason Rumney <jasonr@gnu.org>
14939
14940 * unexw32.c (_start): Remove _fmode initialization.
14941
14942 * emacs.c (main) [WINDOWSNT]: Move it here.
14943
14944 2003-05-20 Dave Love <fx@gnu.org>
14945
14946 * s/gnu-linux.h (MAIL_USE_FLOCK): Make it conditional.
14947
14948 2003-05-19 Richard M. Stallman <rms@gnu.org>
14949
14950 * xfaces.c (Finternal_set_lisp_face_attribute): Handle Qunspecified
14951 as value for QCfont attribute.
14952 (realize_default_face): lface should already exist; crash if not.
14953 Specify 0 for FORCE_P when calling set_lface_from_font_name.
14954
14955 * frame.c (Fignore_event): Doc fix.
14956
14957 2003-05-19 Kenichi Handa <handa@m17n.org>
14958
14959 * coding.c (decode_coding_string): Handle post-read-conversion
14960 even if the coding doesn't require decoding.
14961
14962 2003-05-18 Richard M. Stallman <rms@gnu.org>
14963
14964 * callproc.c (Fcall_process_region): Doc fix.
14965
14966 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14967
14968 * lread.c (Fload): Print a message if package is obsolete.
14969
14970 * window.c (Fselect_window): Add optional `norecord' arg.
14971 (select_window_1): Fold into Fselect_window.
14972 (select_window_norecord): New function.
14973 (temp_output_buffer_show): Use it. Preserve current buffer.
14974
14975 * window.h (Fselect_window): Update declaration.
14976
14977 * window.c (delete_window, Fother_window, Fset_window_configuration):
14978 * minibuf.c (read_minibuf):
14979 * macterm.c (x_new_focus_frame):
14980 * frame.c (do_switch_frame, Fset_frame_selected_window, Fdelete_frame):
14981 * callint.c (Fcall_interactively):
14982 * xterm.c (x_new_focus_frame): Pass nil as new arg to Fselect_window.
14983
14984 * buffer.c (Fpop_to_buffer): Pass norecord to Fselect_window.
14985
14986 2003-05-17 David Kastrup <dak@gnu.org>
14987
14988 * process.c (read_process_output): Back out change from 2003-03-09.
14989
14990 2003-05-17 Stefan Monnier <monnier@cs.yale.edu>
14991
14992 * editfns.c (get_pos_property): Don't assume that `object' = nil.
14993
14994 * textprop.c (text_property_stickiness): New arg `buffer'.
14995
14996 * intervals.h (text_property_stickiness): New arg `buffer'.
14997 (get_pos_property): Declare.
14998
14999 * intervals.c (get_local_map): Use get_pos_property, to obey
15000 stickiness and empty overlays.
15001 (create_root_interval, graft_intervals_into_buffer): Use BEG.
15002 (merge_properties, intervals_equal, merge_properties_sticky):
15003 Use XCAR, XCDR.
15004 (adjust_for_invis_intang): Pass new arg to text_property_stickiness.
15005
15006 2003-05-17 Richard M. Stallman <rms@gnu.org>
15007
15008 * minibuf.c (read_minibuf): If buffer is empty, record the default
15009 in the history.
15010 (Fminibuffer_complete_word): When deleting the overlap, take account
15011 of its real position.
15012
15013 * fns.c (map_char_table): Fix previous change.
15014
15015 * syntax.c (find_defun_start):
15016 When open_paren_in_column_0_is_defun_start,
15017 return beginning of buffer.
15018
15019 * lisp.h (map_char_table): Declare added arg.
15020
15021 * fns.c (map_char_table): New arg TABLE gets the master table.
15022 All calls changed.
15023 Process default and inheritance, resorting to Faref if necessary.
15024
15025 * keymap.c (Fset_keymap_parent, map_keymap, Fcopy_keymap)
15026 (Faccessible_keymaps): Pass new arg to map_char_table.
15027
15028 * fontset.c (Ffontset_info): Pass new arg to map_char_table.
15029
15030 * casetab.c (set_case_table): Pass new arg to map_char_table.
15031
15032 * data.c (let_shadows_buffer_binding_p): Make target of p volatile.
15033
15034 * lisp.h (specbinding_func): New typedef.
15035 (struct specbinding): Use specbinding_func, to put the `volatile'
15036 in the right place.
15037
15038 * alloc.c (Fgarbage_collect): Cast pointers into specpdl
15039 to avoid GCC warning.
15040
15041 2003-05-16 Ralph Schleicher <rs@nunatak.allgaeu.org>
15042
15043 * fileio.c (Fdelete_file): Handle symlinks pointing to directories.
15044
15045 2003-05-15 Stefan Monnier <monnier@cs.yale.edu>
15046
15047 * keyboard.c (apply_modifiers): Don't fill the other cache.
15048
15049 2003-05-14 Stefan Monnier <monnier@cs.yale.edu>
15050
15051 * .gdbinit-union: New file, for USE_LISP_UNION_TYPE users.
15052
15053 * window.h (Qwindowp, Qwindow_live_p, Vwindow_list)
15054 (Fwindow_end, Fselected_window, Fdelete_window, Fwindow_buffer)
15055 (Fget_buffer_window, Fsave_window_excursion, Fsplit_window)
15056 (Fset_window_configuration, Fcurrent_window_configuration)
15057 (compare_window_configurations, Fcoordinates_in_window_p, Fwindow_at)
15058 (Fpos_visible_in_window_p, mark_window_cursors_off)
15059 (window_internal_height, window_internal_width, Frecenter)
15060 (Fscroll_other_window, Fset_window_start, temp_output_buffer_show)
15061 (replace_buffer_in_all_windows, init_window_once, init_window)
15062 (syms_of_window, keys_of_window): Move from lisp.h.
15063 * lisp.h: Move window.c declarations to window.h.
15064
15065 * bytecode.c: Include window.h.
15066 * emacs.c: Include window.h.
15067
15068 * keyboard.c (make_lispy_event): Apply modifiers to multibyte-char key.
15069 (keyremap): Add `parent' field.
15070 (keyremap_step): Use it. Remove `parent' argument.
15071 (read_key_sequence): Setup and use the new `parent' field.
15072
15073 2003-05-11 Stefan Monnier <monnier@cs.yale.edu>
15074
15075 * keyboard.c (adjust_point_for_property): Ensure termination.
15076
15077 2003-05-10 Stefan Monnier <monnier@cs.yale.edu>
15078
15079 * keyboard.c (follow_key): Remove dead variable `did_meta'.
15080 (access_keymap_keyremap, keyremap_step): New funs, extracted from the
15081 duplicated handling of function-key-map and key-translation-map
15082 in read_key_sequence.
15083 (read_key_sequence): Use them.
15084
15085 * keyboard.c (adjust_point_for_property): Try harder to move point
15086 to the non-sticky end of an invisible property.
15087
15088 * xdisp.c (single_display_prop_intangible_p): Make `space' display
15089 property intangible as well.
15090
15091 2003-05-10 Andreas Schwab <schwab@suse.de>
15092
15093 * xmenu.c (single_menu_item): Change last parameter to void* to
15094 avoid warning.
15095
15096 2003-05-09 Richard M. Stallman <rms@gnu.org>
15097
15098 * print.c (Fprin1_to_string): Instead of gcpro, set abort_on_gc.
15099 Bind Qinhibit_modification_hooks to t so there will be no GC.
15100 Rename local `tem' to `save_deactivate_mark'.
15101
15102 * eval.c (specpdl_ptr): Declare volatile.
15103 (unbind_to): Copy the whole binding and decrement specpdl_ptr
15104 before doing the work of unbinding it.
15105
15106 * lisp.h (struct specbinding): Declare elements volatile.
15107 (specpdl_ptr): Declare volatile.
15108
15109 * Makefile.in (alloca.o): Specify -DDO_BLOCK_INPUT in compiling.
15110
15111 * alloca.c: Test DO_BLOCK_INPUT rather than `emacs'
15112 for use of BLOCK_INPUT and inclusion of lisp.h and blockinput.h.
15113
15114 2003-05-08 Dave Love <fx@gnu.org>
15115
15116 * coding.c (Vlast_coding_system_used): Doc fix.
15117
15118 2003-05-07 Jason Rumney <jasonr@gnu.org>
15119
15120 * fileio.c (Ffile_symlink_p): Let handlers handle symlinks even
15121 when system does not support them.
15122
15123 2003-05-05 Stefan Monnier <monnier@cs.yale.edu>
15124
15125 * fileio.c (Qwrite_region_annotate_functions): New var.
15126 (build_annotations): Use it to process the global part of the hook.
15127 (syms_of_fileio): Init and staticpro it.
15128
15129 * keyboard.c (safe_run_hooks_error): Display a message instead of
15130 silently ignoring the error.
15131
15132 2003-05-03 Stefan Monnier <monnier@cs.yale.edu>
15133
15134 * keyboard.c (input_available_signal): Mark static.
15135 (menu_bar_items): Use map_keymap.
15136 (menu_bar_one_keymap): Remove.
15137 (menu_bar_item): Adjust arglist (for use in map_keymap).
15138 Properly hide a second binding when not both are keymaps.
15139
15140 * xmenu.c (struct skp): New struct, to pass args through map_keymap.
15141 (single_keymap_panes): Use it and map_keymap.
15142 (single_menu_item): Use skp as well.
15143
15144 * keymap.h (map_keymap_function_t): New type.
15145 (map_keymap): Declare.
15146
15147 * keymap.c (map_keymap_item, map_keymap_char_table_item, map_keymap)
15148 (map_keymap_call, Fmap_keymap): New functions.
15149 (syms_of_keymap): Defsubr map-keymap.
15150
15151 2003-05-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15152
15153 * gtkutil.c (create_dialog, make_widget_for_menu_item)
15154 (make_menu_item, create_menus, xg_update_menu_item): Don't call
15155 ..._with_mnemonic functions for menu items.
15156
15157 2003-05-01 Kenichi Handa <handa@m17n.org>
15158
15159 * coding.c (coding_system_accept_latin_extra_p): Delete this
15160 function.
15161 (find_safe_codings): Pay attention to
15162 the property tranlsation-table-for-encode of each codings.
15163 (syms_of_coding): Give Qtranslation_table the extra slot number 2.
15164
15165 2003-05-01 Stefan Monnier <monnier@cs.yale.edu>
15166
15167 * eval.c (Funwind_protect): Use func=Fprogn rather than symbol=Qnil.
15168
15169 2003-04-30 Stefan Monnier <monnier@cs.yale.edu>
15170
15171 * eval.c (unbind_to): Don't handle symbol = Qnil any more.
15172
15173 * lisp.h (CHECK): Wrap args in parenthesis.
15174 (specbind): Fix doc: symbol = Qnil is not supported any more.
15175
15176 * bytecode.c (Fbyte_code) <unwind-protect>:
15177 Use Fprogn rather than 0 and Qnil.
15178
15179 * keyboard.c (parse_modifiers_uncached): Parse `down', `drag',
15180 `double', and `triple' modifiers as well.
15181
15182 2003-04-30 Richard M. Stallman <rms@gnu.org>
15183
15184 * keyboard.c (echo_char): Don't clear out a dash that follows a space.
15185
15186 * alloc.c (abort_on_gc): New variable.
15187 (Fgarbage_collect): Abort if abort_on_gc is set.
15188
15189 * lisp.h (abort_on_gc): Add decl.
15190
15191 * eval.c (Fsignal): Clear abort_on_gc.
15192
15193 * editfns.c (Fformat): Set abort_on_gc during first scan of format.
15194 Reinit FORMAT_START and END before second scan.
15195
15196 * xdisp.c (move_it_vertically_backward): Do the final big else
15197 even if nlines is 0.
15198
15199 * xdisp.c (redisplay_internal): Finish the per-frame loop
15200 even if redisplay is suspended by input.
15201
15202 2003-04-24 Andrew Choi <akochoi@shaw.ca>
15203
15204 * macterm.c (x_list_fonts): Return all fonts that match if
15205 maxnames = -1.
15206
15207 2003-04-25 Kenichi Handa <handa@m17n.org>
15208
15209 * syntax.c (skip_chars): Fix previous change.
15210
15211 2003-04-24 Kenichi Handa <handa@m17n.org>
15212
15213 * syntax.c (skip_chars): Make the code faster by using the common
15214 technique of *p, *stop, and *endp.
15215
15216 2003-04-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15217
15218 * xdisp.c (update_tool_bar): BLOCK_INPUT before calling
15219 tool_bar_items so GTK tool bar expose callback does not access items
15220 being updated.
15221
15222 2003-04-19 Stefan Monnier <monnier@cs.yale.edu>
15223
15224 * eval.c (Fapply): Undo last change and add a comment about why.
15225
15226 2003-04-18 Miles Bader <miles@gnu.org>
15227
15228 * data.c (Faset): Calculate nbytes earlier, to satisfy the now
15229 pickier PARSE_MULTIBYTE_SEQ.
15230
15231 2003-04-17 Stefan Monnier <monnier@cs.yale.edu>
15232
15233 * eval.c (For, Fand, Fprogn, un_autoload, do_autoload):
15234 Use XCDR, XCAR, CONSP.
15235 (Fdefmacro): Fix docstring. Use XCAR, XCDR.
15236 (Fapply): Remove unnecessary GCPRO.
15237
15238 * doc.c (Fsubstitute_command_keys): Remove spurious casts.
15239
15240 * charset.h (PARSE_MULTIBYTE_SEQ): Pretend `length' is used.
15241
15242 * buffer.h: Don't hardcode BEG==1.
15243
15244 * abbrev.c (Fdefine_abbrev_table): Use XCAR, XCDR.
15245
15246 2003-04-16 Richard M. Stallman <rms@gnu.org>
15247
15248 * xdisp.c (try_window, try_window_reusing_current_matrix):
15249 When at end of window, set window_end_pos to Z-ZV.
15250
15251 * buffer.c (Foverlay_recenter): Doc fix.
15252
15253 2003-04-14 Stefan Monnier <monnier@cs.yale.edu>
15254
15255 * dispnew.c (Fsit_For): Support XEmacs-style arg list.
15256
15257 2003-04-14 Andrew Choi <akochoi@shaw.ca>
15258
15259 * macterm.c (mac_check_for_quit_char): Don't check more often than
15260 once a second.
15261
15262 2003-04-11 Stefan Monnier <monnier@cs.yale.edu>
15263
15264 * keyboard.c (kbd_buffer_get_event): Don't handle SELECT_WINDOW_EVENT
15265 specially, so that they can't hide an implicit switch-frame event.
15266 (make_lispy_event): Handle SELECT_WINDOW_EVENT.
15267 (head_table): Use switch-frame as event_kind for select-window.
15268 (keys_of_keyboard): Don't bind [select-window] in special-event-map.
15269
15270 * editfns.c (Fformat): Lisp_Object/int mixup.
15271 (format2): Remove unused var numargs.
15272
15273 2003-04-11 Kenichi Handa <handa@m17n.org>
15274
15275 * fileio.c (Vafter_insert_file_adjust_coding_function): Delete.
15276 (Qafter_insert_file_set_coding): New variable.
15277 (syms_of_fileio): Initialize and staticpro it. Delete declaration
15278 for after-insert-file-adjust-coding-function.
15279 (Finsert_file_contents): Call Qafter_insert_file_set_coding
15280 instead of Vafter_insert_file_adjust_coding_function.
15281
15282 2003-04-11 Kenichi Handa <handa@m17n.org>
15283
15284 * lisp.h (temp_echo_area_glyphs): Adjust prototype.
15285
15286 * minibuf.c (temp_echo_area_glyphs): Change the arg to Lisp
15287 string. Callers changed.
15288
15289 2003-04-10 Kenichi Handa <handa@m17n.org>
15290
15291 * fileio.c (Vafter_insert_file_adjust_coding_function): New variable.
15292 (syms_of_fileio): Declare it as a lisp variable.
15293 (Finsert_file_contents):
15294 Call Vafter_insert_file_adjust_coding_function before calling
15295 decode-format.
15296
15297 2003-04-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15298
15299 * xterm.c (xg_scroll_callback): Call gtk_range_get_adjustment to
15300 get GtkAdjustment as widget now is a GtkRange.
15301
15302 * gtkutil.c (xg_create_scroll_bar): Connect to value-changed on
15303 GtkRange to avoid memory leak.
15304
15305 2003-04-09 Kenichi Handa <handa@m17n.org>
15306
15307 * xfaces.c (Vface_font_rescale_alist): New variable.
15308 (struct font_name): New member rescale_ratio.
15309 (font_rescale_ratio): New function.
15310 (split_font_name): If NUMERIC_P is nonzero, set font->rescale_ratio.
15311 (better_font_p): On comparing point sized, pay attention to
15312 recale_ratio member of fonts.
15313 (build_scalable_font_name): Reflect font->rescale_ratio in the
15314 font name.
15315 (syms_of_xfaces): Declare Vface_font_rescale_alist as a Lisp variable.
15316
15317 * lread.c (read1): Before calling index, check if the 2nd
15318 arguemnt is in ASCII range.
15319
15320 2003-04-08 Richard M. Stallman <rms@gnu.org>
15321
15322 * fileio.c (Ffile_symlink_p): Doc fix.
15323
15324 * editfns.c (Fformat): Translate positions of text properties
15325 in the format string to apply them to the result.
15326
15327 * fileio.c (Finsert_file_contents): Doc fix.
15328 (syms_of_fileio) <after-insert-file-functions>: Doc fix.
15329
15330 2003-04-08 Ivan Zakharyaschev <imz@altlinux.org> (tiny change)
15331
15332 * lread.c (openp): Get the Qfile_exists_p handler for STRING, not FN.
15333
15334 2003-04-08 Steven Tamm <steventamm@mac.com>
15335
15336 * mac.c (init_mac_osx_environment): Switch libexec and bin so
15337 that self-contained application finds libexec files.
15338
15339 2003-04-08 Kenichi Handa <handa@m17n.org>
15340
15341 * coding.c (code_convert_region_unwind):
15342 Set Vlast_coding_system_used to the argument.
15343 (code_convert_region): If post-read-conversion function changed
15344 the value of last-coding-sytem, keep the new value in
15345 coding->symbol so that it won't be overridden.
15346 (run_pre_post_conversion_on_str): Likewise.
15347 (coding_system_accept_latin_extra_p): New function.
15348 (find_safe_codings): Pay attention to characters registered in
15349 latin-extra-code-table.
15350
15351 2003-04-07 Thien-Thi Nguyen <ttn@gnu.org>
15352
15353 * Makefile.in (md5.o): Add missing dependency info.
15354
15355 2003-04-06 Richard M. Stallman <rms@gnu.org>
15356
15357 * xselect.c (x_handle_selection_request): Move UNGCPRO to very end.
15358
15359 * marker.c (verify_bytepos): New function.
15360
15361 * intervals.c (set_intervals_multibyte_1): When becoming
15362 multibyte, adjust right and left child sizes to a whole set of
15363 characters. If an interval gets zero total-length, delete it.
15364 If an interval consists of just its children, delete one of them.
15365
15366 * intervals.h (CHECK_TOTAL_LENGTH): New macro.
15367 * intervals.c: Add many calls to CHECK_TOTAL_LENGTH.
15368
15369 * alloc.c (VALIDATE_LISP_STORAGE): Macro deleted.
15370 All calls deleted.
15371 (lisp_malloc): Do the work here directly.
15372
15373 2003-04-06 Gareth Jones <emacs@referential.org.uk> (tiny change)
15374
15375 * fns.c (Flength): Return SUB_CHAR_TABLE_ORDINARY_SLOTS for sub
15376 char tables.
15377
15378 2003-04-04 Kenichi Handa <handa@m17n.org>
15379
15380 * editfns.c (Fformat): Use a copy of FORMAT string so that we can
15381 destructively change "%S" to "%s".
15382
15383 2003-04-03 Miles Bader <miles@gnu.org>
15384
15385 * xfaces.c (choose_face_font): Make sure *NEEDS_OVERSTRIKE is
15386 always set.
15387
15388 2003-04-01 Dave Love <fx@gnu.org>
15389
15390 * xfns.c (xpm_lookup_color): Grok "opaque".
15391
15392 2003-03-31 Andrew Choi <akochoi@shaw.ca>
15393
15394 * frame.c (x_report_frame_params) [HAVE_CARBON]: Do not report
15395 parent window ID.
15396
15397 * macfns.c (syms_of_macfns): Remove call to init_x_parm_symbols.
15398
15399 * macterm.h (struct mac_output): Define x_pixels_diff and
15400 y_pixels_diff.
15401
15402 2003-03-31 Juanma Barranquero <lektu@terra.es>
15403
15404 * makefile.w32-in ($(BLD)/frame.$(O)): Add dependency on
15405 blockinput.h and files included from it.
15406
15407 2003-03-31 Kim F. Storm <storm@cua.dk>
15408
15409 The following changes consolidates the common code related to
15410 frame-parameter handling from the xfns.c, w32fns.c, and macfns.c
15411 files into frame.c.
15412
15413 * frame.c: Include blockinput.h.
15414 (Vx_resource_name, Vx_resource_class, Qx_frame_parameter)
15415 (Qx_resource_name, Qface_set_after_frame_default): Define vars here.
15416 (Qauto_raise, Qauto_lower, ...): Define all frame parameter
15417 related vars here.
15418 (struct frame_parm_table, frame_parms): New table for describing
15419 frame parameters and their associated Q-variable.
15420 The order of the parameters corresponds to the sequence of the
15421 frame_parm_handlers table in redisplay_interface.
15422 (x_fullscreen_move, x_set_frame_parameters)
15423 (x_report_frame_params, x_set_fullscreen, x_set_line_spacing)
15424 (x_set_screen_gamma, x_set_font, x_set_fringe_width)
15425 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15426 (x_set_autoraise, x_set_autolower, x_set_unsplittable)
15427 (x_set_vertical_scroll_bars, x_set_scroll_bar_width, x_icon_type):
15428 Generic functions for processing of frame parameters.
15429 (validate_x_resource_name, xrdb_get_resource, Fx_get_resource)
15430 (display_x_get_resource, x_get_resource_string): Functions for
15431 generic access to X resources.
15432 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
15433 (x_default_parameter, Fx_parse_geometry): Functions for generic
15434 access to frame parameters.
15435 (x_figure_window_size): Generic calculation of frame size.
15436 Fixed to add space needed for tool bar. Also setup size_hint_flags.
15437 (syms_of_frame): Intern and staticpro frame parameter variables.
15438 Defvar_lisp Vx_resource_class and Vx_resource_name here.
15439 Defsubr Sx_get_resource and Sx_parse_geometry.
15440
15441 * frame.h (Qauto_raise, Qauto_lower, ...): Declare extern all frame
15442 parameter related vars defined in frame.c.
15443 (EMACS_CLASS): Define here.
15444 (enum FULLSCREEN_*): Define here.
15445 (x_set_scroll_bar_default_width, x_wm_set_icon_position)
15446 (x_set_offset, x_new_font, x_new_fontset): Add prototypes.
15447 (x_fullscreen_adjust, x_set_frame_parameters, x_report_frame_params)
15448 (x_set_fullscreen, x_set_line_spacing, x_set_screen_gamma, x_set_font)
15449 (x_set_fringe_width, x_set_border_width, x_set_internal_border_width)
15450 (x_set_visibility, x_set_autoraise, x_set_autolower)
15451 (x_set_unsplittable, x_set_vertical_scroll_bars)
15452 (x_set_scroll_bar_width, x_icon_type, validate_x_resource_name)
15453 (x_figure_window_size): Add prototypes.
15454
15455 * dispextern.h (frame_parm_handler): New typedef.
15456 (struct redisplay_interface): New member frame_parm_handlers.
15457 (enum resource_types): Move declaration here.
15458 (x_get_arg, x_frame_get_arg, x_frame_get_and_record_arg)
15459 (x_default_parameter): Add prototypes.
15460
15461 * window.c: Remove extern decl for frame parameter vars.
15462 (change_window_heights): New generic function;
15463 replaces x_change_window_heights. All users changed.
15464
15465 * window.h (change_window_heights): Add prototype.
15466
15467 * xfaces.c: Remove extern decl for frame parameter vars.
15468
15469 * xterm.h (EMACS_CLASS): Remove. Use generic define.
15470 (struct w32_display_info): Fix type of xrdb member.
15471 (enum FULLSCREEN_*): Remove.
15472 Remove prototypes for generic functions (in frame.h).
15473
15474 * xfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15475 parameters now defined in frame.h and frame.c.
15476 (Vx_resource_name): Remove. Use generic var.
15477 (enum x_frame_parms): Remove (bogus, unused enum).
15478 (check_x_display_info): Make non-static (for frame.c).
15479 (struct x_frame_parm_table, x_frame_parms): Remove.
15480 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15481 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15482 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15483 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15484 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15485 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15486 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15487 Remove. Use generic functions instead.
15488 (enum resource_types): Remove.
15489 (x_set_scroll_bar_default_width): New global function (for frame.c).
15490 (Fx_create_frame): Depend on x_figure_window_size to add space for
15491 toolbar and setup size_hint_flags.
15492 (x_frame_parm_handlers): New table for redisplay_interface.
15493 (syms_of_xfns): Don't intern/staticpro removed vars.
15494
15495 * xterm.c: Remove unnecessary extern declarations.
15496 (x_fullscreen_adjust): Remove. Use generic instead.
15497 (x_redisplay_interface): Add x_frame_parm_handlers member.
15498
15499 * w32gui.h (XrmDatabase): New (dummy) typedef.
15500
15501 * w32term.h (EMACS_CLASS): Remove. Use generic define.
15502 (struct w32_display_info): Fix type of xrdb member.
15503 (enum FULLSCREEN_*): Remove.
15504 (x_fullscreen_adjust): Remove prototype.
15505
15506 * w32fns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15507 parameters now defined in frame.h and frame.c.
15508 (Vx_resource_name): Remove. Use generic var.
15509 (enum x_frame_parms): Remove (bogus, unused enum).
15510 (check_x_display_info): Make non-static (for frame.c).
15511 (struct x_frame_parm_table, x_frame_parms): Remove.
15512 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15513 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15514 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15515 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15516 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15517 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15518 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15519 Remove. Use generic functions instead.
15520 (enum resource_types): Remove.
15521 (x_set_scroll_bar_default_width): New global function (for frame.c).
15522 (Fx_create_frame): Depend on x_figure_window_size to add space for
15523 toolbar and setup size_hint_flags.
15524 (w32_frame_parm_handlers): New table for redisplay_interface.
15525 (syms_of_w32fns): Don't intern/staticpro removed vars.
15526
15527 * w32term.c: Remove unnecessary extern declarations.
15528 (x_fullscreen_adjust): Remove. Use generic instead.
15529 (x_redisplay_interface): Add w32_frame_parm_handlers member.
15530
15531 * w32reg.c (x_get_string_resource): Use XrmDatabase.
15532
15533 * macgui.h (XrmDatabase): New (dummy) typedef.
15534
15535 * macterm.h (EMACS_CLASS): Remove.
15536 (struct mac_display_info): Add xrdb member.
15537 (struct mac_output): Add want_fullscreen member.
15538
15539 * macfns.c (Qauto_raise, Qauto_lower, ...): Remove vars for frame
15540 parameters now defined in frame.h and frame.c.
15541 (Vx_resource_name): Remove. Use generic var.
15542 (check_x_display_info): Make non-static (for frame.c).
15543 (struct x_frame_parm_table, x_frame_parms): Remove.
15544 (init_x_parm_symbols, x_set_frame_parameters, x_report_frame_params)
15545 (x_set_line_spacing, x_set_screen_gamma, x_icon_type, x_set_font)
15546 (x_set_border_width, x_set_internal_border_width, x_set_visibility)
15547 (x_change_window_heights, x_set_autoraise, x_set_autolower)
15548 (x_set_vertical_scroll_bars, x_set_scroll_bar_width)
15549 (validate_x_resource_name, Fx_get_resource, x_get_resource_string)
15550 (x_default_parameter, Fx_parse_geometry, x_figure_window_size):
15551 Remove. Use generic functions instead.
15552 (enum resource_types): Remove.
15553 (x_set_scroll_bar_default_width): New global function (for frame.c).
15554 (mac_frame_parm_handlers): New table for redisplay_interface.
15555 (syms_of_macfns): Don't intern/staticpro removed vars.
15556
15557 * macterm.c: Remove unnecessary extern declarations.
15558 (x_redisplay_interface): Add mac_frame_parm_handlers member.
15559
15560 * Makefile.in (frame.o): Add dependency on blockinput.h and files
15561 included from it (atimer.h and systime.h).
15562
15563 2003-03-30 Andreas Schwab <schwab@suse.de>
15564
15565 * xdisp.c (x_insert_glyphs): Fix swapped width and height
15566 parameters for shift_glyphs_for_insert.
15567
15568 * macterm.c (x_redisplay_interface): Add missing entry for
15569 draw_vertical_window_border.
15570
15571 2003-03-29 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@gmx.net>
15572
15573 * fileio.c (Fexpand_file_name): In the no-handler case, after
15574 expanding, look again for a handler and invoke it. This is needed
15575 for filenames like "/foo/../user@host:/bar/../baz" -- the first
15576 expansion produces "/user@host:/bar/../baz" which needs to be
15577 expanded again for the finame result "/user@host:/baz".
15578
15579 2003-03-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15580
15581 * gtkutil.c (xg_tool_bar_item_expose_callback): Reduce size
15582 of area to be redrawn for better performance.
15583
15584 2003-03-28 Stefan Monnier <monnier@cs.yale.edu>
15585
15586 * xterm.c (take_vertical_position_into_account): Remove.
15587 (xt_action_hook): Call set_vertical_scroll_bar if needed.
15588 (XM_SB_MIN, XM_SB_RANGE): Remove (min is now set to 0).
15589 (xm_scroll_callback, x_create_toolkit_scroll_bar)
15590 (x_set_toolkit_scroll_bar_thumb): Simplify.
15591 (x_scroll_bar_expose): Only compile if !USE_TOOLKIT_SCROLL_BARS.
15592 (XTread_socket): Remove unused var.
15593 (x_make_frame_invisible): Replace goto with else.
15594
15595 * xdisp.c (set_vertical_scroll_bar): New fun.
15596 (redisplay_window): Use it.
15597
15598 2003-03-26 Richard M. Stallman <rms@gnu.org>
15599
15600 * xdisp.c (update_tool_bar): Recompute tool bar if
15601 update_mode_lines is set. Set w->update_mode_line
15602 only if the tool bar contents actually change.
15603 (update_menu_bar): Undo previous change.
15604
15605 2003-03-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15606
15607 * gtkutil.c (xg_resize_widgets): Don't call xg_frame_cleared.
15608 (xg_frame_set_char_size): Calculate scroll bar width before frame
15609 width. Call SET_FRAME_GARBAGED and cancel_mouse_face.
15610 (xg_separator_p): Check for all documented separator types.
15611 (xg_update_scrollbar_pos): Variable gheight not needed, use height.
15612 (update_frame_tool_bar): Don't call gdk_window_process_all_updates.
15613
15614 * xdisp.c (update_menu_bar): Set w->update_mode_line to Qt
15615 so tool bar gets updated.
15616
15617 2003-03-26 Stefan Monnier <monnier@cs.yale.edu>
15618
15619 * data.c (store_symval_forwarding): Re-instate part of the code
15620 that was deleted with too much enthusiasm.
15621
15622 2003-03-25 Stefan Monnier <monnier@cs.yale.edu>
15623
15624 * data.c (store_symval_forwarding): Delete special read-only
15625 hack for type == -1, since we now use ->constant instead.
15626 (Fkill_local_variable): Don't use XBUFFER if it can be nil.
15627
15628 * buffer.c (overlays_in): Declare static.
15629 (syms_of_buffer) <enable-multibyte-characters>: Use the symbol's
15630 `constant' field rather than the variable's `type' field.
15631
15632 2003-03-24 Andrew Choi <akochoi@shaw.ca>
15633
15634 * config.in [MAC_OSX]: Do not redefine bcopy, bzero, and bcmp.
15635
15636 * dispextern.h [HAVE_CARBON]: Include Carbon.h.
15637
15638 * fns.c [MAC_OSX]: Do not redefine vector.
15639
15640 * keyboard.c [MAC_OSX]: Handle SIGINT with interrupt_signal.
15641
15642 * macgui.h: Remove definition of No_Cursor.
15643
15644 * macterm.h: Include Carbon.h. Replace (struct Cursor *) by Cursor.
15645
15646 * xdisp.c: Define No_Cursor.
15647 (x_write_glyphs, notice_overwritten_cursor)
15648 (draw_phys_cursor_glyph, note_mode_line_or_margin_highlight)
15649 (note_mouse_highlight): Remove Mac-specific code.
15650 (note_mouse_highlight): Use bcmp instead of == to compare Cursors.
15651
15652 2003-03-24 John Paul Wallington <jpw@gnu.org>
15653
15654 * xdisp.c (redisplay_window): If mini window's buffer is not
15655 empty, then redisplay it like other windows.
15656
15657 2003-03-23 Kim F. Storm <storm@cua.dk>
15658
15659 * w32term.c (w32_draw_window_cursor): Fix last change.
15660
15661 2003-03-23 Kenichi Handa <handa@m17n.org>
15662
15663 * alloc.c (make_string_from_bytes, make_specified_string):
15664 Add `const' for the arg CONTENTS.
15665
15666 * lisp.h (make_string_from_bytes, make_specified_string):
15667 Prototypes adjusted.
15668
15669 2003-03-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15670
15671 * xdisp.c (get_glyph_string_clip_rect): Remove ; at end of #endif
15672
15673 * gtkutil.h: Take two more arguments to xg_update_scrollbar_pos.
15674 (XG_SB_RANGE): New define.
15675
15676 * gtkutil.c (xg_fixed_handle_expose): New function.
15677 (xg_create_frame_widgets): Call xg_fixed_handle_expose for
15678 expose events.
15679 (xg_update_scrollbar_pos): Take two more arguments, left and width
15680 of scroll bar including borders.
15681 Clear left and right part outside scroll bar separately as some
15682 themes have bars that are not an even number of pixels.
15683 Don't set reallocate_redraws, don't call
15684 gdk_window_process_all_updates.
15685 (xg_set_toolkit_scroll_bar_thumb): Upper value is fixed,
15686 so no need to change it. Calculate size and value with XG_SB_RANGE.
15687
15688 * xterm.c (x_scroll_bar_create, XTset_vertical_scroll_bar):
15689 Pass left and width of scroll bar including borders to
15690 xg_update_scrollbar_pos.
15691
15692 2003-03-22 Thien-Thi Nguyen <ttn@gnu.org>
15693
15694 * Makefile.in: Make sure space precedes end-of-line backslashes.
15695
15696 2003-03-22 Kim F. Storm <storm@cua.dk>
15697
15698 * xdisp.c (pixel_to_glyph_coords, glyph_to_pixel_coords):
15699 Add generic versions here. Remove system specific versions
15700 defined elsewhere.
15701
15702 * dispextern.h (pixel_to_glyph_coords, glyph_to_pixel_coords):
15703 Add prototypes.
15704
15705 * xterm.h (STORE_NATIVE_RECT): New macro.
15706
15707 2003-03-21 Kim F. Storm <storm@cua.dk>
15708
15709 * xdisp.c (get_glyph_string_clip_rect):
15710 Use FRAME_INTERNAL_BORDER_WIDTH.
15711
15712 * dispextern.h (struct redisplay_interface): Add active_p
15713 argument to draw_window_cursor member. All uses changed.
15714
15715 2003-03-21 Kim F. Storm <storm@cua.dk>
15716
15717 The following changes consolidate code related to writing and
15718 inserting glyphs, exposing frame, the tool bar, the mouse face,
15719 the output cursor, and help echo from xterm.c, w32term.c and
15720 macterm.c into xdisp.c. It also generalizes the use of the
15721 window_part enum instead of using numeric values throughout.
15722
15723 * xdisp.c: Consolidate gui-independent code here.
15724 Include keymap.h.
15725 (Qhelp_echo): Import.
15726 (mouse_autoselect_window, x_stretch_cursor_p): Declare here.
15727 (help_echo_string, help_echo_window, help_echo_object)
15728 (previous_help_echo_string, help_echo_pos): Declare here.
15729 (output_cursor, last_mouse_frame, last_tool_bar_item): Declare here.
15730 (estimate_mode_line_height): Define here. Handle windowing
15731 systems directly (without using estimate_mode_line_height_hook).
15732 (x_y_to_hpos_vpos, get_tool_bar_item, note_tool_bar_highlight):
15733 (update_window_cursor, update_cursor_in_window_tree)
15734 (fast_find_position, fast_find_string_pos)
15735 (note_mode_line_highlight, note_mode_line_or_margin_highlight)
15736 (expose_area, expose_line, expose_overlaps, expose_window)
15737 (expose_window_tree, phys_cursor_in_rect_p): New generic versions;
15738 declared static as they are only used locally in xdisp.c.
15739 (draw_glyphs): Rename from x_draw_glyphs and make static.
15740 (tool_bar_item_info, notice_overwritten_cursor): Make static.
15741 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15742 (set_output_cursor, x_cursor_to, handle_tool_bar_click)
15743 (x_write_glyphs, x_insert_glyphs, x_clear_end_of_line):
15744 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15745 (display_and_set_cursor, x_update_cursor, x_clear_cursor)
15746 (show_mouse_face, clear_mouse_face, cursor_in_mouse_face_p)
15747 (note_mouse_highlight, x_clear_window_mouse_face)
15748 (cancel_mouse_face, x_draw_vertical_border, expose_frame)
15749 (x_intersect_rectangles): New generic functions for use by xdisp.c
15750 and GUI front-ends.
15751 (syms_of_xdisp): Initialize and staticpro help_echo* variables.
15752 Defvar_bool "x-streach-cursor" and "mouse-autoselect-window" here.
15753
15754 * dispextern.h (Display_Info): Generic typedef for *_display_info.
15755 (NativeRectangle): Generic typedef for rectangle type.
15756 (enum window_part): Move here from window.c.
15757 (struct redisplay_interface): New members flush_display_optional,
15758 define_frame_cursor, clear_frame_area, draw_window_cursor,
15759 draw_vertical_window_border, shift_glyphs_for_insert.
15760 Rename member clear_mouse_face to clear_window_mouse_face.
15761 (estimate_mode_line_height_hook): Remove hook.
15762 (auto_raise_tool_bar_buttons_p): Don't declare extern.
15763 (tool_bar_item_info): Remove prototype.
15764 (help_echo_string, help_echo_window, help_echo_object)
15765 (previous_help_echo_string, help_echo_pos)
15766 (last_mouse_frame, last_tool_bar_item, mouse_autoselect_window):
15767 (x_stretch_cursor_p, output_cursor): Declare extern.
15768 (x_draw_glyphs, notice_overwritten_cursor): Remove prototypes.
15769 (x_write_glyphs), x_insert_glyphs, x_clear_end_of_line)
15770 (x_fix_overlapping_area, draw_phys_cursor_glyph, erase_phys_cursor)
15771 (display_and_set_cursor, set_output_cursor, x_cursor_to)
15772 (x_update_cursor, x_clear_cursor, x_draw_vertical_border)
15773 (frame_to_window_pixel_xy, get_glyph_string_clip_rect)
15774 (note_mouse_highlight, x_clear_window_mouse_face, cancel_mouse_face)
15775 (handle_tool_bar_click, clear_mouse_face, show_mouse_face)
15776 (cursor_in_mouse_face_p, expose_frame, x_intersect_rectangles):
15777 Add prototypes.
15778 (mode_line_string, marginal_area_string): Fix prototypes.
15779
15780 * window.c (enum window_part): Move to dispextern.h.
15781 (coordinates_in_window): Use enum window_part member names
15782 instead of numbers to describe return value.
15783 (struct check_window_data): Change part member to window_part.
15784 (check_window_containing): Return window_part unaltered.
15785 (window_from_coordinates): Change part arg from int to enum
15786 window_part. Allow part arg to be null. All users changed.
15787
15788 * window.h (window_from_coordinates): Fix prototype.
15789
15790 * term.c (estimate_mode_line_height): Move to xdisp.c.
15791
15792 * keyboard.c (make_lispy_event): Use enum window_part.
15793
15794 * dispnew.c (mode_line_string, marginal_area_string): Use enum
15795 window_part instead of int in arg list. Users changed.
15796
15797 * xterm.h (No_Cursor): Declare as None for X.
15798 (struct mac_output): Replace member cross_cursor by hand_cursor.
15799
15800 * xterm.c: Remove consolidated defines and code.
15801 (BETWEEN): Remove unused macro.
15802 (x_draw_vertical_window_border, x_shift_glyphs_for_insert)
15803 (x_define_frame_cursor, x_clear_frame_area)
15804 (x_draw_window_cursor): New X-specific functions for RIF.
15805 (x_redisplay_interface): Add new members.
15806
15807 * xfns.c: Setup and use hand_cursor instead of cross_cursor.
15808
15809 * w32term.h (struct w32_output): Remove cross_cursor member.
15810
15811 * w32term.c: Remove consolidated defines and code.
15812 (BETWEEN): Remove unused macro.
15813 (w32_draw_vertical_window_border, w32_shift_glyphs_for_insert)
15814 (w32_define_frame_cursor, w32_clear_frame_area)
15815 (w32_draw_window_cursor): New W32-specific functions for RIF.
15816 (w32_redisplay_interface): Add new members.
15817
15818 * w32gui.h (No_Cursor): Define as 0 for W32.
15819 (XRectangle): Add X compatible rectangle type.
15820 (NativeRectangle): Declare as RECT for W32.
15821 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15822
15823 * w32fns.c: Remove setup of cross_cursor (already has hand_cursor).
15824
15825 * w32console.c: Remove consolidated defines and code.
15826
15827 * msdos.h (Display_Info): Add generic typedef.
15828
15829 * msdos.c: Remove consolidated defines and code.
15830 (IT_note_mouse_highlight, dos_rawgetc): Use enum window_part.
15831
15832 * macterm.h (struct mac_output): Replace member cross_cursor by
15833 hand_cursor.
15834 (activate_scroll_bars, deactivate_scroll_bars): Add prototypes.
15835
15836 * macterm.c: Remove consolidated defines and code.
15837 (BETWEEN): Remove unused macro.
15838 (mac_draw_vertical_window_border, mac_shift_glyphs_for_insert)
15839 (mac_define_frame_cursor, mac_clear_frame_area)
15840 (mac_draw_window_cursor): New Mac-specific functions for RIF.
15841 (x_redisplay_interface): Add new members.
15842
15843 * macgui.h (No_Cursor): Define as 0 for Mac.
15844 (XRectangle): Add X compatible rectangle type.
15845 (NativeRectangle): Declare as Rect for Mac.
15846 (CONVERT_TO_XRECT, CONVERT_FROM_XRECT, STORE_NATIVE_RECT): New macros.
15847
15848 * macfns.c (x_set_mouse_color): Setup hand_cursor.
15849 (x_set_cursor_color): Use x_display_and_set_cursor.
15850
15851 * Makefile.in (xdisp.o): Add dependency on blockinput.h and files
15852 included from it. Add dependency on keymap.h.
15853
15854 * makefile.w32-in (xdisp.o): Add dependency on keymap.h.
15855
15856 2003-03-21 Kenichi Handa <handa@m17n.org>
15857
15858 * fileio.c (Fexpand_file_name): Fix previous change.
15859
15860 2003-03-19 Kenichi Handa <handa@m17n.org>
15861
15862 * fileio.c (Ffile_name_directory): Reconstruct file name by
15863 make_specified_string.
15864 (Ffile_name_nondirectory, Ffile_name_as_directory)
15865 (Fdirectory_file_name, Fexpand_file_name)
15866 (Fsubstitute_in_file_name): Likewise.
15867 (Fread_file_name): Compare decoded homedir with DIR and
15868 DEFAULT_FILENAME.
15869
15870 * alloc.c (make_specified_string): If NCHARS is negative, count
15871 the number of characters.
15872
15873 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15874
15875 * gtkutil.c (xg_frame_cleared): Call gtk_widget_queue_draw for
15876 all widgets.
15877
15878 * gtkutil.h: Removed xg_ignore_next_thumb.
15879
15880 2003-03-18 Kenichi Handa <handa@m17n.org>
15881
15882 * coding.c (Vchar_coding_system_table): Remove this variable.
15883 (Vcoding_system_safe_chars): New variable.
15884 (intersection): Remove this function.
15885 (find_safe_codings): Don't use Vchar_coding_system_table, but try
15886 all codings in SAFE_CODINGS.
15887 (Ffind_coding_systems_region_internal): Adjust for the change of
15888 find_safe_codings. Get generic coding systems from
15889 Vcoding_system_safe_chars.
15890 (Fdefine_coding_system_internal): New function.
15891 (syms_of_coding): Defsubr Sdefine_coding_system_internal.
15892 Initialize and staticpro Vcoding_system_safe_chars.
15893
15894 2003-03-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15895
15896 * gtkutil.c (xg_set_toolkit_scroll_bar_thumb): Check if new values
15897 equal old values before updating.
15898
15899 * xterm.c (xg_scroll_callback): Remove xg_ignore_next_thumb.
15900
15901 * gtkutil.c (xg_initialize): Remove xg_ignore_next_thumb.
15902
15903 2003-03-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
15904
15905 * gtkutil.c: Removed handle_fixed_child, struct xg_last_sb_pos.
15906 (xg_resize_widgets): Don't call foreach(handle_fixed_child).
15907 (xg_gtk_scroll_destroy): Remove free of struct xg_last_sb_pos.
15908 (scroll_bar_button_cb): Set bar->dragging to NIL on button release.
15909 (xg_create_scroll_bar): Pass bar to button event callback.
15910 (xg_find_top_left_in_fixed): New function.
15911 (xg_update_scrollbar_pos): Don't call gdk_window_clear on
15912 whole scroll bar area. Get old position with
15913 xg_find_top_left_in_fixed, calculate and only clear needed areas.
15914 (xg_set_toolkit_scroll_bar_thumb): Do not adjust scroll bar if
15915 dragging is in progress. Calculate whole as for Motif.
15916 Remove code that saved last values. Call gtk_range functions to
15917 set scroll bar sizes.
15918
15919 * gtkutil.h: Removed xg_ignore_next_thumb.
15920
15921 2003-03-17 Juanma Barranquero <lektu@terra.es>
15922
15923 * makefile.w32-in ($(BLD)/xdisp.$(O)): Add dependency on blockinput.h
15924 and files included from it.
15925
15926 2003-03-18 Stefan Monnier <monnier@cs.yale.edu>
15927
15928 * keymap.c (accessible_keymaps_1): Break cycles but without preventing
15929 multiple occurrences of the same keymap under different prefixes.
15930 (Faccessible_keymaps): Remove code redundant since 1994-08-03T07:39:00Z!rms@gnu.org.
15931
15932 2003-03-16 Jason Rumney <jasonr@gnu.org>
15933
15934 * w32gui.h: Use HDC for Display.
15935
15936 * w32term.c (w32_encode_char): Prevent double-byte chars from
15937 crashing Emacs.
15938
15939 * w32fns.c (jpeg_load, png_load, slurp_file): Read image files
15940 as binary.
15941
15942 2003-03-16 Juanma Barranquero <lektu@terra.es>
15943
15944 * xdisp.c (x_produce_glyphs): Use FRAME_BASELINE_OFFSET.
15945
15946 2003-03-16 Kim F. Storm <storm@cua.dk>
15947
15948 The following changes consolidate some of the gui-independent
15949 parts of the processing and drawing of "glyph strings" from
15950 xterm.c, w32term.c, and macterm.c into xdisp.c.
15951
15952 * dispextern.h (struct glyph): Reduce face_id member from 22 to
15953 21 bits (this reduces number of faces from 4M to 2M).
15954 Replace W32 specific w32_font_type member (2 bits) by generic
15955 font_type member (3 bits) for portability.
15956 (FONT_TYPE_UNKNOWN): New define, default for font_type member.
15957 (enum draw_glyphs_face): Define here.
15958 (struct glyph_string): Define here. Merge W32 and X versions.
15959 (struct redisplay_interface): New members per_char_metric,
15960 encode_char, compute_glyph_string_overhangs, draw_glyph_string.
15961 (VCENTER_BASELINE_OFFSET): Define here.
15962 (dump_glyph_string, x_get_glyph_overhangs, x_produce_glyphs)
15963 (x_draw_glyphs, notice_overwritten_cursor): Declare prototypes here.
15964
15965 * xdisp.c: Consolidate gui-independent "glyph string" code here.
15966 (dump_glyph_string): Moved here.
15967 (init_glyph_string, append_glyph_string_lists, append_glyph_string)
15968 (prepend_glyph_string_lists, get_glyph_face_and_encoding)
15969 (fill_composite_glyph_string, fill_glyph_string)
15970 (fill_image_glyph_string, fill_stretch_glyph_string)
15971 (left_overwritten, left_overwriting, right_overwritten)
15972 (right_overwriting, get_char_face_and_encoding)
15973 (set_glyph_string_background_width, compute_overhangs_and_x)
15974 (append_glyph, append_composite_glyph, produce_image_glyph)
15975 (take_vertical_position_into_account, append_stretch_glyph)
15976 (produce_stretch_glyph): New generic functions (based on X version).
15977 Call platform specific functions through rif.
15978 (INIT_GLYPH_STRING): New macro, hides W32 details.
15979 (BUILD_STRETCH_GLYPH_STRING, BUILD_IMAGE_GLYPH_STRING)
15980 (BUILD_CHAR_GLYPH_STRINGS, BUILD_COMPOSITE_GLYPH_STRING)
15981 (BUILD_GLYPH_STRINGS): Generic macros (based on X version).
15982 (x_draw_glyphs, x_get_glyph_overhangs, x_produce_glyphs)
15983 (notice_overwritten_cursor):
15984 Generic functions exported to platform modules. Users changed.
15985
15986 * xterm.h (FONT_DESCENT, FRAME_X_OUTPUT, FRAME_BASELINE_OFFSET)
15987 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE)
15988 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2):
15989 New macros for consolidated code.
15990
15991 * xterm.c: Remove consolidated defines and code.
15992 (x_per_char_metric, x_encode_char)
15993 (x_compute_glyph_string_overhangs): Adapt to RIF requirements.
15994 (x_redisplay_interface): Add new members.
15995
15996 * w32gui.h (Display): Add dummy typedef for consolidation.
15997 (XChar2b): Define alias for wchar_t for consolidation.
15998 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
15999
16000 * w32term.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY)
16001 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE):
16002 New macros for consolidation.
16003
16004 * w32term.c: Remove consolidated defines and code.
16005 (BUILD_WCHAR_T, BYTE1, BYTE2): Macros removed; callers changed
16006 to use STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2 instead.
16007 (w32_per_char_metric): Change font_type arg to int for RIF.
16008 (w32_encode_char): Return int according to RIF requirements.
16009 (w32_compute_glyph_string_overhangs): Adapt to RIF.
16010 (w32_get_glyph_overhangs): New function for RIF. Uses generic
16011 x_get_glyph_overhangs.
16012 (w32_redisplay_interface): Add new members.
16013
16014 * macgui.h (XChar2b): Move typedef here for consolidation.
16015 (STORE_XCHAR2B, XCHAR2B_BYTE1, XCHAR2B_BYTE2): New macros.
16016
16017 * macterm.h (FRAME_X_OUTPUT, FRAME_X_WINDOW, FRAME_X_DISPLAY):
16018 (FONT_TYPE_FOR_UNIBYTE, FONT_TYPE_FOR_MULTIBYTE): New macros for
16019 consolidation.
16020
16021 * macterm.c: Remove consolidated defines and code.
16022 (mac_per_char_metric): New function for RIF.
16023 (mac_encode_char): Adapt to new RIF requirements.
16024 (mac_compute_glyph_string_overhangs): Adapt for RIF.
16025 (x_redisplay_interface): Add new members.
16026
16027 2003-03-15 Stefan Monnier <monnier@cs.yale.edu>
16028
16029 * keymap.c (Vmenu_events): New var.
16030 (syms_of_keymap): Initialize it.
16031 (where_is_internal): Check more carefully what is a menu event.
16032
16033 2003-03-14 Richard M. Stallman <rms@gnu.org>
16034
16035 * lread.c (read1): After #!, exit loop on eof.
16036
16037 2003-03-14 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16038
16039 * gtkutil.h: Add declaration for xg_frame_cleared.
16040
16041 * xterm.c (x_clear_frame): Call xg_frame_cleared for GTK.
16042
16043 * gtkutil.c (struct xg_last_sb_pos): New structure.
16044 (handle_fixed_child): New function.
16045 (xg_resize_widgets): Call handle_fixed_child on all scroll bar widgets
16046 and force a redraw on them.
16047 (xg_gtk_scroll_destroy): Free struct xg_last_sb_pos also.
16048 (xg_create_scroll_bar): Add struct xg_last_sb_pos to scroll bar
16049 so we can avoid unneeded redraws.
16050 (xg_update_scrollbar_pos): Invalidate data in xg_last_sb_pos
16051 and force a redraw on the scroll bar.
16052 (xg_set_toolkit_scroll_bar_thumb): Do not change/redraw scroll bar
16053 if xg_last_sb_pos shows the positions are up to date.
16054 (xg_frame_cleared): New function.
16055
16056 2003-03-13 Kenichi Handa <handa@m17n.org>
16057
16058 * coding.c (Fdetect_coding_region): Fix docstring.
16059 (Fdetect_coding_string): Fix docstring.
16060
16061 2003-03-13 Andreas Schwab <schwab@suse.de>
16062
16063 * gtkutil.c: Add prototype for create_menus.
16064
16065 * data.c (long_to_cons): Fix type of top.
16066
16067 * xselect.c (selection_data_to_lisp_data): Use int instead of
16068 long for an integer of size 4.
16069
16070 * gtkutil.c (xg_update_frame_menubar): Add missing return value.
16071 (xg_tool_bar_help_callback): Likewise.
16072
16073 2003-03-12 Andreas Schwab <schwab@suse.de>
16074
16075 * xterm.c (x_term_init) [USE_GTK]: Fix typo.
16076
16077 2003-03-12 Kim F. Storm <storm@cua.dk>
16078
16079 The following changes consolidate the fringe handling from
16080 xterm.c, w32term.c, and macterm.c into xdisp.c.
16081
16082 * xdisp.c: Consolidate fringe handling code here.
16083 (left_bits, right_bits, continued_bits, continuation_bits)
16084 (ov_bits, zv_bits): Define fringe bitmaps.
16085 (fringe_bitmaps): New array holding fringe bitmaps.
16086 (draw_fringe_bitmap): Draw a specific bitmap; call display
16087 specific drawing routine via rif->draw_fringe_bitmap.
16088 (draw_row_fringe_bitmaps): Generic replacement for
16089 x_draw_row_fringe_bitmaps; all callers changed.
16090 (compute_fringe_widths): Generic replacement for
16091 x_compute_fringe_widths; all callers changed.
16092
16093 * dispextern.h (enum fringe_bitmap_type): Define here.
16094 (struct fringe_bitmap, struct draw_fringe_bitmap_params): New.
16095 (fringe_bitmaps): Declare extern.
16096 (struct redisplay_interface): New member draw_fringe_bitmap.
16097 (draw_row_fringe_bitmaps, compute_fringe_widths): Declare extern.
16098
16099 * xterm.c: Remove generic fringe code.
16100 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
16101 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
16102
16103 * w32term.c: Remove generic fringe code.
16104 (w32_draw_fringe_bitmap): Only perform actual fringe drawing.
16105 (w32_redisplay_interface): Add w32_draw_fringe_bitmap member.
16106
16107 * macterm.c: Remove generic fringe code.
16108 (x_draw_fringe_bitmap): Only perform actual fringe drawing.
16109 (x_redisplay_interface): Add x_draw_fringe_bitmap member.
16110
16111 2003-03-11 Stefan Monnier <monnier@cs.yale.edu>
16112
16113 * print.c (Fprin1_to_string): Return unibyte string if possible.
16114
16115 2003-03-09 David Kastrup <dak@gnu.org>
16116
16117 * process.c (read_process_output): We have allocated enough space
16118 for readmax and carryover, so actually use the alloted space.
16119
16120 2003-03-09 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16121
16122 * keyboard.c (make_lispy_event): Extend mouse_syms if needed for
16123 toolkit scrollbar click.
16124
16125 * xterm.c (x_window_to_scroll_bar): Call xg_get_scroll_id_for_window
16126 for USE_GTK.
16127 (x_scroll_bar_handle_click): Use this function for toolkit scrollbars
16128 also.
16129 (handle_one_xevent): ButtonPress/Release: If event is for a toolkit
16130 scrollbar and control is pressed, call x_scroll_bar_handle_click.
16131
16132 * gtkutil.h (xg_get_scroll_id_for_window): Declare.
16133
16134 * gtkutil.c (xg_get_scroll_id_for_window): New function.
16135 (xg_tool_bar_item_expose_callback): New function.
16136 (xg_tool_bar_expose_callback): Call update_frame_tool_bar.
16137 (xg_create_tool_bar): Connect xg_tool_bar_expose_callback to expose
16138 on the tool bar widget.
16139 (update_frame_tool_bar): Connect xg_tool_bar_item_expose_callback
16140 to expose on the tool bar item widgets.
16141
16142 2003-03-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16143
16144 * gtkutil.c (update_frame_tool_bar): Compare pixmap ID instead of
16145 struct image* when deciding to update (struct image* may have been
16146 deleted from the image cache).
16147
16148 * xterm.c (handle_one_xevent): Pass ReparentNotify to Xt even if
16149 the event isn't for a frame (i.e. for dialogs).
16150
16151 2003-03-07 Kenichi Handa <handa@m17n.org>
16152
16153 * coding.c (CODING_ADD_COMPOSITION_COMPONENT): If the number of
16154 composition components reaches the limit, terminate composing.
16155 (COMPOSITION_OK): New macro.
16156 (detect_coding_iso2022): Use it if an escape sequence for
16157 composition is found.
16158 (coding_restore_composition): Adjust the number of composition
16159 components if it is not sane.
16160
16161 2003-03-06 Juanma Barranquero <lektu@terra.es>
16162
16163 * w32term.h (struct w32_display_info): Add xrdb member to support
16164 passing resources via -xrm on Windows.
16165
16166 * w32term.c (w32_make_rdb): New function.
16167 (w32_term_init): Use it to initialize xrdb member of w32_display_info
16168 struct. Delete leftover code.
16169
16170 * w32fns.c (Fx_get_resource, x_get_resource_string): Pass xrdb to check
16171 for resources passed on the command line.
16172
16173 * w32reg.c (w32_get_rdb_resource): New function.
16174 (x_get_string_resource): Use it, so resources passed with -xrm
16175 supercede the ones in the registry.
16176
16177 2003-03-04 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16178
16179 * xterm.c (x_detect_focus_change): Call x_any_window_to_frame
16180 instead of x_top_window_to_frame.
16181
16182 2003-03-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16183
16184 * xsmfns.c (smc_save_yourself_CB): Add --no-splash to options
16185 when restarting Emacs.
16186
16187 2003-03-03 Richard M. Stallman <rms@gnu.org>
16188
16189 * buffer.c (Fkill_buffer): Use Frun_hook_with_args_until_failure
16190 to run kill-buffer-query-functions.
16191 (Qkill_buffer_query_functions): New var.
16192 (syms_of_buffer): Init and staticpro it.
16193
16194 2003-03-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16195
16196 * xterm.h (XSync): Define as gdk_window_process_all_updates for GTK.
16197
16198 2003-02-25 Kim F. Storm <storm@cua.dk>
16199
16200 * xdisp.c (redisplay_window): Fix infinite loop in redisplay.
16201 If centering point failed to make whole line visible and vscroll
16202 is non-zero, disable vscroll and try centering point again.
16203
16204 * lread.c (read1): Accept `single space' syntax like (? x).
16205
16206 2003-02-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16207
16208 * keyboard.c (cancel_hourglass_unwind): Surround with
16209 #ifdef HAVE_X_WINDOWS
16210
16211 2003-02-25 Kenichi Handa <handa@m17n.org>
16212
16213 * buffer.c (Fset_buffer_multibyte): Pay attention to the buffer
16214 process only when "subprocesses" is defined.
16215
16216 2003-02-24 Stefan Monnier <monnier@cs.yale.edu>
16217
16218 * syntax.c (back_comment): Only check nestedness of 2nd char if needed.
16219
16220 2003-02-24 Juanma Barranquero <lektu@terra.es>
16221
16222 * callint.c (fix_command): Declare as static void and move before
16223 Fcall_interactively.
16224
16225 * xdisp.c (Qwhen): Declare external; it's now defined in callint.c.
16226 (syms_of_xdisp): Don't initialize Qwhen.
16227
16228 2003-02-23 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16229
16230 * keyboard.c (cancel_hourglass_unwind): New function.
16231 (command_loop_1): Cancel hourglass with unwind-protect.
16232
16233 2003-02-23 Richard M. Stallman <rms@gnu.org>
16234
16235 * callint.c (fix_command): New subroutine, from Fcall_interactively.
16236 Detect (when ... (region-beginning)) etc.
16237 (Fcall_interactively): Call fix_command.
16238 (Qif, Qwhen): New variables.
16239 (syms_of_callint): Init and staticpro them.
16240
16241 * regex.c (print_partial_compiled_pattern): Output to stderr.
16242
16243 2003-02-23 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
16244
16245 * dired.c (directory_files_internal): Don't expand directory.
16246 (Fdirectory_files, Fdirectory_files_and_attributes): Do it here
16247 instead. From Lars Hansen <larsh@math.ku.dk>.
16248
16249 2003-02-22 Stefan Monnier <monnier@cs.yale.edu>
16250
16251 * fns.c (string_to_multibyte): Remove unused var i.
16252 (Flanginfo): Fix int/Lisp_Object mixup.
16253 (void_call2): New fun.
16254 (Fmap_char_table): Use it in place of call2.
16255
16256 * xfaces.c (x_face_list_fonts): Fix int/Lisp_Object mixup.
16257
16258 * macros.c (Fstart_kbd_macro): Remove redundant assignment.
16259
16260 * keymap.c (copy_keymap_1): Make it static.
16261
16262 * alloc.c (Fgarbage_collect): Don't use XSETFLOAT.
16263
16264 2003-02-22 David Ponce <david@dponce.com>
16265
16266 * lread.c (Fload): Don't check STRING_MULTIBYTE.
16267
16268 2003-02-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16269
16270 * process.h: Removed subtty field from struct Lisp_Process.
16271
16272 * process.c (create_process): Remove setting of subtty.
16273 (emacs_get_tty_pgrp): New function.
16274 (Fprocess_running_child_p, process_send_signal):
16275 Call emacs_get_tty_pgrp instead of ioctl.
16276 (process_send_signal): Call EMACS_KILLPG if ioctl TIOCSIGSEND fails.
16277
16278 2003-02-21 Kai Gro\e,A_\e(Bjohann <kai.grossjohann@uni-duisburg.de>
16279
16280 * keymap.c (Fdefine_key): Doc fix.
16281
16282 2003-02-21 Juanma Barranquero <lektu@terra.es>
16283
16284 Port of patch for RC by Klaus Zeitler <kzeitler@lucent.com>.
16285
16286 * s/hpux10.h: Define POLL_INTERRUPTED_SYS_CALL, not
16287 POLLING_PROBLEM_IN_SELECT.
16288
16289 * s/hpux11.h: Include hpux10-20.h instead of hpux10.h.
16290 Delete #undef of POLLING_PROBLEM_IN_SELECT.
16291
16292 * s/hpux10-20.h: New file.
16293
16294 * process.c (wait_reading_process_input):
16295 Use POLL_INTERRUPTED_SYS_CALL, not POLLING_PROBLEM_IN_SELECT.
16296
16297 2003-02-20 Kenichi Handa <handa@m17n.org>
16298
16299 * fontset.c (check_fontset_name): If NAME is nil, return the
16300 default fontset.
16301 (override_font_info): New function.
16302 (Fset_fontset_font): Document that NAME nil means the default fontset.
16303 (Ffontset_info): If FONTSET is not the default fontset, merge
16304 FONTSET onto the copy of the default fontset, and work on that
16305 copy. Document that NAME nil means the default fontset.
16306 (Ffontset_font): Document that NAME nil means the default fontset.
16307
16308 * process.c (setup_process_coding_systems): If the process's
16309 in/out descriptor is -1, do nothing.
16310
16311 2003-02-19 Andreas Schwab <schwab@suse.de>
16312
16313 * lisp.h (Fcancel_kbd_macro_events, Fstring_to_multibyte):
16314 Add prototypes.
16315
16316 2003-02-19 Kenichi Handa <handa@m17n.org>
16317
16318 * xfaces.c (try_alternative_families): Try all scalable fonts if
16319 Vscalable_fonts_allowed is not Qt.
16320
16321 2003-02-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16322
16323 * xfaces.c (x_face_list_fonts): Set *pfonts to 0 if no fonts found.
16324
16325 2003-02-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16326
16327 * xterm.c (x_list_fonts): If maxnames is less than 0, get all font
16328 names.
16329
16330 * xfaces.c (x_face_list_fonts): Allocate struct font_name here.
16331 (sorted_font_list): Move allocation of struct font_name to
16332 x_face_list_fonts.
16333 (Fx_font_family_list): Set font-list-limit to -1 to get all font names.
16334 (Fx_list_fonts): Set maxnames to -1 to get all font names.
16335
16336 2003-02-18 Kim F. Storm <storm@cua.dk>
16337
16338 * lread.c (read1): Fix last change.
16339 "`" is not always special. Allow "?" after a character constant.
16340
16341 2003-02-18 Andrew Choi <akochoi@shaw.ca>
16342
16343 * unexmacosx.c (copy_data_segment): Also copy __cfstring section.
16344
16345 2003-02-18 Andreas Schwab <schwab@suse.de>
16346
16347 * window.c (window_scroll_pixel_based): Move outside a
16348 multi-glyph character before setting new window start.
16349
16350 * xdisp.c (in_display_vector_p): New function.
16351 * dispextern.h (in_display_vector_p): Declare.
16352
16353 2003-02-18 Kim F. Storm <storm@cua.dk>
16354
16355 * lread.c (read1): Fix and relax read syntax.
16356 Recognize "[", ";", "#", and "?" after a dotted-pair dot.
16357 Only recognize "," after dotted-pair dot if inside backquote.
16358 Never include "`" or "," (inside backquote) in a symbol.
16359 Allow dotted-pair dot after a character constant.
16360 Allow "`" and "," (inside backquote) after a character constant.
16361
16362 2003-02-17 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16363
16364 * gtkutil.c (xg_tool_bar_expose_callback): New function.
16365 (xg_create_tool_bar): Force style of tool bar to be horizontal with
16366 icons. Set name of tool bar to emacs-toolbar.
16367 (update_frame_tool_bar): Connect expose event to
16368 xg_tool_bar_expose_callback.
16369
16370 2003-02-17 Richard M. Stallman <rms@gnu.org>
16371
16372 * keyboard.c (this_command_key_count_reset): New variable.
16373 Initiatize to 0 where this_command_key_count is set.
16374 (read_char): Save and restore this_command_key_count_reset
16375 around input method code.
16376 (read_char): If this_command_key_count_reset, echo reread commands.
16377 (Freset_this_command_lengths): Set this_command_key_count_reset to 1.
16378
16379 2003-02-17 Kenichi Handa <handa@m17n.org>
16380
16381 * fns.c (string_to_multibyte): Always return a multibyte string.
16382
16383 2003-02-16 Jason Rumney <jasonr@gnu.org>
16384
16385 * w32fns.c (w32_list_bdf_fonts, w32_list_fonts):
16386 Negative max_fonts parameter means list all.
16387
16388 2003-02-14 Dave Love <fx@gnu.org>
16389
16390 * fns.c (Flanginfo): Doc fix.
16391
16392 2003-02-13 Kim F. Storm <storm@cua.dk>
16393
16394 * lread.c (read_escape): Interpret \s as a SPACE character, except
16395 for \s-X in a character constant which still is the super modifier.
16396 (read1): Signal an `invalid read syntax' error if a character
16397 constant is immediately followed by a digit or symbol character.
16398
16399 * search.c (Fmatch_data): Doc fix. Explicitly state that
16400 match-data is undefined if last search failed.
16401
16402 * keymap.c (Fcommand_remapping): Rename from Fremap_command.
16403 All uses changed.
16404
16405 2003-02-12 Juanma Barranquero <lektu@terra.es>
16406
16407 * eval.c (Fdefmacro): Fix typo.
16408
16409 2003-02-12 Kim F. Storm <storm@cua.dk>
16410
16411 * macros.c (Fstart_kbd_macro): If appending, and last keyboard
16412 macro is a string, convert meta modifiers in string when copying
16413 the string into a vector.
16414
16415 2003-02-11 Kim F. Storm <storm@cua.dk>
16416
16417 * keymap.c (Fremap_command): Return nil if arg is not a symbol.
16418
16419 2003-02-11 Kenichi Handa <handa@m17n.org>
16420
16421 * Makefile.in (lisp, shortlisp): Add malayalam.el and tamil.el.
16422
16423 2003-02-10 Kim F. Storm <storm@cua.dk>
16424
16425 * process.c: Doc fixes.
16426 (syms_of_process): Add `:' prefix to QCfilter_multibyte.
16427
16428 2003-02-10 Kenichi Handa <handa@m17n.org>
16429
16430 * fns.c (Fstring_to_multibyte): Fix typo in the docstring.
16431
16432 * process.c (QCfilter_multibyte): New variable.
16433 (setup_process_coding_systems): New function.
16434 (Fset_process_buffer, Fset_process_filter):
16435 Call setup_process_coding_systems.
16436 (Fstart_process): Initialize the member `filter_multibyte' of
16437 struct Lisp_Process.
16438 (create_process): Call setup_process_coding_systems.
16439 (Fmake_network_process): New keyward `:filter-multibyte'.
16440 Initialize the member `filter_multibyte' of struct Lisp_Process.
16441 Call setup_process_coding_systems.
16442 (server_accept_connection): Call setup_process_coding_systems.
16443 (read_process_output): If the process has a filter, decide the
16444 multibyteness of a string to given to the filter by
16445 `filter_multibyte' member of the process. If the process doesn't
16446 have a filter and the result of conversion is unibyte, use
16447 Fstring_to_multibyte (not Fstring_make_multibyte) to get the
16448 multibyte form.
16449 (Fset_process_coding_system): Call setup_process_coding_systems.
16450 (Fset_process_filter_multibyte): New function.
16451 (Fprocess_filter_multibyte_p): New function.
16452 (syms_of_process): Intern and staticpro QCfilter_multibyte.
16453 Defsubr Sset_process_filter_multibyte and
16454 Sprocess_filter_multibyte_p.
16455
16456 * process.h (struct Lisp_Process): New member filter_multibyte.
16457
16458 * lisp.h (setup_process_coding_systems): Add prototype.
16459
16460 * buffer.c (Fset_buffer_multibyte): If the current buffer has a
16461 process, update coding systems for the process.
16462
16463 2003-02-09 Kenichi Handa <handa@m17n.org>
16464
16465 * fns.c (string_to_multibyte): New function.
16466 (Fstring_to_multibyte): New function.
16467 (syms_of_fns): Defsubr it.
16468
16469 2003-02-08 Andreas Schwab <schwab@suse.de>
16470
16471 * Makefile.in (EXEEXT): Define to @EXEEXT@ and use this variable
16472 instead of the substitution.
16473
16474 2003-02-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16475
16476 * xterm.c (x_make_frame_visible): Call gtk_window_deiconify.
16477
16478 * xmenu.c (menu_position_func): Adjust menu popup position so that
16479 the menu is fully visible.
16480
16481 2003-02-07 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16482
16483 * xterm.c (x_text_icon, x_raise_frame, x_lower_frame)
16484 (x_make_frame_invisible, x_wm_set_icon_position):
16485 Use FRAME_OUTER_WINDOW instead of ifdef X_TOOLKIT/else/endif.
16486
16487 * xfns.c (x_set_name, x_set_title): Ditto.
16488
16489 2003-02-04 Richard M. Stallman <rms@gnu.org>
16490
16491 * keyboard.c (echo_now): Update before_command_echo_length.
16492 (Freset_this_command_lengths): Reset this_command_key_count etc.
16493 immediately rather than arranging to do it later.
16494 (before_command_key_count_1, before_command_echo_length_1)
16495 (before_command_restore_flag): Vars deleted.
16496 (add_command_key): Don't handle before_command_restore_flag.
16497 (read_char, record_menu_key): Don't update before_command_key_count or
16498 before_command_echo_length.
16499 (read_char): Don't handle before_command_restore_flag.
16500
16501 * keyboard.c (command_loop_1): Don't call adjust_point_for_property
16502 in direct-output clauses if it wouldn't be called in the ordinary case.
16503
16504 2003-02-04 Kim F. Storm <storm@cua.dk>
16505
16506 * keyboard.c (syms_of_keyboard) <this-original-command>: Doc fix.
16507
16508 2003-02-02 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16509
16510 * gtkutil.c (remove_from_container): Copying list is not needed.
16511 (xg_update_menubar, xg_update_menu_item, xg_update_submenu)
16512 (xg_modify_menubar_widgets, update_frame_tool_bar): Call g_list_free
16513 on list returned from gtk_container_get_children to avoid memory leak.
16514
16515 2003-02-01 Jason Rumney <jasonr@gnu.org>
16516
16517 * w32fns.c (w32_create_pixmap_from_bitmap_data): Use alloca for
16518 local malloc.
16519 [HAVE_XPM]: Avoid clashes with XColor, XImage and Pixel
16520 definitions in xpm.h.
16521 (init_xpm_functions): New function.
16522 (xpm_load): Sync with xfns.c. Adapt for Windows version of libXpm.
16523 (init_external_image_libraries): Try to load libXpm.dll.
16524
16525 * fileio.c (Fcopy_file) [WINDOWSNT]: Reverse logic for setting
16526 timestamp.
16527
16528 2003-01-31 Dave Love <fx@gnu.org>
16529
16530 * syntax.c (Fskip_chars_forward)
16531 (open-paren-in-column-0-is-defun-start): Doc fix.
16532
16533 2003-01-31 Joe Buehler <jhpb@draco.hekimian.com>
16534
16535 * fileio.c: Support // at start of name for Cygwin (just added proper
16536 preprocessor tests).
16537
16538 * keyboard.c: Port to Cygwin (just added proper preprocessor tests).
16539
16540 * Makefile.in: Use @EXEEXT@ for Cygwin.
16541
16542 * mem-limits.h: Added ifdef to define BSD4_2 for Cygwin.
16543
16544 * s/cygwin.h: Added for Cygwin port.
16545
16546 2003-01-31 Juanma Barranquero <lektu@terra.es>
16547
16548 * w32fns.c (DrawText): Kludge to avoid a redefinition on Windows
16549 when including gif_lib.h.
16550 (init_gif_functions, init_tiff_functions): New functions.
16551 (gif_load, tiff_load): Sync with xfns.c version. Adjust colors for
16552 Windows. Disable color table lookups. Call library functions
16553 through pointers determined at runtime.
16554 (init_external_image_libraries): Try to load libungif.dll and
16555 libtiff.dll.
16556
16557 2003-01-31 Kenichi Handa <handa@m17n.org>
16558
16559 * xdisp.c (SKIP_GLYPHS): New macro.
16560 (set_cursor_from_row): Skip all glyphs that comes from overlay string.
16561
16562 2003-01-30 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16563
16564 * gtkutil.c (free_frame_tool_bar): Remove debug printf.
16565
16566 2003-01-30 Dave Love <fx@gnu.org>
16567
16568 * alloc.c (Vgc_elapsed, gcs_done): New variables.
16569 (Fgarbage_collect): Use them.
16570 (init_alloc, syms_of_alloc): Set them up.
16571
16572 2003-01-30 Juanma Barranquero <lektu@terra.es>
16573
16574 * w32fns.c (init_external_image_libraries): Add missing operator.
16575
16576 2003-01-29 Jason Rumney <jasonr@gnu.org>
16577
16578 * w32fns.c (init_external_image_libraries): Allow jpeg-62.dll as
16579 an alternative name for jpeg.dll.
16580
16581 2003-01-29 Kenichi Handa <handa@m17n.org>
16582
16583 * xdisp.c (set_cursor_from_row): Pay attention to string display
16584 properties.
16585
16586 2003-01-28 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
16587
16588 * macterm.c (keycode_to_xkeysym_table): Add <tab>, <backspace>,
16589 <escape>.
16590 (keycode_to_xkeysym_table): Reformat and add more comments.
16591 (XTread_socket): Drop special case for backspace.
16592
16593 2003-01-28 Andrew Choi <akochoi@shaw.ca>
16594
16595 * macfns.c (x_to_mac_color): Correct the order for parsing the RGB
16596 values in old-style RGB specs.
16597
16598 2003-01-27 Juanma Barranquero <lektu@terra.es>
16599
16600 * w32fns.c (init_external_image_libraries): Try alternate names for the
16601 jpeg dll.
16602
16603 2003-01-27 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16604
16605 * gtkutil.c (create_dialog, xg_separator_p)
16606 (xg_item_label_same_p, xg_update_menu_item): Check for NULL string
16607 before calling strcmp or strlen.
16608
16609 2003-01-26 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16610
16611 * gtkutil.c (update_frame_tool_bar): Call prepare_image_for_display
16612 and handle image load failure.
16613
16614 2003-01-26 Jason Rumney <jasonr@gnu.org>
16615
16616 * w32fns.c (init_jpeg_functions, jpeg_resync_to_restart_wrapper):
16617 New functions.
16618 (jpeg_load): Sync with xfns.c version. Adjust colors for Windows.
16619 Disable color table lookups. Call jpeg library functions
16620 through pointers determined at runtime.
16621 (init_external_image_libraries): Try to load jpeg.dll.
16622
16623 2003-01-25 Richard M. Stallman <rms@gnu.org>
16624
16625 * lisp.h: Declare format2 instead of format1.
16626
16627 * fileio.c (barf_or_query_if_file_exists):
16628 Call format2 instead of format1.
16629
16630 * editfns.c (format2): New function, replaces format1
16631 but takes exactly two Lisp Objects as format args.
16632
16633 * buffer.c (Fkill_buffer): Call format2 instead of format1.
16634
16635 2003-01-25 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16636
16637 * xterm.h: Change to return value of x_dispatch_event to int.
16638
16639 * xterm.c (x_filter_event): New function.
16640 (event_handler_gdk, XTread_socket): Call x_filter_event.
16641 (x_dispatch_event): Change to return value of finish.
16642 (event_handler_gdk): Use return value from x_dispatch_event.
16643
16644 * xfns.c (x_window): Call create_frame_xic for GTK version to
16645 initialize input methods.
16646
16647 * gtkutil.h: Add (void) prototypes.
16648
16649 * gtkutil.c (create_menus): Remove code that puts the help menu to
16650 the right.
16651
16652 2003-01-25 Jason Rumney <jasonr@gnu.org>
16653
16654 * w32fns.c (XPutPixel): Handle monochrome images; used for masks.
16655 [HAVE_PNG]: Sync with xfns.c version.
16656 (png_load): Adjust colors for Windows. Use Windows
16657 bitmaps. Disable color table lookups.
16658 (DEF_IMGLIB_FN, LOAD_IMGLIB_FN): New macros.
16659 (init_png_functions): New function.
16660 (png_read_from_memory, png_load): Call png library functions
16661 through pointers determined at runtime.
16662 (QCloader, QCbounding_box, QCpt_width, QCpt_height): Declare.
16663 (init_external_image_libraries): New function.
16664 (init_xfns): Call it.
16665
16666 2003-01-24 Andreas Schwab <schwab@suse.de>
16667
16668 * minibuf.c (Fminibuffer_message): Verify type of parameter.
16669
16670 2003-01-24 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16671
16672 * gtkutil.c (xg_initialize): Initialize id_to_widget here instead
16673 of static initializer.
16674
16675 2003-01-24 Dave Love <fx@gnu.org>
16676
16677 * s/gnu-linux.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define for more
16678 architectures.
16679
16680 * alloc.c (mark_stack) [!GC_LISP_OBJECT_ALIGNMENT && __GNUC__]:
16681 Use __alignof__.
16682
16683 2003-01-24 Kenichi Handa <handa@m17n.org>
16684
16685 * keyboard.c (adjust_point_for_property): New second arg MODIFIED.
16686 It it is nonzero, don't pretend that an invisible area doesn't exist.
16687 (command_loop_1): Call adjust_point_for_property with proper
16688 second arg.
16689
16690 2003-01-22 Jason Rumney <jasonr@gnu.org>
16691
16692 Sync changes with xterm.c and xfns.c.
16693
16694 * w32term.c (x_draw_glyph_string_foreground)
16695 (x_draw_composite_glyph_string_foreground): Implement overstriking.
16696
16697 * w32term.c (x_write_glyphs): Clear phys_cursor_on_p if current
16698 phys_cursor's hpos is overwritten. This is still not completely
16699 correct, as it doesn't really make sense to use hpos at all to
16700 get the cursor glyph (as that is relative to the width of the
16701 characters on the line, which may have changed during the update).
16702
16703 * w32term.c (notice_overwritten_cursor): Handle the special case
16704 of the cursor being in the first blank non-text line at the
16705 end of a window.
16706
16707 * w32term.c (x_draw_hollow_cursor, x_draw_bar_cursor)
16708 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
16709 Compute from the x position returned by x_draw_glyphs.
16710
16711 (x_display_and_set_cursor): Don't set phys_cursor_width here,
16712 except for NO_CURSOR and system caret, to make phys_cursor_width
16713 contain what its name suggests.
16714 (notice_overwritten_cursor): Consider the cursor image erased if
16715 the output area intersects the cursor image in y-direction.
16716
16717 * w32term.c (note_mode_line_or_margin_highlight): Rename from
16718 note_mode_line_highlight and extend.
16719
16720 * w32term.c (last_window): New variable.
16721 (w32_read_socket) <WM_MOUSEMOVE>: Generate SELECT_WINDOW_EVENTs.
16722 (note_mouse_movement): Remove reimplemented code in #if 0.
16723
16724 * w32fns.c (x_set_cursor_type): Set cursor_type_changed,
16725 not update_mode_lines, and always set it to 1.
16726
16727 2003-01-21 Jason Rumney <jasonr@gnu.org>
16728
16729 * w32fns.c (IDC_HAND): Define it if system headers don't.
16730
16731 2003-01-21 KOBAYASHI Yasuhiro <kobayays@otsukakj.co.jp>
16732
16733 * w32term.h (struct w32_output): New member hand_cursor.
16734 (WM_EMACS_SETCURSOR): New message definition.
16735
16736 * w32term.c (note_mode_line_highlight): Delete #if 0 to enable
16737 function w32_define_cursor.
16738 (note_mouse_highlight): Initialize, setup cursor accoding to mouse
16739 position, change member name output_data.x to output_data.w32 and
16740 add function w32_define_cursor.
16741 (show_mouse_face): Delete #if 0 to enable function w32_define_cursor
16742 and change member name output_data.x to output_data.w32.
16743 (w32_initialize_display_info):
16744 Setup dpyinfo->vertical_scroll_bar_cursor.
16745
16746 * w32fns.c (Vx_hand_shape): New variable.
16747 (w32_wnd_proc): Add message entries for WM_SETCURSOR and
16748 WM_EMACS_SETCURSOR.
16749 (x-create-frame): Setup Cursor types.
16750
16751 2003-01-21 David Ponce <david@dponce.com>
16752
16753 * w32term.c (w32_encode_char): For DIM=1 charset, set
16754 ccl->reg[2] to -1 before calling ccl_driver.
16755 (Sync. with xterm.c x_encode_char change by Kenichi Handa
16756 <handa@m17n.org> on 2002-09-30.)
16757 (w32_draw_relief_rect): Declare all args.
16758 (w32_define_cursor): New.
16759
16760 * w32fns.c (w32_load_cursor): New function.
16761 (w32_init_class): Use it.
16762 (x_put_x_image): Declare all args.
16763
16764 2003-01-21 Richard Dawe <rich@phekda.freeserve.co.uk>
16765
16766 * Makefile.in (ALL_CFLAGS): Include MYCPPFLAGS, not MYCPPFLAG.
16767
16768 2003-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16769
16770 * gtkutil.c: Must include stdio.h before termhooks.h
16771
16772 2003-01-21 Dave Love <fx@gnu.org>
16773
16774 * alloc.c (Fgc_status): Print zombie list.
16775 (mark_maybe_object) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16776 Fix assignment of zombies.
16777 (Fgarbage_collect) [GC_MARK_STACK==GC_USE_GCPROS_CHECK_ZOMBIES]:
16778 Don't take car of non-cons.
16779
16780 * s/sol2-5.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16781
16782 * s/sunos4-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
16783
16784 2003-01-20 David Ponce <david@dponce.com>
16785
16786 * w32menu.c (digest_single_submenu): Declare all args.
16787
16788 Sync with 2002-12-23 Richard M. Stallman <rms@gnu.org>
16789 changes in xmenu.c:
16790
16791 (parse_single_submenu): Use individual keymap's prompt
16792 string as pane name, if there is one.
16793 (set_frame_menubar): Save menu_items_n_panes from each call to
16794 parse_single_submenu and use it when calling digest_single_submenu.
16795
16796 2003-01-20 Steven Tamm <steventamm@mac.com>
16797
16798 * macterm.c (XTread_socket): Check for valid, visible window
16799 before sending a scroll-wheel event.
16800
16801 2003-01-20 Richard M. Stallman <rms@gnu.org>
16802
16803 * xdisp.c (redisplay_window): If mini window's buffer is not
16804 a minibuffer, then redisplay it like other windows.
16805
16806 2003-01-20 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16807
16808 * gtkutil.c (xg_create_frame_widgets): Check if there is an
16809 external tool bar before setting tool bar height.
16810
16811 2003-01-19 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16812
16813 * xterm.c (handle_one_xevent): Surround popup_activated
16814 with #ifdef:s for non-toolkit version.
16815
16816 * Makefile.in (XOBJ): Add gtkutil.o if USE_GTK
16817 (gtkutil.o): New file.
16818 (TOOLKIT_DEFINES): Set to -DUSE_GTK if HAVE_GTK.
16819 (LIBW): Set to @GTK_LIBS@ if USE_GTK.
16820
16821 * gtkutil.c: New file for GTK version.
16822
16823 * gtkutil.h: New file for GTK version.
16824
16825 * xterm.h: Add xt_or_gtk_widget.
16826 Include gtk files for USE_GTK.
16827 (struct x_output): Add toolbar_height.
16828 (struct x_output): Add GTK widgets and Gdk size_hints.
16829 (GTK_WIDGET_TO_X_WIN, FRAME_GTK_OUTER_WIDGET, FRAME_GTK_WIDGET)
16830 (FRAME_OUTER_WINDOW): New macros for USE_GTK.
16831 (FRAME_OUTER_TO_INNER_DIFF_Y): Add FRAME_TOOLBAR_HEIGHT to calculation.
16832
16833 * xterm.c: Include gtkutil.h for USE_GTK.
16834 (free_frame_menubar): Declare extern void for USE_GTK.
16835 (note_mouse_highlight): Check popup_activated for USE_GTK.
16836 (xt_action_hook): Don't compile if USE_GTK.
16837 (x_scroll_bar_to_input_event): Use CurrentTime for USE_GTK.
16838 (xg_scroll_callback): New function.
16839 (x_create_toolkit_scroll_bar): Call xg_create_scroll_bar for USE_GTK.
16840 (x_set_toolkit_scroll_bar_thumb): Call xg_set_toolkit_scroll_bar_thumb
16841 for USE_GTK.
16842 (x_scroll_bar_create): Call xg_update_scrollbar_pos and
16843 xg_show_scroll_bar for USE_GTK.
16844 (x_scroll_bar_remove): Call xg_remove_scroll_bar for USE_GTK.
16845 (XTset_vertical_scroll_bar): Call xg_update_scrollbar_pos for USE_GTK.
16846 (event_handler_gdk): New function for USE_GTK.
16847 (handle_one_xevent): Call xg_resize_widgets for USE_GTK.
16848 (handle_one_xevent): Make sure widget is mapped before
16849 calling x_real_positions for USE_GTK.
16850 (XTread_socket): Add GTK event loop for USE_GTK.
16851 (x_set_window_size): Call xg_frame_set_char_size for USE_GTK.
16852 (x_make_frame_visible): Call gtk_widget_show_all for USE_GTK.
16853 (x_make_frame_invisible): Call gtk_widget_hide for USE_GTK.
16854 (x_iconify_frame): Add code for USE_GTK.
16855 (x_free_frame_resources): Call gtk_widget_destroy for USE_GTK.
16856 (x_wm_set_size_hint): Only compile if not USE_GTK. GTK version
16857 is in gtkutil.c.
16858 (x_term_init): Add initialization for GTK.
16859 (syms_of_xterm): Set Vx_toolkit_scroll_bars for USE_GTK.
16860
16861 * xmenu.c: Include gtkutil.h for USE_GTK.
16862 (Fx_popup_menu): Use current position if x and y is NIL.
16863 (single_menu_item, single_menu_item, Fx_popup_dialog):
16864 Check for USE_GTK.
16865 (popup_widget_loop): New function for USE_GTK.
16866 (x_activate_menubar): Add code for USE_GTK.
16867 (popup_activate_callback, popup_deactivate_callback)
16868 (menu_highlight_callback, menubar_selection_callback):
16869 Add USE_GTK versions.
16870 (update_frame_menubar): Call xg_update_frame_menubar for USE_GTK.
16871 (set_frame_menubar): Call xg_modify_menubar_widgets for USE_GTK.
16872 (free_frame_menubar): Only compile if not USE_GTK. GTK version
16873 is in gtkutil.c.
16874 (popup_selection_callback): New version for USE_GTK.
16875 (create_and_show_popup_menu): New fuction, one USE_GTK version and
16876 one USE_X_TOOLKIT version.
16877 (xmenu_show): Call create_and_show_popup_menu.
16878 (dialog_selection_callback): New version for USE_GTK.
16879 (create_and_show_dialog): New fuction, one USE_GTK version and
16880 one USE_X_TOOLKIT version.
16881 (xdialog_show): Call create_and_show_dialog.
16882
16883 * xfns.c: Include gtkutil for USE_GTK.
16884 (x_window_to_frame, x_any_window_to_frame)
16885 (x_non_menubar_window_to_frame, x_menubar_window_to_frame)
16886 (x_top_window_to_frame): Add code for USE_GTK.
16887 (x_set_background_color): Call xg_set_background_color for GTK.
16888 (x_set_menu_bar_lines): Check for USE_GTK.
16889 (x_set_tool_bar_lines): Call update_frame_tool_bar for USE_GTK.
16890 (x_set_name, x_set_title): Call gtk_window_set_title for USE_GTK.
16891 (x_window): Call xg_create_frame_widgets for USE_GTK.
16892 (Fx_create_frame): Check for USE_GTK
16893 (Fx_file_dialog): New implementation for USE_GTK.
16894
16895 * xdisp.c: Add check for USE_GTK for extern void set_frame_menubar.
16896 (update_menu_bar): Add check for USE_GTK.
16897 (update_tool_bar): Add check for USE_GTK and external tool bar.
16898 (redisplay_tool_bar): Add check for USE_GTK and external tool bar.
16899 (redisplay_internal): Add check for USE_GTK and popup_activated.
16900 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_MENU_BAR.
16901 (redisplay_window): Add check for USE_GTK and FRAME_EXTERNAL_TOOL_BAR.
16902 (display_menu_bar): Add check for USE_GTK
16903
16904 * lisp.h (Vx_resource_name): Declare extern.
16905
16906 * keyboard.c (kbd_buffer_get_event): Check MENU_BAR_ACTIVATE_EVENT
16907 for USE_GTK.
16908 (make_lispy_event): Check MENU_BAR_EVENT for USE_GTK.
16909
16910 * frame.h (struct frame): Add external_tool_bar. Check for USE_GTK.
16911 (FRAME_EXTERNAL_TOOL_BAR): New macro.
16912 (FRAME_EXTERNAL_MENU_BAR): Check for USE_GTK.
16913
16914 * fileio.c (Fread_file_name): Add check for USE_GTK.
16915
16916 * dispnew.c (adjust_frame_glyphs_for_window_redisplay):
16917 Add check for USE_GTK.
16918
16919 * config.in: Added HAVE_GTK
16920
16921 * alloc.c (Fgarbage_collect): Call xg_mark_data for GTK.
16922
16923 2003-01-18 Stefan Monnier <monnier@cs.yale.edu>
16924
16925 * charset.h (Funibyte_char_to_multibyte): Export.
16926
16927 2003-01-18 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
16928
16929 * xmenu.c (mouse_position_for_popup): New function.
16930 (Fx_popup_menu): Call mouse_position_for_popup for X and
16931 mouse_position_hook for others.
16932
16933 2003-01-17 Kim F. Storm <storm@cua.dk>
16934
16935 * editfns.c (Finsert): Mention `string-make-multibyte' and
16936 `string-as-multibyte' in doc string.
16937
16938 2003-01-17 Kenichi Handa <handa@m17n.org>
16939
16940 * fontset.c (syms_of_fontset): Setup Vfont_encoding_alist here.
16941
16942 * editfns.c (Fformat): Convert an unibyte char argument that is
16943 formatted by "%c" to multibyte if the total result must be a
16944 multibyte string.
16945
16946 2003-01-16 Kim F. Storm <storm@cua.dk>
16947
16948 * process.c (set-process-filter): Document unibyte/multibyte-ness
16949 of string argument.
16950
16951 2003-01-16 Kenichi Handa <handa@m17n.org>
16952
16953 * charset.h (NEXT_CHAR_BOUNDARY, PREV_CHAR_BOUNDARY): New macros.
16954
16955 * regex.c (GET_CHAR_BEFORE_2): Use PREV_CHAR_BOUNDARY.
16956 (re_search_2): Likewise.
16957
16958 2003-01-15 Kenichi Handa <handa@m17n.org>
16959
16960 * xdisp.c (message_dolog): Fix bug of the case that *Message*
16961 buffer is unibyte.
16962
16963 2003-01-15 Francesco Potort\e,Al\e(B <pot@gnu.org>
16964
16965 * fns.c (Fsubstring): Clarify doc string.
16966
16967 * textprop.c (Ftext_properties_at, Fnext_char_property_change)
16968 (Fprevious_char_property_change)
16969 (Fnext_single_char_property_change)
16970 (Fprevious_single_char_property_change, Fnext_property_change)
16971 (Fnext_single_property_change, Fprevious_property_change)
16972 (Fprevious_single_property_change, Fadd_text_properties)
16973 (Fput_text_property, Fset_text_properties)
16974 (Fremove_text_properties, Fremove_list_of_text_properties)
16975 (Ftext_property_any, Ftext_property_not_all): Clarify doc strings.
16976
16977 2003-01-14 Kim F. Storm <storm@cua.dk>
16978
16979 * process.h (struct Lisp_Process): New member plist replaces old
16980 member private_vars. All uses changed.
16981
16982 * process.c: Reworked 2003-01-12 change -- call a plist a plist!
16983 (QCplist): Rename from QCvars. Change all uses.
16984 (Fprocess_plist): Replaces Fprocess_variable. Simplified.
16985 (Fset_process_plist): Replaces Fset_process_variable. Simplify.
16986 (syms_of_process): Intern, staticpro, defsubr these.
16987 (Fmake_network_process): Describe :plist arg. Remove :vars arg.
16988
16989 2003-01-14 Francesco Potort\e,Al\e(B <pot@gnu.org>
16990
16991 * m/delta.h: Remove (obsolete).
16992
16993 2003-01-13 Francesco Potort\e,Al\e(B <pot@gnu.org>
16994
16995 * fileio.c (Fdelete_directory, Fdelete_file): Document the
16996 behaviour in front of symlinks.
16997 (Fdelete_file): Raise an error on directories.
16998
16999 2003-01-13 Dave Love <fx@gnu.org>
17000
17001 * fns.c (Freverse): Use QUIT.
17002
17003 2003-01-13 Richard M. Stallman <rms@gnu.org>
17004
17005 * minibuf.c (minibuffer_completion_contents):
17006 Error if point is inside prompt.
17007
17008 * keyboard.c (command_loop_1): Don't redisplay directly
17009 if there's a post-command-hook.
17010
17011 * fileio.c (syms_of_fileio) <directory-sep-char>: Doc fix.
17012 (Fdo_auto_save): Add gcpros around Ffile_name_directory.
17013
17014 2003-01-12 Kim F. Storm <storm@cua.dk>
17015
17016 * process.h (struct Lisp_Process): New member private_vars.
17017
17018 * process.c (QCvars): New variable.
17019 (syms_of_process): Intern and staticpro it.
17020 (Fset_process_contact): Removed function.
17021 (Fprocess_variable, Fset_process_variable): New functions.
17022 (syms_of_process): Defsubr them.
17023 (Fstart_process): Initialize private_vars plist to nil.
17024 (Fmake_network_process): New arg :vars to setup the private
17025 variables for new network process.
17026 (server_accept_connection): Copy server's private variables to
17027 client process.
17028
17029 * alloc.c (pure_alloc): Fixed 2003-01-10 changed (caused spurious
17030 crashes). Code rewritten and simplified. Now directly aligns the
17031 pointer and recalculates pure_bytes_used, rather than aligning the
17032 size and adjusting the pointer.
17033
17034 2003-01-11 Kim F. Storm <storm@cua.dk>
17035
17036 * process.c (Fset_process_contact): New function.
17037 (syms_of_process): defsubr it.
17038 (make-network-process): Update doc.
17039
17040 2003-01-10 Andreas Schwab <schwab@suse.de>
17041
17042 * alloc.c (pure_alloc): Correct alignment for Lisp_Floats.
17043 Reported by Berthold Gunreben <b.gunreben@web.de>.
17044
17045 2003-01-10 Dave Love <fx@gnu.org>
17046
17047 * composite.c (syms_of_composite): Make composition_hash_table weak.
17048
17049 2003-01-09 Kim F. Storm <storm@cua.dk>
17050
17051 * process.c (Fmake_network_process): Convert new port number
17052 to host byte order for `:service t' case. From Mario Lang.
17053
17054 2003-01-08 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
17055
17056 * xfns.c (Fx_file_dialog): Call XtAppNextEvent and x_dispatch_event
17057 instead of XtAppProcessEvent.
17058
17059 * xterm.c (handle_one_xevent): New function.
17060 (x_dispatch_event): New function.
17061 (XTread_socket): Call handle_one_xevent.
17062
17063 * xterm.h (FRAME_OUTER_TO_INNER_DIFF_X/Y): New.
17064
17065 * xmenu.c (Fx_popup_menu): If popping up at mouse position,
17066 call XQueryPointer to get coordinates.
17067 (popup_get_selection): Do not set popup_activated_flag to zero,
17068 let popup_deactivate_callback do that. Needed for Motif.
17069 Call x_dispatch_event instead of XtDispatchEvent.
17070 (xmenu_show): Calculate root coordinate from frame top/left position.
17071
17072 2003-01-08 Kim F. Storm <storm@cua.dk>
17073
17074 * process.c (server_accept_connection): Fix recording of new
17075 connection's local address in :local property of contact info.
17076 (Fmake_network_process): Record local network address for new
17077 client processes in :local property of contact info.
17078 (format-network-address): Add arg OMIT-PORT. Change callers.
17079
17080 2003-01-07 Dave Love <fx@gnu.org>
17081
17082 * Makefile.in (fns.o): Depend on coding.h.
17083
17084 2003-01-07 Markus Rost <rost@math.ohio-state.edu>
17085
17086 * minibuf.c (Fread_variable): Doc fix.
17087
17088 * eval.c (Fuser_variable_p): Doc change. For custom variables,
17089 use the same test as for custom-variable-p.
17090
17091 2003-01-05 Richard M. Stallman <rms@gnu.org>
17092
17093 * xdisp.c (try_scrolling): New arg LAST_LINE_MISFIT.
17094 Count LAST_LINE_MISFIT in scroll margin for end of window.
17095 Move label too_near_end before setting SCROLL_MARGIN_POS.
17096 Set LAST_LINE_MISFIT before jumping there.
17097
17098 * xdisp.c (try_scrolling): Calculate amount_to_scroll better in
17099 scroll_conservatively case. If scrolling that much doesn't change
17100 STARTP, move it down one line.
17101
17102 * xdisp.c (redisplay_window): Pass last_line_misfit arg to
17103 try_scrolling. Make it 1 after make_cursor_line_fully_visible fails.
17104
17105 * xdisp.c (setup_echo_area_for_printing): Kill Emacs if no
17106 selected frame.
17107
17108 * keymap.c (apropos_predicate, apropos_accumulate): Make them static.
17109 (syms_of_keymap): Staticpro them.
17110 (Fapropos_internal): Initialize them and clear them out.
17111 Don't GCPRO them.
17112
17113 * buffer.c (syms_of_buffer) <scroll-up|down-aggressively>: Doc fixes.
17114
17115 * lisp.h: New misc type Lisp_Save_Value.
17116 (enum Lisp_Misc_Type): Add Lisp_Misc_Save_Value.
17117 (XSAVE_VALUE): New macro.
17118 (struct Lisp_Save_Value): New data type.
17119 (union Lisp_Misc): Add u_save_value alternative.
17120 (make_save_value): Declare.
17121
17122 * alloc.c (make_save_value): New function.
17123
17124 * xterm.c (x_catch_errors): Save dpy using make_save_value.
17125 (x_catch_errors_unwind): Call XSync.
17126
17127 2003-01-01 Richard M. Stallman <rms@gnu.org>
17128
17129 * window.c (window_scroll_pixel_based): Partially undo last change.
17130
17131 * keyboard.c (command_loop_1): Call adjust_point_for_property
17132 in direct action cases for Qforward_char and Qbackward_char.
17133 Set already_adjusted so it won't be done twice.
17134
17135 2002-12-30 Richard Dawe <rich@phekda.freeserve.co.uk>
17136
17137 * src/config.in (!HAVE_SIZE_T): Fix order of arguments in
17138 type definition of size_t.
17139
17140 2003-01-02 Steven Tamm <steventamm@mac.com>
17141
17142 * macterm.c (syms_of_macterm): Provide the feature "mac-carbon" to
17143 distinguish Carbon GUI builds from X11 builds on darwin.
17144
17145 2002-12-30 Steven Tamm <steventamm@mac.com>
17146
17147 * macterm.c (syms_of_macterm): Set mac-wheel-button-is-mouse-2
17148 to default to t.
17149
17150 2002-12-29 Francesco Potort\e,Al\e(B <pot@gnu.org>
17151
17152 * data.c (Fstring_to_number, Fminus): Better English in doc strings.
17153
17154 2002-12-28 Steven Tamm <steventamm@mac.com>
17155
17156 * Makefile.in (macosx-bundle): Fix Mac OS X/Carbon port to
17157 allow building in a different directory than source. Uses some
17158 GNU Make extensions, but there is no other make on Mac OS X.
17159
17160 2002-12-26 Francesco Potort\e,Al\e(B <pot@gnu.org>
17161
17162 * data.c (Fmakunbound, Ffmakunbound, Fmake_variable_buffer_local)
17163 (Fsetq_default, Fmake_local_variable, Fkill_local_variable)
17164 (Fmake_variable_frame_local, Faset, Fnumber_to_string, Fminus)
17165 (Fstring_to_number): Mention the returned value in the doc strings.
17166
17167 2002-12-23 Richard M. Stallman <rms@gnu.org>
17168
17169 * buffer.c (syms_of_buffer) <scroll-up-aggressively>
17170 <scroll-down-aggressively>: Doc fix.
17171
17172 * xmenu.c (parse_single_submenu): Use individual keymap's prompt
17173 string as pane name, if there is one.
17174 (set_frame_menubar): Save menu_items_n_panes from each call to
17175 parse_single_submenu and use it when calling digest_single_submenu.
17176
17177 * window.c (window_scroll_pixel_based): Fix check for reaching BEGV.
17178 Don't try to make last line fully visible if it is past end of window.
17179
17180 2002-12-22 Steven Tamm <steventamm@mac.com>
17181
17182 * macmenu.c (MIN_POPUP_SUBMENU_ID): Add.
17183 (mac_menu_show): Add support for hierarchical popup menus.
17184 (add_menu_item): Remove indentation support.
17185 (fill_submenu, fill_menu): Create hierarchical menus
17186 instead of using indentation.
17187
17188 2002-12-22 Richard M. Stallman <rms@gnu.org>
17189
17190 * xdisp.c (try_cursor_movement): Don't call try_window here.
17191 (redisplay_window): Never redisplay minibuffer when inactive.
17192
17193 * window.c (select_window_1): Undo 9/21 change.
17194
17195 2002-12-22 Steven Tamm <steventamm@mac.com>
17196
17197 * macterm.c (XTread_socket): Call KeyTranslate for control and
17198 meta to deal correctly shifted non-alpha characters, like C-S-5
17199 being treated like C-%. Do not look for shift key to deal
17200 with masking off control-key with mac-reverse-ctrl-meta.
17201
17202 2002-12-21 Richard M. Stallman <rms@gnu.org>
17203
17204 * xmenu.c (popup_get_selection): Now static. New arg DO_TIMERS.
17205 If it is non-nil, run timers. Use an unwind-protect to requeue
17206 the events that were read ahead.
17207 (popup_get_selection_unwind): New subroutine.
17208 (popup_get_selection_queue): File-scope variable now holds that queue.
17209 (xmenu_show): Pass 0 for DO_TIMERS to popup_get_selection.
17210 (xdialog_show): Pass 1 for DO_TIMERS to popup_get_selection.
17211 Use an unwind-protect to pop down the dialog box.
17212 (xdialog_show_unwind): New subroutine implements that.
17213
17214 * xdisp.c (row_containing_pos): Change exit test using last_y.
17215 (try_window_id): Abort if row_containing_pos returns null.
17216
17217 * lread.c (load_error_handler): New function.
17218 (Fload): Handle errors in Fsubstitute_in_file_name.
17219 Don't expect Fsignal to return.
17220
17221 * eval.c: Errors and throws work right with interrupt blocking.
17222 (struct catchtag): New elt interrupt_input_blocked.
17223 (unwind_to_catch): Restore interrupt_input_blocked from saved value.
17224 (internal_catch, Fcondition_case, internal_condition_case)
17225 (internal_condition_case_1, internal_condition_case_2): Save it.
17226 (Fsignal): Don't do TOTALLY_UNBLOCK_INPUT.
17227
17228 * editfns.c (Fformat): Add parens.
17229
17230 * dired.c (file_name_completion): Fix that change.
17231 Delete special quit-handling code; just use QUIT.
17232
17233 2002-12-21 Tak Ota <Takaaki.Ota@am.sony.com>
17234
17235 * dired.c (file_name_completion): Close directory on error
17236 just as in directory_files_internal.
17237
17238 2002-12-19 David Kastrup <David.Kastrup@t-online.de>
17239
17240 * window.c (Fset_window_configuration): Set old_point to correct
17241 value when new_current_buffer == current_buffer.
17242
17243 2002-12-17 Ben Key <bkey1@tampabay.rr.com>
17244
17245 Revisited my earlier fix for the following entry in etc/PROBLEMS:
17246 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
17247 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
17248
17249 These changes were in part based upon suggestions made by Peter
17250 'Luna' Runestig [peter@runestig.com].
17251
17252 * w32.c (g_b_init_is_windows_9x, g_b_init_open_process_token)
17253 (g_b_init_get_token_information, g_b_init_lookup_account_sid)
17254 (g_b_init_get_sid_identifier_authority ): Add several static
17255 global variables.
17256
17257 * w32.c (globals_of_w32): New function. Used to initialize those
17258 global variables that must always be initialized on startup even
17259 when the global variable initialized is non zero. Its primary
17260 purpose at this time is to set the global variables
17261 g_b_init_is_windows_9x, g_b_init_open_process_token,
17262 g_b_init_get_token_information, g_b_init_lookup_account_sid, and
17263 g_b_init_get_sid_identifier_authority to 0 on startup.
17264 Called from main.
17265
17266 * w32.c (is_windows_9x): Perform initialization only if
17267 g_b_init_is_windows_9x is equal to 0. On initialization set
17268 g_b_init_is_windows_9x equal to 1.
17269
17270 * w32.c (open_process_token): Perform initialization only if
17271 g_b_init_open_process_token is equal to 0. On initialization set
17272 g_b_init_open_process_token equal to 1.
17273
17274 * w32.c (get_token_information): Perform initialization only if
17275 g_b_init_get_token_information is equal to 0. On initialization
17276 set g_b_init_get_token_information equal to 1.
17277
17278 * w32.c (lookup_account_sid): Perform initialization only if
17279 g_b_init_lookup_account_sid is equal to 0. On initialization
17280 set g_b_init_lookup_account_sid equal to 1.
17281
17282 * w32.c (get_sid_identifier_authority): Perform initialization
17283 only if g_b_init_get_sid_identifier_authority is equal to 0.
17284 On initialization set g_b_init_get_sid_identifier_authority equal to 1.
17285
17286 * w32fns.c (globals_of_w32fns): New function. Used to initialize
17287 those global variables that must always be initialized on startup
17288 even when the global variable initialized is non zero.
17289 Its primary purpose at this time is to initialize the global variable
17290 track_mouse_event_fn.
17291
17292 * w32fns.c (w32_wnd_proc): Remove initialization of
17293 track_mouse_event_fn from the handler for the WM_SETFOCUS message.
17294
17295 * w32fns.c (syms_of_w32fns): Call globals_of_w32fns.
17296
17297 * w32menu.c (globals_of_w32menu): New function. Used to
17298 initialize those global variables that must always be initialized
17299 on startup even when the global variable initialized is non zero.
17300 Its primary purpose at this time is to initialize the global
17301 variables get_menu_item_info and set_menu_item_info.
17302
17303 * w32menu.c (initialize_frame_menubar): Remove initialization of
17304 get_menu_item_info and set_menu_item_info.
17305
17306 * w32menu.c (syms_of_w32menu): Call globals_of_w32menu.
17307
17308 * w32.h (globals_of_w32, globals_of_w32fns, globals_of_w32menu):
17309 Declare them.
17310
17311 * emacs.c (main): Call globals_of_w32 prior to calling
17312 init_environment if WINDOWSNT is defined. Call globals_of_w32fns
17313 and globals_of_w32menu if initialized is non zero and HAVE_NTGUI
17314 is defined.
17315
17316 * w32term.c (x_update_window_begin): Fix Windows API error
17317 detected by BoundsChecker. Test to determine if
17318 w32_system_caret_hwnd is NULL prior to attempting to use
17319 SendMessage to send the WM_EMACS_HIDE_CARET message to it.
17320
17321 * w32term.c (x_update_window_end): Fix Windows API error
17322 detected by BoundsChecker. Test to determine if
17323 w32_system_caret_hwnd is NULL prior to attempting to use
17324 SendMessage to send the WM_EMACS_SHOW_CARET message to it.
17325
17326 2002-12-17 Kenichi Handa <handa@m17n.org>
17327
17328 * coding.c (coding_system_require_warning): New variable.
17329 (syms_of_coding): DEFVAR it.
17330
17331 * coding.h (coding_system_require_warning): Extern it.
17332
17333 * fileio.c (choose_write_coding_system): Even if
17334 Vcoding_system_for_write is non-nil, if
17335 coding_system_require_warning is nonzero, call
17336 Vselect_safe_coding_system_function.
17337
17338 2002-12-17 Markus Rost <rost@math.ohio-state.edu>
17339
17340 * Makefile.in (lisp, shortlisp): Add cus-face and timer.
17341 (lisp): Add font-core.
17342
17343 2002-12-13 Stefan Monnier <monnier@cs.yale.edu>
17344
17345 * textprop.c (text_read_only): New arg `propval'.
17346 (get_char_property_and_overlay): Remove unused var `next_overlay'.
17347 (verify_interval_modification): Use text_read_only's new arg.
17348
17349 2002-12-13 Kenichi Handa <handa@m17n.org>
17350
17351 * coding.c (Funencodable_char_position): Set pend correctly.
17352
17353 2002-12-12 Jason Rumney <jasonr@gnu.org>
17354
17355 * w32term.c (last_mousemove_x, last_mousemove_y): New variables.
17356 (w32_read_socket) <WM_MOUSEMOVE>: Use them to detect non-movement.
17357 Be more careful about when help_events are generated.
17358
17359 2002-12-12 Steven Tamm <steventamm@mac.com>
17360
17361 * macterm.c (mac_check_for_quit_char): Correctly set the
17362 modifiers of the event to 0.
17363 * mac.c (sys_select): Duplicate rfds before calling select to
17364 ensure that rfds survive the while loop.
17365
17366 2002-12-11 Kim F. Storm <storm@cua.dk>
17367
17368 * xdisp.c (try_window_id): Don't call set_cursor_from_row if
17369 row_containing_pos returned NULL.
17370
17371 2002-12-10 Steven Tamm <steventamm@mac.com>
17372
17373 * mac.c (sys_read): Fix sys_read to not call select if IO is
17374 non-blocking.
17375 (sys_select): Fix sys_select to not use a timeout larger than
17376 the one given.
17377
17378 2002-12-10 Juanma Barranquero <lektu@terra.es>
17379
17380 * editfns.c (Fformat): Use alloca, not _alloca.
17381
17382 2002-12-09 Richard M. Stallman <rms@gnu.org>
17383
17384 * buffer.c (Fget_buffer_create): Call Qucs_set_table_for_input
17385 as the last thing.
17386
17387 2002-12-09 Dave Love <fx@gnu.org>
17388
17389 * s/sol2-8.h: Removed. (Not necessary.)
17390
17391 2002-12-09 Matthew Swift <swift@alum.mit.edu>
17392
17393 * editfns.c (Fformat): Handle precision in string conversion
17394 specifiers like libc functions do (ie, print at most that many
17395 characters).
17396
17397 2002-12-08 Richard M. Stallman <rms@gnu.org>
17398
17399 * xdisp.c (row_containing_pos): Check more carefully
17400 whether charpos is really in the row before returning it.
17401
17402 2002-12-07 Steven Tamm <steventamm@mac.com>
17403
17404 * sysdep.c (emacs_read) [HAVE_CARBON]: Have emacs_read use sys_read.
17405
17406 * eval.c (Feval) [HAVE_CARBON]: Calls mac_check_for_quit_char at
17407 each stack frame. This may change as it could be time consuming.
17408
17409 * macterm.c (mac_check_for_quit_char, quit_char_comp)
17410 (init_quit_char_handler, mac_determine_quit_char_modifiers)
17411 (mac_initialize): Add code to check for pressing of quit_char
17412 in the OS event queue.
17413
17414 * mac.c (sys_select): Call mac_check_for_quit_char every second
17415 while blocking on select.
17416
17417 * mac.c (sys_read): Use sys_select to test for input first
17418 before calling read, to allow C-g to break.
17419
17420 2002-12-07 Richard M. Stallman <rms@gnu.org>
17421
17422 * minibuf.c (Fcompleting_read): Doc fix.
17423
17424 * lread.c (syms_of_lread) <load-history>: Doc fix.
17425
17426 * fileio.c (Fcopy_file): Set immediate_quit around emacs_open call.
17427
17428 * eval.c (Fdefun, Fdefmacro): Record in load-history redefining an
17429 autoload.
17430
17431 * data.c (Fdefalias): Record in load-history redefining an autoload.
17432
17433 * alloca.c: Undo ifdef change accidentally made on 12-04.
17434
17435 2002-12-06 Francesco Potorti` <pot@gnu.org>
17436
17437 * xfns.c (png_load): Avoid double gamma correction for PNG images.
17438
17439 2002-12-04 Richard M. Stallman <rms@gnu.org>
17440
17441 * sysdep.c (fcntl.h): Test only HAVE_FCNTL_H.
17442
17443 * fileio.c (fcntl.h): Test only HAVE_FCNTL_H.
17444
17445 * alloca.c: Don't use #error.
17446
17447 2002-12-03 Dave Love <fx@gnu.org>
17448
17449 * buffer.c (Qucs_set_table_for_input): New.
17450 (Fget_buffer_create): Use it.
17451 (Qset_buffer_major_mode_hook): Deleted.
17452 (Fset_buffer_major_mode): Revert previous change.
17453 (init_buffer_once): Intern ucs-set-table-for-input.
17454 (syms_of_buffer): Delete Qset_buffer_major_mode_hook.
17455 Add &Qucs_set_table_for_input.
17456
17457 2002-12-03 Andreas Schwab <schwab@suse.de>
17458
17459 * callint.c (Fcall_interactively): Use next_event only if less
17460 than key_count.
17461
17462 2002-12-02 Andrew Choi <akochoi@shaw.ca>
17463
17464 * macmenu.c (add_menu_item, fill_menubar): Truncate menu item
17465 names to 255 characters.
17466
17467 * macterm.c (XTread_socket): If all frames have been collapsed,
17468 expand the first one before handling drag-and-drop events.
17469
17470 * s/darwin.h (GETPGRP_NO_ARG): Delete. Replaced by GETPGRP_VOID,
17471 which is detected by autoconf.
17472
17473 2002-12-01 Steven Tamm <steventamm@mac.com>
17474
17475 * unexmacosx.c (copy_twolevelhints, dump_it): Now corrects the
17476 offset in two hints table to allow prebinding to be redone and
17477 allow the executable to be stripped.
17478
17479 2002-11-29 Dave Love <fx@gnu.org>
17480
17481 * fns.c (Frequire): Don't call LOADHIST_ATTACH if feature was
17482 already provided.
17483
17484 2002-11-29 Richard M. Stallman <rms@gnu.org>
17485
17486 * xdisp.c (start_display): Check more intelligently for
17487 whether the line is continued.
17488 (move_it_vertically_backward): Clear it->continuation_lines_width.
17489
17490 2002-11-28 Dave Love <fx@gnu.org>
17491
17492 * s/amdahl.h, s/unipl5-0.h, m/sgi3000.h, s/3700.h, s/alliant-2800.h:
17493 * s/alliant.h, s/altos.h: Deleted. (Unused/empty.)
17494
17495 2002-11-27 Steven Tamm <steventamm@mac.com>
17496
17497 * fns.c (Frequire): Change nesting allowance from 2 to 3 to cause
17498 more descriptive error output from lread.c:Fload upon most require
17499 cycles during boostrapping.
17500
17501 2002-11-27 Jason Rumney <jasonr@gnu.org>
17502
17503 * fileio.c (Finsert_file_contents): Give a more appropriate error
17504 for files bigger than 2Gb when off_t is 32 bit.
17505
17506 * dired.c (Ffile_attributes): Don't return negative file sizes for
17507 files bigger than 2Gb when off_t is 32 bit.
17508
17509 2002-11-27 Dave Love <fx@gnu.org>
17510
17511 * s/irix6-0.h (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17512
17513 * systty.h: Don't conditionally define GETPGRP_NO_ARG.
17514 Test GETPGRP_VOID instead.
17515 [BSD_TERMIOS]: Remove definitions (never used).
17516
17517 * s/osf5-0.h (WAIT_USE_INT, SYS_SIGLIST_DECLARED, sys_siglist):
17518 Don't define.
17519 (GC_SETJMP_WORKS, GC_MARK_STACK): Define.
17520
17521 * m/mips.h (WORDS_BIG_ENDIAN): Define conditionally.
17522
17523 2002-11-25 Jason Rumney <jasonr@gnu.org>
17524
17525 * w32.c (sys_write): Avoid non-blocking mode, which is not fully
17526 supported.
17527
17528 2002-11-25 Dave Love <fx@gnu.org>
17529
17530 * unexalpha.c (update_dynamic_symbols): Cast arg of fatal_unexec.
17531
17532 * Makefile.in (TEMACS_LDFLAGS): Update last change.
17533
17534 2002-11-25 Andreas Schwab <schwab@suse.de>
17535
17536 * m/ia64.h: Restore `#ifndef NOT_C_CODE' deleted by last change.
17537
17538 2002-11-24 Steven Tamm <steventamm@mac.com>
17539
17540 * unexmacosx.c (unexec_realloc): Use malloc_default_zone to
17541 determine the size of pointers alloced in unexed space instead
17542 of using possibly invalid emacs_zone pointers. This fixes the
17543 binary incompatibility problems caused by updates to libSystem.B.
17544
17545 2002-11-24 Richard M. Stallman <rms@gnu.org>
17546
17547 * search.c (Fstring_match): Doc fix.
17548
17549 * callint.c (Fcall_interactively): If a command fails because
17550 `*' detects a read-only buffer, but RECORD_FLAG is set,
17551 record it anyway if the args don't actually do tty input.
17552
17553 2002-11-22 Dave Love <fx@gnu.org>
17554
17555 * sysdep.c (stuff_char) [PROTOTYPES]: Provide ISO C arglist.
17556
17557 * keyboard.c (interrupt_signal): Provide forward declaration.
17558 (kbd_buffer_store_event): Don't declare interrupt_signal.
17559
17560 * xdisp.c (store_frame_title_char) [PROTOTYPES]: Provide ISO C arglist.
17561
17562 2002-11-21 Richard M. Stallman <rms@gnu.org>
17563
17564 * eval.c (interactive_p): Skip any number of bytecode
17565 and special form frames, in any order.
17566
17567 2002-11-20 Jason Rumney <jasonr@gnu.org>
17568
17569 * w32fns.c (convert_mono_to_color_image): New function.
17570 (xbm_load, xbm_load_image): Use it when foreground or background
17571 is explicitly set.
17572
17573 2002-11-19 Dave Love <fx@gnu.org>
17574
17575 * s/usg5-4.h, sco4.h (bcopy, bzero, bcmp): Don't define.
17576
17577 2002-11-18 Jason Rumney <jasonr@gnu.org>
17578
17579 * w32fns.c (x_build_heuristic_mask): Filter palette info from color.
17580 (XPutPixel): Swap blue and red.
17581 (xpm_format, pbm_format, png_format, jpeg_format, tiff_format)
17582 (gif_format, gs_format): Use IMAGE_ASCENT_VALUE.
17583 (xpm_image_p, pbm_image_p, png_image_p, jpeg_image_p)
17584 (tiff_image_p, gif_image_p, gs_image_p): Don't check ascent.
17585
17586 2002-11-18 Dave Love <fx@gnu.org>
17587
17588 * m/orion105.h (HAVE_ALLOCA): Don't define.
17589
17590 * m/m68k.h, m/arm.h, mtekxd88.h, m/tower32v3.h: Don't define alloca.
17591
17592 * m/intel386.h: Don't include alloca.h or define alloca.
17593
17594 * m/ia64.h: Don't include alloca.h, stdlib.h. Don't declare
17595 malloc, realloc, calloc.
17596
17597 * m/hp800.h, m/sr2k.h, m/ns16000.h, m/wicat.h (bcopy, bzero)
17598 (bcmp): Don't define.
17599
17600 * m/delta.h (bcopy, bzero, bcmp, alloca): Don't define.
17601
17602 * m/amdahl.h: Don't define LIB_STANDARD.
17603
17604 * m/alpha.h: Move OSF1 stuff from here to s/osf1.h.
17605
17606 * s/osf1.h: Move OSF1 stuff from m/alpha.h to here.
17607
17608 * s/irix4-0.h, s/irix5-0.h, m/powerpcle.h, m/sparc.h:
17609 Don't include alloca.h.
17610
17611 * s/aix3-2.h (HAVE_FSYNC): Don't define.
17612
17613 * regex.c (_GNU_SOURCE): Don't define.
17614
17615 * process.c (_GNU_SOURCE): Don't define.
17616
17617 * fileio.c (_GNU_SOURCE, HAVE_FSYNC): Don't define.
17618
17619 2002-11-18 Markus Rost <rost@math.ohio-state.edu>
17620
17621 * s/sol2-8.h: Include sol2-6.h.
17622
17623 2002-11-18 Miles Bader <miles@gnu.org>
17624
17625 * dispextern.h (struct face): Add `overstrike' field.
17626 * xterm.c (x_draw_glyph_string_foreground)
17627 (x_draw_composite_glyph_string_foreground): Implement overstriking.
17628 * xfaces.c (load_face_font): Set `face->overstrike' based on
17629 result from choose_face_font.
17630 (best_matching_font, choose_face_font): Add `needs_overstrike'
17631 argument, and use it to return whether overstriking is desirable
17632 for this face/font combo.
17633 (set_font_frame_param: Pass new argument to choose_face_font.
17634
17635 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17636
17637 This change is my fix for the following entry in etc/PROBLEMS:
17638 "Emacs built on Windows 9x/ME crashes at startup on Windows XP,
17639 or Emacs builtpart of on XP crashes at startup on Windows 9x/ME."
17640
17641 * w32.c: Added wrapper functions around the win32 API functions
17642 OpenProcessToken, GetTokenInformation, LookupAccountSid, and
17643 GetSidIdentifierAuthority. These wrapper functions serve two
17644 purposes:
17645 1. They ensure that the wrapped function can never be called
17646 when Emacs is running on an operating system on which they are
17647 not supported (Microsoft Windows 95 / 98 / ME).
17648 2. They call the wrapped functions via function pointers rather
17649 than calling them directly. This avoids taking advantage of the
17650 undocumented fact that although these functions are not supported
17651 in the 9x branch of Microsoft Windows, the functions do exist in
17652 the version of advapi32.dll that is found in the 9x branch of
17653 Microsoft Windows.
17654
17655 * w32.c (init_user_info): Replace the calls to the win32 API
17656 functions OpenProcessToken, GetTokenInformation, LookupAccountSid,
17657 and GetSidIdentifierAuthority with calls to the newly added
17658 wrapper functions.
17659
17660 * w32.h: Added extern declarations for the following functions:
17661 syms_of_w32term, syms_of_w32fns, syms_of_w32select,
17662 syms_of_w32menu, and void syms_of_fontset.
17663
17664 * w32fns.c (w32_wnd_proc): Add code to reinitialize the
17665 function pointer track_mouse_event_fn in the handler for the
17666 WM_SETFOCUS message.
17667
17668 * w32menu.c (initialize_frame_menubar): Add code to
17669 reinitialize the function pointers set_menu_item_info and
17670 get_menu_item_info.
17671
17672 2002-11-17 Ben Key <BKey1@tampabay.rr.com>
17673
17674 * sound.c: Added a partial implementation of play-sound-internal
17675 for Microsoft Windows. Added various #ifdef / #else / #endif
17676 code blocks to separate the code that will compile under
17677 Microsoft Windows from the code that is specific to GNU/Linux.
17678 Moved several blocks of code around to make this separation of code
17679 into Windows compatible and GNU/Linux compatible code blocks easier.
17680
17681 * makefile.w32-in: Include sound.c and link with WinMM.lib.
17682
17683 * s/ms-w32.h: Defined the symbol HAVE_SOUND so that the newly
17684 added support for play-sound-internal under Windows would be
17685 included in the build of Emacs.
17686
17687 2002-11-16 Jason Rumney <jasonr@gnu.org>
17688
17689 * w32fns.c (w32_load_system_font): Don't disable Cleartype.
17690
17691 * w32term.c (w32_get_glyph_string_clip_rect): Clip cursor tightly.
17692
17693 2002-11-15 Stefan Monnier <monnier@cs.yale.edu>
17694
17695 * keyboard.c (command_loop_1): Fix int/Lisp_Object mixup.
17696 (adjust_point_for_property): Move out of display and invisible even if
17697 we were already inside before (in case a property was added while
17698 we weren't looking). Be more careful when handling invisible props.
17699 Skip invisible text as if it really wasn't there at all.
17700
17701 2002-11-15 Jason Rumney <jasonr@gnu.org>
17702
17703 * w32term.c (x_draw_image_foreground)
17704 (w32_draw_image_foreground_1): Use standard copy and invert
17705 operations to draw images.
17706
17707 * w32fns.c (x_create_x_image_and_pixmap): Fill in palette for
17708 depth of 1.
17709 (xbm_read_bitmap_data): Invert bits as xbm is read in.
17710 (XPutPixel): Don't invert bits here.
17711
17712 2002-11-15 Jason Rumney <jasonr@gnu.org>
17713
17714 * w32term.c (x_draw_image_foreground, x_draw_image_glyph_string)
17715 (w32_draw_image_foreground_1): Handle image masks.
17716 (x_draw_image_glyph_string): Don't BitBlt transparently.
17717
17718 * w32fns.c (w32_defined_color): Adjust RGB values for Emacs.
17719 (x_from_xcolors): Adjust RGB values for W32.
17720 (image_background, image_background_transparent)
17721 (postprocess_image, x_to_xcolors, x_disable_image)
17722 (x_build_heuristic_mask): Adapt for W32 and enable.
17723 (x_create_x_image_and_pixmap): Mark images with palettes as such.
17724 (xbm_load): Remove unused variable.
17725
17726 2002-11-14 Richard M. Stallman <rms@gnu.org>
17727
17728 * buffer.c (syms_of_buffer): Doc fix.
17729
17730 2002-11-14 Dave Love <fx@gnu.org>
17731
17732 * alloc.c (SETJMP_WILL_NOT_WORK): Add note.
17733
17734 * xterm.c (x_draw_relief_rect, x_draw_box_rect, x_update_cursor):
17735 * xmenu.c (unuse_menu_items, digest_single_submenu):
17736 * xfns.c (x_put_x_image):
17737 * xdisp.c (message2_nolog, set_message):
17738 * undo.c (record_point):
17739 * terminfo.c (tparam):
17740 * syntax.c (scan_sexps_forward):
17741 * scroll.c (calculate_scrolling, calculate_direct_scrolling):
17742 * composite.c (update_compositions):
17743 * cm.c (calccost, cmgoto):
17744 * charset.c (c_string_width): Declare all args (per C99).
17745
17746 * frame.h (get_specified_cursor_type, get_window_cursor_type): Declare.
17747
17748 * lisp.h (get_specified_cursor_type, get_window_cursor_type):
17749 Don't declare.
17750
17751 * emacs.c (main) [!VMS]: Avoid third arg.
17752
17753 * fns.c (Fcopy_sequence): Doc fix.
17754 (Fmap_char_table): Cast `call2'.
17755
17756 2002-11-14 Francesco Potorti` <pot@gnu.org>
17757
17758 * s/sol2-8.h: New file.
17759
17760 2002-11-14 Kim F. Storm <storm@cua.dk>
17761
17762 * buffer.c (syms_of_buffer) <mode-line-format>: Document symbol
17763 dependency on `risky-local-variable' and the :propertize form.
17764
17765 2002-11-12 Stefan Monnier <monnier@cs.yale.edu>
17766
17767 * fns.c (Fmap_char_table): Don't use map_char_table's function arg.
17768
17769 * syntax.c (scan_sexps_forward): Undo last patch.
17770 Use a more obvious fix: check eob before updating the syntax table.
17771
17772 2002-11-09 Stefan Monnier <monnier@cs.yale.edu>
17773
17774 * syntax.c (scan_sexps_forward): Update syntax table before reading
17775 a char rather than after so we don't update the table past eob.
17776
17777 2002-11-09 Dave Love <fx@gnu.org>
17778
17779 * buffer.c (Fset_buffer_major_mode): Fix last change.
17780
17781 * regex.c (regexec): Fix pmatch declaration.
17782
17783 * cmds.c (Fself_insert_command): Apply Vtranslation_table_for_input.
17784
17785 * keyboard.c (command_loop_1): Apply Vtranslation_table_for_input
17786 to self-inserting characters.
17787 (syms_of_keyboard) <keyboard-translate-table>: Doc fix.
17788
17789 * coding.c (Vtranslation_table_for_input): New.
17790 (syms_of_coding): DEFVAR it.
17791
17792 2002-11-08 Juanma Barranquero <lektu@terra.es>
17793
17794 * w32term.c (w32_draw_fringe_bitmap): Remove unused local variable
17795 window.
17796
17797 2002-11-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
17798
17799 * process.c (Fformat_network_address): Remove unused locals p,
17800 cp, and i.
17801
17802 2002-11-06 Dave Love <fx@gnu.org>
17803
17804 * buffer.c (Qset_buffer_major_mode_hook): New.
17805 (Fset_buffer_major_mode): Use it.
17806
17807 2002-11-06 Richard M. Stallman <rms@gnu.org>
17808
17809 * xterm.c (x_term_init): Use turn_on_atimers, not start_polling
17810 and stop_polling.
17811
17812 * process.c (wait_reading_process_input):
17813 Test POLLING_PROBLEM_IN_SELECT, not hpux.
17814 Avoid initialization for auto Lisp_Object var.
17815
17816 * s/hpux11.h (POLLING_PROBLEM_IN_SELECT): Add #undef.
17817
17818 * s/hpux10.h (POLLING_PROBLEM_IN_SELECT): Defined.
17819
17820 2002-11-05 Richard M. Stallman <rms@gnu.org>
17821
17822 * s/sol2-5.h (BROKEN_SIGIO): Turn off the #undef.
17823
17824 * callint.c (Fcall_interactively): New local filter_specs.
17825 (Fcall_interactively): Check for progn as well as let.
17826 Add a gcpro.
17827 (Qprogn): New variable.
17828 (syms_of_callint): Staticpro and init Qprogn.
17829
17830 2002-11-04 John Paul Wallington <jpw@shootybangbang.com>
17831
17832 * lread.c (Feval_buffer): Doc fix.
17833
17834 2002-11-04 Dave Love <fx@gnu.org>
17835
17836 * keyboard.c (read_char): Always translate iff
17837 Vkeyboard_translate_table is a char table and c is valid.
17838
17839 * xterm.c (XTread_socket): Check Lisp types for Vx_keysym_table
17840 and fix C types.
17841
17842 2002-11-03 Stefan Monnier <monnier@cs.yale.edu>
17843
17844 * xdisp.c (single_display_prop_intangible_p): Strings are intangible.
17845
17846 * editfns.c (get_pos_property): Don't hardcode Qfield.
17847
17848 * keyboard.c (adjust_point_for_property): Handle `display' prop on
17849 overlays. Also handle `invisible' prop.
17850
17851 2002-11-02 Stefan Monnier <monnier@cs.yale.edu>
17852
17853 * coding.c (decode_coding_emacs_mule, decode_coding_iso2022)
17854 (decode_coding_sjis_big5, decode_eol): Allow lone \r in DOS EOL.
17855
17856 2002-11-01 Andreas Schwab <schwab@suse.de>
17857
17858 * editfns.c (Fmessage): Revert last change to properly handle %%.
17859
17860 2002-11-01 Stefan Monnier <monnier@cs.yale.edu>
17861
17862 * xmenu.c (unuse_menu_items): New fun.
17863 (menu_items_inuse): New var.
17864 (syms_of_xmenu): Initialize it.
17865 (init_menu_items): Use it to detect re-entrance.
17866 (Fx_popup_menu, Fx_popup_dialog, set_frame_menubar): Reset when done.
17867 (Fx_popup_menu): Remove spurious XSETFRAME.
17868
17869 * editfns.c (find_field): Make an exception for nil fields.
17870
17871 2002-11-01 Dave Love <fx@gnu.org>
17872
17873 * m/gec63.h: Deleted.
17874
17875 2002-10-31 Dave Love <fx@gnu.org>
17876
17877 * xterm.c (XTread_socket): Fix last change.
17878 (xaw_scroll_callback): Cast call_data to long to avoid warning.
17879
17880 2002-10-31 Stefan Monnier <monnier@cs.yale.edu>
17881
17882 * process.c (Fformat_network_address): Fix int/Lisp_Object mixup.
17883
17884 2002-10-30 Stefan Monnier <monnier@cs.yale.edu>
17885
17886 * editfns.c (overlays_around, get_pos_property): New funs.
17887 (find_field): Use them.
17888 Also be careful not to modify POS before its last use.
17889 (Fmessage): Don't Fformat if there's nothing to format.
17890
17891 2002-10-30 Dave Love <fx@gnu.org>
17892
17893 * process.c [HAVE_SYS_WAIT]: Include sys/wait.h.
17894 [HAVE_PTY_H]; Include pty.h.
17895
17896 * lread.c (Fload) <!load_dangerous_libraries>: Close fd.
17897
17898 * xterm.c (Qeql): Declare.
17899 (Vx_keysym_table): New.
17900 (syms_of_xterm): Initialize it.
17901 (XTread_socket): Use it. Deal with ASCII keysyms.
17902 (XSetIMValues) [HAVE_X11R6]: Prototype.
17903
17904 * keyboard.c (lispy_accent_codes, lispy_accent_keys): Extended.
17905 (lispy_kana_keys): Comment out.
17906 (make_lispy_event) [XK_kana_A]: Comment out.
17907 (modify_event_symbol) <sizeof (long) == sizeof (EMACS_INT)>:
17908 Fix sprintf call.
17909
17910 * s/osf5-0.h (C_SWITCH_SYSTEM): Revert last change (fixed by
17911 regexp.h change).
17912 (TERMINFO, LIBS_TERMCAP): Define.
17913
17914 * s/usg5-4.h (bcopy, bzero): Define conditional on HAVE_BCOPY.
17915 (bcmp): Define conditional on HAVE_BCMP.
17916 (NO_SIOCTL_H): Don't define.
17917 (TIOCSIGSEND): Don't make conditional on IRIX6.
17918
17919 * s/sol2-5.h: Don't include strings.h.
17920 (bcopy, bzero, bcmp) [HAVE_BCOPY]: Don't undef.
17921
17922 * s/irix6-0.h (IRIX6): Don't define.
17923 (bcopy, bcmp, bzero): Don't undef.
17924
17925 * s/irix6-5.h: Don't include strings.h.
17926 (IRIX6): Don't define.
17927 (bcopy, bcmp, bzero): Don't undef.
17928
17929 * syntax.c (Fforward_comment): Doc fix.
17930
17931 2002-10-29 Kim F. Storm <storm@cua.dk>
17932
17933 * process.c (Fsignal_process): Allow PROCESS to be specified by
17934 name in addition to pid (as integer or string).
17935
17936 2002-10-28 Harald Maier <Harald.Maier.BW@t-online.de> (tiny change)
17937
17938 * w32heap.c: Don't redefine _heap_init and _heap_term on MSVC 7 build
17939 environments.
17940
17941 2002-10-27 Kim F. Storm <storm@cua.dk>
17942
17943 * xterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17944
17945 * w32term.c (note_mouse_highlight): Don't use mouse-face if hidden.
17946
17947 * msdos.c (IT_note_mouse_highlight): Don't use mouse-face if hidden.
17948
17949 * macterm.c (note_mouse_highlight): Don't use mouse-face if hidden.
17950
17951 2002-10-26 Richard M. Stallman <rms@gnu.org>
17952
17953 * editfns.c (Fformat): Detect invalid format letters for floats.
17954
17955 2002-10-25 Kenichi Handa <handa@m17n.org>
17956
17957 * xfns.c (x_set_name): Encode by Qcompound_text unconditionally.
17958 (x_set_title): Likewise.
17959
17960 2002-10-25 Juanma Barranquero <lektu@terra.es>
17961
17962 * macgui.h:
17963 * w32gui.h: Remove definition of XColor.
17964
17965 * dispextern.h [!HAVE_X_WINDOWS]: Define XColor.
17966
17967 2002-10-24 Kim F. Storm <storm@cua.dk>
17968
17969 * xdisp.c (get_window_cursor_type): New arg ACTIVE_CURSOR.
17970 Callers changed (supply dummy arg).
17971
17972 * lisp.h (get_window_cursor_type): Update prototype.
17973
17974 * w32term.c (x_display_and_set_cursor): Get active_cursor from
17975 get_window_cursor_type to track system caret.
17976
17977 2002-10-24 Kim F. Storm <storm@cua.dk>
17978
17979 * process.c (Fformat_network_address): New function.
17980 (syms_of_process): Defsubr it.
17981 (list_processes_1): Use it to format :local/:remote address if
17982 service/host is not set; before Emacs would crash in that case.
17983 (Fmake_network_process): Don't use Ffind_operation_coding_system
17984 to setup coding system if host or service is not set.
17985
17986 2002-10-23 Juanma Barranquero <lektu@terra.es>
17987
17988 Patch suggested by Jay Finger <jay_finger@hotmail.com>.
17989
17990 * w32term.c (w32_term_init): Pass XColor to w32_define_color, not
17991 COLORREF.
17992
17993 * macgui.h:
17994 * w32gui.h: Add definition of XColor.
17995
17996 * macfns.c:
17997 * w32fns.c:
17998 * xfaces.c: Remove definition of XColor.
17999
18000 2002-10-22 Stefan Monnier <monnier@cs.yale.edu>
18001
18002 * xfns.c (x_set_name, x_set_title): `icon.value' has unsigned char.
18003
18004 * window.c (window_loop): For GET_LRU_WINDOW and GET_LARGEST_WINDOW>,
18005 Only ignore truly dedicated windows. For UNSHOW_BUFFER, delete the
18006 window if it is dedicated.
18007 (Fshrink_window): Add preserve_before as was done for enlarge_window.
18008 (Vspecial_display_function): Update docstring.
18009
18010 * buffer.c (assoc_ignore_text_properties, Fother_buffer, Fkill_buffer)
18011 (call_overlay_mod_hooks): Use CONSP and XCAR/XCDR.
18012 (Fget_buffer_create, advance_to_char_boundary): Use BEG and BEG_BYTE;
18013
18014 2002-10-21 Stefan Monnier <monnier@cs.yale.edu>
18015
18016 * casefiddle.c (casify_region): Don't treat a prefix char as part
18017 of a word when at the beginning.
18018
18019 2002-10-17 Juanma Barranquero <lektu@terra.es>
18020
18021 * lread.c (syms_of_lread): Fix typos.
18022
18023 2002-10-17 Dave Love <fx@gnu.org>
18024
18025 * Makefile.in (TEMACS_LDFLAGS): Add trailing comment.
18026
18027 2002-10-16 Richard M. Stallman <rms@gnu.org>
18028
18029 * fileio.c (Fcopy_file): Fix backward test of KEEP_TIME.
18030
18031 2002-10-14 Juanma Barranquero <lektu@terra.es>
18032
18033 * w16select.c (syms_of_win16select): Fix docstring for
18034 `selection-coding-system'.
18035
18036 * w32select.c (syms_of_w32select): Likewise.
18037
18038 2002-10-14 Stefan Monnier <monnier@cs.yale.edu>
18039
18040 * syntax.c (scan_lists): Don't get fooled by a symbol ending with
18041 a backslash-quoted char.
18042 (scan_lists, scan_sexps_forward): Pacify the compiler.
18043
18044 2002-10-13 Richard M. Stallman <rms@gnu.org>
18045
18046 * window.c (window_scroll): Set immediate_quit.
18047
18048 * print.c (print): When backquote form is the car of a list,
18049 output in old style. Use old_backquote_output to output all
18050 comma forms inside it in old style too.
18051
18052 * buffer.h (struct buffer): Move `undo_list' down below `name'.
18053
18054 2002-10-11 Markus Rost <rost@math.ohio-state.edu>
18055
18056 * emacs.c (syms_of_emacs) <kill-emacs-hook>: Doc fix (not run in
18057 batch mode).
18058
18059 * lread.c (Fload): Doc fix (load-suffixes).
18060
18061 2002-10-10 Steven Tamm <steventamm@mac.com>
18062
18063 * macterm.c (syms_of_macterm, mac_get_mouse_btn):
18064 Reverse functionality of mac-wheel-button-is-mouse-2 to be correct.
18065 Also switch the default to Qnil from Qt.
18066
18067 2002-10-08 Kenichi Handa <handa@m17n.org>
18068
18069 * coding.c (code_convert_region): When we need more GAP for
18070 conversion, pay attention to the case that coding->produced is not
18071 greater than coding->consumed.
18072
18073 2002-10-07 Richard M. Stallman <rms@gnu.org>
18074
18075 * unexelf.c (unexec): Redo 9/16 change, but only if IRIX6_5.
18076
18077 2002-10-06 Andrew Choi <akochoi@shaw.ca>
18078
18079 * macmenu.c (mac_menu_show): Add j to count menu items; match
18080 menu_item_selection to it to find selected item.
18081
18082 2002-10-06 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18083
18084 * xterm.c (XTread_socket): Fix from 2002-10-03 didn't cover all
18085 cases. The correct fix is to pass ReparentNotify to Xt.
18086 The shell widget interprets ConfigureNotify differently depending
18087 on if it has been reparented or not.
18088
18089 2002-10-05 Markus Rost <rost@math.ohio-state.edu>
18090
18091 * editfns.c (Fformat_time_string): Doc fix.
18092
18093 2002-10-05 John Paul Wallington <jpw@shootybangbang.com>
18094
18095 * fns.c (Flength): Doc fix.
18096
18097 2002-10-04 Stefan Monnier <monnier@cs.yale.edu>
18098
18099 * keyboard.c (keyremap): New struct.
18100 (read_key_sequence): Use it: globally replace keytran_foo with
18101 keytran.foo and fkey_foo with fkey.foo. Rename temp vars
18102 keytran_next and fkey_next to just `next'.
18103
18104 2002-10-04 Steven Tamm <steventamm@mac.com>
18105
18106 * macterm.c (keycode_to_xkeysym_table): Change return to be
18107 treated like an X keysym.
18108
18109 2002-10-03 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
18110
18111 * xterm.c (XTread_socket): For ConfigureNotify, with x and y == 0,
18112 and USE_MOTIF, call XTranslateCoordinates to get the real x and y.
18113 This is to also handle x/y changes that occur because of a resize.
18114
18115 2002-10-02 John Paul Wallington <jpw@shootybangbang.com>
18116
18117 * frame.c (Vdelete_frame_functions): New variable.
18118 (syms_of_frame): Initialize and defvar it.
18119 (Fdelete_frame): Use it instead of delete-frame-hook. Don't run
18120 it when frame's `tooltip' parameter is non-nil.
18121
18122 * xfns.c (x_create_tip_frame): Set `tooltip' frame parameter to t.
18123
18124 * w32fns.c (x_create_tip_frame): Likewise.
18125
18126 * macfns.c (x_create_tip_frame): Likewise.
18127
18128 2002-09-30 Kenichi Handa <handa@m17n.org>
18129
18130 * xterm.c (x_encode_char): For DIM=1 charset, set ccl->reg[2] to
18131 -1 before calling ccl_driver.
18132
18133 * coding.c (decode_coding_emacs_mule): Check coding->cmp_data.
18134 Only when it is non-nil, handle composition sequence.
18135 (setup_coding_system) <0>: Don't force composition handling.
18136
18137 * Makefile.in (lisp, shortlisp): Add utf-16.elc
18138
18139 2002-09-29 Richard M. Stallman <rms@gnu.org>
18140
18141 * search.c (Freplace_match): Adjust match data for the substitution
18142 just made in the buffer.
18143
18144 * xdisp.c (STOP_POLLING, RESUME_POLLING): New macros.
18145 (redisplay_internal): Use them. Do RESUME_POLLING at end of function.
18146
18147 2002-09-27 Richard M. Stallman <rms@gnu.org>
18148
18149 * keyboard.c (STOP_POLLING, RESUME_POLLING): New macros.
18150 (read_char): Use them. Do all exits thru the end of the function.
18151
18152 2002-09-27 Kenichi Handa <handa@etl.go.jp>
18153
18154 * xfaces.c (try_font_list): Pay attention to the case that FAMILY
18155 is nil.
18156
18157 2002-09-26 Richard M. Stallman <rms@gnu.org>
18158
18159 * regex.h (__restrict_arr): Don't define if already defined.
18160
18161 * coding.c (run_pre_post_conversion_on_str):
18162 Save and restore Vdeactivate_mark.
18163
18164 2002-09-26 John Paul Wallington <jpw@shootybangbang.com>
18165
18166 * minibuf.c (Fminibufferp): Add an optional `buffer' argument.
18167
18168 2002-09-26 Kenichi Handa <handa@etl.go.jp>
18169
18170 * xfaces.c (try_font_list): New arg PREFER_FACE_FAMILY. If it is
18171 nonzero, try face's family at first. Otherwise try FAMILY at first.
18172 (choose_face_font): If C is a single byte char or latin-1, call
18173 try_font_list with PREFER_FACE_FAMILY 1.
18174
18175 2002-09-21 Richard M. Stallman <rms@gnu.org>
18176
18177 * window.c (select_window_1): Don't select frame.
18178 Set frame's selected window only when frame itself is selected.
18179 (Fselect_window): Doc fix.
18180
18181 2002-09-18 Kim F. Storm <storm@cua.dk>
18182
18183 * process.c (make-network-process): Doc fix (there is no
18184 network-server-log-function hook).
18185
18186 2002-09-18 Richard M. Stallman <rms@gnu.org>
18187
18188 * print.c (print): Clear out the unused parts of Vprint_number_table.
18189 (syms_of_print): Doc fix for `print-number-table'.
18190
18191 * unexelf.c (unexec): Undo previous change.
18192
18193 2002-09-17 Andreas Schwab <schwab@suse.de>
18194
18195 * m/alpha.h [LINUX]: Don't define DATA_START.
18196
18197 2002-09-16 Dave Love <fx@gnu.org>
18198
18199 * unexelf.c (unexec): Deal with .got, reinstating change from
18200 25-08-1999.
18201
18202 2002-09-13 Richard M. Stallman <rms@gnu.org>
18203
18204 * s/sol2-6.h (UNEXEC): Comment out definition.
18205
18206 * unexsol.c (unexec): Don't downcase first letter of error msg.
18207
18208 * xfaces.c (Fcolor_supported_p): Just one arg is required.
18209
18210 2002-09-12 Markus Rost <rost@math.ohio-state.edu>
18211
18212 * unexsol.c: Include buffer.h, charset.h, coding.h.
18213
18214 2002-09-11 Richard M. Stallman <rms@gnu.org>
18215
18216 * unexsol.c: Don't use report_file_error; do it by hand
18217 using dlerror.
18218
18219 * process.c (wait_reading_process_input, both versions):
18220 Before calling turn_on_atimers, call stop_polling.
18221
18222 * emacs.c (syms_of_emacs) <command-line-args>: Doc fix.
18223
18224 * xdisp.c (try_scrolling): If after make_cursor_line_fully_visible
18225 we go to too_near_end, call clear_glyph_matrix.
18226 (redisplay_window): After make_cursor_line_fully_visible,
18227 call clear_glyph_matrix and bypass `goto done'.
18228
18229 * xfns.c (x_report_frame_params): If FRAME_SCROLL_BAR_PIXEL_WIDTH is 0
18230 and we have non-toolkit scroll bars, return nil for scroll-bar-width.
18231
18232 2002-09-10 Richard M. Stallman <rms@gnu.org>
18233
18234 * fileio.c (Fdo_auto_save): Catch error making directory.
18235 Only call push_message if we need to.
18236 At the same time, make an unwind-protect to pop it.
18237 Rename local message_p to old_message_p.
18238 (do_auto_save_make_dir, do_auto_save_eh): New functions.
18239 (do_auto_save_unwind): Don't call pop_message.
18240
18241 * lisp.h (pop_message_unwind): Renamed from push_message_unwind.
18242
18243 * keyboard.c (Fexecute_extended_command): Use pop_message_unwind.
18244
18245 * alloc.c (Fgarbage_collect): Use pop_message_unwind.
18246
18247 * xdisp.c (pop_message_unwind): Renamed from push_message_unwind.
18248
18249 2002-09-10 Stefan Monnier <monnier@cs.yale.edu>
18250
18251 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): Delete.
18252 (CHECK_INFINITE_LOOP): Don't pop anything: just set `cycle' to 1.
18253 (re_match_2_internal): Be more careful with infinite loops.
18254
18255 2002-09-10 Kim F. Storm <storm@cua.dk>
18256
18257 * macros.c (end_kbd_macro): New function.
18258 (Fend_kbd_macro): Use it.
18259
18260 * macros.h (end_kbd_macro): Declare extern.
18261
18262 * keyboard.c (Fdiscard_input): If defining keyboard macro,
18263 end and save it instead of discarding it.
18264
18265 2002-09-09 Markus Rost <rost@math.ohio-state.edu>
18266
18267 * s/sol2-6.h: Fix typo. Add comment.
18268
18269 2002-09-09 Richard M. Stallman <rms@gnu.org>
18270
18271 * regex.c (regnum_t): Use signed int, not unsigned int.
18272
18273 * s/sol2-6.h: New file.
18274
18275 * s/sol2-5.h (UNEXEC): Definition deleted.
18276
18277 2002-09-08 Kim F. Storm <storm@cua.dk>
18278
18279 * macros.c (executing_macro_index): Change type to EMACS_INT.
18280 (syms_of_macros): DEFVAR_INT it (needed by kmacro).
18281
18282 * macros.h (executing_macro_index): Change type to EMACS_INT.
18283
18284 2002-09-06 Richard M. Stallman <rms@gnu.org>
18285
18286 * casetab.c (set_case_table): Make canon table point to eqv table.
18287
18288 2002-09-06 Juanma Barranquero <lektu@terra.es>
18289
18290 * coding.c (syms_of_coding): Fix spacing.
18291
18292 * composite.c (Fcompose_region_internal)
18293 (Fcompose_string_internal): Likewise.
18294
18295 * data.c (Flsh): Likewise.
18296
18297 * fontset.c (Fset_fontset_font): Likewise.
18298
18299 * macfns.c (Fx_server_max_request_size): Likewise.
18300
18301 * w16select.c (syms_of_win16select): Likewise.
18302
18303 * w32select.c (syms_of_w32select): Likewise.
18304
18305 * xselect.c (syms_of_xselect): Likewise.
18306
18307 2002-09-05 Richard M. Stallman <rms@gnu.org>
18308
18309 * regex.c (set_image_of_range_1): In no-TRANSLATE case,
18310 call EXTEND_RANGE_TABLE and return a proper value.
18311 (set_image_of_range): Don't call set_image_of_range_1
18312 if no TRANSLATE or if range includes all of Latin-1.
18313 Only call it for the Latin-1 part of the range.
18314 For other cases, make two separate ranges,
18315 one for the original specified characters and one for
18316 their case-conversions.
18317
18318 2002-09-04 Richard M. Stallman <rms@gnu.org>
18319
18320 * s/sol2-5.h (UNEXEC): Use unexsol.o.
18321
18322 * window.c (displayed_window_lines): Correct for one-off bug
18323 in HEIGHT on non-window displays.
18324
18325 * regex.c (set_image_of_range_1): New function.
18326 (set_image_of_range): Use set_image_of_range_1 for Latin-1.
18327 Return a value to indicate running out of memory.
18328 (SET_RANGE_TABLE_WORK_AREA): Check value from set_image_of_range.
18329 (extend_range_table_work_area): New subroutine.
18330 (EXTEND_RANGE_TABLE): Replaces EXTEND_RANGE_TABLE_WORK_AREA.
18331 Different calling conventions, and used from set_image_of_range{,_1}.
18332 (IMMEDIATE_QUIT_CHECK): Definitions moved.
18333
18334 2002-09-04 Juanma Barranquero <lektu@terra.es>
18335
18336 * makefile.w32-in: All dependencies updated.
18337
18338 2002-09-01 Richard M. Stallman <rms@gnu.org>
18339
18340 * unexsol.c: New file.
18341
18342 * xfns.c (Qbox): Declare external, don't define.
18343
18344 * xdisp.c (redisplay_window) <force-start case>:
18345 If point is on semi-visible last line, reposition
18346 it at previous line.
18347
18348 * alloc.c (display_malloc_warning): Use display-warning.
18349 (malloc_warning_1): Function deleted.
18350
18351 * alloc.c [ALLOC_DEBUG]: #undef INLINE.
18352
18353 * lread.c (read1): Handle #! by skipping the line.
18354
18355 2002-08-31 Richard M. Stallman <rms@gnu.org>
18356
18357 * Makefile.in (TEMACS_LDFLAGS): Renamed from ALL_LDFLAGS.
18358 Don't include LDFLAGS.
18359 (temacs): Pass LDFLAGS separately, and not via YMF_PASS_LDFLAGS.
18360
18361 2002-08-31 Eli Zaretskii <eliz@is.elta.co.il>
18362
18363 * xdisp.c (get_window_cursor_type): Don't use x_highlight_frame
18364 member of x_display_info unless we compile for some window system.
18365
18366 2002-08-31 Kim F. Storm <storm@cua.dk>
18367
18368 * xdisp.c (Valternate_cursor_type, Qalternate_cursor_type): Removed.
18369 (get_window_cursor_type): Don't use them.
18370 (syms_of_xdisp): Remove intern, staticpro, and defvar for them.
18371
18372 2002-08-30 Kenichi Handa <handa@etl.go.jp>
18373
18374 * xdisp.c (get_next_display_element): Fix previous change.
18375
18376 2002-08-30 Andrew Choi <akochoi@shaw.ca>
18377
18378 * macterm.c (expose_overlaps): New function (merge code from xterm.c).
18379 (expose_window): Use it to fix the display of overlapping
18380 rows (merge code from xterm.c).
18381
18382 * macfns.c (Qbox): Add extern declaration.
18383
18384 2002-08-30 Juanma Barranquero <lektu@terra.es>
18385
18386 * w32fns.c (Qbox): Make extern.
18387 (syms_of_w32fns): Remove initialization of Qbox.
18388
18389 2002-08-30 Rune Kleveland <runekl@viewpoint.no> (tiny change)
18390
18391 * xfns.c (Fx_open_connection): Fix error message.
18392
18393 2002-08-30 Kim F. Storm <storm@cua.dk>
18394
18395 The following changes consolidates the handling of the cursor
18396 type in xdisp.c, moving duplicate code and functionality from
18397 xfns.c, xterm.c, w32fns.c, w32term.c, macfns.c, and macterm.c.
18398
18399 * frame.h (enum text_cursor_kinds): Consolidated here.
18400 Added DEFAULT_CURSOR value.
18401 (struct frame) <desired_cursor, cursor_width>
18402 <blink_off_cursor, blink_off_cursor_width>: New fields.
18403 Consolidated from output_x, output_w32 and output_mac structs.
18404 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18405 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros consolidated here.
18406
18407 * xdisp.c (Qbar, Qhbar, Qbox, Qhollow, Vblink_cursor_alist):
18408 Variables consolidated here.
18409 (Valternate_cursor_type, Qalternate_cursor_type): New variables.
18410 (Vcursor_in_non_selected_windows): Renamed from
18411 cursor_in_non_selected_windows and changed to Lisp_Object.
18412 (syms_of_xdisp): Define and staticpro new and moved variables.
18413 (get_specified_cursor_type): Renamed from x_specified_cursor_type;
18414 consolidated here. Recognize Qhollow setting.
18415 (set_frame_cursor_types): New function to set frame cursor types
18416 based on the frame parameters.
18417 (get_window_cursor_type): New function to calculate new cursor
18418 type and width for the specified window. Based on duplicated
18419 code consolidated here.
18420 Enhancements: cursor-in-non-selected-windows may be a cursor type,
18421 check buffer-local alternate-cursor-type and blink-cursor-alist
18422 before using built-in blink off methods.
18423
18424 * dispextern.h (cursor_in_non_selected_windows): Extern removed.
18425
18426 * lisp.h (Qcursor_in_non_selected_windows): Extern removed.
18427 (get_specified_cursor_type, get_window_cursor_type)
18428 (set_frame_cursor_types): Added prototypes.
18429
18430 * macfns.c (x_specified_cursor_type): Removed.
18431 (x_set_cursor_type): Use set_frame_cursor_types.
18432 (Qbar, Qbox): Removed.
18433 (syms_of_macfns): Don't intern or staticpro them.
18434
18435 * macterm.c (x_specified_cursor_type): Remove prototype.
18436 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18437 (x_display_and_set_cursor): Use get_window_cursor_type.
18438 Remove unused local variables cursor_non_selected, active_cursor.
18439 Redraw cursor if hbar cursor width changes.
18440 (make_mac_frame): Set FRAME_DESIRED_CURSOR.
18441
18442 * macterm.h (enum text_cursor_kinds): Removed.
18443 (struct output_mac) <current_cursor, desired_cursor, cursor_width>
18444 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18445 (FRAME_DESIRED_CURSOR): Macro removed.
18446
18447 * w32fns.c (Vblink_cursor_alist): Removed.
18448 (Qbar, Qhbar, Qbox, Qhollow): Removed.
18449 (syms_of_w32fns): Don't intern, staticpro, or define them.
18450 (x_specified_cursor_type): Removed.
18451 (x_set_cursor_type): Use set_frame_cursor_types.
18452
18453 * w32term.c (x_specified_cursor_type): Remove prototype.
18454 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18455 (x_display_and_set_cursor): Use get_window_cursor_type.
18456 Remove unused local variables cursor_off_state.
18457 Redraw cursor if hbar cursor width changes.
18458 Changed all occurrences of w32_highlight_frame to x_highlight_frame.
18459
18460 * w32term.h (enum text_cursor_kinds): Removed.
18461 (struct output_w32) <current_cursor, desired_cursor, cursor_width>
18462 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18463 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18464 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
18465 (struct w32_display_info) <x_highlight_frame>: Renamed member from
18466 w32_highlight_frame.
18467
18468 * xfns.c (Vblink_cursor_alist): Removed.
18469 (Qbar, Qhbar, Qbox, Qhollow): Removed.
18470 (syms_of_xfns): Don't intern, staticpro, or define them.
18471 (x_specified_cursor_type): Removed.
18472 (x_set_cursor_type): Use set_frame_cursor_types.
18473
18474 * xterm.c (x_specified_cursor_type): Remove prototype.
18475 (x_draw_bar_cursor): Use FRAME_CURSOR_WIDTH.
18476 (x_display_and_set_cursor): Use get_window_cursor_type.
18477 Remove unused local variables cursor_off_state.
18478 Redraw cursor if hbar cursor width changes.
18479
18480 * xterm.h (enum text_cursor_kinds): Removed.
18481 (struct output_x) <current_cursor, desired_cursor, cursor_width>
18482 <blink_off_cursor, blink_off_cursor_width>: Members removed.
18483 (FRAME_DESIRED_CURSOR, FRAME_CURSOR_WIDTH, FRAME_BLINK_OFF_CURSOR)
18484 (FRAME_BLINK_OFF_CURSOR_WIDTH): Macros removed.
18485 (x_specified_cursor_type): Remove prototype.
18486
18487 2002-08-28 Richard M. Stallman <rms@gnu.org>
18488
18489 * w32fns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
18490 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
18491 (Vblink_cursor_alist): New variable.
18492 (syms_of_w32fns): Initialize and defvar it.
18493 (x_specified_cursor_type): Recognize Qbox for filled box.
18494 Exceptions are hollow boxes.
18495 (Qbox, Qhollow): New variables.
18496 (syms_of_w32fns): Initialize and staticpro them.
18497
18498 * w32term.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
18499 New macros.
18500 (struct w32_output): New fields blink_off_cursor,
18501 blink_off_cursor_width.
18502 (FRAME_CURSOR_WIDTH): New macro.
18503
18504 * w32term.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
18505 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
18506
18507 * w32term.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18508 for bar cursor.
18509
18510 * w32term.c (expose_overlaps): New function.
18511 (expose_window): Use it to fix the display of overlapping rows.
18512
18513 2002-08-28 Simon Josefsson <jas@extundo.com>
18514
18515 * xfns.c (Fx_open_connection): Improve help when X connection
18516 fails, xhost is insecure and xauth is better.
18517
18518 2002-08-28 Juanma Barranquero <lektu@terra.es>
18519
18520 * makefile.w32-in: Add missing dependencies on w32term.h and
18521 composite.h.
18522
18523 * emacs.c (USAGE1): Add missing newline.
18524
18525 2002-08-27 Andrew Choi <akochoi@shaw.ca>
18526
18527 * s/darwin.h [HAVE_LIBNCURSES]: Define HAVE_TERMINFO.
18528
18529 2002-08-27 Richard M. Stallman <rms@gnu.org>
18530
18531 * xfns.c (x_set_cursor_type): Set FRAME_BLINK_OFF_CURSOR and
18532 FRAME_BLINK_OFF_CURSOR_WIDTH using defaults and Vblink_cursor_alist.
18533 (Vblink_cursor_alist): New variable.
18534 (syms_of_xfns): Initialize and defvar it.
18535 (x_specified_cursor_type): Recognize Qbox for filled box.
18536 Exceptions are hollow boxes.
18537 (Qbox, Qhollow): New variables.
18538 (syms_of_xfns): Initialize and staticpro them.
18539
18540 * xterm.h (FRAME_BLINK_OFF_CURSOR, FRAME_BLINK_OFF_CURSOR_WIDTH):
18541 New macros.
18542 (struct x_output): New fields blink_off_cursor, blink_off_cursor_width.
18543
18544 * xterm.c (x_display_and_set_cursor): Use FRAME_BLINK_OFF_CURSOR
18545 and FRAME_BLINK_OFF_CURSOR_WIDTH for blinking cursor off.
18546
18547 * emacs.c (main): Handle --script.
18548 (USAGE1): Mention --script.
18549 (standard_args): Define sort order for --script.
18550
18551 2002-08-27 Gerd Moellmann <gerd.moellmann@t-online.de>
18552
18553 * xdisp.c (redisplay_updating_p): Variable removed.
18554 (inhibit_free_realized_faces, Qinhibit_free_realized_faces):
18555 New variables.
18556 (init_iterator): Don't free realized faces if
18557 inhibit_free_realized_faces is set.
18558 (redisplay_internal): Bind Qinhibit_free_realized_faces to nil.
18559 (syms_of_xdisp): DEFVAR_BOOL inhibit-free-realized-faces,
18560 initialize Qinhibit_free_realized_faces.
18561
18562 * dispextern.h (PRODUCE_GLYPHS): Set inhibit_free_realized_faces
18563 when iterator is adding glyphs to a glyph matrix.
18564
18565 2002-08-27 Kenichi Handa <handa@etl.go.jp>
18566
18567 * xdisp.c (get_next_display_element): In unibyte case, don't use
18568 octal form for such eight-bit characters that can be converted to
18569 multibyte char.
18570
18571 2002-08-26 Kim F. Storm <storm@cua.dk>
18572
18573 * frame.c (make_terminal_frame) [CANNOT_DUMP]: Initialize
18574 foreground and background colors. From Joe Buehler.
18575
18576 2002-08-26 Miles Bader <miles@gnu.org>
18577
18578 * bytecode.c (Fbyte_code): Fsub1 can GC, so protect it.
18579
18580 2002-08-25 Andrew Choi <akochoi@shaw.ca>
18581
18582 * emacs.c (main): Call init_mac_osx_environment if HAVE_CARBON is
18583 defined instead of MAC_OSX.
18584
18585 * s/darwin.h (select): Define select to sys_select only if
18586 HAVE_CARBON is defined.
18587 (HAVE_WORKING_VFORK): #undef it. Define vfork to fork.
18588 (DONT_REOPEN_PTY): #def it.
18589
18590 * macterm.c (XTread_socket): Remove code to call
18591 SendEventToEventTarget for keys with command modifiers when
18592 mac_command_key_is_meta is nil.
18593
18594 2002-08-24 Andreas Schwab <schwab@suse.de>
18595
18596 * eval.c (Fdefvar): Fix last change.
18597
18598 2002-08-23 Richard M. Stallman <rms@gnu.org>
18599
18600 * eval.c (Fdefvar, Fdefconst, Fdefvaralias):
18601 Record variables in load history as (defvar . VAR).
18602 (Fdefvar): Don't record in load history if no initial value.
18603 (Qdefvar): New variable.
18604 (syms_of_eval): Init and staticpro it.
18605
18606 * lread.c (syms_of_lread): Doc fix.
18607 (build_load_history): Use Fmember to see if a definition
18608 is already in the Vload_history element.
18609
18610 * process.c (Fstart_process): Remove /: from program name.
18611
18612 * emacs.c (decode_env_path): Don't add /: if file name handler
18613 has a `safe-magic' property.
18614
18615 * callproc.c (Fcall_process): Remove /: from program name.
18616
18617 2002-08-23 Stefan Monnier <monnier@cs.yale.edu>
18618
18619 * regex.c (PATFETCH): Remove the translating fetch.
18620 (PATFETCH_RAW): Rename to PATFETCH.
18621 (set_image_of_range): New fun.
18622 (SET_RANGE_TABLE_WORK_AREA): Use it.
18623 (regex_compile): Don't translate the pattern chars so eagerly.
18624 Only do it when inserting an `exactn' bytecode or when handling
18625 a char-range.
18626 (mutually_exclusive_p): Avoid empty statement.
18627
18628 2002-08-22 Kim F. Storm <storm@cua.dk>
18629
18630 * xdisp.c (redisplay_window): Do not `goto try_to_scroll' when we
18631 end up on a partially visible line; this reverts a specific part
18632 of the 2002-07-07 change by Richard M. Stallman to "fix" a nasty
18633 display error which has been reported several times now.
18634 However it introduces the problem that changes was supposed to fix.
18635 See my comments in the source if you want to debug this further.
18636
18637 2002-08-20 Kenichi Handa <handa@etl.go.jp>
18638
18639 * abbrev.c (Fexpand_abbrev): Fix for the multibyte case.
18640
18641 2002-08-19 Eli Zaretskii <eliz@is.elta.co.il>
18642
18643 * msdos.c (croak): Add `void' to definition.
18644
18645 * sysdep.c (request_sigio, unrequest_sigio) [MSDOS]:
18646 Don't define them, they are defined in msdos.c.
18647
18648 * mem-limits.h [MSDOS]: Declare etext.
18649
18650 * fileio.c (Ffile_name_directory) [DOS_NT]: Don't declare `beg'
18651 `const' since CORRECT_DIR_SEPS modifies its target.
18652
18653 2002-08-19 Kim F. Storm <storm@cua.dk>
18654
18655 * keyboard.c (Fclear_this_command_keys): Add optional arg
18656 KEEP-RECORD to avoid clearing lossage when we just want to clear
18657 the current key sequence (kmacro needs this).
18658
18659 2002-08-19 Kenichi Handa <handa@localhost>
18660
18661 * composite.c (run_composition_function): Call FUNC if it is fboundp.
18662
18663 * composite.h (COMPOSITION_MODIFICATION_FUNC): If PROP is not a
18664 cons, return Qnil.
18665
18666 2002-08-17 Richard M. Stallman <rms@gnu.org>
18667
18668 * s/sol2-5.h (BROKEN_SIGIO): Add #undef.
18669
18670 * sysdep.c [!VMS]: Include sys/files.h.
18671
18672 * editfns.c (save_restriction_restore): Defend from unchained marker.
18673
18674 * buffer.c (overlays_at): Handle extending vec uniformly.
18675 (overlays_in): Handle extending vec from length 0 as in overlays_at.
18676
18677 2002-08-15 Andrew Choi <akochoi@shaw.ca>
18678
18679 * mac.c (init_mac_osx_environment): New function.
18680
18681 * emacs.c (main) [MAC_OSX]: Call init_mac_osx_environment.
18682
18683 2002-08-14 Kim F. Storm <storm@cua.dk>
18684
18685 * macros.c (Fstart_kbd_macro): Added NO-EXEC argument to inhibit
18686 executing macro before appending to it (when used from Lisp).
18687 (Fexecute_kbd_macro): Added LOOPFUNC argument to supply function
18688 which is called prior to each iteration of macro (for kmacro.el).
18689 (Fend_kbd_macro, Fcall_last_kbd_macro): Likewise.
18690
18691 * lisp.h (Fexecute_kbd_macro): Update prototype.
18692
18693 * keyboard.c (Fcommand_execute): Update call to Fexecute_kbd_macro.
18694
18695 2002-08-14 Kenichi Handa <handa@etl.go.jp>
18696
18697 * xselect.c (QUTF8_STRING): New variable.
18698 (symbol_to_x_atom): Pay attention to QUTF8_STRING.
18699 (x_atom_to_symbol): Likewise.
18700 (x_get_local_selection): New argument local_request. If it is
18701 nonzero, call handler_fn with the second arg nil.
18702 (x_handle_selection_request): Call x_get_local_selection with
18703 local_request 0.
18704 (lisp_data_to_selection_data): Don't encode the string here.
18705 (Fx_get_selection_internal): Call x_get_local_selection with
18706 local_request 1.
18707 (syms_of_xselect): Intern and staticpro QUTF8_STRING.
18708
18709 * xterm.c (x_term_init): Initialize dpyinfo->Xatom_UTF8_STRING.
18710
18711 * xterm.h (struct x_display_info): New member Xatom_UTF8_STRING.
18712
18713 2002-08-13 Richard M. Stallman <rms@gnu.org>
18714
18715 * minibuf.c (Fminibufferp): New function.
18716 (syms_of_minibuf): Defsubr it.
18717 (Fminibuffer_prompt_end): Handle non-minibuffers specially.
18718
18719 2002-08-13 Gerd Moellmann <gerd.moellmann@t-online.de>
18720
18721 * coding.c (Funencodable_char_position): Lisp_Object/int mixup.
18722
18723 2002-08-12 Richard M. Stallman <rms@gnu.org>
18724
18725 * syswait.h: Only the include of sys/wait.h tests HAVE_SYS_WAIT_H.
18726 [!VMS] (WCOREDUMP, WEXITSTATUS, WIFEXITED, WIFSTOPPED, WIFSIGNALED)
18727 (WSTOPSIG, WTERMSIG): Define each one independently if not defined
18728 already.
18729
18730 * buffer.c (syms_of_buffer) <fill-column>: Doc fix.
18731
18732 2002-08-11 Andrew Choi <akochoi@shaw.ca>
18733
18734 * macterm.c (XTmouse_position): Check wp with is_emacs_window.
18735 (Vmac_pass_command_to_system): New variable.
18736 (Vmac_pass_control_to_system): New variable.
18737 (do_mouse_moved): Check wp with is_emacs_window.
18738 (XTread_socket): Check window_ptr with is_emacs_window.
18739 Call FrontNonFloatingWindow instead of FrontWindow. Send keydown
18740 events back to Mac Toolbox for processing, depending on values of
18741 Vmac_pass_command_to_system and Vmac_pass_control_to_system.
18742 (syms_of_macterm): DEFVAR_LISP Vmac_pass_command_to_system and
18743 Vmac_pass_control_to_system.
18744
18745 2002-08-10 Kenichi Handa <handa@etl.go.jp>
18746
18747 * coding.c (unencodable_char_position): New function.
18748 (Funencodable_char_position): New function.
18749 (syms_of_coding): Defsubr Funencodable_char_position.
18750
18751 2002-08-10 Andrew Choi <akochoi@shaw.ca>
18752
18753 * mac.c (sys_select) [MAC_OSX]: New function.
18754
18755 * macterm.c (MakeMeTheFrontProcess): New function.
18756 (mac_initialize): Call MakeMeTheFrontProcess.
18757
18758 * s/darwin.h: Define select to sys_select.
18759
18760 2002-08-09 Richard M. Stallman <rms@gnu.org>
18761
18762 * keyboard.c (make_lispy_event): Test WINDOWSNT, not WINDOWS_NT.
18763
18764 2002-08-09 Gerd Moellmann <gerd.moellmann@t-online.de>
18765
18766 * xdisp.c (forward_to_next_line_start): Return 0 when reaching the
18767 end of the buffer.
18768
18769 2002-08-08 Ken Raeburn <raeburn@gnu.org>
18770
18771 * coding.c (Ffind_operation_coding_system): Fix Lisp_Object/int mixup.
18772
18773 * puresize.h (BASE_PURESIZE): Increase to 910000.
18774
18775 2002-08-08 Kenichi Handa <handa@etl.go.jp>
18776
18777 * coding.c (Ffind_operation_coding_system): For write-region, if
18778 VISIT is a filename, make it the target.
18779
18780 2002-08-07 Richard M. Stallman <rms@gnu.org>
18781
18782 * alloc.c (mark_object): Detect long lists for debugging.
18783 (mark_object_loop_halt): New variable.
18784
18785 * s/hpux10.h (C_SWITCH_SYSTEM): #undef it.
18786
18787 * data.c (Fmake_variable_frame_local): Doc fix.
18788
18789 2002-08-01 David Ponce <david@dponce.com>
18790
18791 * w32menu.c (local_heap, local_alloc, local_free): New macros.
18792 (malloc_widget_value, free_widget_value)
18793 (w32_free_submenu_strings): Use them.
18794
18795 (push_submenu_start, push_submenu_end, push_left_right_boundary)
18796 (push_menu_pane, push_menu_item, single_keymap_panes)
18797 (single_menu_item, Fx_popup_menu, menubar_selection_callback)
18798 (single_submenu, set_frame_menubar)
18799 (w32_menu_show, w32_dialog_show): Use AREF, ASET, ASIZE.
18800
18801 (Fx_popup_menu): Don't show pop up menu until preceding one is
18802 actually cleaned up. Moved UNGCPRO outside #ifdef HAVE_MENUS block.
18803
18804 * w32menu.c: Changes adapted from xmenu.c
18805 (set_frame_menubar): First parse all submenus,
18806 then make widget_value trees from them.
18807 Don't allocate any widget_value objects
18808 until we are done with the parsing.
18809 (parse_single_submenu): New function.
18810 (digest_single_submenu): New function.
18811 (single_submenu): Function deleted, replaced by those two.
18812
18813 2002-08-04 Andrew Choi <akochoi@shaw.ca>
18814
18815 * macterm.c (XTread_socket): Check that FrontNonFloatingWindow
18816 returns a valid window pointer before proceeding for keyDown and
18817 autoKey events.
18818
18819 2002-08-03 Andrew Choi <akochoi@shaw.ca>
18820
18821 * macterm.c (USE_CARBON_EVENTS): New macro.
18822 (macCtrlKey, macShiftKey, macMetaKey, macAltKey): New macros.
18823 (x_iconify_frame): Call CollapseWindow.
18824 (Vmac_reverse_ctrl_meta): New variable.
18825 (Vmac_wheel_button_is_mouse_2): New variable.
18826 (init_mac_drag_n_drop): New function.
18827 (mac_do_receive_drag): New function.
18828 (mac_handle_service_event): New function.
18829 (init_service_handler): New function.
18830 (mac_to_emacs_modifiers): New function.
18831 (mac_event_to_emacs_modifiers): New function.
18832 (mac_get_mouse_btn): New function.
18833 (mac_convert_event_ref): New function.
18834 (XTread_socket) [USE_CARBON_EVENTS]: Call ReceiveNextEvent,
18835 SendEventToEventTarget, mac_event_to_emacs_modifiers, and
18836 mac_get_mouse_btn.
18837 (mac_initialize): Call init_mac_drag_n_drop and init_service_handler.
18838
18839 * keyboard.c: Define Qmouse_wheel, mouse_wheel_syms, and
18840 lispy_mouse_wheel_names for MAC_OSX as well as for WINDOWS_NT.
18841 (kbd_buffer_get_event): Set used_mouse_menu for MENU_BAR_EVENT and
18842 TOOL_BAR_EVENT for MAC_OS as well.
18843 (make_lispy_event): Handle MOUSE_WHEEL_EVENT for MAC_OSX as well
18844 as for WINDOWS_NT.
18845 (syms_of_keyboard): Initialize Qmouse_wheel for MAC_OSX.
18846
18847 * termhooks.h (event_kind): Define MOUSE_WHEEL_EVENT also for MAC_OSX.
18848
18849 2002-08-03 Gerd Moellmann <gerd.moellmann@t-online.de>
18850
18851 * xdisp.c (forward_to_next_line_start): Fix a condition that
18852 lead to a newline being skipped.
18853
18854 2002-08-02 Andrew Choi <akochoi@shaw.ca>
18855
18856 * mac.c (syms_of_mac): Defsubr Sx_selection_exists_p.
18857
18858 2002-08-01 Richard M. Stallman <rms@gnu.org>
18859
18860 * Makefile.in (SOME_MACHINE_OBJECTS): Add fontset.o.
18861
18862 2002-07-31 Andrew Choi <akochoi@shaw.ca>
18863
18864 * macfns.c: #undef init_process before #define-ing it.
18865
18866 * s/darwin.h: Define MAC_OS, SYMS_SYSTEM, and OTHER_FILES only if
18867 HAVE_CARBON is defined.
18868
18869 2002-07-31 Richard M. Stallman <rms@gnu.org>
18870
18871 * xmenu.c (set_frame_menubar): First parse all submenus,
18872 then make widget_value trees from them.
18873 Don't allocate any widget_value objects
18874 until we are done with the parsing.
18875 (parse_single_submenu): New function.
18876 (digest_single_submenu): New function.
18877 (single_submenu): Function deleted, replaced by those two.
18878
18879 2002-07-30 Juanma Barranquero <lektu@terra.es>
18880
18881 * w32proc.c (syms_of_ntproc): Fix docstring of
18882 `w32-get-true-file-attributes'.
18883
18884 2002-07-28 Richard M. Stallman <rms@gnu.org>
18885
18886 * s/hpux8.h (HPUX8): Define this before including hpux.h.
18887 (HAVE_SYS_WAIT_H): #define deleted; we let Autoconf decide.
18888
18889 * s/hpux.h (HAVE_SYS_WAIT_H): The #undef is conditional on HPUX8.
18890
18891 * keyboard.c (make_lispy_event):
18892 Use #ifdef to test USE_TOOLKIT_SCROLL_BARS.
18893 Explicitly clear up_modifier in event->modifiers.
18894
18895 2002-07-27 Richard M. Stallman <rms@gnu.org>
18896
18897 * xterm.h (FRAME_CURSOR_WIDTH): New macro.
18898
18899 * xterm.c (x_display_and_set_cursor): Check FRAME_CURSOR_WIDTH
18900 for bar cursor.
18901
18902 2002-07-26 Kenichi Handa <handa@etl.go.jp>
18903
18904 * coding.c (detect_coding_iso2022): While checking a byte sequence
18905 for CODING_CATEGORY_MASK_ISO_8_2, if we read one extra byte, check
18906 it in the normal loop.
18907
18908 2002-07-24 Gerd Moellmann <gerd.moellmann@t-online.de>
18909
18910 * xterm.c (expose_overlaps): New function.
18911 (expose_window): Use it to fix the display of overlapping rows.
18912
18913 * xdisp.c (unwind_redisplay): Clear redisplay_updating_p.
18914
18915 2002-07-23 Ken Raeburn <raeburn@gnu.org>
18916
18917 * lisp.h (XPNTR): Use NO_UNION_TYPE version for union as well,
18918 since it only depends on XUINT.
18919
18920 * m/alpha.h (BITS_PER_LONG, BITS_PER_EMACS_INT, EMACS_INT,
18921 EMACS_UINT, SPECIAL_EMACS_INT, DATA_SEG_BITS,
18922 PNTR_COMPARISON_TYPE, VALBITS, MARKBIT, XINT, XUINT, XPNTR):
18923 Macros deleted.
18924
18925 * mem-limits.h (start_of_data): If DATA_START is defined, prefer
18926 its value over other approaches.
18927 * sysdep.c (start_of_data): Don't define the function if a macro
18928 form has been defined.
18929
18930 2002-07-23 Gerd Moellmann <gerd.moellmann@t-online.de>
18931
18932 * xdisp.c (redisplay_updating_p): New variable.
18933 (init_iterator): Don't free realized faces when
18934 redisplay_updating_p is set.
18935 (redisplay_internal): Set redisplay_updating_p while updating
18936 the display.
18937
18938 2002-07-23 Richard M. Stallman <rms@gnu.org>
18939
18940 * editfns.c (Fmessage): Treat "" like nil.
18941
18942 2002-07-23 Kenichi Handa <handa@etl.go.jp>
18943
18944 * xdisp.c (face_before_or_after_it_pos):
18945 Call FETCH_MULTIBYTE_CHAR with byte postion, not char position.
18946
18947 2002-07-22 Juanma Barranquero <lektu@terra.es>
18948
18949 * callproc.c (init_callproc) [DOS_NT]:
18950 Initialize Vshared_game_score_directory to nil.
18951 (syms_of_callproc) [DOS_NT]: Likewise.
18952
18953 2002-07-22 Gerd Moellmann <gerd.moellmann@t-online.de>
18954
18955 * xdisp.c (display_line): Replace an abort with xassert.
18956
18957 2002-07-21 Richard M. Stallman <rms@gnu.org>
18958
18959 * xdisp.c (redisplay_window): Don't test BEG_UNCHANGED
18960 and END_UNCHANGED when setting buffer_unchanged_p.
18961 Use current_matrix_up_to_date_p to decide whether to use
18962 try_cursor_movement.
18963
18964 * config.in (HAVE_SHARED_GAME_DIR): Undef deleted.
18965
18966 * epaths.in (PATH_GAME): New macro, edited by ../Makefile.in.
18967
18968 * callproc.c (init_callproc): Set up Vshared_game_score_directory.
18969 Set to nil if dir does not exist.
18970 (syms_of_callproc): Init unconditionally and simply.
18971
18972 * buffer.c (Fbuffer_list): Doc fix.
18973
18974 2002-07-21 Ken Raeburn <raeburn@gnu.org>
18975
18976 * sysdep.c (end_of_text, end_of_data): Unused functions deleted.
18977
18978 * buffer.c (mmap_realloc): When shrinking, make sure number of
18979 pages to unmap is rounded towards zero.
18980
18981 * m/mips-siemens.h (XSETUINT, XSETPNTR): Unused macros deleted.
18982 (XSETINT): Deleted.
18983
18984 * m/att3b.h (XINT): Don't define.
18985 (VALBITS, VALMASK, XTYPE): Deleted.
18986 (DATA_SEG_BITS): Define.
18987 * m/gec63.h (VALBITS, VALAMASK, XTYPE, XSETTYPE, XPNTR, XSET,
18988 ARRAY_MARK_FLAG): Deleted.
18989 (DATA_SEG_BITS): Define.
18990 * m/pfa50.h (VALBITS, VALMASK, XTYPE): Deleted.
18991 (DATA_SEG_BITS): Define.
18992
18993 2002-07-20 Richard M. Stallman <rms@gnu.org>
18994
18995 * print.c (print_error_message): New args CONTEXT and CALLER.
18996 Calls changed.
18997
18998 * lisp.h (print_error_message): Declare new args.
18999
19000 * keyboard.c (cmd_error_internal): Pass Vsignaling_function
19001 and CONTEXT to print_error_message, don't print them here.
19002 For a Quit, don't use Vsignaling_function.
19003 Call message_log_maybe_newline.
19004
19005 * Makefile.in (xsmfns.o): Don't depend on lisp.h.
19006
19007 2002-07-20 Kim F. Storm <storm@cua.dk>
19008
19009 * xdisp.c (redisplay_window): Test MODIFF to set buffer_unchanged_p.
19010
19011 2002-07-19 Ken Raeburn <raeburn@gnu.org>
19012
19013 * bytecode.c (struct byte_stack): Pointers into byte string now
19014 point to const.
19015 * callproc.c (Fcall_process): Make NEW_ARGV array hold pointer to
19016 const.
19017 * charset.h (BCOPY_SHORT): Source pointer now points to const.
19018 * coding.c (encode_eol, detect_coding, detect_eol):
19019 (decode_coding, encode_coding, detect_coding_system):
19020 Source strings now treated as const.
19021 (decode_coding_string, encode_coding_string): Use STRING_COPYIN to
19022 modify Lisp string contents.
19023 * coding.h (decode_coding, encode_coding, detect_coding,
19024 detect_eol): Declarations updated.
19025 * composite.c (compose_chars_in_text): Treat Lisp string contents
19026 as const.
19027 * dispnew.c (safe_bcopy): Source pointer now points to const.
19028 * lisp.h (STRING_COPYIN): New macro.
19029 (detect_coding_system, safe_bcopy, temp_output_buffer_setup):
19030 (internal_with_output_to_temp_buffer): Declarations updated.
19031 * print.c (temp_output_buffer_setup):
19032 (internal_with_output_to_temp_buffer): Buffer name argument is now
19033 pointer to const.
19034 * sound.c (struct sound_device): Function pointer field "write"
19035 buffer argument now points to const.
19036 (vox_write): Buffer argument points to const.
19037 * syntax.c (Fstring_to_syntax, skip_chars): Treat Lisp string
19038 contents as const.
19039 * sysdep.c (emacs_write): Buffer pointer now const.
19040 * term.c (encode_terminal_code): Buffer pointer now const.
19041 * xfaces.c (may_use_scalable_font_p): Argument now points to const.
19042 (x_face_list_fonts, x_update_menu_appearance):
19043 (hash_string_case_insensitive): Treat Lisp string contents as const.
19044
19045 2002-07-19 Juanma Barranquero <lektu@terra.es>
19046
19047 * xdisp.c (syms_of_xdisp): Remove redundant deprecation info.
19048
19049 * fileio.c (syms_of_fileio): Likewise.
19050 (Ffile_name_as_directory): Fix argument name in docstring.
19051 (file_name_as_directory): Use literal '/' instead of DIRECTORY_SEP.
19052
19053 2002-07-18 Richard M. Stallman <rms@gnu.org>
19054
19055 * data.c (Fdefalias): Doc fix.
19056
19057 2002-07-17 Dave Love <fx@gnu.org>
19058
19059 * intervals.h (text_property_stickiness): Use P_.
19060
19061 * ccl.c: Remove `emacs' conditionals.
19062 (ccl_backtrace_table): Fix size spec.
19063 (ccl_driver): Fix type errors.
19064
19065 2002-07-16 Ken Raeburn <raeburn@gnu.org>
19066
19067 * alloc.c (xstrdup, make_string, make_unibyte_string)
19068 (make_multibyte_string, build_string): String pointer args now
19069 point to const.
19070 * charset.c (find_charset_in_text, c_string_width):
19071 (chars_in_text, multibyte_chars_in_text, parse_str_as_multibyte):
19072 * fileio.c (report_file_error):
19073 * insdel.c (copy_text, count_size_as_multibyte, insert_1):
19074 (count_combining_before, count_combining_after, insert_1_both):
19075 (insert, insert_and_inherit, insert_string):
19076 (insert_before_markers, insert_before_markers_and_inherit):
19077 * lread.c (intern, oblookup, hash_string):
19078 * minibuf.c (temp_echo_area_glyphs):
19079 * search.c (fast_c_string_match_ignore_case):
19080 * sysdep.c (emacs_open, set_file_times):
19081 * xfaces.c (xstricmp):
19082 * xdisp.c (store_frame_title, string_char_and_length):
19083 (message_dolog, message2, message2_nolog, set_message): Likewise.
19084 (set_message_1): Cast message string argument to const pointer.
19085 * editfns.c (general_insert_function): Insertion function now
19086 takes pointer to const for input data.
19087 * charset.h (find_charset_in_text, c_string_width):
19088 (parse_str_as_multibyte): Declarations updated.
19089 * dispextern.h (xstricmp): Declaration updated.
19090 * lisp.h (chars_in_text, multibyte_chars_in_text, copy_text):
19091 (count_size_as_multibyte, count_combining_before):
19092 (count_combining_after, insert_1, insert_1_both, message_dolog):
19093 (insert, insert_and_inherit, insert_before_markers)
19094 (insert_before_markers_and_inherit, set_message, message2):
19095 (message2_dolog, build_string, make_string, make_unibyte_string):
19096 (make_multibyte_string, intern, oblookup, report_file_error):
19097 (fast_c_string_match_ignore_case, temp_echo_area_glyphs):
19098 (emacs_open, xstrdup): Declarations updated.
19099 * systime.h (set_file_times): Declaration updated.
19100
19101 * charset.c (find_charset_in_text, lisp_string_width): Use const
19102 for pointer to lisp string data.
19103 * charset.h (FETCH_STRING_CHAR_ADVANCE):
19104 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK):
19105 * coding.c (Ffind_coding_systems_region_interval):
19106 * fileio.c (Ffile_name_directory, Ffile_name_nondirectory):
19107 (Fmake_directory_internal, Fdelete_directory):
19108 (Ffile_name_absolute_p, Fwrite_region, double_dollars):
19109 * fontset.c (font_family_registry, fs_query_fontset):
19110 (list_fontsets):
19111 * frame.c (Fframe_parameter):
19112 * keyboard.c (cmd_error_internal):
19113 * keymap.c (Fdescribe_buffer_bindings):
19114 * lread.c (complete_filename_p, openp):
19115 * minibuf.c (Fminibuffer_complete_word):
19116 * xdisp.c (string_pos_nchars_ahead, init_from_display_pos):
19117 (face_before_or_after_it_pos, next_element_from_string):
19118 (get_overlay_arrow_glyph_row, display_mode_element):
19119 (decode_mode_spec_coding):
19120 * xterm.c (same_x_server): Likewise.
19121
19122 * buffer.c (reset_buffer_local_variables): Delete "#if 0"
19123 settings of non-existent fields.
19124
19125 * editfns.c (Fstring_to_char): Don't use XSTRING/XSETSTRING to
19126 copy a lisp value.
19127
19128 * lread.c (Fintern_soft): Use string macros instead of
19129 Lisp_String fields.
19130 * keyboard.c (echo_char, parse_modifiers_uncached):
19131 (parse_solitary_modifier, Fexecute_extended_command): Likewise.
19132 * textprop.c (validate_interval_range, interval_of): Likewise.
19133
19134 * fontset.c (Fset_fontset_font): Use SDATA instead of XSTRING()->data.
19135
19136 * charset.h (FETCH_STRING_CHAR_ADVANCE)
19137 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SBYTES instead of
19138 XSTRING()->size_byte.
19139
19140 * lisp.h (SDATA, SREF): Produce rvalue.
19141 (SSET): New macro.
19142 * alloc.c (make_event_array): Use SSET for storing into a string.
19143 * buffer.c (Fother_buffer): Use SREF when retrieving a byte from
19144 a string.
19145 * casefiddle.c (casify_object): Use SSET.
19146 * charset.h (FETCH_STRING_CHAR_ADVANCE)
19147 (FETCH_STRING_CHAR_ADVANCE_NO_CHECK): Use SDATA when getting
19148 address of string contents.
19149 * data.c (Faref): Use SDATA.
19150 (Faset): Use SDATA, SSET.
19151 * dired.c (directory_files_internal): Use SSET.
19152 * fileio.c (Fmake_symbolic_link, Fexpand_file_name): Use SSET.
19153 (Fread_file_name): Use SREF, SSET.
19154 * fns.c (concat): Use SSET.
19155 (concat, Fdelete): Use SDATA.
19156 * insdel.c (insert_from_string_1): Use SDATA.
19157 * keyboard.c (Fevent_convert_list): Use SREF.
19158 * lread.c (Fload): Use SDATA, SSET.
19159 * macfns.c (validate_x_resource_name): Use SSET.
19160 * process.c (status_message): Use SSET.
19161 * search.c (wordify): Use SDATA.
19162 (Freplace_match): Use SREF.
19163 * w32fns.c (validate_x_resource_name): Use SSET.
19164 * xfns.c (validate_x_resource_name): Use SSET.
19165 * xterm.c (x_catch_errors, x_clear_errors): Use SSET.
19166
19167 2002-07-16 Richard M. Stallman <rms@gnu.org>
19168
19169 * s/hpux11.h (USG_SUBTTY_WORKS): Defined.
19170
19171 * xdisp.c (reconsider_clip_changes):
19172 Don't test prevent_redisplay_optimizations_p.
19173 (redisplay_internal): Test prevent_redisplay_optimizations_p
19174 along with clip_changed in some cases.
19175 (try_window_id): Likewise.
19176 (redisplay_window): New local var buffer_unchanged_p.
19177
19178 * keyboard.c (cmd_error) [HAVE_X_WINDOWS]: Maybe call cancel_houglass.
19179
19180 * process.c (create_process): Test USG_SUBTTY_WORKS.
19181 (process_send_signal): Clean up handling of GID.
19182 Detect errors in ioctls meant to set GID.
19183
19184 * window.c (temp_output_buffer_show):
19185 Don't set prevent_redisplay_optimizations_p.
19186
19187 2002-07-15 Juanma Barranquero <lektu@terra.es>
19188
19189 * eval.c (Fdefvaralias): Add docstring argument.
19190
19191 2002-07-15 Ken Raeburn <raeburn@gnu.org>
19192
19193 * lisp.h (STRING_INTERVALS): Produce rvalue.
19194 (STRING_SET_INTERVALS): New macro.
19195 * buffer.c (Fget_buffer_create, Fmake_indirect_buffer): Use it.
19196 * fns.c (Fstring_as_multibyte): Likewise.
19197 * intervals.c (balance_possible_root_interval, delete_interval)
19198 (create_root_interval, copy_intervals_to_string): Likewise.
19199 * textprop.c (set_text_properties): Likewise. Use NULL_INTERVAL
19200 instead of 0.
19201
19202 2002-07-14 Ken Raeburn <raeburn@gnu.org>
19203
19204 * lisp.h (STRING_SET_CHARS): New macro.
19205 (SCHARS, SBYTES): Produce rvalues.
19206 * dired.c (directory_files_internal): Use STRING_SET_CHARS.
19207 * fns.c (concat): Likewise.
19208 * lread.c (read_vector): Likewise.
19209
19210 * lisp.h (SMBP): Delete. All uses changed to STRING_MULTIBYTE.
19211 (STRING_SET_UNIBYTE): New macro.
19212 (SET_STRING_BYTES): Delete. Callers (all of which supplied a
19213 length of -1) changed to use STRING_SET_UNIBYTE.
19214 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
19215 casefiddle.c, category.c, ccl.c, charset.c, charset.h, coding.c,
19216 composite.c, data.c, dired.c, dispnew.c, disptab.h, doc.c,
19217 dosfns.c, editfns.c, emacs.c, eval.c, fileio.c, filelock.c, fn.c,
19218 fontset.c, frame.c, indent.c, insdel.c, intervals.c, keyboard.c,
19219 keymap.c, lread.c, mac.c, macfns.c, macmenu.c, macterm.c,
19220 minibuf.c, msdos.c, print.c, process.c, search.c, sound.c,
19221 sunfns.c, syntax.c, syntax.h, sysdep.c, textprop.c, undo.c,
19222 w16select.c, w32.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
19223 w32term.c, window.c, xdisp.c, xfaces.c, xfns.c, xmenu.c,
19224 xselect.c, xsmfns.c, xterm.c: Most uses of XSTRING combined with
19225 STRING_BYTES or indirection changed to SCHARS, SBYTES,
19226 STRING_INTERVALS, SREF, SDATA; explicit size_byte references left
19227 unchanged for now.
19228
19229 2002-07-13 Kim F. Storm <storm@cua.dk>
19230
19231 * keyboard.c (command_loop_1): Invert check on Vmemory_full.
19232
19233 2002-07-12 Richard M. Stallman <rms@gnu.org>
19234
19235 * fileio.c (Fwrite_region): Doc fix.
19236
19237 * print.c (print_error_message): Don't handle Vsignaling_function here.
19238
19239 * keyboard.c (cmd_error_internal): Handle Vsignaling_function here.
19240 (command_loop_1): Avoid certain actions after memory-full error.
19241
19242 * eval.c (Fsignal): Don't call cancel_hourglass.
19243 For a memory-full error, don't call Vsignal_hook_function
19244 and don't set Vsignaling_function.
19245
19246 * process.c (process_send_signal): Add abort call.
19247
19248 2002-07-11 Markus Rost <rost@math.ohio-state.edu>
19249
19250 * keymap.c (Fkey_binding): Fix typo.
19251
19252 2002-07-11 Richard M. Stallman <rms@gnu.org>
19253
19254 * alloc.c (Vmemory_full): New variable.
19255 (Vmemory_signal_data): Rename from memory_signal_data.
19256 Uses changed.
19257 (syms_of_alloc): Defvar them.
19258 (memory_full, buffer_memory_full): Set Vmemory_full.
19259
19260 * lisp.h (Vmemory_full): Add declaration.
19261 (current_column, indented_beyond_p): Change declaration.
19262
19263 * indent.c (last_known_column): Declare as double, not float.
19264 (current_column, current_column_1, string_display_width)
19265 (position_indentation): Return `double'.
19266 (indented_beyond_p): Arg `column' is `double'. Callers changed.
19267
19268 * xdisp.c (message_dolog): Do nothing if Vmemory_full is non-nil.
19269 (back_to_previous_visible_line_start)
19270 (reseat_at_next_visible_line_start, next_element_from_buffer):
19271 Use `double', not `float', when calling indented_beyond_p.
19272
19273 * s/hpux11.h (BROKEN_SA_RESTART): Define.
19274
19275 * sysdep.c (sys_signal): Test BROKEN_SA_RESTART.
19276
19277 2002-07-11 Juanma Barranquero <lektu@terra.es>
19278
19279 * alloc.c, buffer.c, bytecode.c, callint.c, callproc.c, coding.c,
19280 * composite.c, dired.c, dispnew.c, editfns.c, emacs.c, eval.c,
19281 * fileio.c, fns.c, insdel.c, keyboard.c, keymap.c, lread.c, macfns.c,
19282 * macmenu.c, macros.c, minibuf.c, print.c, process.c, sound.c,
19283 * textprop.c, w32fns.c, w32menu.c, window.c, xfaces.c, xfns.c,
19284 * xmenu.c, xselect.c, xterm.c: Use SPECPDL_INDEX wherever makes sense.
19285
19286 2002-07-10 Juanma Barranquero <lektu@terra.es>
19287
19288 * lisp.h (SPECPDL_INDEX): Rename from BINDING_STACK_SIZE.
19289 All callers changed.
19290
19291 2002-07-09 Stefan Monnier <monnier@cs.yale.edu>
19292
19293 * data.c (Fdefalias): Add an optional `docstring' argument.
19294 (set_internal, Fsetq_default): Use XCAR/XCDR.
19295
19296 * composite.c (HASH_VALUE, HASH_KEY):
19297 * ccl.c (HASH_VALUE): Remove (it's in lisp.h now).
19298
19299 2002-07-09 Kenichi Handa <handa@etl.go.jp>
19300
19301 * callproc.c (Fcall_process): Fix previous change.
19302
19303 2002-07-07 Stefan Monnier <monnier@cs.yale.edu>
19304
19305 * minibuf.c (Ftry_completion, Fall_completions, Ftest_completion):
19306 Add support for hash-tables.
19307 (Ftry_completion): Return t even if the string appears multiple times.
19308
19309 * fns.c (Fnconc): Use XCDR.
19310 (Fprovide): Use CONSP and XCDR.
19311 (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
19312 (HASH_TABLE_SIZE): Delete: moved to lisp.h.
19313 (Fmake_hash_table): Accept `:size nil'.
19314 (Fmakehash): Delete: moved to subr.el.
19315 (syms_of_fns): Don't defsubr makehash.
19316
19317 * lisp.h (HASH_KEY, HASH_VALUE, HASH_NEXT, HASH_HASH, HASH_INDEX)
19318 (HASH_TABLE_SIZE): Move from fns.c.
19319
19320 2002-07-07 Richard M. Stallman <rms@gnu.org>
19321
19322 * xdisp.c (make_cursor_line_fully_visible): Don't try short scrolls.
19323 Instead just return 0 when there is something to be done.
19324 (try_scrolling): If make_cursor_line_fully_visible returns 0,
19325 retry scrolling as if cursor were off the bottom.
19326 (try_cursor_movement): If make_cursor_line_fully_visible returns 0,
19327 return CURSOR_MOVEMENT_MUST_SCROLL.
19328 (redisplay_window): If make_cursor_line_fully_visible returns 0,
19329 go to try_to_scroll.
19330
19331 * buffer.c (Fbuffer_local_value): Store current value into its binding
19332 so we get the up-to-date value for the binding that is loaded.
19333
19334 * eval.c (Fdefmacro): Doc fix.
19335
19336 2002-07-05 Dave Love <fx@gnu.org>
19337
19338 * keyboard.c (read_key_sequence): Set initial_idleness_start_time
19339 correctly.
19340
19341 * ccl.c (Vtranslation_hash_table_vector, GET_HASH_TABLE)
19342 (HASH_VALUE, CCL_LookupIntConstTbl, CCL_LookupCharConstTbl): New.
19343 (ccl_driver): Add cases for CCL_LookupIntConstTbl,
19344 CCL_LookupCharConstTbl.
19345 (syms_of_ccl): Defvar translation-hash-table-vector.
19346
19347 2002-07-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19348
19349 * xdisp.c: Remove unused variable `face'.
19350
19351 2002-07-04 Juanma Barranquero <lektu@terra.es>
19352
19353 * keyboard.c (post_command_idle_hook): Remove redundant (and inexact)
19354 obsolescence information.
19355
19356 2002-07-03 Andrew Choi <akochoi@shaw.ca>
19357
19358 * macterm.c (x_list_fonts): Fix comment. Cache fonts matching
19359 pattern. Search cache first.
19360 (init_font_name_table): Also add entry for jisx0201.1976-0 coding
19361 for Japanese font.
19362 (XLoadQueryFont): Use it.
19363
19364 2002-07-02 Richard M. Stallman <rms@gnu.org>
19365
19366 * keymap.c (Fdefine_key): Doc fix.
19367
19368 * xterm.c (x_term_init): Turn off polling around XtOpenDisplay.
19369
19370 2002-07-02 Juanma Barranquero <lektu@terra.es>
19371
19372 * keymap.c (syms_of_keymap): Fix typo.
19373
19374 2002-07-01 Andrew Choi <akochoi@shaw.ca>
19375
19376 * s/darwin.h: Define POSIX_SIGNALS.
19377
19378 * macterm.c (do_ae_open_documents) [MAC_OSX]: Call FSpMakeFSRef
19379 and FSRefMakePath to convert FSSpec returned with Apple Event to
19380 Posix pathname.
19381 (mac_initialize) [TARGET_API_MAC_CARBON]:
19382 Call init_required_apple_events and disable the `Quit' menu item
19383 provided automatically by the Carbon Toolbox.
19384
19385 2002-07-01 Dave Love <fx@gnu.org>
19386
19387 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal decl
19388 for K&R.
19389
19390 * xterm.c: Fix prototype for K&R.
19391
19392 * term.c (costs_set): Declare static, non-initialized for pcc.
19393
19394 2002-07-01 Richard M. Stallman <rms@gnu.org>
19395
19396 * keyboard.c (timer_last_idleness_start_time): New variable.
19397 (timer_start_idle): Set that.
19398 (read_key_sequence): Use that to reset timer_idleness_start_time
19399 to previous value.
19400
19401 * window.c (Frecenter): With arg, set optional_new_start.
19402
19403 * xdisp.c (redisplay_internal): Make optional_new_start really work.
19404
19405 * minibuf.c (Fminibuffer_complete_and_exit): Move to end of
19406 buffer for completion.
19407
19408 2002-06-29 Ken Raeburn <raeburn@gnu.org>
19409
19410 * xdisp.c (store_mode_line_string): Lisp_Object/int mixup.
19411
19412 2002-06-28 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
19413
19414 * keyboard.c (readable_filtered_events): New function that filters
19415 FOCUS_IN_EVENT depending on parameter.
19416 (readable_events): Calls readable_filtered_events, not filtering
19417 FOCUS_IN_EVENT.
19418 (get_filtered_input_pending): New function, filtering parameter passed
19419 to readable_filtered_events.
19420 (get_input_pending): Calls get_filtered_input_pending, not filtering
19421 FOCUS_IN_EVENT.
19422 (Finput_pending_p): Calls get_filtered_input_pending, DO filter
19423 FOCUS_IN_EVENT.
19424
19425 * xterm.h (struct x_output): Add focus_state.
19426
19427 * xterm.c (x_focus_changed): New function.
19428 (x_detect_focus_change): New function.
19429 (XTread_socket): Call x_detect_focus_change for FocusIn/FocusOut
19430 EnterNotify and LeaveNotify to track X focus changes.
19431
19432 2002-06-28 Andreas Schwab <schwab@suse.de>
19433
19434 * lisp.h: Remove duplicate declaration of code_convert_string_norecord.
19435
19436 2002-06-27 Kim F. Storm <storm@cua.dk>
19437
19438 * xdisp.c (mode_line_string_list, mode_line_string_face)
19439 (mode_line_string_face_prop): New variables.
19440 (store_mode_line_string): New function.
19441 (display_mode_element): Use store_mode_line_string to
19442 add mode-line string elements to mode_line_string_list
19443 when mode_line_string_list is non-nil.
19444 (Fformat_mode_line): Now returns propertized string by
19445 default. New arg NO-PROPS to ignore properties.
19446 (decode_mode_spec): Only add two dashes for %- in propertized
19447 mode-line string.
19448 (syms_of_xdisp): Init and staticpro mode_line_string_list.
19449
19450 2002-06-27 Stefan Monnier <monnier@cs.yale.edu>
19451
19452 * minibuf.c (minibuffer_completion_contents): Add return type.
19453
19454 2002-06-27 Juanma Barranquero <lektu@terra.es>
19455
19456 * charset.c (Fchar_bytes): Remove obsolescence info from docstring.
19457
19458 2002-06-26 Juanma Barranquero <lektu@terra.es>
19459
19460 * fileio.c (read_file_name_cleanup): Add missing return.
19461
19462 2002-06-26 Richard M. Stallman <rms@gnu.org>
19463
19464 * window.c (Frecenter): Don't set force_start flag.
19465
19466 * minibuf.c (do_completion, Fminibuffer_complete_word)
19467 (Fminibuffer_completion_help): Complete just the text before point.
19468 (minibuffer_completion_contents): New function.
19469
19470 * buffer.c (Fbury_buffer): Use frames_discard_buffer.
19471
19472 * frame.c (frames_bury_buffer): Function deleted.
19473
19474 2002-06-25 Miles Bader <miles@gnu.org>
19475
19476 * callint.c (Fcall_interactively): When checking to see if doprnt hit
19477 the end of callint_message, allow for a terminating '\0'.
19478
19479 2002-06-24 Juanma Barranquero <lektu@terra.es>
19480
19481 * w32select.c: Include composite.h.
19482
19483 * w16select.c: Likewise.
19484
19485 2002-06-24 Kenichi Handa <handa@etl.go.jp>
19486
19487 * callproc.c (Fcall_process): If code detection is necessary,
19488 call detect_coding directly here.
19489
19490 * coding.c (detect_eol): Preserve coding->cmp_data.
19491
19492 * w16select.c (Fw16_get_clipboard_data):
19493 * w32fns.c (w32_to_x_font):
19494 * w32select.c (Fw32_get_clipboard_data):
19495 * xselect.c (selection_data_to_lisp_data):
19496 * xterm.c (XTread_socket): Disable composition handling.
19497
19498 2002-06-24 Stefan Monnier <monnier@cs.yale.edu>
19499
19500 * print.c (temp_output_buffer_setup): Kill all local variables.
19501
19502 2002-06-22 Stefan Monnier <monnier@cs.yale.edu>
19503
19504 * lread.c (Fread): Remove redundant and imprecise declaration.
19505
19506 * xfns.c (check_x_display_info): Use check_x_frame.
19507
19508 * .gdbinit (xprintsym): Use the new `xname' field.
19509 (xsymbol): Use it.
19510
19511 2002-06-22 Jason Rumney <jasonr@gnu.org>
19512
19513 * w32fns.c (file_dialog_callback): New function.
19514 (Fx_file_dialog): Allow selecting directories as well as files.
19515
19516 2002-06-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19517
19518 * m/pmax.h (START_FILES): Define START_FILES for NetBSD and
19519 OpenBSD. Add support for mipseb-*-netbsd* machines.
19520
19521 2002-06-17 Andrew Choi <akochoi@shaw.ca>
19522
19523 * macterm.c (mac_scroll_area): Set foreground and backcolor to
19524 black and white before scrolling. Restore frame background and
19525 foreground color after scrolling.
19526 (do_window_update): Call XClearWindow before calling expose_frame.
19527 (make_mac_frame): Don't set FRAME_BACKGROUND_PIXEL and
19528 FRAME_FOREGROUND_PIXEL of frame.
19529
19530 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
19531 test Mac command key as <ALT> key.
19532
19533 2002-06-17 Stefan Monnier <monnier@cs.yale.edu>
19534
19535 * window.c (Fset_window_configuration): Lisp_Object/int mixup.
19536
19537 * keyboard.c (read_key_sequence): Be more careful with first_unbound.
19538 Lookup keys in function-key-map immediately so that key-translation-map
19539 can be applied earlier.
19540 Remove function_key_possible and key_translation_possible, replaced
19541 by checking `keytran_start < t'.
19542
19543 * .gdbinit (xsymbol): Use the new `xname' field.
19544
19545 2002-06-17 Andrew Choi <akochoi@shaw.ca>
19546
19547 * macterm.c (XTread_socket): If Vmac_command_key_is_meta is nil,
19548 test Mac command key as <ALT> key.
19549
19550 * mac.c (do_applescript): Call initialize_applescript if necessary
19551 when first called. Dispose of result_desc only when there is no error.
19552 (Fdo_applescript): Use %d format specifier instead of %ld.
19553
19554 2002-06-16 Andrew Choi <akochoi@shaw.ca>
19555
19556 * macterm.c (XTread_socket): Call FrontNonFloatingWindow instead
19557 of FrontWindow for cases keyDown and autoKey.
19558
19559 * fontset.c (syms_of_fontset) [MAC_OS]: Set ASCII font of
19560 Vdefault_fontset to Monaco with mac-roman coding.
19561
19562 * mac.c, macfns.c, macmenu.c, macterm.c: Undefine and redefine
19563 init_process before and after inclusion of Carbon/Carbon.h, resp.
19564
19565 * macterm.c (x_new_font): Set font for normal_gc, reverse_gc, and
19566 cursor_gc.
19567 (add_font_name_table_entry): New function.
19568 (init_font_name_table): Use add_font_name_table_entry; add italic,
19569 bold, and bold-italic entries for truetype fonts.
19570
19571 * xfaces.c (init_frame_faces) [MAC_OS]: Call realize_basic_faces
19572 for Mac too.
19573 (try_font_list) [MAC_OS]: If no font matches given registry, try
19574 fonts with any registry matching face_family.
19575 (realize_x_face) [MAC_OS]: Remove old ad-hoc fix to load font here.
19576
19577 * s/darwin.h: If autoconf detects the Ncurses library, define
19578 LIBS_TERMCAP to -lncurses to use it.
19579
19580 2002-06-16 Eli Zaretskii <eliz@is.elta.co.il>
19581
19582 * strftime.c [__hpux]: Include sys/_mbstate_t.h.
19583
19584 2002-06-15 Richard M. Stallman <rms@gnu.org>
19585
19586 * window.c (Fset_window_configuration): Explicitly preserve
19587 the point value that new_current_buffer had at the start.
19588
19589 2002-06-14 Juanma Barranquero <lektu@terra.es>
19590
19591 * composite.c (Fcompose_region_internal, Fcompose_string_internal):
19592 Fix typos.
19593
19594 2002-06-14 Kim F. Storm <storm@cua.dk>
19595
19596 * insdel.c (insert_1_both, insert_from_string_1)
19597 (insert_from_buffer_1): Recalculate END_UNCHANGED in case the
19598 insert happened in the end_unchanged region. Otherwise, the
19599 redisplay may be confused and duplicate the last line in the
19600 buffer [seen after save-buffer when require-final-newline==t].
19601
19602 2002-06-13 Jason Rumney <jasonr@gnu.org>
19603
19604 * w32.c (init_environment): Remove EMACSLOCKDIR.
19605 (stat): Swap _S_IFDIR and _S_IFREG.
19606
19607 2002-06-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19608
19609 * keyboard.c, macterm.c, macmenu.c, msdos.c, sysdep.c
19610 * termhooks.h, xmenu.c, xsmfns.c, xterm.h, xterm.c, w32term.c,
19611 * w32menu.c, w32inevt.c: Rename enum event_kind as follows:
19612 ascii_keystroke to ASCII_KEYSTROKE_EVENT, multibyte_char_keystroke
19613 to MULTIBYTE_CHAR_KEYSTROKE_EVENT, non_ascii_keystroke to
19614 NON_ASCII_KEYSTROKE_EVENT, timer_event to TIMER_EVENT, mouse_click
19615 to MOUSE_CLICK_EVENT, mouse_wheel to MOUSE_WHEEL_EVENT,
19616 language_change_event to LANGUAGE_CHANGE_EVENT, scroll_bar_click
19617 to SCROLL_BAR_CLICK_EVENT, w32_scroll_bar_click to
19618 W32_SCROLL_BAR_CLICK_EVENT, selection_request_event to
19619 SELECTION_REQUEST_EVENT, selection_clear_event to
19620 SELECTION_CLEAR_EVENT, buffer_switch_event to BUFFER_SWITCH_EVENT,
19621 delete_window_event to DELETE_WINDOW_EVENT, iconify_event to
19622 ICONIFY_EVENT, deiconify_event to DEICONIFY_EVENT,
19623 menu_bar_activate_event to MENU_BAR_ACTIVATE_EVENT, drag_n_drop to
19624 DRAG_N_DROP_EVENT, save_session_event to SAVE_SESSION_EVENT and
19625 no_event to NO_EVENT.
19626
19627 2002-06-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19628
19629 * macmenu.c: Remove declaration of Qmouse_click and Qevent_kind.
19630
19631 2002-06-12 Stefan Monnier <monnier@cs.yale.edu>
19632
19633 * intervals.c (textget): Don't forget to `return'.
19634 (lookup_char_property): Use XCAR/XCDR.
19635
19636 2002-06-12 Juanma Barranquero <lektu@terra.es>
19637
19638 * xdisp.c (Fformat_mode_line): Fix typo.
19639
19640 2002-06-12 Kim F. Storm <storm@cua.dk>
19641
19642 * xdisp.c (Fformat_mode_line): New function.
19643 (frame_title_buf, frame_title_buf_end, frame_title_ptr)
19644 (store_frame_title_char, store_frame_title): Use unconditionally.
19645 (init_xdisp): Defsubr Fformat_mode_line.
19646 Initialize frame_title_buf etc. unconditionally.
19647
19648 2002-06-11 Stefan Monnier <monnier@cs.yale.edu>
19649
19650 * keyboard.c (read_key_sequence):
19651 Remove prev_(fkey|keytran}_(map|start|end) since we don't want to pass
19652 things through those maps after downcasing events.
19653 Enforce that keytran_end <= fkey_start, i.e. that key-translation-map
19654 applies after function-key-map.
19655 Make sure that keytran can be done in the middle in the sequence.
19656 Be careful not to throw away events past the one we downcase.
19657
19658 * lread.c (read_integer): Remove unused var `tem'.
19659 (read1): Fix int/Lisp_Object mixup.
19660
19661 * xfaces.c (tty_lookup_color): Type bool/Lisp_Object mismatch fixed.
19662
19663 2002-06-11 Richard M. Stallman <rms@gnu.org>
19664
19665 * keyboard.c (readable_events): Ignore any number of
19666 FOCUS_IN_EVENT events and return 0 if nothing else in buffer.
19667
19668 2002-06-09 Miles Bader <miles@gnu.org>
19669
19670 * xfaces.c (Ftty_supports_face_attributes_p): New function.
19671 (parse_rgb_list, tty_lookup_color): New functions.
19672 (tty_defined_color): Use `tty_lookup_color' to do all the work.
19673 (color_distance, Fcolor_distance): New functions.
19674 (TTY_SAME_COLOR_THRESHOLD): New macro.
19675 (Qtty_color_standard_values): New variable.
19676 (syms_of_xfaces): Initialize new vars & functions.
19677
19678 2002-06-08 Colin Walters <walters@verbum.org>
19679
19680 * textprop.c (Vchar_property_alias_alist): New variable.
19681 (syms_of_textprop) <Vchar_property_alias_alist>: DEFVAR_LISP.
19682
19683 * intervals.c (lookup_char_property): New function for looking up
19684 overlay and text properties, created from textget.
19685 (textget): Use it.
19686
19687 * intervals.h (lookup_char_property): Declare.
19688 (Vchar_property_alias_alist): Declare.
19689
19690 * buffer.c (Foverlay_get): Use lookup_char_property.
19691
19692 2002-06-07 Sam Steingold <sds@gnu.org>
19693
19694 * xselect.c (lisp_data_to_selection_data): Fix last change:
19695 *data_ret is not a Lisp string, while unibyte_string is.
19696
19697 2002-06-07 Eli Zaretskii <eliz@is.elta.co.il>
19698
19699 * xselect.c (lisp_data_to_selection_data): Fix last change:
19700 set size_ret.
19701
19702 2002-06-07 Andreas Schwab <schwab@suse.de>
19703
19704 * m/amdx86-64.h: New file.
19705
19706 2002-06-05 Eli Zaretskii <eliz@is.elta.co.il>
19707
19708 * fns.c (Fstring_make_unibyte): Doc fix.
19709
19710 * xselect.c (lisp_data_to_selection_data): If the requested type
19711 is STRING, call string_make_unibyte to encode the selected text
19712 as a string.
19713
19714 * window.c (Fset_window_hscroll): Doc fix.
19715
19716 2002-06-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
19717
19718 * fileio.c (choose_write_coding_system):
19719 Call select-safe-coding-system properly.
19720
19721 2002-06-03 Richard M. Stallman <rms@gnu.org>
19722
19723 * xdisp.c (message_with_string): Error if STRING is not a string.
19724
19725 * fns.c (md5): Pass FILE arg to Vselect_safe_coding_system_function.
19726
19727 * fileio.c (choose_write_coding_system): Pass FILE arg to
19728 Vselect_safe_coding_system_function.
19729
19730 2002-06-03 Ken Raeburn <raeburn@gnu.org>
19731
19732 * buffer.c (fix_overlays_before): Fix list-walking bug in 05-19 change.
19733
19734 2002-06-02 Thien-Thi Nguyen <ttn@gnu.org>
19735
19736 * bytecode.c (Fbyte_code): Cast `current_column' return value to int.
19737 * cmds.c (Fdelete_backward_char, internal_self_insert): Likewise.
19738 * keymap.c (describe_command): Likewise.
19739 * minibuf.c (read_minibuf): Likewise.
19740
19741 * xdisp.c (redisplay_internal, redisplay_window, decode_mode_spec):
19742 Cast `current_column' return value to int.
19743 (back_to_previous_visible_line_start)
19744 (reseat_at_next_visible_line_start, next_element_from_buffer):
19745 Cast `indented_beyond_p' 3rd arg to float.
19746
19747 * indent.c (last_known_column): Now a float.
19748 (current_column_1, position_indentation, current_column)
19749 (string_display_width): Return float.
19750 (Fcurrent_column): Cast `current_column' return value to int.
19751 (Fcurrent_indentation): Cast `position_indentation' retval to int.
19752 (indented_beyond_p): Third arg now a float.
19753 (compute_motion, vmotion): Cast `indented_beyond_p' 3rd arg to float.
19754
19755 * lisp.h (current_column): Now returns float.
19756 (indented_beyond_p): 3rd arg now a float.
19757
19758 2002-05-31 Eli Zaretskii <eliz@is.elta.co.il>
19759
19760 * xfns.c (x_encode_text): Return stringp non-NULL if coding_system
19761 is Qcompound_text_with_extensions.
19762
19763 * xselect.c (lisp_data_to_selection_data): Always set selection
19764 type as string if x_encode_text returns streingp non-NULL.
19765
19766 * s/netbsd.h: Include /usr/pkg in the run time shared library path.
19767
19768 2002-05-30 Richard M. Stallman <rms@gnu.org>
19769
19770 * window.c (Fset_window_configuration): Correct the handling
19771 of point in current buffer, to work with multiple windows.
19772
19773 2002-05-29 Colin Walters <walters@verbum.org>
19774
19775 * lread.c (Fread_from_string): Don't depend on order of evaluation
19776 for C function parameters.
19777
19778 2002-05-28 Richard M. Stallman <rms@gnu.org>
19779
19780 * xterm.c (x_display_and_set_cursor): Change the cursor in the same
19781 way for blinked-off state and for a nonselected window.
19782
19783 * window.c (window_scroll_pixel_based): Don't call Fbolp;
19784 instead, see if the new start pos is at beginning of line.
19785
19786 * fileio.c (Fwrite_region): If START is a string, don't
19787 make any annotations.
19788
19789 * eval.c (syms_of_eval): Doc fix.
19790
19791 2002-05-28 Colin Walters <walters@debian.org>
19792
19793 * emacs.c (USAGE1): Add --no-splash.
19794 (standard_args): Ditto.
19795
19796 2002-05-28 Colin Walters <walters@gnu.org>
19797
19798 * lread.c (readchar_count): New variable.
19799 (readchar): Increment it.
19800 (unreadchar): Decrement it.
19801 (read_multibyte): Decrement it.
19802 (Vread_with_symbol_positions): New variable.
19803 (Vread_symbol_positions_list): New variable.
19804 (read_internal_start): New function, created from Fread and
19805 Fread_from_string. Handle Vread_symbol_positions_list and
19806 Vread_with_symbol_positions.
19807 (readevalloop, Fread, Fread_from_string): Use it.
19808 (read1): Use readchar_count to add symbol positions to
19809 Vread_symbol_positions_list if Vread_with_symbol_positions is non-nil.
19810 (syms_of_lread): DEFVAR_LISP and initialize them.
19811
19812 * lread.c (read0, read1, read_list, read_vector, read_multibyte)
19813 (substitute_object_recurse, substitute_object_in_subtree)
19814 (substitute_in_interval): Prototype.
19815 (read_multibyte): Return c if it's less than zero.
19816
19817 2002-05-28 Kim F. Storm <storm@cua.dk>
19818
19819 * fileio.c (Fread_file_name_internal): Added brute-force
19820 speed up for using predicate file-directory-p.
19821
19822 2002-05-28 Kim F. Storm <storm@cua.dk>
19823
19824 * fileio.c (Vread_file_name_function, Vread_file_name_predicate):
19825 New variables.
19826 (syms_of_fileio): DEFVAR_LISP them.
19827 (read_file_name_cleanup): New unwind function.
19828 (Fread_file_name_internal): Only return completions satifying
19829 Vread_file_name_predicate. Temporarily unwind protect and rebind
19830 default-directory while checking completions against the predicate.
19831 (Fread_file_name): Added PREDICATE argument. Specbind it to
19832 Vread_file_name_predicate during completion.
19833 Call Vread_file_name_function to read the file name if non-nil.
19834
19835 * lisp.h (Fread_file_name): Now has 6 args.
19836
19837 * callint.c (Fcall_interactively) <"D">: Supply Qfile_directory_p
19838 predicate for Fread_file_name when reading directory name.
19839 Supply Qnil for predicate in other calls to Fread_file_name.
19840
19841 2002-05-26 Miles Bader <miles@gnu.org>
19842
19843 * term.c (tty_capable_p): New function.
19844 * dispextern.h (tty_capable_p): New function declaration.
19845 (TTY_CAP_INVERSE, TTY_CAP_UNDERLINE, TTY_CAP_BOLD, TTY_CAP_DIM)
19846 (TTY_CAP_BLINK, TTY_CAP_ALT_CHARSET): New macros.
19847
19848 2002-05-23 Stefan Monnier <monnier@cs.yale.edu>
19849
19850 * fileio.c (read_non_regular, Finsert_file_contents): Use BEG_BYTE.
19851 (Finsert_file_contents, build_annotations): Use XCAR, XCDR.
19852 (Vwrite_region_annotate_functions): Docstring fix.
19853
19854 2002-05-23 Kim F. Storm <storm@cua.dk>
19855
19856 * xterm.c (x_write_glyphs): Clear phys_cursor_on_p if current
19857 phys_cursor's hpos is overwritten. This is still not completely
19858 correct, as it doesn't really make sense to use hpos at all to
19859 get the cursor glyph (as that is relative to the width of the
19860 characters on the line, which may have changed during the update).
19861
19862 2002-05-22 Jason Rumney <jasonr@gnu.org>
19863
19864 * w32fns.c (enumfont_t): Remove tail, make pattern a normal
19865 Lisp_Object.
19866 (enum_font_cb2, enum_font_maybe_add_to_list, w32_list_fonts):
19867 Use modified enumfont_t struct.
19868
19869 * w32term.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
19870
19871 * w32term.c (x_draw_bar_cursor): New argument KIND; callers changed.
19872 Handle the `hbar' cursor type.
19873 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
19874
19875 * w32fns.c (Qhbar): New variable.
19876 (x_specified_cursor_type): Use it.
19877
19878 2002-05-21 Ken Raeburn <raeburn@gnu.org>
19879
19880 * w32fns.c (enum_font_maybe_add_to_list): Use XCDR_AS_LVALUE for
19881 now, when the address is needed.
19882
19883 2002-05-21 Colin Walters <walters@gnu.org>
19884
19885 * Makefile.in (shortlisp): Add font-core.el.
19886
19887 2002-05-20 Richard M. Stallman <rms@gnu.org>
19888
19889 * buffer.c (syms_of_buffer) <cursor-type>: Doc fix.
19890
19891 * keyboard.c (read_char_minibuf_menu_prompt): Don't list
19892 equivalent key bindings here.
19893
19894 2002-05-20 Ken Raeburn <raeburn@gnu.org>
19895
19896 Change symbol structure to contain a lisp object for the symbol
19897 name:
19898 * lisp.h (struct Lisp_Symbol): Replace field "name" with a lisp
19899 object field named "xname".
19900 (SYMBOL_NAME): New macro.
19901 * abbrev.c (write_abbrev): Use SYMBOL_NAME instead of XSYMBOL and
19902 name field.
19903 * alloc.c (Fmake_symbol): Set symbol xname field instead of name.
19904 (mark_object, gc_sweep): Use symbol xname field and XSTRING
19905 instead of name field.
19906 * buffer.c (buffer_slot_type_mismatch): Use XSTRING and
19907 SYMBOL_NAME instead of XSYMBOL and name field.
19908 * callint.c (Fcall_interactively): Use XSTRING and SYMBOL_NAME
19909 instead of XSYMBOL and name field.
19910 * charset.c (Fdefine_charset, Fdeclare_equiv_charset): Use XSTRING
19911 and SYMBOL_NAME instead of XSYMBOL and name field.
19912 * coding.c (Fread_coding_system, code_convert_region1)
19913 (code_convert_string1, code_convert_string_norecord)
19914 (Ffind_operation_coding_system): Use SYMBOL_NAME instead of
19915 XSYMBOL and name field.
19916 * data.c (Fkeywordp, Fsymbol_name, store_symval_forwarding)
19917 (Fmake_variable_buffer_local, Fmake_local_variable)
19918 (Fmake_variable_frame_local): Use SYMBOL_NAME and XSTRING instead
19919 of XSYMBOL and name field.
19920 * editfns.c (Fformat): Use SYMBOL_NAME and XSTRING instead of
19921 XSYMBOL and name field.
19922 * emacs.c (shut_down_emacs) [#if 0]: Use SYMBOL_NAME and XSTRING
19923 instead of XSYMBOL and name field.
19924 * eval.c (do_autoload): Use SYMBOL_NAME and XSTRING instead of
19925 XSYMBOL and name field.
19926 * fns.c (Fstring_equal, Fstring_lessp, Frequire, sxhash):
19927 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19928 * fontset.c (Fset_fontset_font): Use SYMBOL_NAME and XSTRING
19929 instead of XSYMBOL and name field.
19930 * keyboard.c (echo_char, record_char, parse_modifiers_uncached)
19931 (parse_modifiers, apply_modifiers, Fevent_convert_list)
19932 (parse_solitary_modifier, Fexecute_extended_command):
19933 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19934 * keymap.c (silly_event_symbol_error, Fsingle_key_description)
19935 (Fdescribe_buffer_bindings): Use SYMBOL_NAME and XSTRING instead
19936 of XSYMBOL and name field.
19937 (describe_command, describe_translation): Use SYMBOL_NAME and
19938 assignment instead of XSYMBOL and name field and XSETSTRING.
19939 * lread.c (Fintern_soft, oblookup): Use SYMBOL_NAME and XSTRING
19940 instead of XSYMBOL and name field.
19941 (Funintern): Use SYMBOL_NAME and assignment instead of XSYMBOL and
19942 name field and XSETSTRING.
19943 * macfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19944 of XSYMBOL and name field.
19945 * minibuf.c (Fread_command, Fread_variable): Use SYMBOL_NAME and
19946 assignment instead of XSYMBOL and name field and XSETSTRING.
19947 * print.c (print_error_message, print_object): Use SYMBOL_NAME and
19948 XSTRING instead of XSYMBOL and name field.
19949 * process.c (set_socket_options, Fsignal_process): Use SYMBOL_NAME
19950 and XSTRING instead of XSYMBOL and name field.
19951 * w32fns.c (parse_image_spec, w32_parse_hot_key): Use SYMBOL_NAME
19952 and XSTRING instead of XSYMBOL and name field.
19953 * xfaces.c (merge_face_vector_with_property): Use SYMBOL_NAME and
19954 XSTRING instead of XSYMBOL and name field.
19955 * xfns.c (parse_image_spec): Use SYMBOL_NAME and XSTRING instead
19956 of XSYMBOL and name field.
19957 * xselect.c (symbol_to_x_atom, x_get_foreign_selection):
19958 Use SYMBOL_NAME and XSTRING instead of XSYMBOL and name field.
19959
19960 2002-05-19 Ken Raeburn <raeburn@gnu.org>
19961
19962 * lisp.h (LISP_MAKE_RVALUE): Delete disabled version, making XCAR
19963 and XCDR real rvalues in most configurations.
19964
19965 * buffer.c (fix_overlays_in_range, fix_overlays_before):
19966 Don't take the address of the cdr part of a cons cell; instead, track
19967 the parent cell and call XSETCDR, or set the variable for the head
19968 of the list if we haven't started down the list yet.
19969
19970 2002-05-19 Richard M. Stallman <rms@gnu.org>
19971
19972 * doc.c (reread_doc_file): Don't ask for confirmation.
19973
19974 2002-05-18 Jason Rumney <jasonr@gnu.org>
19975
19976 * w32fns.c (w32_create_pixmap_from_bitmap_data): New function.
19977 (xbm_load_image): Use it.
19978 (xbm_load): Ditto.
19979 (xbm_read_bitmap_data): Reverted to xfns.c version.
19980 From David Ponce <david@dponce.com>.
19981
19982 2002-05-17 Eli Zaretskii <eliz@is.elta.co.il>
19983
19984 * msdos.c (sig_suspender, sigprocmask): Don't define for DJGPP
19985 2.02 and later.
19986
19987 2002-05-16 Juanma Barranquero <lektu@terra.es>
19988
19989 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector): Fix typo.
19990
19991 2002-05-15 Stefan Monnier <monnier@cs.yale.edu>
19992
19993 * keyboard.c (read_char_x_menu_prompt): Use an equivalent but more
19994 meaningful test.
19995 (read_char_minibuf_menu_prompt): Fix typo.
19996
19997 2002-05-15 Eli Zaretskii <eliz@is.elta.co.il>
19998
19999 * eval.c (Fcommandp): Doc fix.
20000
20001 2002-05-13 Stefan Monnier <monnier@cs.yale.edu>
20002
20003 * keymap.c (keymap_parent): New fun, extracted from Fkeymap_parent.
20004 (Fkeymap_parent, keymap_memberp, fix_submap_inheritance): Use it.
20005 (Fset_keymap_parent): Gcpro a bit more.
20006 (access_keymap): Gcpro around meta_map call and around the main loop.
20007 (get_keyelt): Gcpro when following indirect references.
20008 (copy_keymap_item): New fun, extracted from Fcopy_keymap.
20009 (copy_keymap_1, Fcopy_keymap): Use it. Don't copy the parent map.
20010 (Fdefine_key, Flookup_key): Gcpro before calling get_keymap.
20011 Remove useless ad-hoc remap code.
20012
20013 2002-05-13 Richard M. Stallman <rms@gnu.org>
20014
20015 * search.c (search_buffer): Give up boyer moore search if inverse
20016 translation change charset_base.
20017
20018 2002-05-12 Eli Zaretskii <eliz@is.elta.co.il>
20019
20020 * coding.c (decode_coding) <coding_type_ccl>: If a lone CR
20021 characters is carried over from the previous block of text, adjust
20022 coding->produced to account for the extra character.
20023
20024 2002-05-11 Andreas Schwab <schwab@suse.de>
20025
20026 * coding.c (intersection): Keep the elements of the returned list
20027 in the same order as in the first list.
20028
20029 2002-05-11 Kim F. Storm <storm@cua.dk>
20030
20031 * keymap.c (current_minor_maps): Fix resizing of cmm_maps;
20032 only update cmm_size if realloc actually succeeds.
20033 Testing with initial size of 2 elements revealed that using
20034 realloc on GNU/Linux would cause a random trap in xmalloc
20035 later on, so I rewrote the code to use malloc/bcopy/free instead
20036 of realloc.
20037
20038 2002-05-10 Jason Rumney <jasonr@gnu.org>
20039
20040 * w32fns.c (enum_font_cb2): Avoid DBCS raster fonts.
20041
20042 2002-05-10 Eli Zaretskii <eliz@is.elta.co.il>
20043
20044 * coding.c (encode_coding_sjis_big5): Enclose bitwise AND in
20045 parens, to ensure correct evaluation order.
20046
20047 2002-05-10 Kim F. Storm <storm@cua.dk>
20048
20049 * keymap.c (Vemulation_mode_map_alists): New variable.
20050 (syms_of_keymap): DEFVAR_LISP it.
20051 (current_minor_maps): Process keymap alists in that list before
20052 minor-mode-overriding-map-alist and minor-mode-map-alist.
20053
20054 2002-05-09 Richard M. Stallman <rms@gnu.org>
20055
20056 * search.c (Freplace_match): Doc fix.
20057
20058 2002-05-09 Kim F. Storm <storm@cua.dk>
20059
20060 * macterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
20061 Enlarge cursor rectangle drawn around image with non-zero relief.
20062
20063 * w32term.c (x_draw_image_foreground, w32_draw_image_foreground_1):
20064 Enlarge cursor rectangle drawn around image with non-zero relief.
20065
20066 * xterm.c (x_draw_image_foreground, x_draw_image_foreground_1):
20067 Enlarge cursor rectangle drawn around image with non-zero relief.
20068
20069 2002-05-07 Eli Zaretskii <eliz@is.elta.co.il>
20070
20071 * xselect.c (lisp_data_to_selection_data): Don't set selection
20072 type if comes from the Lisp object's car. If the selection
20073 contains a pure ASCII text, always return QSTRING as its type.
20074
20075 2002-05-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20076
20077 * mac.c (mac-cut-function): Doc fix.
20078
20079 2002-05-05 Richard M. Stallman <rms@gnu.org>
20080
20081 * s/gnu.h [DOUG_LEA_MALLOC] (REL_ALLOC): Undefine it.
20082
20083 2002-05-04 Jason Rumney <jasonr@gnu.org>
20084
20085 * keyboard.c (make_lispy_event) <mouse-wheel>: Set count to 1
20086 for event-click-count.
20087
20088 * process.c (init_process): Only add server subfeature if we can
20089 use non-blocking I/O.
20090
20091 2002-05-04 Andrew Choi <akochoi@shaw.ca>
20092
20093 * macterm.c (XTread_socket): Call WaitNextEvent once instead of
20094 repeatedly.
20095
20096 2002-05-03 Jason Rumney <jasonr@gnu.org>
20097
20098 * process.c (Fmake_network_process): Only support server sockets
20099 when we can make them non-blocking.
20100
20101 * s/ms-w32.h (HAVE_SELECT): Define.
20102
20103 * w32.h (FILE_NDELAY): New flag.
20104
20105 * w32.c (sys_getpeername, fcntl): New functions.
20106 (_sys_read_ahead): Temporarily block on non-blocking sockets.
20107
20108 * w32proc.c: Include sys/file.h.
20109
20110 2002-05-03 Colin Walters <walters@verbum.org>
20111
20112 * callproc.c (Vgame_score_directory): Renamed to
20113 Vshared_game_score_directory.
20114
20115 2002-04-30 Richard M. Stallman <rms@gnu.org>
20116
20117 * s/gnu.h [emacs]: Include stdio.h.
20118 (GNU_LIBRARY_PENDING_OUTPUT_COUNT): New definition, conditional.
20119
20120 * eval.c (do_autoload): Error if called while preparing to dump.
20121
20122 * fns.c (Frequire): Error if need to load while preparing to dump.
20123
20124 2002-04-28 Colin Walters <walters@verbum.org>
20125
20126 * callproc.c (Vgame_score_directory) [!HAVE_SHARED_GAME_DIR]:
20127 Default to "~/.emacs.d/games".
20128
20129 2002-04-29 Stefan Monnier <monnier@cs.yale.edu>
20130
20131 * lread.c (openp): Change arg exec_only to predicate.
20132 (build_load_history): Use XCAR/XCDR.
20133 (Flocate_file_internal): New fun.
20134 (syms_of_lread): Defsubr it.
20135 (Fload): Update call to openp.
20136
20137 * lisp.h (openp): Update prototype.
20138
20139 * xfns.c (x_create_bitmap_from_file, x_find_image_file):
20140 * w32proc.c (sys_spawnve):
20141 * w32fns.c (x_create_bitmap_from_file, x_find_image_file):
20142 * w32.c (check_windows_init_file):
20143 * sound.c (Fplay_sound_internal):
20144 * process.c (Fstart_process):
20145 * macfns.c (x_create_bitmap_from_file, x_find_image_file):
20146 * mac.c (run_mac_command):
20147 * emacs.c (init_cmdargs):
20148 * callproc.c (Fcall_process): Update call to openp.
20149
20150 * textprop.c (remove_properties): Don't use XCAR without CONSP.
20151
20152 * xterm.c (XTread_socket): Disable the Xutf8LookupString code.
20153
20154 2002-04-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20155
20156 * dispextern.h (DEFAULT_TOOL_BAR_BUTTON_MARGIN)
20157 (DEFAULT_TOOL_BAR_BUTTON_RELIEF): Change default values.
20158
20159 2002-04-28 Richard M. Stallman <rms@gnu.org>
20160
20161 * minibuf.c (Fall_completions, Ftry_completion): New arg to Fcommandp.
20162
20163 * eval.c (Fcommandp): New arg for_call_interactively.
20164 * lisp.h (Fcommandp): Declare new arg.
20165
20166 2002-04-28 Jason Rumney <jasonr@gnu.org>
20167
20168 * w32proc.c (syms_of_w32proc): Get true file attributes by default.
20169
20170 * w32.c (stat, fstat): Use file index information to generate
20171 inodes for directories where available.
20172
20173 2002-04-26 Andrew Choi <akochoi@shaw.ca>
20174
20175 * Makefile.in (C_SWITCH_SYSTEM_TEMACS): Add.
20176 [HAVE_CARBON]: Include Mac object files.
20177
20178 * alloc.c, callproc.c, dispextern.h, dispnew.c, emacs.c,
20179 fontset.c, frame.c, frame.h, keyboard.c, sysdep.c, term.c,
20180 termcap.c, window.c, xdisp.c, xfaces.c: Use macros MAC_OS8,
20181 MAC_OSX, and MAC_OS instead of macintosh.
20182
20183 * editfns.c [MAC_OS8]: Include stdio.h.
20184
20185 * emacs.c [MAC_OS8]: Call mac_initialize instead of x_term_init.
20186
20187 * fontset.c [MAC_OS]: Set Vdefault_fontset to ETL Fixed instead of
20188 Apple Monaco.
20189
20190 * process.c (QCfamily, QCfilte): Declare extern.
20191 (wait_reading_process_input) [MAC_OSX]: Clear bit for stdin before
20192 calling select.
20193
20194 * termcap.c [MAC_OSX]: Don't define tgetnum, PC, tputs, and tgetent.
20195
20196 * tparam.c [MAC_OSX]: Don't define BC and UP.
20197
20198 * config.in [HAVE_CARBON]: Add.
20199
20200 * mac.c, macgui.h, macfns.c, macmenu.c, macterm.c, macterm.h:
20201 Move here from mac/src and mac/inc.
20202
20203 * s/darwin.h, m/powermac.h, unexmacosx.c: New files.
20204
20205 2002-04-26 Gerd Moellmann <gerd@gnu.org>
20206
20207 * xterm.c (x_draw_phys_cursor_glyph): Undo last change.
20208 Compute phys_cursor_width from the x position returned
20209 by x_draw_glyhs, which is cheaper.
20210 (x_display_and_set_cursor): Compute the buffer-local value
20211 of `cursor-in-non-selected-windows' only when needed.
20212
20213 2002-04-25 Gerd Moellmann <gerd@gnu.org>
20214
20215 * xterm.c (x_draw_phys_cursor_glyph): Take into account that a box
20216 cursor on a stretch glyph has a width that depends on
20217 x_stretch_cursor_p.
20218
20219 2002-04-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20220
20221 * abbrev.c (abbrev-start-location): Doc fix.
20222
20223 * indent.c (Fvertical_motion): Fix last change.
20224
20225 2002-04-25 Gerd Moellmann <gerd@gnu.org>
20226
20227 * indent.c (Fvertical_motion): Move to the start of the line
20228 containing PT before moving up or down.
20229
20230 2002-04-24 Gerd Moellmann <gerd@gnu.org>
20231
20232 * dispnew.c (update_text_area): Set phys_cursor_on_p to 0 in the
20233 case of writing a whole row, more or less analogous to the case of
20234 writing only parts of a row.
20235
20236 * xterm.c (x_display_and_set_cursor): Set phys_cursor_width to
20237 0 for NO_CURSOR.
20238
20239 * xterm.c (notice_overwritten_cursor): Fix an off by 1 error.
20240
20241 2002-04-23 Colin Walters <walters@verbum.org>
20242
20243 * buffer.c (syms_of_buffer): Doc fix.
20244
20245 2002-04-23 Gerd Moellmann <gerd@gnu.org>
20246
20247 * xterm.c (notice_overwritten_cursor): Handle the special case
20248 of the cursor being in the first blank non-text line at the
20249 end of a window.
20250
20251 * xterm.c (x_draw_hollow_cursor, x_draw_bar_cursor)
20252 (x_draw_phys_cursor_glyph): Set phys_cursor_width here.
20253 (x_display_and_set_cursor): Don't set phys_cursor_width here, for
20254 bar cursors only, to make phys_cursor_width contain what its name
20255 suggests.
20256 (notice_overwritten_cursor): Consider the cursor image erased if
20257 the output area intersects the cursor image in y-direction.
20258
20259 2002-04-23 Simon Marshall <simon@gnu.org>
20260
20261 * xfns.c (x_set_mouse_color): Change default for cross_cursor
20262 to XC_hand2.
20263
20264 2002-04-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20265
20266 * xdisp.c: Remove unused global variable `minibuf_prompt_pixel_width'.
20267
20268 2002-04-22 Kim F. Storm <storm@cua.dk>
20269
20270 * textprop.c (remove_properties): Fixed trap for malformed plist.
20271
20272 2002-04-22 Richard M. Stallman <rms@gnu.org>
20273
20274 * cmds.c (Fend_of_line): Handle intangible text in mid line.
20275
20276 * window.c (make_window): Initialize height_fixed_p,
20277 last_cursor_off_p, and p->cursor_off_p slots.
20278
20279 2002-04-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20280
20281 * fns.c (use-dialog-box): Doc fix.
20282
20283 2002-04-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20284
20285 * xterm.c (note_mode_line_or_margin_highlight): Remove unused
20286 variables `row', `i' and `area'.
20287 (XTread_socket) <KeyPress>: Pass KeyPress events when in menu to
20288 toolkit library.
20289
20290 2002-04-19 Stefan Monnier <monnier@cs.yale.edu>
20291
20292 * xfaces.c (clear_font_table): Don't free the default font of
20293 a frame even if it's on another display.
20294 (Finternal_set_lisp_face_attribute): Don't use XFRAME on something
20295 that could be Qt.
20296
20297 2002-04-19 Juanma Barranquero <lektu@terra.es>
20298
20299 * indent.c (Fmove_to_column): Remove unused local variable
20300 `next_boundary_byte'.
20301 (current_column_1): Likewise.
20302
20303 2002-04-19 Eli Zaretskii <eliz@is.elta.co.il>
20304
20305 * msdos.c (Qhbar): New variable.
20306 (syms_of_msdos): Intern and staticpro it.
20307 (IT_set_cursor_type, IT_set_frame_parameters): Handle the `hbar'
20308 cursor type.
20309
20310 2002-04-19 Dave Lambert <dlambert@acm.org>
20311
20312 Theses change implement an underscore-like (`hbar') cursor.
20313
20314 * xterm.h (text_cursor_kinds): New enumeration member HBAR_CURSOR.
20315
20316 * xterm.c (x_draw_bar_cursor): New argument KIND; callers changed.
20317 Handle the `hbar' cursor type.
20318 (x_display_and_set_cursor): Handle the HBAR_CURSOR case.
20319
20320 * xfns.c (Qhbar): New variable.
20321 (syms_of_xfns): Intern and staticpro it.
20322 (x_specified_cursor_type): Handle `hbar' cursor.
20323
20324 * s/sol2-5.h (bcopy, bzero, bcmp): Define only if HAVE_BCOPY is
20325 not defined.
20326
20327 2002-04-18 Richard M. Stallman <rms@gnu.org>
20328
20329 * textprop.c (remove_properties): New arg LIST allows scanning
20330 either a list or a plist.
20331 (interval_has_some_properties_list): New function, like
20332 interval_has_some_properties using list instead of plist.
20333 All callers changed.
20334 (Fremove_list_of_text_properties): New function.
20335 (syms_of_textprop): Defsubr it.
20336
20337 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
20338
20339 * s/sol2.h (HAVE_LIBKSTAT): Define only if not already defined.
20340
20341 2002-04-17 Juanma Barranquero <lektu@terra.es>
20342
20343 * indent.c (Fmove_to_column): Remove unused local variable `end_byte'.
20344
20345 2002-04-17 Eli Zaretskii <eliz@is.elta.co.il>
20346
20347 * window.c (coordinates_in_window): Don't report on margin area
20348 if its width is zero.
20349
20350 2002-04-16 Jason Rumney <jasonr@gnu.org>
20351
20352 * w32fns.c (Fx_file_dialog): Decode file name before using.
20353
20354 * w32term.c (construct_drag_n_drop): Likewise.
20355
20356 2002-04-16 Eli Zaretskii <eliz@is.elta.co.il>
20357
20358 * puresize.h (BASE_PURESIZE): Increase to 830000, since we now
20359 store load-history in pure space.
20360
20361 * s/msdos.h (SYSTEM_PURESIZE_EXTRA): Reduce to 50000.
20362
20363 2002-04-16 Stefan Monnier <monnier@cs.yale.edu>
20364
20365 * xterm.c (Qlatin_1, Qutf_8): New vars.
20366 (syms_of_xterm): Initialize them.
20367 (XTread_socket): Eliminate incorrect optimization that tried to avoid
20368 decoding the output of X*LookupString.
20369 Always use latin-1 to decode the output of XLookupString.
20370 Try Xutf8LookupString if XmbLookupString failed.
20371
20372 * region-cache.c (new_region_cache): Use BEG.
20373
20374 2002-04-16 Gerd Moellmann <gerd@gnu.org>
20375
20376 * buffer.c (MMAP_ALLOCATED_P): New macro to be set from system
20377 configuration files.
20378 (mmap_enlarge): Enlarge mapped regions only if MMAP_ALLOCATED_P
20379 returns 0.
20380
20381 2002-04-15 Andreas Schwab <schwab@suse.de>
20382
20383 * config.in: Regenerated using autoheader.
20384
20385 * m/7300.h, m/acorn.h, m/alliant-2800.h, m/alliant.h, m/alpha.h,
20386 m/altos.h, m/amdahl.h, m/apollo.h, m/arm.h, m/att3b.h, m/aviion.h,
20387 m/celerity.h, m/clipper.h, m/cnvrgnt.h, m/convex.h, m/cydra5.h,
20388 m/delta.h, m/delta88k.h, m/dpx2.h, m/elxsi.h, m/gec63.h,
20389 m/gould.h, m/hp800.h, m/hp9000s300.h, m/i860.h, m/ia64.h,
20390 m/ibmps2-aix.h, m/ibmrs6000.h, m/ibmrt-aix.h, m/ibmrt.h,
20391 m/ibms390.h, m/intel386.h, m/iris4d.h, m/irist.h, m/isi-ov.h,
20392 m/m68k.h, m/macppc.h, m/masscomp.h, m/mg1.h, m/mips-siemens.h,
20393 m/mips.h, m/news-r6.h, m/news.h, m/next.h, m/nh3000.h, m/nh4000.h
20394 m/ns32000.h, m/orion.h, m/pfa50.h, m/plexus.h, m/pmax.h,
20395 m/powerpcle.h, m/pyrmips.h, m/sequent-ptx.h, m/sequent.h,
20396 m/sparc.h, m/sr2k.h, m/symmetry.h, m/tad68k.h, m/tahoe.h,
20397 m/targon31.h, m/tek4300.h, m/tekxd88.h, m/template.h, m/tower32.h,
20398 m/tower32v3.h, m/ustation.h, m/vax.h, m/wicat.h, m/windowsnt.h,
20399 m/xps100.h, s/aix3-2.h, s/aix4-2.h, s/irix4-0.h, s/irix5-0.h,
20400 s/sco5.h, s/unixware.h: Don't set HAVE_ALLOCA, C_ALLOCA and
20401 STACK_DIRECTION, now set by autoconf.
20402
20403 2002-04-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20404
20405 * dispnew.c (marginal_area_string): Sort arguments.
20406
20407 * dispextern.h (marginal_area_string): Add prototype.
20408
20409 2002-04-13 Richard M. Stallman <rms@gnu.org>
20410
20411 * fileio.c (Finsert_file_contents):
20412 Don't call temp_output_buffer_setup--do just part, by hand.
20413
20414 * coding.c (run_pre_post_conversion_on_str):
20415 Don't call temp_output_buffer_setup--do just part, by hand.
20416
20417 * keyboard.c (command_loop_1): Don't call start_hourglass
20418 or cancel_hourglass when executing a macro.
20419
20420 * marker.c (count_markers): New function.
20421
20422 * xdisp.c (display_mode_element): Don't let mode_line_proptrans_alist
20423 grow without limit. Move recently used elements to the front.
20424
20425 2002-04-13 Eli Zaretskii <eliz@is.elta.co.il>
20426
20427 * unexelf.c (unexec) [__sgi]: Undo the change from 2002-01-20.
20428
20429 2002-04-12 Gerd Moellmann <gerd@gnu.org>
20430
20431 * xdisp.c (sync_frame_with_window_matrix_rows): Don't give frame
20432 rows marginal areas.
20433 (Fdump_frame_glyph_matrix) [GLYPH_DEBUG]: New function.
20434 (syms_of_xdisp) [GLYPH_DEBUG]: Defsubr it.
20435
20436 * dispnew.c (marginal_area_string): Check that glyph row is enabled.
20437
20438 2002-04-12 Dave Love <fx@gnu.org>
20439
20440 * dispnew.c (marginal_area_string): New.
20441
20442 * window.c (window_part): Add ON_LEFT_MARGIN, ON_RIGHT_MARGIN.
20443 (Qleft_margin, Qright_margin): Declare.
20444 (coordinates_in_window, (Fcoordinates_in_window_p): Deal with margins.
20445
20446 * xterm.c (note_mode_line_or_margin_highlight): Renamed from
20447 note_mode_line_highlight and extended.
20448
20449 * keyboard.c (Qleft_margin, Qright_margin): Declare.
20450 (make_lispy_event): Deal with mouse events in margins.
20451
20452 2002-04-12 Stefan Monnier <monnier@cs.yale.edu>
20453
20454 * msdos.c (dos_rawgetc): Use a single event for HELP_EVENT.
20455
20456 * keyboard.c (command_loop_1): Turn off transient-mark-mode rather
20457 than deactivating the mark if tmm is set to `lambda'.
20458 (gen_help_event, kbd_buffer_store_help_event, kbd_buffer_get_event):
20459 Use a single event for HELP_EVENT.
20460 (Fexecute_extended_command): Save last_point_position.
20461
20462 2002-04-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20463
20464 * lisp.h (Fpropertize): Add prototype.
20465
20466 * fns.c (Fy_or_n_p): Use `minibuffer-prompt' face for prompt.
20467
20468 2002-04-10 Colin Walters <walters@verbum.org>
20469
20470 * config.in: Add HAVE_SHARED_GAME_DIR.
20471
20472 * callproc.c (Vgame_score_directory): New variable.
20473 (syms_of_callproc) <Vgame_score_directory>: DEFVAR_LISP.
20474
20475 2002-04-10 Richard M. Stallman <rms@gnu.org>
20476
20477 * puresize.h (BASE_PURESIZE): Reduce again to avoid big excess.
20478
20479 2002-04-09 Stefan Monnier <monnier@cs.yale.edu>
20480
20481 * minibuf.c (read_minibuf): Use empty_string.
20482 (Ftry_completion): Allow lambda forms and lists of strings for `alist'.
20483 Short-circuit the search as soon as it "failed".
20484 (Fall_completions): Allow lambda forms and lists of strings for alist.
20485 (Fcompleting_read): Set Qminibuffer_completion_confirm to nil
20486 when require_match is nil.
20487 (Ftest_completion): Rename from `test_completion' and export to elisp.
20488 Call the predicate also when alist is a list.
20489 Obey Vcompletion_regexp_list.
20490 (do_completion, Fminibuffer_complete_and_exit): Use it.
20491 (Fassoc_string): Rename from `assoc_for_completion'.
20492 Allow list of strings as well and export to elisp.
20493
20494 2002-04-08 Stefan Monnier <monnier@cs.yale.edu>
20495
20496 * puresize.h (BASE_PURESIZE): Increase to 900KB.
20497
20498 2002-04-08 Juanma Barranquero <lektu@terra.es>
20499
20500 * w32.c (sys_accept): Don't hide variable `s'.
20501
20502 2002-04-05 Gerd Moellmann <gerd@gnu.org>
20503
20504 * callint.c (Fcall_interactively): Use INTEGERP instead of
20505 NUMBERP for checking Vhistory_length.
20506
20507 2002-04-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20508
20509 * sound.c (Fplay_sound_internal): Renamed from Fplay_sound.
20510 Doc fix to reflect it.
20511
20512 2002-04-04 Richard M. Stallman <rms@gnu.org>
20513
20514 * xdisp.c (display_mode_element): New arg RISKY.
20515 Disregard text props found or specified within a variable
20516 that isn't marked risky-local-variable.
20517 (Qrisky_local_variable): New variable.
20518 (syms_of_xdisp): Init and staticpro it.
20519
20520 2002-04-04 Stefan Monnier <monnier@cs.yale.edu>
20521
20522 * undo.c (record_point): New fun.
20523 (record_delete, record_insert): Use it.
20524
20525 2002-04-03 Juanma Barranquero <lektu@terra.es>
20526
20527 * doc.c (Fdocumentation): Add missing parentheses.
20528 (Fdocumentation_property): Likewise.
20529
20530 2002-04-03 Stefan Monnier <monnier@cs.yale.edu>
20531
20532 * doc.c (Fdocumentation, Fdocumentation_property): When the doc
20533 data is 0, just return nil.
20534
20535 2002-04-03 Eli Zaretskii <eliz@is.elta.co.il>
20536
20537 * msdos.c (syms_of_msdos): Fix last change with
20538 mouse_autoselect_window.
20539
20540 2002-04-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20541
20542 * w32term.c, xterm.c, msdos.c: Rename autoselect_window_p to
20543 mouse_autoselect_window.
20544
20545 2002-04-02 Stefan Monnier <monnier@cs.yale.edu>
20546
20547 * keyboard.c (make_lispy_event): Handle unknown keysyms together
20548 with system-specific keysyms. Use it also for unknown function keys.
20549
20550 * doc.c (reread_doc_file): Return whether reload was attempted.
20551 (Fdocumentation, Fdocumentation_property): Don't try to reload
20552 if the doc is 0 and only ask once.
20553
20554 * Makefile.in (lisp, shortlisp): Add ucs-tables.elc.
20555
20556 2002-04-02 Eli Zaretskii <eliz@is.elta.co.il>
20557
20558 * keyboard.c (read_char): If the event was Qselect_window,
20559 restore timer_idleness_start_time to its previous value.
20560
20561 * msdos.c (dos_rawgetc): Generate SELECT_WINDOW_EVENTs when required.
20562
20563 2002-04-01 Stefan Monnier <monnier@cs.yale.edu>
20564
20565 * region-cache.c (new_region_cache): Use BEG.
20566
20567 * marker.c (buf_charpos_to_bytepos, buf_bytepos_to_charpos):
20568 Use BEG and BEG_BYTE.
20569
20570 * doc.c (get_doc_string): Return nil if the location is wrong.
20571 (reread_doc_file): New fun.
20572 (Fdocumentation, Fdocumentation_property):
20573 Call it if get_doc_string fails.
20574 (Fsnarf_documentation): Make it work for a dumped Emacs.
20575
20576 * charset.h (DEC_POS, BUF_DEC_POS): Use BEG_BYTE.
20577 Bound the search with MAX_MULTIBYTE_LENGTH to avoid pathological case.
20578
20579 * charset.c (Fstring): Allow 0 arguments.
20580
20581 * xterm.c (XTread_socket): Fix int/Lisp_Object confusion.
20582
20583 * process.c (DATAGRAM_CONN_P, list_processes_1)
20584 (Fprocess_datagram_address, Fset_process_datagram_address)
20585 (Fset_network_process_options, server_accept_connection):
20586 Fix some int/Lisp_Object confusions (thank you union types).
20587
20588 2002-04-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20589
20590 * msdos.c: Rename x_autoselect_window_p to autoselect_window_p.
20591
20592 * w32term.c: Likewise.
20593 (note_mouse_movement): Put code for x_autoselect_window_p in #if 0.
20594
20595 * keyboard.c (Qselect_window): New symbol.
20596 (head_table): Use it.
20597 (keys_of_keyboard): Bound select-window event to handle-select-window.
20598 (kbd_buffer_get_event): Make a Lisp event from SELECT_WINDOW_EVENT.
20599
20600 * xterm.c: Rename x_autoselect_window_p to autoselect_window_p.
20601 (last_window): New variable.
20602 (XTread_socket): Generate SELECT_WINDOW_EVENTs.
20603 (note_mouse_movement): Remove reimplemented code in #if 0.
20604 (XTread_socket): Generate SELECT_WINDOW_EVENTs only for
20605 Emacs windows.
20606
20607 * termhooks.h (enum event_kind): New event type `SELECT_WINDOW_EVENT'.
20608
20609 2002-03-31 Gerd Moellmann <gerd@gnu.org>
20610
20611 * xterm.c (x_get_char_face_and_encoding): Add parameter DISPLAY_P.
20612 Callers changed.
20613
20614 2002-03-30 Richard M. Stallman <rms@gnu.org>
20615
20616 * window.c (window_scroll_pixel_based): Exit the move_it_by_lines
20617 loop whenever it stops making progress.
20618
20619 * widget.c (set_frame_size): Don't call change_frame_size.
20620
20621 2002-03-30 Gerd Moellmann <gerd@gnu.org>
20622
20623 * dispnew.c (direct_output_for_insert):
20624 Call mark_window_display_accurate.
20625
20626 2002-03-29 Jason Rumney <jasonr@gnu.org>
20627
20628 * w32term.c (w32_draw_relief_rect): Fix calculations of line lengths.
20629
20630 2002-03-29 Eli Zaretskii <eliz@is.elta.co.il>
20631
20632 * Makefile.in (lread.o): Depend on coding.h.
20633
20634 * lread.c (openp, Fload): Encode the file name before passing it
20635 to `stat', `access', and `emacs_open'.
20636 (openp): GCPRO the encoded file name. Don't recompute Lisp
20637 strings unnecessarily.
20638
20639 2002-03-29 Kim F. Storm <storm@cua.dk>
20640
20641 * fns.c (Flax_plist_put): Doc fix.
20642
20643 2002-03-28 Miles Bader <miles@gnu.org>
20644
20645 * process.c (DATAGRAM_CONN_P): Make sure PROC is really a process.
20646
20647 2002-03-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20648
20649 * process.c (set-network-process-options): Add usage.
20650 (make-network-process): Doc fix.
20651
20652 2002-03-26 Eli Zaretskii <eliz@is.elta.co.il>
20653
20654 * emacs.c (Fdump_emacs): Fix a typo in "command-line-processed".
20655
20656 2002-03-26 Richard M. Stallman <rms@gnu.org>
20657
20658 * fns.c (Fsubstring_no_properties): New function.
20659 (Flax_plist_get, Flax_plist_put): New functions.
20660 (syms_of_fns): defsubr them.
20661
20662 * xdisp.c (update_menu_bar): Test only update_mode_lines;
20663 don't test or alter w->update_mode_line.
20664
20665 * window.c (Fdisplay_buffer): Doc fix.
20666
20667 2002-03-24 Richard M. Stallman <rms@gnu.org>
20668
20669 * regex.c (GET_UNSIGNED_NUMBER): Give proper error for spaces.
20670
20671 2002-03-24 Gerd Moellmann <gerd@gnu.org>
20672
20673 * eval.c (Qdeclare, Vmacro_declaration_function): New variables.
20674 (Fdefmacro): Handle `(declare ...)'.
20675 (syms_of_eval) <Qdeclare>: Initialize and staticpro.
20676 (syms_of_eval) <Vmacro_declaration_function>: DEFVAR_LISP.
20677
20678 2002-03-24 Jason Rumney <jasonr@gnu.org>
20679
20680 * w32fns.c (xbm_scan, xbm_load_image, xbm_read_bitmap_data)
20681 (xbm_file_p): Add prototypes.
20682 (xbm_format, xbm_image_p): Sync with xfns.c.
20683 (reflect_byte): New function.
20684 (xbm_read_bitmap_data): Sync with xfns.c, adapt for Windows.
20685 (xbm_load_image): Create bitmaps with a depth of 1.
20686 (init_xfns): Enable XBM images.
20687
20688 2002-03-23 Jason Rumney <jasonr@gnu.org>
20689
20690 * w32term.c (w32_handle_tool_bar_click): Detect up and down events
20691 correctly. Do not pass up_modifier to keyboard buffer.
20692
20693 * w32fns.c [HAVE_IMAGES, HAVE_PBM]: Remove conditionals.
20694
20695 2002-03-22 Stefan Monnier <monnier@cs.yale.edu>
20696
20697 * Makefile.in (bootstrapclean): New target.
20698 (bootstrap-temacs, bootstrap-doc): Remove.
20699 (bootstrap-emacs): Use a bog-standard `temacs'.
20700 Don't bother to build a DOC file.
20701
20702 * sysdep.c (wait_for_termination): Use sigsuspend rather than sigpause.
20703
20704 * emacs.c (main): Handle --unibyte, --multibyte, and --no-loadup
20705 in temacs even if !CANNOT_DUMP.
20706 (standard_args): Keep --no-loadup even if !CANNOT_DUMP.
20707
20708 * alloc.c (check_pure_size): Only output a warning.
20709
20710 2002-03-22 Jason Rumney <jasonr@gnu.org>
20711
20712 * w32fns.c (Fx_create_frame): Enable tool-bar when images are
20713 supported.
20714
20715 * w32term.c (zv_bits): Declare as short, for word alignment.
20716 (w32_read_socket) <WM_XBUTTONUP>: Fix last change.
20717 (syms_of_w32term): Define x-use-underline-position-properties.
20718
20719 * w32fns.c (x_set_cursor_color): Set cursor_gc as well.
20720 (clear_image_cache): Block input, fix logic, clear matrices in
20721 all frames that share this cache.
20722
20723 2002-03-22 Eli Zaretskii <eliz@is.elta.co.il>
20724
20725 * emacs.c (main): Update the Copyright year in the blurb printed
20726 by "emacs --version".
20727
20728 * xdisp.c (message_with_string): Fix syntax of a call to GCPRO2.
20729
20730 * xterm.c (XTread_socket): If XK_ISO_Lock and
20731 XK_ISO_Last_Group_Lock are defined, handle keysyms between
20732 XK_ISO_Lock and XK_ISO_Last_Group_Lock similarly to Mode_switch.
20733
20734 2002-03-21 Kim F. Storm <storm@cua.dk>
20735
20736 * keyboard.c (menu_bar_items): Mostly undo 2002-02-20 patch, so
20737 menu-bar bindings in keymap and local-map properties _are_ used.
20738 But try keymap property first in accordance with 2002-01-03 patch.
20739 Added comment describing why this is not always reliable.
20740 (tool_bar_items): Ditto for tool-bar.
20741
20742 2002-03-21 Jason Rumney <jasonr@gnu.org>
20743
20744 * w32fns.c (x_clear_image_1): Disable color table code.
20745
20746 2002-03-21 Kim F. Storm <storm@cua.dk>
20747
20748 * lisp.h (DEFUN) [USE_NONANSI_DEFUN]: The 2001-10-17 patch
20749 removed the wrong version of the DEFUN macro; fixed it.
20750
20751 * fns.c (Ffeaturep): Allow subfeature to be a list (test using
20752 Fmember rather than Fmemq).
20753 (Fprovide): Check that subfeatures is a list.
20754
20755 * process.c (QCfeature, QCdatagram): Removed variables.
20756 (QCtype, Qdatagram): New variables.
20757 (network_process_featurep): Removed function.
20758 (Fmake_network_process): Removed :feature check.
20759 Use :type 'datagram instead of :datagram t to create a datagram
20760 socket. This allows us to add other connection types (e.g. raw
20761 sockets) later in a consistent manner.
20762 (init_process) [subprocess, HAVE_SOCKETS]: Provide list of
20763 supported subfeatures for feature make-network-process.
20764 (syms_of_process) [subprocess]: Remove QCfeature and QCdatagram.
20765 Intern and staticpro QCtype and Qdatagram.
20766 (syms_of_process) [!subprocess]: Intern and staticpro QCtype.
20767
20768 * xfns.c (QCtype): Remove duplicate declaration and
20769 initialization (is now declared in process.c).
20770
20771 * w32fns.c (QCtype): Remove duplicate declaration and
20772 initialization (is now declared in process.c).
20773
20774 2002-03-21 Richard M. Stallman <rms@gnu.org>
20775
20776 * regex.c (DISCARD_FAILURE_REG_OR_COUNT): New macro.
20777 (CHECK_INFINITE_LOOP): Use DISCARD_FAILURE_REG_OR_COUNT
20778 when jumping to `fail' to avoid undoing reg changes in the
20779 last iteration of the loop.
20780 (GET_UNSIGNED_NUMBER): Skip spaces around the number.
20781
20782 * Makefile.in (dispnew.o, sysdep.o, xdisp.o, xselect.o, alloc.o):
20783 Depend on process.h.
20784
20785 2002-03-20 Jason Rumney <jasonr@gnu.org>
20786
20787 Most of the following changes are still conditional on HAVE_IMAGES
20788 which is not set by default on Windows.
20789
20790 * emacs.c (main) [WINDOWSNT]: Call init_xfns.
20791
20792 * w32fns.c (x_set_cursor_color): Set foreground of cursor, not frame.
20793 (Fimage_size, Fimage_mask_p, XPutPixel): New functions.
20794 (four_corners_best, x_clear_image_1, x_clear_image)
20795 (x_alloc_image_color, postprocess_image)
20796 (x_create_x_image_and_pixmap, x_destroy_x_image, xbm_load_image)
20797 (x_from_x_colors, x_disable_image, pbm_load): Adapt for Windows.
20798 (init_xfns, syms_of_w32fns): Initialize image functions and constants.
20799
20800 * w32gui.h (struct XImage): Define.
20801
20802 * w32term.c (w32_read_socket) <WM_XBUTTONUP>: Use XFASTINT to
20803 extract mouse co-ordinates.
20804
20805 2002-03-20 Jason Rumney <jasonr@gnu.org>
20806
20807 * w32.c (init_winsock): Dynamically load new server and UDP
20808 socket functions.
20809 (socket_to_fd): New function.
20810 (sys_socket): Use it.
20811 (sys_setsockopt, sys_listen, sys_getsockname, sys_accept)
20812 (sys_recvfrom, sys_sendto): New wrapper functions.
20813
20814 * process.c (QCfamily, QCfilter): Remove duplicate declaration
20815 and initialization.
20816
20817 * makefile.w32-in (LIBS): Remove $(WSOCK32).
20818
20819 2002-03-20 Eli Zaretskii <eliz@is.elta.co.il>
20820
20821 * process.c (conv_sockaddr_to_lisp, conv_lisp_to_sockaddr):
20822 Don't use "sun" as a variable, it's a predefined constant on Sun
20823 machines.
20824
20825 2002-03-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20826
20827 * bytecode.c (Fbyte_code): Revert last change.
20828
20829 2002-03-19 Kim F. Storm <storm@cua.dk>
20830
20831 * makefile.w32-in (LIBS): Add $(WSOCK32).
20832 From David Ponce <dponce@voila.fr>.
20833
20834 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20835
20836 * process.c (wait_reading_process_input): Move variables `pname'
20837 and `pnamelen' down where they are used.
20838
20839 * bytecode.c (Fbyte_code): Discard unused computed value to
20840 prevent gcc warning.
20841
20842 * lisp.h (Fplist_member): Add prototype.
20843
20844 2002-03-18 Kim F. Storm <storm@cua.dk>
20845
20846 * config.in: Add HAVE_SENDTO, HAVE_RECVFROM, HAVE_SETSOCKOPT,
20847 HAVE_GETSOCKOPT, HAVE_GETPEERNAME, HAVE_GETSOCKNAME, and HAVE_SYS_UN_H.
20848
20849 * process.c: Define HAVE_LOCAL_SOCKETS based on HAVE_SYS_UN_H.
20850 Remove explicit GNU_LINUX settings for datagram support.
20851
20852 2002-03-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20853
20854 * process.c (Fmake_network_process): Remove unused variable `sa'.
20855 Doc fix. Add usage:.
20856 (set_socket_options): Remove unused variables `optnum' and `opttype'.
20857
20858 2002-03-17 Richard M. Stallman <rms@gnu.org>
20859
20860 * xdisp.c (cursor_type_changed): New variable.
20861 (redisplay_internal): Redisplay all windows if cursor_type_changed.
20862 Clear it when clearing windows_or_buffers_changed.
20863 (try_cursor_movement, redisplay_window, try_window_id)
20864 (try_window_reusing_current_matrix): Test cursor_type_changed
20865 along with windows_or_buffers_changed.
20866
20867 * window.h (cursor_type_changed): New variable.
20868
20869 * xfns.c (x_set_cursor_type): Set cursor_type_changed,
20870 not update_mode_lines, and always set it to 1.
20871
20872 * xdisp.c (clear_garbaged_frames): Don't set windows_or_buffers_changed
20873 if no frames needed redrawing.
20874
20875 2002-03-17 Kim F. Storm <storm@cua.dk>
20876
20877 The following changes add support for network server processes,
20878 datagram connections, and local (unix) sockets.
20879
20880 * process.h (struct Lisp_Process): New member log.
20881 Doc fix: Member command used to indicate stopped network process.
20882 Doc fix: Member childp contains plist for network process.
20883 Doc fix: Member kill_without_query is inverse of query-on-exit flag.
20884
20885 * process.c (Qlocal, QCname, QCbuffer, QChost, QCservice, QCfamily)
20886 (QClocal, QCremote, QCserver, QCdatagram, QCnowait, QCnoquery, QCstop)
20887 (QCcoding, QCoptions, QCfilter, QCsentinel, QClog, QCfeature):
20888 New variables.
20889 (NETCONN1_P): New macro.
20890 (DATAGRAM_SOCKETS): New conditional symbol.
20891 (datagram_address): New array.
20892 (DATAGRAM_CONN_P, DATAGRAM_CHAN_P): New macros.
20893 (status_message): Use concat3.
20894 (Fprocess_status): Add `listen' status to doc string. Return `stop'
20895 for a stopped network process.
20896 (Fset_process_buffer): Update contact plist for network process.
20897 (Fset_process_filter): Ditto. Don't enable input for stopped
20898 network processes. Server must listen, even if filter is t.
20899 (Fset_process_query_on_exit_flag, Fprocess_query_on_exit_flag):
20900 New functions.
20901 (Fprocess_kill_without_query): Removed. Now defined in simple.el.
20902 (Fprocess_contact): Added KEY argument. Handle datagrams.
20903 (list_processes_1): Optionally show only processes with the query
20904 on exit flag set. Dynamically adjust column widths. Omit tty
20905 column if not needed. Report stopped network processes.
20906 Identify server and datagram network processes.
20907 (Flist_processes): New optional arg `query-only'.
20908 (conv_sockaddr_to_lisp, get_lisp_to_sockaddr_size)
20909 (conv_lisp_to_sockaddr, set_socket_options)
20910 (network_process_featurep, unwind_request_sigio): New helper functions.
20911 (Fprocess_datagram_address, Fset_process_datagram_address):
20912 (Fset_network_process_options): New lisp functions.
20913 (Fopen_network_stream): Removed. Now defined in simple.el.
20914 (Fmake_network_process): New lisp function. Code is based on previous
20915 Fopen_network_stream, but heavily reworked with new property list based
20916 argument list, support for datagrams, server processes, and local
20917 sockets in addition to old client-only functionality.
20918 (server_accept_connection): New function.
20919 (wait_reading_process_input): Use it to handle incoming connects.
20920 Do not enable input on a new connection if process is stopped.
20921 (read_process_output): Handle datagram sockets. Use 2k buffer for them.
20922 (send_process): Handle datagram sockets.
20923 (Fstop_process, Fcontinue_process): Apply to network processes. A stopped
20924 network process is indicated by setting command field to t .
20925 (Fprocess_send_eof): No-op if datagram connection.
20926 (Fstatus_notify): Don't read input for a stream server socket or a
20927 stopped network process.
20928 (init_process): Initialize datagram_address array.
20929 (syms_of_process): Intern and staticpro new variables, defsubr new
20930 functions.
20931
20932 2002-03-16 Jason Rumney <jasonr@gnu.org>
20933
20934 * w32fns.c (w32_to_all_x_charsets): Return correct type in
20935 startup case.
20936
20937 2002-03-16 Richard M. Stallman <rms@gnu.org>
20938
20939 * xdisp.c (redisplay_internal, redisplay_windows):
20940 Use list_of_error to call internal_condition_case_1.
20941 (safe_eval, safe_call): Pass Qt to internal_condition_case_{1,2}
20942 so as to catch all errors with no possibility of debugger redisplay.
20943 (list_of_error): New variable.
20944 (syms_of_xdisp): Init and staticpro it.
20945
20946 * print.c (print_object): Delete `\ ' from printed rep of frame.
20947
20948 2002-03-15 Eli Zaretskii <eliz@is.elta.co.il>
20949
20950 * msdos.c (dos_rawgetc): Disable the x-autoselect-window feature,
20951 until its implementation is fixed.
20952
20953 2002-03-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
20954
20955 * xfns.c (png_load): Remove unused variable `gamma_str'.
20956
20957 2002-03-14 Richard M. Stallman <rms@gnu.org>
20958
20959 * xfns.c (x_real_positions): Handle failure in XQueryTree.
20960
20961 2002-03-14 Miles Bader <miles@gnu.org>
20962
20963 * intervals.c (adjust_for_invis_intang): New function.
20964 (set_point_both): Use `adjust_for_invis_intang' to do most of the
20965 work for dealing with invisible+intangible regions. Do so before
20966 and after both forward and backward movements, to handle both
20967 front-sticky and rear-sticky cases.
20968 * textprop.c (text_property_stickiness): Function moved here from
20969 `editfns.c'.
20970 * intervals.h (text_property_stickiness): New declaration.
20971 * editfns.c (char_property_eq): Function removed.
20972 (text_property_stickiness): Function moved to `textprop.c'.
20973
20974 2002-03-13 Jason Rumney <jasonr@gnu.org>
20975
20976 * config.in: Add STRFTIME_NO_POSIX2.
20977
20978 * strftime.c (my_strftime) [STRFTIME_NO_POSIX2]: Handle %h, %EX
20979 and %OX when underlying strftime does not.
20980
20981 2002-03-13 Stefan Monnier <monnier@cs.yale.edu>
20982
20983 * xterm.c (x_set_toolkit_scroll_bar_thumb) <USE_MOTIF>:
20984 Use a fixed-size thumb (based on an ad-hoc estimate of 30 chars per
20985 line) to avoid annoying flicker.
20986 (xm_scroll_callback): Get rid of the now unnecessary kludge.
20987 (XTread_socket): Mark it static.
20988
20989 * xdisp.c (display_mode_element): Fix int/Lisp_Object mixup.
20990
20991 2002-03-13 Kim F. Storm <storm@cua.dk>
20992
20993 * puresize.h (BASE_PURESIZE): Increase to 775000.
20994
20995 2002-03-12 Juanma Barranquero <lektu@terra.es>
20996
20997 * editfns.c (syms_of_editfns): Fix typo.
20998
20999 2002-03-12 Gerd Moellmann <gerd@gnu.org>
21000
21001 * xsmfns.c: Include stdio.h because termhooks.h needs it.
21002 Include termopt.h for interrupt_input.
21003
21004 2002-03-11 Andreas Schwab <schwab@suse.de>
21005
21006 * coding.c (syms_of_coding) <file-coding-system-alist>: Doc fix.
21007
21008 2002-03-11 Gerd Moellmann <gerd@gnu.org>
21009
21010 * xterm.c (note_mouse_movement): Put code for
21011 x_autoselect_window_p in #if 0.
21012
21013 * lread.c (Fload): Don't assume that message_with_string uses the
21014 string it is given like a C string.
21015
21016 2002-03-10 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21017
21018 * xterm.h (x_session_check_input, x_session_initialize): Declare.
21019
21020 * xterm.c (XTread_socket): Add call to x_session_check_input and
21021 x_session_have_connection.
21022 (x_initialize): Add call to x_session_initialize.
21023
21024 * termhooks.h (enum event_kind): Add save_session_event.
21025
21026 * keyboard.c: Add Emacs event save_session_event.
21027
21028 * emacs.c (main): Add call to syms_of_xsmfns.
21029
21030 * lisp.h (syms_of_xsmfns): Declare extern.
21031
21032 * config.in: Add HAVE_X_SM.
21033
21034 * Makefile.in (LIBXT): Add -lSM -lICE
21035 if HAVE_X_SM and not USE_X_TOOLKIT.
21036 (XOBJ): New file xsmfns.c added.
21037
21038 * xsmfns.c: New file for X session management.
21039
21040 2002-03-09 Jason Rumney <jasonr@gnu.org>
21041
21042 * fileio.c (Fcopy_file) [WINDOWS_NT]: Ensure file is not
21043 read-only when setting modified time.
21044
21045 2002-03-08 Gerd Moellmann <gerd@gnu.org>
21046
21047 * xdisp.c (move_it_vertically_backward): At the end of the function,
21048 when moving forward by lines, treat terminal frames specially.
21049
21050 * keyboard.c (echo_char): Make sure to add a separator between
21051 keys even if echo_dash hasn't been called.
21052
21053 * xdisp.c: Use new string macros.
21054 (update_echo_area): Pass number of bytes to message3 instead of
21055 number of chars.
21056 (set_message_1): Don't access a string's size_byte directly.
21057 (decode_mode_spec_coding): Use number of bytes of eoltype string
21058 instead number of chars.
21059
21060 * lisp.h (SREF, SDATA, SCHARS, SBYTES, SMBP): New macros.
21061
21062 2002-03-08 Juanma Barranquero <lektu@terra.es>
21063
21064 * w32fns.c (Fx_display_color_cells): Force 24+ bit color depths to
21065 24-bit.
21066
21067 2002-03-06 Jason Rumney <jasonr@gnu.org>
21068
21069 * w32term.c (x_draw_hollow_cursor): Draw same size as block cursor.
21070
21071 2002-03-06 Gerd Moellmann <gerd@gnu.org>
21072
21073 * keyboard.c (echo_prompt, echo_char, echo_dash, echo_now)
21074 (cancel_echoing, echo_length, echo_truncate): Changed to
21075 work with new kboard definition.
21076 (echo_now): Use message3_nolog instead of message2_nolog.
21077
21078 * alloc.c (mark_kboards): Mark echo_string.
21079
21080 * keyboard.h (ECHOBUFSIZE): Removed.
21081 (struct kboard): Member echoptr removed, member echobuf renamed
21082 to echo_string.
21083
21084 * xdisp.c (message_with_string): Use Fformat instead of doprnt and
21085 message3 instead of message2 to display the message using STRING's
21086 text properties.
21087
21088 2002-03-05 Andreas Schwab <schwab@suse.de>
21089
21090 * xdisp.c (hscroll_margin): Change to EMACS_INT.
21091
21092 2002-03-05 Per Abrahamsen <abraham@dina.kvl.dk>
21093
21094 * frame.c (default-frame-alist): Explain that setting it doesn't
21095 affect existing frames.
21096
21097 2002-03-05 Stefan Monnier <monnier@cs.yale.edu>
21098
21099 * indent.c (skip_invisible): Fix my brain fart.
21100
21101 * dispnew.c (sit_for): Don't wait if executing a kbd macro.
21102
21103 2002-03-04 Stefan Monnier <monnier@cs.yale.edu>
21104
21105 * dosfns.c, dosfns.h, dispnew.c, dispextern.h, commands.h, charset.c,
21106 * alloc.c, abbrev.c, emacs.c, eval.c, keyboard.c, keyboard.h,
21107 * lisp.h, lread.c, sysdep.c, termcap.c, termchar.h, w32term.c,
21108 * window.c, xdisp.c, xselect.c, xterm.c: Change defvar_int definition
21109 and variables to use EMACS_INT instead of just int.
21110
21111 * buffer.c (syms_of_buffer): Allow non-string `mode-name'.
21112
21113 2002-03-04 Eli Zaretskii <eliz@is.elta.co.il>
21114
21115 * sysdep.c (sys_subshell) [MSDOS]: If PWD is set in the
21116 environment, pass it down with corrected value.
21117
21118 2002-03-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21119
21120 * lread.c (read_filtered_event): Do not call start_hourglass
21121 before returning.
21122
21123 2002-03-04 Juanma Barranquero <lektu@terra.es>
21124
21125 * w32term.c (x_display_and_set_cursor): Fix typo.
21126
21127 2002-03-03 Richard M. Stallman <rms@gnu.org>
21128
21129 * fileio.c (Fmake_temp_name): Doc fix.
21130
21131 2002-03-03 Gary Wong <gtw@gnu.org>
21132
21133 * termcap.c [!emacs]: Replace ospeed for building standalone
21134 libtermcap, for binary compatibility.
21135
21136 * tparam.c [!emacs]: Move #define of bcopy to after string.h.
21137
21138 2002-03-03 Richard M. Stallman <rms@gnu.org>
21139
21140 * xrdb.c (file_p): Rename arg `path' to `filename'.
21141
21142 * abbrev.c (Fexpand_abbrev): Increment plist as use count
21143 only if it is an integer.
21144
21145 * xfns.c (png_load): Set screen_gamma based on f->gamma.
21146 If png_get_sRGB gives an answer, call png_set_gamma
21147 using the default image gamma value.
21148
21149 * lread.c (read1): When reading from a file, default string to
21150 multibyte only if it has some multibyte characters.
21151
21152 * print.c (print_object): Output multibyte chars 128...255
21153 using \x even if ! print_escape_multibyte.
21154
21155 * xdisp.c (display_mode_element): Move the places where
21156 bytepos, charpos, this, and lisp_string are set.
21157 Use lisp_string to set bytepos.
21158
21159 * xdisp.c (redisplay_internal):
21160 Call clear_image_cache only if HAVE_WINDOW_SYSTEM.
21161
21162 * xdisp.c (display_mode_element): Merge properties specified with
21163 :propertize onto those that come with the string.
21164
21165 2002-03-03 Eli Zaretskii <eliz@is.elta.co.il>
21166
21167 * xdisp.c (syms_of_xdisp) <auto-hscroll-mode>: Renamed from
21168 automatic-hscrolling. Users changed.
21169 <hscroll-margin>: Renamed from automatic-hscroll-margin.
21170 Users changed.
21171 <hscroll-step>: Renamed from automatic-hscroll-step. Users changed.
21172
21173 2002-03-02 Eli Zaretskii <eliz@is.elta.co.il>
21174
21175 * buffer.c (syms_of_buffer) <buffer-file-coding-system>: Doc fix.
21176
21177 2002-03-02 Kim F. Storm <storm@cua.dk>
21178
21179 * window.c (Fminibuffer_selected_window): New function.
21180 (syms_of_window): Defsubr it.
21181
21182 2002-03-01 Kim F. Storm <storm@cua.dk>
21183
21184 * window.h (struct window): New member phys_cursor_width.
21185
21186 * window.c (make_window, replace_window): Init phys_cursor_width.
21187
21188 * xterm.c (x_display_and_set_cursor): Blink box cursor using
21189 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
21190
21191 * w32term.c (x_display_and_set_cursor): Blink box cursor using
21192 hollow box cursor. Blink bar cursor using 1 pixel wide bar.
21193
21194 * lisp.h (GCPRO6): New macro.
21195
21196 * process.c (Fopen_network_stream): Use GCPRO6.
21197
21198 2002-03-01 Kim F. Storm <storm@cua.dk>
21199
21200 * process.c (Qconnect, Qfailed): New variables.
21201 (syms_of_process): Intern and staticpro them.
21202 (Fprocess_status): Document connect and failed return values.
21203 [NON_BLOCKING_CONNECT]: New conditional.
21204 (connect_wait_mask, num_pending_connects): New variables.
21205 (status_message): Convert Qfailed status.
21206 (Fopen_network_stream): Added support for non-blocking connect.
21207 New optional args: filter, sentinel, non_blocking. Doc updated.
21208 [HAVE_GETADDRINFO, !HAVE_GETADDRINFO]: Merged common code.
21209 (deactivate_process): Handle pending non-blocking connect.
21210 (wait_reading_process_input): Poll for status of non-blocking
21211 connects. Exec sentinel directly when connect succeeds.
21212 (status_notify): Don't read process output if not yet connected.
21213
21214 2002-02-28 Kim F. Storm <storm@cua.dk>
21215
21216 * window.c (minibuf_selected_window): Renamed from
21217 Vminibuf_selected_window. Users changed.
21218 (syms_of_window): Staticpro it.
21219
21220 2002-02-26 Kim F. Storm <storm@cua.dk>
21221
21222 The following changes add a new Vminibuf_selected_window variable
21223 which is similar to Vminibuf_scroll_window, but which is only set
21224 on entry to the minibuffer (from a non-minibuffer window):
21225
21226 * window.c (Vminibuf_selected_window): New variable.
21227 (struct save_window_data): New member minibuf_selected_window.
21228 (Fset_window_configuration): Restore Vminibuf_selected_window.
21229 (Fcurrent_window_configuration): Save Vminibuf_selected_window.
21230 Set minibuf_scroll_window member to nil if minibuf_level is 0.
21231 (compare_window_configurations): Compare minibuf_selected_window.
21232
21233 * window.h (Vminibuf_selected_window): Declare extern.
21234
21235 * minibuf.c (read_minibuf): Set Vminibuf_selected_window on first
21236 entry to minibuffer or on entry from a non-minibuffer window.
21237
21238 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): Compare with
21239 Vminibuf_selected_window instead of Vminibuf_scroll_window.
21240
21241 * xdisp.c (init_iterator): Compare with Vminibuf_selected_window
21242 instead of Vminibuf_scroll_window when deciding in which window
21243 the region should be highlighted. Consequently, the region remains
21244 highlighteded even when a completion buffer is also displayed.
21245
21246 2002-02-26 Eli Zaretskii <eliz@is.elta.co.il>
21247
21248 * fileio.c (Fsubstitute_in_file_name): Fix the change from 2002-02-08.
21249
21250 * xselect.c (Qcompound_text_with_extensions): Renamed from
21251 Qcompound_text_no_extensions.
21252 (lisp_data_to_selection_data, syms_of_xselect): Use the new name.
21253
21254 2002-02-26 Juanma Barranquero <lektu@terra.es>
21255
21256 * w32proc.c (syms_of_ntproc): Doc fix.
21257
21258 2002-02-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21259
21260 * intervals.h: Include "dispextern.h" unconditionally.
21261
21262 2002-02-24 Jason Rumney <jasonr@gnu.org>
21263
21264 * Makefile.in (WINNT_SUPPORT) [WINDOWSNT]: Add w32-vars.elc
21265 and disp-table.elc.
21266 (lisp): Add emacs-lisp/backquote.elc.
21267
21268 2002-02-24 Kim F. Storm <storm@cua.dk>
21269
21270 * keymap.c (Flookup_key): Fix problem in 2001-12-28 patch:
21271 The validation of the event type was too strict as it didn't
21272 allow string events; buffer names are used in bindings for
21273 menu-bar-select-buffer (see `menu-bar-update-buffers').
21274
21275 2002-02-23 Kim F. Storm <storm@cua.dk>
21276
21277 The following changes rework my patch of 2002-02-06 which
21278 added command remapping by entering the commands directly into
21279 the keymaps. Now, command remapping uses an explicit `remap'
21280 prefix in the keymaps, i.e. [remap COMMAND].
21281
21282 * keymap.c (Qremap, remap_command_vector): New variables.
21283 (is_command_symbol): Remove function.
21284 (Fdefine_key): No longer accept a symbol for KEY.
21285 Added validation of [remap COMMAND] argument for KEY.
21286 The DEF is no longer required to be a symbol when remapping a command.
21287 (Fremap_command): New function to remap command through keymaps.
21288 (Flookup_key): Perform command remapping initiated by
21289 Fremap_command directly for speed.
21290 (Fkey_binding): Use Fremap_command for command remapping.
21291 (where_is_internal): Handle new command remapping representation.
21292 (syms_of_keymap): Intern Qremap, initialize remap_command_vector,
21293 staticpro them. Defsubr Fremap_command.
21294
21295 * keymap.h (Fremap_command): Declare extern.
21296 (is_command_symbol): Remove extern.
21297
21298 * keyboard.c (command_loop_1): Use Fremap_command for command
21299 remapping; now try command remapping for all symbols.
21300
21301 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
21302
21303 * coding.h (run_pre_post_conversion_on_str): Add prototype.
21304
21305 2002-02-23 Jason Rumney <jasonr@gnu.org>
21306
21307 * w32select.c (Fw32_set_clipboard_data): Run pre-write-conversion
21308 on the string before encoding it.
21309 (Fw32_get_clipboard_data): Run post-read-conversion on the string
21310 after decoding it.
21311
21312 * w32fns.c (w32_wnd_proc) <WM_TIMER>: Fix last change.
21313
21314 2002-02-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21315
21316 * w32term.c (enter_timestamp): Remove unused static variable to
21317 prevent warning.
21318
21319 * xterm.c (enter_timestamp): Put in #if 0 to prevent warning.
21320
21321 2002-02-23 Eli Zaretskii <eliz@is.elta.co.il>
21322
21323 * w16select.c (Fw16_get_clipboard_data): Fix last change.
21324
21325 * xselect.c (selection_data_to_lisp_data): Fix last change.
21326
21327 2002-02-22 Jason Rumney <jasonr@gnu.org>
21328
21329 * w32term.h (struct w32_output): New member menu_command_in_progress.
21330
21331 * w32menu.c (menubar_selection_callback): Free the menu and
21332 clear the menu_command_in_progress flag.
21333
21334 * w32fns.c (mouse_move_timer, mouse_button_timer): Initialize.
21335 (menu_free_timer): New variable.
21336 (MENU_FREE_ID, MENU_FREE_DELAY): New constants.
21337 (w32_wnd_proc) <WM_TIMER>: Handle menu_free_timer.
21338 <WM_EXITMENULOOP>: Delay before freeing menu. Do nothing if a
21339 menu command is in progress.
21340 <WM_COMMAND>: Set the menu_command_in_progress flag.
21341 Kill any menu_free_timer that is running.
21342
21343 * w32term.c (w32_text_out): Renamed from W32_TEXTOUT.
21344 Call ExtTextOutA rather than ExtTextOut.
21345
21346 2002-02-22 Eli Zaretskii <eliz@gnu.org>
21347
21348 * puresize.h (BASE_PURESIZE): Increase to 755000.
21349
21350 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
21351
21352 * w16select.c (Fw16_set_clipboard_data): Run pre-write-conversion
21353 on the string before encoding it.
21354 (Fw16_get_clipboard_data): Run post-read-conversion on the string
21355 after decoding it.
21356
21357 2002-02-22 Eli Zaretskii <eliz@is.elta.co.il>
21358
21359 Support for ICCCM Extended Segments in X selections:
21360
21361 * xselect.c <Qcompound_text_no_extensions>: New variable.
21362 (syms_of_xselect): Intern and staticpro it.
21363 (selection_data_to_lisp_data): Run post-read-conversion on decoded
21364 selection text.
21365 (lisp_data_to_selection_data): If next-selection-coding-system is
21366 compound-text-no-extensions, set the type of selection to be
21367 compound-text.
21368
21369 * xterm.h (x_encode_text): Update prototype.
21370
21371 * xfns.c (x_encode_text): Accept additional arg SELECTIONP; all
21372 callers changed. If SELECTIONP is non-zero, run the
21373 pre-write-conversion function before encoding the selection text.
21374
21375 2002-02-21 Kim F. Storm <storm@cua.dk>
21376
21377 * frame.c (syms_of_frame): Change mouse-highlight default to t.
21378
21379 * keyboard.c (kbd_buffer_get_event) [WINDOWSNT]:
21380 Correct composing of language-change event.
21381
21382 2002-02-20 Kim F. Storm <storm@cua.dk>
21383
21384 * keyboard.c (menu_bar_items): Don't include keymap or local-map
21385 bindings at PT when building menu (the menu is not updated often
21386 enough for this to work reliable).
21387 (tool_bar_items): Likewise.
21388 (current_active_maps): Removed unused (and buggy) function.
21389
21390 2002-02-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21391
21392 * xfns.c (gif_load): Use correct width and height for GIF images.
21393
21394 2002-02-19 Eli Zaretskii <eliz@is.elta.co.il>
21395
21396 * floatfns.c (Fatan): Accept an optional second arg and call
21397 atan2 if passed 2 args.
21398
21399 2002-02-18 Jason Rumney <jasonr@gnu.org>
21400
21401 * w32term.c (glyph_rect): Determine the row and glyph more precisely.
21402
21403 2002-02-17 Jason Rumney <jasonr@gnu.org>
21404
21405 * w32term.c (x_autoselect_window_p): New variable.
21406 (syms_of_w32term): DEFVAR_BOOL and initialize it.
21407 (note_mouse_movement): Use it.
21408
21409 * w32fns.c (w32_load_system_font): Never set fonts_changed_p to zero.
21410
21411 * w32bdf.c (w32_load_bdf_font): Maybe set fonts_changed_p.
21412
21413 * w32fns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21414 New variables.
21415 (syms_of_w32fns): Intern and staticpro them.
21416 (x_frame_parms) <"fullscreen">: New parameter.
21417 (x_fullscreen_move, x_set_fullscreen): New functions.
21418 (x_set_frame_parameters): Support Qfullscreen.
21419 (x_real_positions): Save x/y_pixels_diff frame params.
21420 (x_figure_window_size): Support full-screen frames.
21421 (Fx_create_frame): Default the fullscreen parameter.
21422
21423 * w32term.c (x_check_fullscreen, x_check_fullscreen_move)
21424 (x_fullscreen_adjust): New functions.
21425 (w32_read_socket) <WM_WINDOWPOSCHANGED>: Don't resize to
21426 fullscreen. Call x_check_fullscreen_move, and set the
21427 want_fullscreen member of output_data.w32
21428 <WM_ACTIVATE, WM_ACTIVATEAPP>: Call x_check_fullscreen.
21429
21430 * w32term.h: New enum for FULLSCREEN_* constants.
21431 (struct w32_output): New members want_fullscreen, x_pixels_diff,
21432 y_pixels_diff, x_pixels_outer_diff, and y_pixels_outer_diff.
21433 (x-fullscreen-adjust): New prototype.
21434
21435 2002-02-17 Kim F. Storm <storm@cua.dk>
21436
21437 * frame.c (Vmouse_highlight): New variable.
21438 (syms_of_frame): DEFVAR_LISP it.
21439
21440 * frame.h (Vmouse_highlight): Declare extern.
21441
21442 * xterm.h (struct x_display_info): Add mouse_face_hidden.
21443
21444 * xterm.c (disable_mouse_highlight): Removed variable.
21445 (note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
21446 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21447 (XTread_socket): Turn mouse_face_hidden off after mouse movement,
21448 and on after keyboard input.
21449 (x_term_init): Initialize mouse_face_hidden.
21450
21451 * msdos.h (struct display_info): Add mouse_face_hidden.
21452
21453 * msdos.c (disable_mouse_highlight): Removed variable.
21454 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21455 (IT_note_mouse_highlight): Don't highlight if Vmouse_highlight is nil.
21456 (internal_terminal_init): Initialize mouse_face_hidden.
21457 (dos_rawgetc): Turn mouse_face_hidden off after mouse movement,
21458 and on after keyboard input.
21459
21460 * w32term.h (struct w32_display_info): Add mouse_face_hidden.
21461
21462 * w32term.c (disable_mouse_highlight): Removed variable.
21463 (note_mouse_highlight): Disable highlight if Vmouse_highlight is nil.
21464 (show_mouse_face): Don't show highlight if mouse_face_hidden is set.
21465 (w32_read_socket): Turn mouse_face_hidden off after mouse movement,
21466 and on after keyboard input.
21467 (w32_initialize_display_info): Initialize mouse_face_hidden.
21468
21469 2002-02-16 Eli Zaretskii <eliz@is.elta.co.il>
21470
21471 * msdos.c (last_mouse_window): New variable.
21472 (dos_rawgetc): Fix last change--if the mouse is in the same window
21473 as recorded in last_mouse_window, don't select this window.
21474
21475 * Makefile.in (lisp, shortlisp): Use cus-start.elc, not cus-start.el.
21476
21477 * msdos.c (x_autoselect_window_p): New variable.
21478 (syms_of_msdos): Defvar it.
21479 (dos_rawgetc): If x_autoselect_window_p is set, select the window in
21480 which the last mouse movement occured, unless it is already selected.
21481
21482 * xdisp.c (automatic_hscroll_margin, Vautomatic_hscroll_step):
21483 New variables.
21484 (syms_of_xdisp): DEVFAR them.
21485 (hscroll_window_tree): Use automatic_hscroll_margin and
21486 Vautomatic_hscroll_step to compute the amount of window scrolling.
21487
21488 2002-02-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21489
21490 * xterm.c (x-autoselect-window): New variable.
21491 (note_mouse_movement): Use it.
21492
21493 * keyboard.c: Do not include "systime.h" twice.
21494
21495 2002-02-15 Andreas Schwab <schwab@suse.de>
21496
21497 * puresize.h (PURESIZE_RATIO): Increase to 9/5.
21498
21499 * alloc.c (NSTATICS): Increase to 1280.
21500
21501 2002-02-15 Kai Gro\e,A_\e(Bjohann <Kai.Grossjohann@CS.Uni-Dortmund.DE>
21502
21503 * alloc.c (NSTATICS): Bump to 1026.
21504
21505 * xterm.c (Vx_alt_keysym, Vx_hyper_keysym, Vx_meta_keysym)
21506 (Vx_super_keysym): New variables.
21507 (syms_of_xterm): DEFVAR_LISP them.
21508 (x_x_to_emacs_modifiers, x_emacs_to_x_modifiers): Use the
21509 variables to determine which keys to use for the various modifiers.
21510
21511 2002-02-13 Kim F. Storm <storm@cua.dk>
21512
21513 * window.c (Vmode_line_in_non_selected_windows): Removed.
21514 (mode_line_in_non_selected_windows): New variable.
21515 (syms_of_window): DEFVAR_BOOL it.
21516
21517 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3):
21518 Use mode_line_in_non_selected_windows.
21519 (mode_line_in_non_selected_windows): Declare extern.
21520 (Vmode_line_in_non_selected_windows): Removed extern.
21521
21522 2002-02-13 Richard M. Stallman <rms@gnu.org>
21523
21524 * keyboard.c (Fthis_command_keys, Fthis_command_keys_vector)
21525 (Fthis_single_command_keys, Fthis_single_command_raw_keys)
21526 (Fclear_this_command_keys): Doc fixes.
21527
21528 * xfaces.c (Finternal_make_lisp_face, Finternal_copy_lisp_face)
21529 (update_face_from_frame_parameter): Increment face_change_count
21530 and windows_or_buffers_changed to force redisplay using changed faces.
21531
21532 * xdisp.c (QCpropertize): New variable.
21533 (mode_line_proptrans_alist): New variable.
21534 (display_mode_element): New arg PROPS; all calls changed.
21535 Implement this, for strings.
21536 Handle literal output of strings by sharing the
21537 main-line code for strings, using local var `literal'.
21538 Handle :propertize feature.
21539 (syms_of_xdisp): Initialze and staticpro QCpropertize and
21540 mode_line_proptrans_alist.
21541
21542 2002-02-11 Kim F. Storm <storm@cua.dk>
21543
21544 * window.c (Vmode_line_in_non_selected_windows): New variable.
21545 (syms_of_window): DEFVAR_LISP it.
21546
21547 * dispextern.h (CURRENT_MODE_LINE_FACE_ID_3): New macro.
21548 (CURRENT_MODE_LINE_FACE_ID): Use it.
21549 (Vmode_line_in_non_selected_windows): Declare extern.
21550
21551 * xdisp.c (display_mode_lines): Use CURRENT_MODE_LINE_FACE_ID_3
21552 to get mode line face.
21553
21554 2002-02-11 Eli Zaretskii <eliz@is.elta.co.il>
21555
21556 * msdos.c (Vx_bitmap_file_path, x_stretch_cursor_p): Remove these
21557 variables; cus-start.el doesn't need them anymore.
21558
21559 2002-02-09 Kim F. Storm <storm@cua.dk>
21560
21561 * insdel.c (make_gap_smaller): Preserve BEG_UNCHANGED during gap
21562 reduction. This fixes a display problem where stray newlines were
21563 inserted in the window (corrected by C-l). Clarified code (IMHO).
21564
21565 2002-02-09 Eli Zaretskii <eliz@is.elta.co.il>
21566
21567 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): Fix last change.
21568
21569 * xdisp.c (display_mode_lines): Fix last change.
21570
21571 2002-02-09 Jason Rumney <jasonr@gnu.org>
21572
21573 * w32fns.c (enum_font_cb2): Don't let charsets unknown to Windows
21574 match each other.
21575 (w32_load_system_font): Prevent Cleartype fonts from loading.
21576 (Fx_show_tip): Ensure tip frames are above other topmost windows.
21577
21578 2002-02-09 Kim F. Storm <storm@cua.dk>
21579
21580 * dispextern.h (CURRENT_MODE_LINE_FACE_ID): New macro.
21581 (CURRENT_MODE_LINE_HEIGHT): Use it.
21582 (enum face_id): Add MODE_LINE_INACTIVE_FACE_ID.
21583
21584 * xdisp.c (window_box_height): Use CURRENT_MODE_LINE_FACE_ID.
21585 (pos_visible_p, handle_face_prop): Likewise.
21586 (display_mode_lines): Likewise, but for the real selected window.
21587 (init_iterator) [row == NULL]: Handle MODE_LINE_INACTIVE_FACE_ID.
21588
21589 * xfaces.c (Qmode_line_inactive): New face variable for mode-line
21590 in non-selected windows.
21591 (realize_basic_faces): Realize it.
21592 (syms_of_term): Intern and staticpro it.
21593
21594 2002-02-08 Kim F. Storm <storm@cua.dk>
21595
21596 * alloc.c (SETJMP_WILL_LIKELY_WORK, SETJMP_WILL_NOT_WORK):
21597 Changed mail addresses to emacs-devel@gnu.org.
21598
21599 2002-02-08 Eli Zaretskii <eliz@is.elta.co.il>
21600
21601 * fileio.c (Fsubstitute_in_file_name): If the file name includes
21602 ~user, and there's no such user, don't discard everything before ~user.
21603
21604 * floatfns.c (Fround): Doc fix.
21605
21606 2002-02-08 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21607
21608 * sysdep.c (init_system_name): Put unused variable `p' in #if 0.
21609
21610 2002-02-07 Stefan Monnier <monnier@cs.yale.edu>
21611
21612 * lisp.h (Fx_file_dialog): Add extern decl (used in fileio.c).
21613
21614 2002-02-07 Kim F. Storm <storm@cua.dk>
21615
21616 * keymap.c (where_is_internal): Only check whether definition is
21617 remapped if it fulfills is_command_symbol.
21618
21619 2002-02-07 Andreas Schwab <schwab@suse.de>
21620
21621 * s/gnu-linux.h (GC_LISP_OBJECT_ALIGNMENT): Define to 2 for m68k.
21622
21623 * alloc.c (mark_stack): Don't assume sizeof (Lisp_Object) is 4.
21624
21625 2002-02-06 Kim F. Storm <storm@cua.dk>
21626
21627 * keymap.c (Fdefine_key): Allow symbol as KEY argument for
21628 defining command remapping. Doc updated.
21629 (Flookup_key): Remap command through keymap if KEY is a symbol.
21630 (is_command_symbol): New function.
21631 (Fkey_binding): Use it. New optional argument NO-REMAP.
21632 Doc updated. Callers changed. Perform command remapping via
21633 recursive call unless that arg is non-nil.
21634 (where_is_internal): New argument no_remap. Callers changed.
21635 Call recursively to find original key bindings for a remapped
21636 comand unless that arg is non-nil.
21637 (Fwhere_is_internal): New optional argument NO-REMAP.
21638 Doc updated. Callers changed. Pass arg to where_is_internal.
21639
21640 * keymap.h (Fkey_binding, Fwhere_is_internal): Update prototype.
21641 (is_command_symbol): Add prototype.
21642
21643 * keyboard.c (Vthis_original_command): New variable.
21644 (syms_of_keyboard): DEFVAR_LISP it.
21645 (command_loop_1): Set it, and perform command remapping.
21646
21647 2002-02-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21648
21649 * keyboard.c (recursive_edit_1): Call cancel_hourglass unconditionally.
21650
21651 2002-02-06 Jason Rumney <jasonr@gnu.org>
21652
21653 * w32term.c (w32_native_per_char_metric): Disable 2002-01-20 change.
21654
21655 2002-02-06 Eli Zaretskii <eliz@is.elta.co.il>
21656
21657 * charset.c (get_charset_id): Use if-else instead of ?:.
21658
21659 2002-02-06 Richard M. Stallman <rms@gnu.org>
21660
21661 * filelock.c (S_ISLNK): Define if not defined.
21662
21663 2002-02-03 Richard M. Stallman <rms@gnu.org>
21664
21665 * fileio.c (Fdo_auto_save): Improve "auto save disabled" msg.
21666
21667 * lread.c (read1): Redesign strategy for force_multibyte and
21668 force_singlebyte. Now is_multibyte records whether read_buffer
21669 is multibyte. Encountering any multibyte character makes it so.
21670
21671 2002-02-02 Stefan Monnier <monnier@cs.yale.edu>
21672
21673 * term.c (term_get_fkeys_1): If `k0' and `k;' are both specified and
21674 with the same sequence, map that sequence to f10 rather than f0.
21675
21676 2002-02-03 Andreas Schwab <schwab@suse.de>
21677
21678 * s/gnu-linux.h: Check for __mc68000__ instead of __m68k__, the
21679 latter never being defined on GNU/Linux.
21680
21681 2002-02-02 Eli Zaretskii <eliz@is.elta.co.il>
21682
21683 * xfaces.c (realize_default_face): Don't set the weight and slant of
21684 the default face to Qnormal, unless these attributes are unspecified.
21685
21686 2002-02-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21687
21688 * keyboard.c (command_loop_1) [HAVE_X_WINDOWS]:
21689 Call cancel_hourglass unconditionally.
21690
21691 * eval.c (Fsignal): Remove duplicated declaration of
21692 the variable `display_hourglass_p'.
21693
21694 2002-01-31 Richard M. Stallman <rms@gnu.org>
21695
21696 * editfns.c (region_limit): Nicer error message.
21697
21698 * coding.c (decode_composition_emacs_mule):
21699 Give up if NCOMPONENT gets too large to index `component'.
21700
21701 * callint.c (check_mark): New arg to specify clearer error message.
21702 Callers changed.
21703
21704 2002-01-27 Richard M. Stallman <rms@gnu.org>
21705
21706 * minibuf.c (Fcompleting_read): Doc fix.
21707
21708 2002-01-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21709
21710 * minibuf.c (Fread_from_minibuffer, Fread_command, Fread_function)
21711 (Fread_variable, Fread_buffer, minibuffer-completion-confirm):
21712 Fix doc-strings.
21713
21714 2002-01-26 Richard M. Stallman <rms@gnu.org>
21715
21716 * buffer.c (syms_of_buffer): Doc fixes for scroll-...-aggressively.
21717
21718 * xdisp.c (try_scrolling): Exchange uses of scroll_down_aggressively
21719 and scroll_up_aggressively.
21720
21721 2002-01-26 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21722
21723 * keyboard.c (parse_tool_bar_item): Remove duplicated prototypes.
21724
21725 2002-01-25 Stefan Monnier <monnier@cs.yale.edu>
21726
21727 * textprop.c (Fnext_property_change, Fnext_single_property_change)
21728 (Fprevious_property_change, Fprevious_single_property_change):
21729 Stay within the narrowed-buffer boundaries.
21730
21731 2002-01-25 Eli Zaretskii <eliz@is.elta.co.il>
21732
21733 * term.c (Ftty_display_color_cells): New function.
21734 (syms_of_term): Defsubr it.
21735 (Ftty_display_color_cells, Ftty_display_color_p): Change the
21736 argument name to DISPLAY. Doc fix.
21737
21738 * dispextern.h: Add prototype for set_tty_color_mode and
21739 tty_setup_colors.
21740
21741 2002-01-24 Jason Rumney <jasonr@gnu.org>
21742
21743 * w32term.c (x_scroll_run): Use ScrollWindowEx in place of BitBlt.
21744 If region left to draw is not what was expected, mark the frame as
21745 garbaged.
21746
21747 * w32fns.c (w32_wnd_proc) <WM_PAINT>: Initialize update_rect.
21748 Combine the regions returned by BeginPaint and GetUpdateRect.
21749
21750 2002-01-23 Jason Rumney <jasonr@gnu.org>
21751
21752 * w32term.c (x_update_window_begin): Only hide caret if
21753 w32_use_visible_system_caret is set.
21754 (x_update_window_end): Only show caret if
21755 w32_use_visible_system_caret is set.
21756 (syms_of_w32term): Handle SystemParametersInfo call failing.
21757
21758 * w32fns.c (syms_of_w32fns): Initialize w32_visible_system_caret_hwnd.
21759
21760 2002-01-22 Richard M. Stallman <rms@gnu.org>
21761
21762 * unexelf.c (unexec): Define n so as to cause compilation error
21763 for the code where people have often written n instead of nn.
21764
21765 * .gdbinit (hookpost-run): Defined.
21766
21767 2002-01-22 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21768
21769 * xfns.c (x_set_frame_parameters): Typo in previous fix corrected.
21770
21771 2002-01-21 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21772
21773 * xfns.c (x_set_frame_parameters): Just call x_fullscreen_adjust
21774 if fullscreen is being set.
21775
21776 2002-01-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21777
21778 * minibuf.c (Fminibuffer_contents)
21779 (Fminibuffer_contents_no_properties, Fread_from_minibuffer)
21780 (Fread_string, Fread_no_blanks_input, Fcompleting_read): Doc fixes.
21781
21782 2002-01-21 Richard M. Stallman <rms@gnu.org>
21783
21784 * window.c (check_frame_size): Fix minimum height calculation.
21785
21786 2002-01-20 Ken Raeburn <raeburn@gnu.org>
21787
21788 * dispextern.h (WINDOW_WANTS_MODELINE_P): Use XFASTINT on window
21789 height before comparison.
21790 (WINDOW_WANTS_HEADER_LINE_P): Likewise.
21791
21792 2002-01-20 Jason Rumney <jasonr@gnu.org>
21793
21794 * w32term.c (w32_system_caret_width): Remove.
21795 (w32_use_visible_system_caret): New user flag.
21796 (syms_of_w32term): DEFVAR_BOOL it. Initialize based on whether
21797 Windows reports a screen reader running.
21798 (x_update_window_begin): Hide the system caret.
21799 (x_update_window_end): Show the system caret.
21800 (x_display_and_set_cursor): Don't draw a cursor when
21801 w32_use_visible_system_caret is set. Do not adjust width.
21802
21803 * w32fns.c (w32_visible_system_caret_hwnd): New static variable.
21804 (w32_wnd_proc) <WM_KILL_FOCUS, WM_EMACS_DESTROY_CARET>: Set it.
21805 <WM_EMACS_TRACK_CARET>: Arrange for system caret to be visible if
21806 the user requests it. Use system default width when creating.
21807 <WM_EMACS_HIDE_CARET, WM_EMACS_SHOW_CARET>: Handle new messages.
21808
21809 * w32term.h (WM_EMACS_SHOW_CARET, WM_EMACS_HIDE_CARET):
21810 New window messages.
21811
21812 2002-01-20 Richard M. Stallman <rms@gnu.org>
21813
21814 * window.c (MIN_SAFE_WINDOW_HEIGHT): Value now 1.
21815
21816 2002-01-20 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21817
21818 * doprnt.c (doprnt1): Fix typos in error call.
21819
21820 2002-01-20 Eli Zaretskii <eliz@is.elta.co.il>
21821
21822 * unexelf.c (unexec) [__sgi]: Support the .got sections.
21823
21824 2002-01-20 Jason Rumney <jasonr@gnu.org>
21825
21826 * w32term.c (w32_native_per_char_metric): Don't trust the metrics
21827 that Windows returns. If a double check fails, try to guess how
21828 ExtTextOut is going to act.
21829
21830 * w32fns.c (w32_load_system_font, w32_to_x_charset): Use strnicmp
21831 in place of stricmp.
21832 (w32_list_synthesized_fonts): Removed.
21833 (w32_to_all_x_charsets, enum_font_maybe_add_to_list): New functions.
21834 (struct enumfont_t): New element; list.
21835 (enum_font_cb2): List all style and charset variations of a font.
21836 (Fw32_select_font): New optional argument; include_proportional.
21837 Exclude vertical fonts. Exclude proportional fonts unless
21838 include_proportional is non-nil.
21839 (w32_enable_synthesized_fonts): Change to a boolean.
21840 (Fw32_send_sys_command): Doc fix.
21841
21842 2002-01-19 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21843
21844 * dispnew.c (update_frame): Move the variable `tem' to the block
21845 where it is used.
21846
21847 2002-01-19 Jason Rumney <jasonr@gnu.org>
21848
21849 * w32fns.c (Fx_create_frame): Bind redisplay-dont-pause around
21850 call to face-set-after-frame-default.
21851
21852 2002-01-18 Richard M. Stallman <rms@gnu.org>
21853
21854 * dispextern.h (WINDOW_WANTS_MODELINE_P): Check window height > 1.
21855 (WINDOW_WANTS_HEADER_LINE_P): Check window height provides room.
21856
21857 2002-01-17 Richard M. Stallman <rms@gnu.org>
21858
21859 * window.c (enlarge_window): When exceeding size of parent,
21860 directly delete all the siblings instead of trying to resize it.
21861
21862 2002-01-17 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21863
21864 * term.c (set_tty_color_mode): Remove unused variable `tem'.
21865
21866 2002-01-16 Henrik Enberg <henrik@enberg.org>
21867
21868 * lread.c (init_lread): Move the installed-lisp dirs later in the path.
21869
21870 2002-01-16 Kim F. Storm <storm@cua.dk>
21871
21872 * xterm.c (x_erase_phys_cursor): Don't erase cursor if cursor row
21873 is invisible. This can happen if cursor is on top line of a
21874 window, and we switch to a buffer with a header line.
21875
21876 * w32term.c (x_erase_phys_cursor): Ditto.
21877
21878 2002-01-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21879
21880 * xterm.c (XTread_socket) [!USE_X_TOOLKIT]: Compute the value of
21881 `dont_resize' only when used.
21882
21883 * xdisp.c: Remove forgotten extern declaration of `Qimage'.
21884
21885 2002-01-15 Eli Zaretskii <eliz@is.elta.co.il>
21886
21887 * xdisp.c (display_mode_element): When computing charpos, depend
21888 on multibyteness of elt, not the text in field.
21889
21890 2002-01-15 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21891
21892 * buffer.c (Fkill_all_local_variables):
21893 Increment `update_mode_lines' only once.
21894
21895 2002-01-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21896
21897 * lisp.h (adjust_after_replace_noundo)
21898 (Fupdate_coding_systems_internal): Add prototypes.
21899
21900 * sound.c (Fplay_sound): Initialize header_size also for :data case.
21901
21902 2002-01-14 Eli Zaretskii <eliz@is.elta.co.il>
21903
21904 Support for the --color command-line argument and tty-color-mode
21905 frame parameter:
21906
21907 * term.c (tty_default_color_capabilities, tty_setup_colors)
21908 (set_tty_color_mode): New functions.
21909 (term_init): Call tty_default_color_capabilities.
21910 (Qtty_color_mode_alist): New variable.
21911 (syms_of_term): Intern and staticpro it.
21912
21913 * frame.c (store_frame_param): Call set_tty_color_mode for termcap
21914 frames.
21915 (do_switch_frame): For termcap frames, switch the tty
21916 color mode as specified by the frame's parameters.
21917 (Qtty_color_mode): New variable.
21918 (syms_of_frame): Intern and staticpro it.
21919
21920 * emacs.c (USAGE2): Add the --color option.
21921 (standard_args): Ditto.
21922
21923 2002-01-13 Jan Dj\e,Ad\e(Brv <jan.h.d@swipnet.se>
21924
21925 * xterm.h (struct x_output): New members want_fullscreen,
21926 x_pixels_diff, y_pixels_diff, x_pixels_outer_diff, and
21927 y_pixels_outer_diff.
21928 New enum for FULLSCREEN_* constants.
21929 (FRAME_OUTER_WINDOW): Handle the case where output_data.x->widget
21930 is NULL.
21931 (x_fullscreen_adjust): Add prototype.
21932
21933 * emacs.c (USAGE2): Add the new full-screen arguments.
21934 (standard_args): Ditto.
21935
21936 * xfns.c (Qfullscreen, Qfullwidth, Qfullheight, Qfullboth):
21937 New variables.
21938 (syms_of_xfns): Intern and staticpro them.
21939 (x_frame_parms) <"fullscreen">: New parameter.
21940 (x_fullscreen_move, x_set_fullscreen): New functions.
21941 (x_set_frame_parameters): Support for Qfullscreen.
21942 (x_real_positions): More accurate computation of the frame position.
21943 (x_figure_window_size): Support full-screen frames.
21944 (Fx_create_frame): Default the fullscreen parameter.
21945
21946 * xterm.c (x_check_fullscreen, x_fullscreen_adjust): New functions.
21947 (XTread_socket) <Expose>: Call x_check_fullscreen.
21948 <ConfigureNotify>: Don't resize to fullscreen.
21949 Call x_check_fullscreen_move, and set the want_fullscreen member of
21950 output_data.x.
21951
21952 2002-01-13 Jason Rumney <jasonr@gnu.org>
21953
21954 * w32term.h (WM_XBUTTONDOWN, WM_XBUTTONUP): New window messages
21955 for mice with more than 3 buttons.
21956
21957 * w32term.c (parse_button): New parameter xbutton. Callers changed.
21958 (w32_read_socket): Handle new "XBUTTON" messages.
21959
21960 * w32fns.c (w32_pass_extra_mouse_buttons_to_system): New user option.
21961 (syms_of_w32fns): DEFVAR_BOOL it.
21962 (w32_wnd_proc): Handle new "XBUTTON" messages.
21963
21964 2002-01-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
21965
21966 * keyboard.c (read_key_sequence): Remove unused variable `extra_maps'.
21967
21968 2002-01-13 Andreas Schwab <schwab@suse.de>
21969
21970 * xterm.c (x_load_font): Never set fonts_changed_p to zero.
21971
21972 2002-01-12 Andreas Schwab <schwab@suse.de>
21973
21974 * .gdbinit (xbuffer): Remove address operator since data is now a
21975 pointer.
21976
21977 2002-01-11 Richard M. Stallman <rms@gnu.org>
21978
21979 * insdel.c (adjust_after_replace_noundo): New function.
21980
21981 * coding.c (code_convert_region): Don't copy old text if undo disabled.
21982
21983 2002-01-09 Jason Rumney <jasonr@gnu.org>
21984
21985 * xdisp.c (x_consider_frame_title): Don't count the tooltip frame
21986 when checking for multiple frames.
21987
21988 2002-01-08 Richard M. Stallman <rms@gnu.org>
21989
21990 * window.c (delete_window): Rewrite the code for changing the
21991 selected window to handle the case where WINDOW is not a leaf.
21992
21993 2002-01-07 Eli Zaretskii <eliz@is.elta.co.il>
21994
21995 * process.c (send_process): Set src_multibyte to 1 after the call
21996 top setup_coding_system, not before the call.
21997
21998 2002-01-07 Jason Rumney <jasonr@gnu.org>
21999
22000 * xmenu.c (set_frame_menubar, xmenu_show):
22001 (xdialog_show): Initialize wv->help to Qnil.
22002
22003 * w32menu.c (single_submenu, set_frame_menubar, w32_menu_show):
22004 (w32_dialog_show): Initialize wv->help to Qnil.
22005
22006 2002-01-06 Jason Rumney <jasonr@gnu.org>
22007
22008 * xmenu.c (single_submenu): Initialize wv->help to Qnil.
22009
22010 * w32menu.c (w32_menu_display_help): Revert last change.
22011
22012 * xmenu.c (menu_highlight_callback): Revert last change.
22013
22014 2002-01-06 Andreas Schwab <schwab@suse.de>
22015
22016 * insdel.c (make_gap_larger): Make sure buffer size does not
22017 overflow range of int.
22018
22019 2002-01-05 Jason Rumney <jasonr@gnu.org>
22020
22021 * w32term.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
22022 OVERLAPS_P.
22023
22024 * w32menu.c (w32_menu_display_help): Hide any tooltip window.
22025
22026 * w32fns.c (compute_tip_xy): If tooltip won't fit on the screen
22027 to the left or to the right of the pointer, put it against
22028 the left screen edge.
22029 (x_frame_parms): Add missing braces around initializer.
22030
22031 * w32term.c (x_setup_relief_colors): Don't compute an image's
22032 background color if it doesn't have a Pixmap.
22033 (notice_overwritten_cursor): Don't depend on
22034 output_cursor and updated_area. Compare pixel coordinates with
22035 window's cursor pixel coordinates.
22036 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
22037 Call notice_overwritten_cursor with new arg list.
22038 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
22039 unconditionally.
22040 (x_draw_image_relief): Use predefined macro instead of
22041 constant when the value of `tool_bar_button_relief' is negative.
22042
22043 * w32term.c (x_display_and_set_cursor): Fix PostMessage arg types.
22044
22045 2002-01-04 Richard M. Stallman <rms@gnu.org>
22046
22047 * xmenu.c (menu_highlight_callback): Hide any tooltip window.
22048
22049 2002-01-03 Richard M. Stallman <rms@gnu.org>
22050
22051 * keymap.c (Fcurrent_active_maps): Put the `keymap' property map first.
22052 (Fkey_binding): Try the `keymap' property map first.
22053 (Fdescribe_buffer_bindings): Show `keymap' property bindings before
22054 minor mode bindings.
22055
22056 2002-01-03 Kim F. Storm <storm@cua.dk>
22057
22058 * keyboard.c (read_key_sequence): Fix cast of submaps arg to bcopy.
22059
22060 2002-01-02 Richard M. Stallman <rms@gnu.org>
22061
22062 * keyboard.c (read_key_sequence): Handle the keymap property
22063 before minor mode maps.
22064
22065 * editfns.c (Fformat): Update thissize from field_width
22066 based on the actual width, in the string case.
22067
22068 2002-01-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22069
22070 * charset.h (UNIBYTE_STR_AS_MULTIBYTE_P): Parenthesize assignment
22071 when used as truth value to prevent gcc warnings.
22072
22073 * sysdep.c, unexapollo.c, w32.c, w32bdf.c, w32heap.c, w32inevt.c,
22074 * w32proc.c: Include <config.h>.
22075
22076 2002-01-01 Andreas Schwab <schwab@suse.de>
22077
22078 * eval.c (max_specpdl_size, max_lisp_eval_depth): Define as int,
22079 not EMACS_INT, to make them compatible with DEFVAR_INT.
22080 * lisp.h (max_specpdl_size): Adjust declaration.
22081
22082 2002-01-01 Richard M. Stallman <rms@gnu.org>
22083
22084 * print.c (print_object): Test print_escape_nonascii only for
22085 unibyte strings.
22086 (PRINTPREPARE): Once again bind Qprint_escape_nonascii
22087 when outputting to a multibyte buffer.
22088
22089 2001-12-29 Richard M. Stallman <rms@gnu.org>
22090
22091 * print.c (print_object): In multibyte string, use hex escapes.
22092 Use octal only for unibyte strings.
22093 (PRINTPREPARE): Don't ever set Qprint_escape_nonascii.
22094
22095 * lread.c (read_escape): New arg BYTEREP for reporting whether
22096 escape forces unibyte or multibyte.
22097 (read1): When reading a string, take note of that info.
22098
22099 2001-12-29 Ken Raeburn <raeburn@gnu.org>
22100
22101 * abbrev.c (Fexpand_abbrev): Use NILP instead of implicit zero
22102 comparison to test lisp value returned by Fget.
22103
22104 2001-12-29 Richard M. Stallman <rms@gnu.org>
22105
22106 * lisp.h (max_specpdl_size): Add declaration.
22107
22108 * fileio.c (Fdo_auto_save): If NO_MESSAGE, don't call push_message.
22109
22110 * keymap.c (silly_event_symbol_error): New subrtn, from Fdefine_key.
22111 Handle modifier bits. Correct typo in error message.
22112
22113 2001-12-28 Richard M. Stallman <rms@gnu.org>
22114
22115 * abbrev.c: Use the plist of an abbrev for multiple params if nec.
22116 (Fdefine_abbrev): New arg SYSTEM-FLAG for a system abbrev.
22117 (Fdefine_global_abbrev, Fdefine_mode_abbrev):
22118 Update calls to Fdefine_abbrev.
22119 (write_abbrev): Update for changed data format.
22120 Don't list "system" abbrevs.
22121 (Fexpand_abbrev): Update use count with new data format.
22122 (describe_abbrev): Update for changed data format.
22123 (Fdefine_abbrev_table): Handle the new SYSTEM-FLAG.
22124
22125 * config.in (HAVE_MBSINIT): Add #undef.
22126
22127 * strftime.c (mbsinit): Define as no-op if not available.
22128
22129 * s/sco5.h (LIBX11_SYSTEM) [MOTIF]: Add -lgen.
22130 (sigprocmask_set): Conditionalize decl on ! NOT_C_CODE.
22131
22132 * keymap.c (Flookup_key): Error message if key has wrong data type.
22133 (Fdefine_key): Add error message for trying to bind [DEL], [RET], etc.
22134 (exclude_key): New variable.
22135
22136 2001-12-28 Gerd Moellmann <gerd@gnu.org>
22137
22138 * xterm.c (x_setup_relief_colors): Don't compute an image's
22139 background color if it doesn't have a Pixmap.
22140
22141 * xterm.c (notice_overwritten_cursor): Don't depend on
22142 output_cursor and updated_area. Compare pixel coordinates with
22143 window's cursor pixel coordinates.
22144 (x_draw_glyphs, x_clear_end_of_line, show_mouse_face):
22145 Call notice_overwritten_cursor with new arg list.
22146 (show_mouse_face): Fix bug setting a row's mouse_face_p flag
22147 unconditionally.
22148
22149 * xdisp.c (try_scrolling) <PT below scroll margin>: Add the
22150 height of the cursor line to the amount to scroll.
22151
22152 2001-12-27 Richard M. Stallman <rms@gnu.org>
22153
22154 * intervals.c (set_point_both): The position after an invisible,
22155 intangible character is not an acceptable stopping point.
22156
22157 2001-12-27 Ken Raeburn <raeburn@gnu.org>
22158
22159 * window.c (enlarge_window): In new preserve_before code, convert
22160 CURBEG from lisp object to integer before doing arithmetic.
22161
22162 2001-12-27 Richard M. Stallman <rms@gnu.org>
22163
22164 * bytecode.c (Fbyte_code): Undo previous change.
22165
22166 2001-12-26 Kim F. Storm <storm@cua.dk>
22167
22168 * keyboard.c (record_char): Ignore duplicate help-echo events only
22169 separated by mouse-movement. When tracking mouse, only record
22170 first and last mouse-movement event in same window.
22171 Don't record mouse-movement events in keyboard macros.
22172
22173 2001-12-25 Richard M. Stallman <rms@gnu.org>
22174
22175 * window.c (enlarge_window): New arg PRESERVE_BEFORE. Callers changed.
22176 (Fenlarge_window): New arg PRESERVE_BEFORE.
22177
22178 * bytecode.c (Fbyte_code): Use Fstring_make_unibyte
22179 instead of Fstring_as_unibyte.
22180
22181 2001-12-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22182
22183 The following changes remove mocklisp support:
22184
22185 * mocklisp.h, mocklisp.c: Files removed.
22186
22187 * lisp.h: Remove declarations of variables `Vmocklisp_arguments',
22188 `Qmocklisp' and `Qmocklisp_arguments'.
22189 Remove prototype of syms_of_mocklisp.
22190
22191 * makefile.nt, makefile.w32-in, Makefile.in: Remove mocklisp files.
22192
22193 * callint.c: Do not include mocklisp.h.
22194 (Fcall_interactively): Do not test for mocklisp case.
22195
22196 * eval.c: Remove variables `Qmocklisp_arguments',
22197 `Vmocklisp_arguments' and `Qmocklisp'. Remove prototype of ml_apply.
22198 (Fprogn, Fwhile, Fcommandp, Feval, Ffuncall, funcall_lambda):
22199 Do not test for mocklisp case.
22200 (Fwhile): Remove unused variable `tem'.
22201 (syms_of_eval): Remove variable `moclisp-arguments'.
22202
22203 * data.c (wrong_type_argument): Remove mocklisp case.
22204
22205 * doc.c (Fdocumentation): Remove mocklisp case.
22206
22207 * emacs.c (main): Do not call syms_of_mocklisp.
22208
22209 2001-12-21 Richard M. Stallman <rms@gnu.org>
22210
22211 * xfns.c (compute_tip_xy): If tooltip won't fit on the screen
22212 to the left or to the right of the pointer, put it against
22213 the left screen edge.
22214
22215 2001-12-21 Eli Zaretskii <eliz@is.elta.co.il>
22216
22217 * Makefile.in (distclean): Remove .gdbinit if we are building
22218 outside the source tree.
22219
22220 2001-12-19 Eli Zaretskii <eliz@is.elta.co.il>
22221
22222 * w32.c (emacs_root_dir): New function.
22223
22224 * msdos.c (emacs_root_dir): New function.
22225
22226 * fileio.c (Fexpand_file_name) [DOS_NT]: Use the root directory
22227 of the current drive as the fallback for default_directory.
22228
22229 * dired.c (file_name_completion): Run the elements of
22230 completion-ignored-extensions through ENCODE_FILE.
22231
22232 * lisp.h (scmp): Remove prototype, since it's now a static
22233 function private to dired.c.
22234
22235 2001-12-18 Richard M. Stallman <rms@gnu.org>
22236
22237 * dired.c (scmp): Function moved from minibuf.c.
22238 Delete multibyte handling--used only on encoded strings.
22239
22240 * minibuf.c (scmp): Function moved to dired.c.
22241
22242 * fns.c (merge): Add QUIT call.
22243
22244 2001-12-18 Dave Love <fx@gnu.org>
22245
22246 * Makefile.in (lisp, shortlisp): Add language/utf-8-lang.el,
22247 language/georgian.el.
22248
22249 2001-12-18 Eli Zaretskii <eliz@is.elta.co.il>
22250
22251 * Makefile.in (lisp, shortlisp): Synchronize with changes to
22252 lisp/Makefile.in:DONTCOMPILE.
22253
22254 2001-12-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22255
22256 * xdisp.c (window_box_height): Do not return negative values.
22257 From Gerd Moellmann <gerd@gnu.org>.
22258
22259 * keyboard.c (head_table): Add missing braces around initializer.
22260
22261 * term.c (keys): Likewise.
22262
22263 * xfns.c (x_frame_parms, visual_classes): Likewise.
22264
22265 2001-12-17 Sam Steingold <sds@gnu.org>
22266
22267 * coding.c (DECODE_COMPOSITION_END): Fixed a typo in the last
22268 patch (COMPOSING_P, not COMPOSING).
22269
22270 2001-12-17 Richard M. Stallman <rms@gnu.org>
22271
22272 * editfns.c (Fcompare_buffer_substrings): Add QUIT to main loop.
22273
22274 * coding.c (code_convert_region): Update coding->cmp_data->char_offset
22275 before calling decode_coding.
22276
22277 * charset.c (Fdefine_charset): Call Fupdate_coding_systems_internal.
22278
22279 * coding.c (DECODE_COMPOSITION_END): Check for ! COMPOSING_P (coding)
22280 instead of only for COMPOSITION_DISABLED.
22281
22282 2001-12-16 Richard M. Stallman <rms@gnu.org>
22283
22284 * alloc.c (pure_alloc): After overflow, allocate just a small block.
22285
22286 * Makefile.in (xmenu.o, xterm.o, fontset.o): Depend on buffer.h.
22287
22288 * buffer.h (struct buffer): New field `display_error_modiff'.
22289 * buffer.c (reset_buffer): Initialize `display_error_modiff'.
22290
22291 * window.c (Frecenter): Clear display_error_modiff field.
22292
22293 * xdisp.c (redisplay_window_0, redisplay_window_1): New functions.
22294 Call redisplay_window, but not if display_error_modiff field says no.
22295 (redisplay_window_error): New function.
22296 (displayed_buffer): New variable.
22297 (redisplay_internal, redisplay_windows): Call the new functions
22298 instead of redisplay_window directly.
22299
22300 2001-12-15 Richard M. Stallman <rms@gnu.org>
22301
22302 * keyboard.c (syms_of_keyboard) <double-click-fuzz>: Doc fix.
22303
22304 2001-12-14 Andrew Innes <andrewi@gnu.org>
22305
22306 * makefile.w32-in (EMACSLOADPATH): Define.
22307 ($(EMACS)): Run `list-load-path-shadows' after dumping Emacs.
22308 (bootstrap-temacs): Remove dependency on bootstrap-clean.
22309
22310 2001-12-13 Eli Zaretskii <eliz@is.elta.co.il>
22311
22312 * xfns.c (x_report_frame_params): Make the scroll-bar-width frame
22313 parameter have a numeric value all the time.
22314
22315 * w32fns.c (x_report_frame_params): Likewise.
22316
22317 2001-12-12 Richard M. Stallman <rms@gnu.org>
22318
22319 * fileio.c (Fwrite_region): Doc fix.
22320
22321 * xdisp.c (CLEAR_FACE_CACHE_COUNT): Redefine as 500.
22322 (redisplay_internal): Call clear_image_cache only for window terminals.
22323
22324 2001-12-12 Gerd Moellmann <gerd@gnu.org>
22325
22326 * xdisp.c (move_it_vertically_backward): Change heuristic
22327 for the case that we didn't move far enough initially.
22328
22329 * window.c (Frecenter): Simplify computation in the case of window
22330 system frames and ARG < 0; use window_box_height.
22331
22332 2001-12-11 Richard M. Stallman <rms@gnu.org>
22333
22334 * Makefile.in, mem-limits.h, dispnew.c, emacs.c, fileio.c:
22335 * process.c, sysdep.c, unexec.c: Test GNU_LINUX, not LINUX.
22336
22337 2001-12-11 Andrew Innes <andrewi@gnu.org>
22338
22339 * insdel.c (make_gap) [DOUG_LEA_MALLOC]: Call make_gap_smaller if
22340 arg is negative.
22341
22342 2001-12-11 Richard M. Stallman <rms@gnu.org>
22343
22344 * m/hp800.h: Split the __hpux conditional into the parts
22345 that are right for GNU/Linux too and the parts that are not.
22346 Use the former if GNU_LINUX.
22347 (HAVE_ALLOCA, LOAD_AVE_TYPE, LOAD_AVE_CVT): New defs for GNU/Linux.
22348
22349 * s/gnu-linux.h (GNU_LINUX): Defined.
22350
22351 2001-12-11 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22352
22353 * macros.c, msdos.c, w16select.c: Change doc-string comments to
22354 `new style' [w/`doc:' keyword].
22355
22356 2001-12-10 Jason Rumney <jasonr@gnu.org>
22357
22358 * w32menu.c (w32_free_submenu_strings): Clear menu item struct
22359 before using.
22360
22361 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22362
22363 * dosfns.c: Change doc-string comments to `new style' [w/`doc:'
22364 keyword].
22365
22366 2001-12-09 Eli Zaretskii <eliz@is.elta.co.il>
22367
22368 * dosfns.c (dos-display-scancodes, dos-decimal): Doc fix.
22369
22370 * s/hpux10.h (srand48): Don't undefine.
22371
22372 2001-12-09 Jason Rumney <jasonr@gnu.org>
22373
22374 * w32menu.c (_widget_value): Make `help' field a Lisp_Object.
22375 Add comment to explain where the struct came from.
22376 (single_submenu, w32_menu_show): Set `help' field as Lisp_Object.
22377 (add_menu_item): Process pop-up menus first to avoid memory leak.
22378 (add_menu_item, w32_menu_display_help): Use `help' field as
22379 Lisp_Object.
22380 (w32_free_submenu_strings): Only free owner-drawn strings.
22381
22382 2001-12-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22383
22384 * COPYING: Moved back.
22385
22386 * charset.c (char_to_string_1, translate_char, Fdefine_charset):
22387 Add parentheses around && within ||.
22388
22389 * indent.c (compute_motion): Likewise.
22390
22391 * intervals.c (merge_properties_sticky): Likewise.
22392
22393 * coding.c (setup_coding_system, shrink_encoding_region)
22394 (Fdecode_sjis_char): Likewise.
22395
22396 2001-12-07 Andreas Schwab <schwab@suse.de>
22397
22398 * xdisp.c (display_mode_element): Don't read past end of string if
22399 it ends with '%'.
22400
22401 * alloc.c (inhibit_garbage_collection): Don't exceed value an int
22402 can hold.
22403
22404 * data.c (Vmost_positive_fixnum, Vmost_negative_fixnum):
22405 Rename from most_positive_fixnum and most_negative_fixnum, resp., and
22406 type changed to Lisp_Object.
22407 (syms_of_data): DEFVAR_LISP them.
22408
22409 2001-12-07 Richard M. Stallman <rms@gnu.org>
22410
22411 * callproc.c (init_callproc): Set Vdata_directory based on the source
22412 location whenever Emacs was run uninstalled.
22413
22414 2001-12-06 Paul Eggert <eggert@twinsun.com>
22415
22416 * config.in (HAVE_WORKING_VFORK): New #undefs.
22417 * process.c (create_process):
22418 Use HAVE_WORKING_VFORK, not HAVE_VFORK.
22419 * m/cnvrgnt.h (HAVE_VFORK): Remove #define.
22420 * m/ibm370aix.h (HAVE_VFORK): Remove #undef.
22421 * m/ibmps2-aix.h (HAVE_VFORK): Remove #define.
22422 * m/intel386.h (HAVE_VFORK): Likewise.
22423 * m/mips-siemens.h (HAVE_VFORK): Likewise.
22424 * m/mips.h (HAVE_VFORK): Likewise.
22425 * s/freebsd.h (vfork): Remove #define.
22426 * s/lynxos.h (HAVE_VFORK): Remove #undef.
22427 * s/usg5-4-2.h: Fix comment about vfork.
22428
22429 2001-12-06 Richard M. Stallman <rms@gnu.org>
22430
22431 * s/hpux10.h (random): Add undef.
22432 (HAVE_RANDOM): Define it just once.
22433
22434 2001-12-06 Stefan Monnier <monnier@cs.yale.edu>
22435
22436 * eval.c: Undo last change: the standard syntax is not wanted.
22437
22438 2001-12-06 Eli Zaretskii <eliz@is.elta.co.il>
22439
22440 * xterm.c (x_free_frame_resources) [USE_X_TOOLKIT]: Remove all the
22441 scroll bars of the frame before deleting the frame itself. If the
22442 frame has a widget, delete the frame with XtDestroyWidget, and do
22443 not call XDestroyWindow before that.
22444
22445 2001-12-06 Kim F. Storm <storm@cua.dk>
22446
22447 * xfns.c (x_report_frame_params): Return actual fringe widths.
22448
22449 * w32fns.c (x_report_frame_params): Return actual fringe widths.
22450
22451 2001-12-05 Andrew Innes <andrewi@gnu.org>
22452
22453 * alloc.c (Fgarbage_collect): Shrink buffer gaps that are
22454 excessively large.
22455
22456 * insdel.c (make_gap_larger): New function.
22457 (make_gap_smaller): New function.
22458 (make_gap) [USE_MMAP_FOR_BUFFERS || REL_ALLOC]:
22459 Call make_gap_smaller if arg is negative.
22460
22461 2001-12-04 Stefan Monnier <monnier@cs.yale.edu>
22462
22463 * keyboard.c (kbd_buffer_store_event): Fix interrupt_signal prototype.
22464 Pass a dummy argument when calling interrupt_signal.
22465 (parse_menu_item): Mark disabled items before checking for empty def.
22466 (read_char_minibuf_menu_prompt): Make safety more visible.
22467 (read_key_sequence): Add a `first_unbound' variable.
22468 Use it to detect C-c ESC ESC ESC ESC ... cases and drop the
22469 unbound prefix as soon as we can detect it.
22470
22471 * doc.c (Fsnarf_documentation): Add prototype.
22472 (get_doc_string): Handle negative arguments.
22473 (Fdocumentation): Use AREF and ASIZE.
22474 Move the calls to get_doc_string to a single place.
22475 Don't confuse an interactive-spec for a docstring reference.
22476 (Fdocumentation_property): Take advantage of the fact that
22477 get_doc_string now ignores the sign of the docstring position.
22478
22479 * eval.c: Use standard syntax for usage in docstrings.
22480
22481 2001-12-03 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22482
22483 * xdisp.c (syms_of_xdisp): Make `tool-bar-button-relief' an option.
22484
22485 2001-12-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22486
22487 * xterm.c (x_draw_image_relief): Use predefined macro instead of
22488 constant when the value of `tool_bar_button_relief' is negative.
22489
22490 2001-12-02 Richard M. Stallman <rms@gnu.org>
22491
22492 * xmenu.c (menu_highlight_callback): Use `help' field as Lisp_Object.
22493 (single_submenu, xmenu_show): Set `help' field as Lisp_Object.
22494
22495 * fileio.c (read_non_regular): Delete Fsignal call.
22496
22497 2001-12-01 Stefan Monnier <monnier@cs.yale.edu>
22498
22499 * lisp.h (run_hook_list_with_args): Undo last change.
22500
22501 2001-12-01 Gerd Moellmann <gerd@gnu.org>
22502
22503 * xterm.c (x_draw_fringe_bitmap): Always undo clipping.
22504
22505 2001-12-01 Jason Rumney <jasonr@gnu.org>
22506
22507 * window.c (Qleft_fringe, Qright_fringe): Remove. Now in frame.c.
22508
22509 * w32term.h (WM_MOUSELEAVE, TME_LEAVE, TRACKMOUSEEVENT)
22510 [!WM_MOUSELEAVE]: Define.
22511
22512 * w32menu.c (current_popup_menu, get_menu_item_info):
22513 (set_menu_item_info): New vars.
22514 (set_frame_menubar): Doc fix clarifying GC interaction with menus.
22515 (w32_menu_show): Set current_popup_menu.
22516 (add_menu_item): Allocate new strings for owner-drawn menu items
22517 and help strings.
22518 Use owner-draw for disabled menu items again.
22519 (w32_menu_display_help): Ignore owner-drawn items and popup menus.
22520 (w32_free_submenu_strings, w32_free_menu_strings): New functions.
22521
22522 * w32fns.c (trackmouse_window, track_mouse_event_fn): New vars.
22523 (w32_wnd_proc) <WM_MOUSEMOVE>: Notice when mouse enters frame.
22524 <WM_EXITMENULOOP>: Free menu strings.
22525 <WM_MOUSELEAVE>: Stop tracking mouse.
22526 (x_create_tip_frame): Specify no minibuffer, modeline or fringes.
22527
22528 * w32term.c (w32_read_socket) <WM_MOUSELEAVE>: Cancel help echo
22529 and mouse face.
22530
22531 2001-12-01 Kim F. Storm <storm@cua.dk>
22532
22533 The following changes add left-fringe and right-fringe
22534 frame parameters to adjust fringe widths, or remove one or
22535 both fringes.
22536
22537 * frame.h (struct frame): Remove trunc_area_pixel_width and
22538 trunc_area_cols fields.
22539 (Qleft_fringe, Qright_fringe): Declare.
22540 (FRAME_RIGHT_FRINGE_WIDTH): New macro.
22541
22542 * frame.c (Qleft_fringe, Qright_fringe): New vars.
22543 (syms_of_frame): Initialize them.
22544
22545 * window.c (coordinates_in_window): Handle separate left and right
22546 fringe widths.
22547
22548 * xterm.h (struct x_output): Add left_fringe_width, right_fringe_width,
22549 and fringe_cols fields.
22550 (FRAME_FRINGE_BITMAP_WIDTH, FRAME_FRINGE_BITMAP_HEIGHT): Remove macros.
22551 (FRAME_X_FRINGE_COLS): Use fringe_cols field.
22552 (FRAME_X_FRINGE_WIDTH): Use fringes_extra field.
22553 (FRAME_X_LEFT_FRINGE_WIDTH): Use left_fringe_width field.
22554 (FRAME_X_RIGHT_FRINGE_WIDTH): Use right_fringe_width field.
22555 (x_compute_fringe_widths): Add prototype.
22556
22557 * xterm.c (zv_height, zv_bits, zv_period): Changed zv bitmap to
22558 fill fringe evenly with small dashes.
22559 (x_draw_fringe_bitmap): Clear background if necessary. Align and
22560 clip the new ZV bitmap to avoid jitter between rows.
22561 (x_draw_row_fringe_bitmaps): Rely on x_draw_fringe_bitmap to clear
22562 background. Don't draw fringe bitmaps if fringe width is zero.
22563 (x_compute_fringe_widths): New function.
22564 (x_new_font, x_set_window_size_1): Use it.
22565
22566 * xfns.c (x_frame_parms): Add `left-fringe' and `right-fringe' parms.
22567 (x_set_frame_parameters): Process `font' parameter before other
22568 parameters as fringe widths depend on it.
22569 (x_set_fringe_width): New function.
22570 (x_figure_window_size): Use x_compute_fringe_widths.
22571 (Fx_create_frame): Process `left-fringe' and `right-fringe' frame
22572 parameters.
22573
22574 * widget.c (set_frame_size): Use x_compute_fringe_widths.
22575 (EmacsFrameSetCharSize): Ditto.
22576
22577 * w32term.h: Merged changes from xterm.h.
22578 * w32term.c: Merged changes from xterm.c.
22579 * w32fns.c: Merged changes from xfns.c.
22580
22581 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22582
22583 * COPYING: Removed.
22584
22585 2001-11-29 Dave Love <fx@gnu.org>
22586
22587 * coding.c (syms_of_coding) <Qchar_coding_system>: Give it an
22588 extra extra slot.
22589 (detect_coding_mask): Fix call of detect_coding_iso2022.
22590
22591 2001-11-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22592
22593 * fileio.c (file-name-coding-system)
22594 (default-file-name-coding-system): Doc fix (links to referenced
22595 variables added).
22596
22597 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22598
22599 * lisp.h (GCPRO1, GCPRO2, GCPRO3, GCPRO4, GCPRO5):
22600 Add dummy uses of gcproN variables.
22601
22602 * category.c (describe_category, describe_category_1)
22603 (Fdescribe_categories): Remove. (Moved to lisp/help-fns.el.)
22604 (syms_of_category): Don't defsubr Sdescribe_categories.
22605
22606 2001-11-28 Richard M. Stallman <rms@gnu.org>
22607
22608 * fileio.c (Ffind_file_name_handler): Avoid initializer for `result'.
22609
22610 * Makefile.in (lispdir): New variable, referring to build dir.
22611 (TAGS-LISP): Find Makefile in $(lispdir), not $(lispsource).
22612
22613 2001-11-28 Andrew Innes <andrewi@gnu.org>
22614
22615 * w32menu.c (w32_menu_display_help): Actually add the new argument
22616 OWNER.
22617
22618 2001-11-28 Jason Rumney <jasonr@gnu.org>
22619
22620 * w32menu.c (add_menu_item): Do not use owner-draw for disabled
22621 menu items. From David Ponce <dponce@wanadoo.fr>.
22622 (w32_dialog_show) [HAVE_DIALOGS]: Compile whole function
22623 conditionally.
22624 (w32_menu_display_help): New argument OWNER. Rewritten to store a
22625 help event in the owner frame's keyboard buffer.
22626
22627 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Display help directly.
22628 (Fx_show_tip): Don't subtract last width from row width.
22629
22630 * w32term.c (w32_read_socket) <WM_MENUSELECT>: Remove.
22631 (w32_read_socket): Use EQ to compare frames.
22632
22633 2001-11-28 Gerd Moellmann <gerd@gnu.org>
22634
22635 * xterm.c (x_draw_glyphs): Don't call notice_overwritten_cursor if
22636 OVERLAPS_P.
22637
22638 2001-11-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22639
22640 * xdisp.c (message_dolog): Remove unused variables `gcpro2',
22641 `gcpro3' and `gcpro4'.
22642
22643 * coding.c (decode_coding_string): Remove unused variable `gcpro1'.
22644
22645 2001-11-28 Stefan Monnier <monnier@cs.yale.edu>
22646
22647 * ccl.c: Use AREF and ASIZE.
22648
22649 2001-11-27 Stefan Monnier <monnier@cs.yale.edu>
22650
22651 * lisp.h (run_hook_list_with_args): Remove.
22652 (LIST_END_P): Fix call to wrong_type_argument.
22653 (make_fixnum_or_float): Use EMACS_INT rather than int.
22654
22655 2001-11-26 Stefan Monnier <monnier@cs.yale.edu>
22656
22657 * syntax.c (syms_of_syntax): Remove defsubr of Sdescribe_syntax.
22658 (describe_syntax, describe_syntax_1, Fdescribe_syntax): Remove.
22659
22660 * eval.c: Use AREF and ASIZE.
22661 (Ffetch_bytecode): Add the file name to the error message.
22662
22663 * fileio.c (Ffind_file_name_handler): Give precedence to handlers
22664 which match the end of the file-name.
22665 (Fsubstitute_in_file_name): Don't signal an error if $ENVVAR
22666 is not a valid env var, but leave it as is instead.
22667
22668 * keymap.c (access_keymap): Handle t bindings like nil bindings.
22669 Make nil bindings in char-tables transparent.
22670 (store_in_keymap): Turn a nil binding into a t binding for char-tables.
22671
22672 2001-11-26 Richard M. Stallman <rms@gnu.org>
22673
22674 * textprop.c (set_text_properties_1): Allow START, END in either order.
22675 Do nothing if range is empty.
22676
22677 * Makefile.in (mallocobj): Simplify logic using auxiliary vars.
22678
22679 * Makefile.in (mostlyclean): Delete bootstrap-emacs here.
22680 (clean): Not here.
22681
22682 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22683
22684 * textprop.c (set_text_properties_1): Clearly mark that the
22685 interval should not be empty.
22686
22687 * intervals.c (graft_intervals_into_buffer):
22688 Don't call set_text_properties_1 on an empty interval.
22689
22690 2001-11-25 Richard M. Stallman <rms@gnu.org>
22691
22692 * unexelf.c (unexec): Index by n, not nn, when checking for ".sbss".
22693
22694 * callproc.c (Fcall_process): When we make a bigger buffer for bufptr,
22695 don't lose the data in it.
22696
22697 2001-11-25 Juanma Barranquero <lektu@terra.es>
22698
22699 * abbrev.c (Fexpand_abbrev): Use Frun_hooks instead of Vrun_hooks.
22700
22701 * buffer.c (Fkill_buffer): Likewise.
22702
22703 * print.c (temp_output_buffer_setup): Likewise.
22704
22705 2001-11-25 Stefan Monnier <monnier@cs.yale.edu>
22706
22707 * xfaces.c (merge_face_heights): Coerce back to int explicitly.
22708
22709 2001-11-25 Eli Zaretskii <eliz@is.elta.co.il>
22710
22711 * window.c (Fset_window_vscroll): Doc fix. From Kalle Olavi
22712 Niemitalo <kon@iki.fi>.
22713
22714 2001-11-25 Jason Rumney <jasonr@gnu.org>
22715
22716 * w32term.h (FRAME_X_FRINGE_COLS): No fringe on tip frames.
22717
22718 * w32fns.c (x_create_tip_frame): Set frame's fringes_extra to 0.
22719 (Fx_show_tip): Block input during frame creation.
22720 (Fx_show_tip, Fx_hide_tip): Enable.
22721
22722 2001-11-24 Richard M. Stallman <rms@gnu.org>
22723
22724 * lread.c (Fload): Detect recursive load error for more than 3
22725 nestings of the same file.
22726 (Vrecursive_load_depth_limit): Variable deleted.
22727 (syms_of_lread) <recursive-load-depth-limit>: Variable deleted.
22728
22729 2001-11-24 Jason Rumney <jasonr@gnu.org>
22730
22731 * xfns.c (compute_tip_xy): Initialize root_x and root_y from
22732 mouse position if either left or top is not specified.
22733
22734 * w32fns.c (w32_wnd_proc) <WM_MENUSELECT>: Revert last change.
22735 <WM_WINDOWPOSCHANGING>: Let tip frames resize without restriction.
22736 (my_create_tip_window, Fx_show_tip): Adjust size for external border.
22737 (my_create_tip_window): Assign tip_window.
22738 (x_create_tip_frame): Use same defaults as X.
22739 (compute_tip_xy): Remove unused variable. Use full screen width.
22740 (Fx_show_tip): Do not double height. Call ShowWindow directly.
22741
22742 * w32term.c (x_after_update_window_line): Doc fix.
22743 (w32_read_socket): Doc fix. Avoid SET_FRAME_GARBAGED for tip
22744 frames.
22745 <WM_SHOWWINDOW>: Redo mouse highlight when hiding tip frame.
22746
22747 * xdisp.c (prepare_menu_bars) [HAVE_WINDOW_SYSTEM]: Use tip_frame
22748 for all Windowed systems.
22749
22750 2001-11-23 Eli Zaretskii <eliz@is.elta.co.il>
22751
22752 * msdos.c (IT_clear_screen): If the frame's faces are not yet
22753 realized, use the initial screen colors to clear the screen.
22754
22755 2001-11-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22756
22757 * textprop.c (Fset_text_properties): Remove unused variables
22758 `unchanged', `prev_changed', `s' and `len'.
22759
22760 * search.c (Freplace_match): Remove unused variable `inslen'.
22761
22762 * keymap.c (access_keymap): Remove unused variables `c1' and `c2'.
22763
22764 2001-11-22 Jason Rumney <jasonr@gnu.org>
22765
22766 * w32fns.c (x_window_to_frame): Remove irrelevant TODO comment.
22767 (w32_wnd_proc) <WM_MENUSELECT>: Show help echo directly.
22768 (my_create_tip_window): New function.
22769 (x_create_tip_frame, compute_tip_xy): Adapt for Windows.
22770 (Fx_show_tip, Fx_hide_tip) [TEST_TOOLTIPS]: Adapt for Windows.
22771
22772 2001-11-20 Jason Rumney <jasonr@gnu.org>
22773
22774 * coding.h (Vw32_system_coding_system) [WINDOWSNT]: Remove.
22775 (ENCODE_SYSTEM, DECODE_SYSTEM) [WINDOWSNT]: Use Vlocale_coding_system.
22776
22777 * w32fns.c (Vw32_system_coding_system): Remove.
22778 (w32_to_x_font, x_to_w32_font): Use Vlocale_coding_system.
22779
22780 2001-11-19 Stefan Monnier <monnier@cs.yale.edu>
22781
22782 * fileio.c (Fwrite_region): Move choose_write_coding_system to
22783 after build_annotations.
22784
22785 * syntax.c (describe_syntax): Add dummy arg.
22786 (describe_syntax_1): Update call to describe_vector.
22787
22788 * category.c (describe_category): Add dummy arg.
22789 (describe_category_1): Update call to describe_vector.
22790
22791 * keymap.c (Fdescribe_vector): Add `describer' parameter.
22792 (describe_command, describe_translation): Add dummy second param.
22793 (describe_map): Call elt_describer with two arguments.
22794 (describe_vector_princ): Add `fun' parameter.
22795 Call it instead of the hardcoded `princ'.
22796 (describe_vector): Add arg `args'.
22797 Pass it as a new second argument to elt_describer.
22798
22799 * keymap.h (describe_vector): Update prototype.
22800
22801 * frame.c: Don't include keymap.h any more.
22802 (keys_of_frame): Remove.
22803
22804 * lisp.h (keys_of_frame): Remove declaration.
22805
22806 * emacs.c (main): Don't call `keys_of_frame' any more.
22807
22808 2001-11-14 Andreas Schwab <schwab@suse.de>
22809
22810 * unexelf.c [!defined MAP_ANON]: Define MAP_ANON to MAP_ANONYMOUS
22811 if defined, 0 otherwise.
22812 (MAP_FAILED): Define if not defined and use it to test mmap failure.
22813 (unexec) [!MAP_ANON]: Use /dev/zero as file to map.
22814
22815 2001-11-19 Richard M. Stallman <rms@gnu.org>
22816
22817 * indent.c (current_column_1): Fix handling of scan_bytes for mb chars.
22818
22819 2001-11-18 Jason Rumney <jasonr@gnu.org>
22820
22821 * w32term.c (note_mouse_highlight): Fix type of variable `ignore'.
22822 (x_draw_bar_cursor): If the background color of the glyph under
22823 the cursor equals the frame's cursor color, use the glyph's
22824 foreground color for drawing the bar cursor.
22825 (x_after_update_window_line): Clear internal border in different
22826 circumstances.
22827 (w32_set_vertical_scroll_bar): Check for width and height > 0.
22828 (w32_draw_relief_rect): Correct relief by 1 pixel.
22829 (x_set_glyph_string_background_width):
22830 Set extends_to_end_of_line_p if the row's fill_line_p is set and
22831 drawing the last glyph with DRAW_IMAGE_{RAISED,SUNKEN}.
22832 (x_display_and_set_cursor): If cursor_in_echo_area, use NO_CURSOR
22833 if cursor_in_non_selected_windows is false.
22834 (show_mouse_face): Clean up. Recognize overwritten cursor differently.
22835 (x_draw_glyphs): Remove parameters REAL_START and REAL_END.
22836 Notice if cursor gets overwritten.
22837 (notice_overwritten_cursor): Renamed from
22838 note_overwritten_text_cursor. Rewritten to take glyph widths
22839 into account, and to take X positions as parameters.
22840 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
22841 around call to x_draw_glyphs.
22842 (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
22843 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
22844 color to use for image glyph reliefs.
22845 (x_draw_image_relief): Accept zero tool_bar_button_relief.
22846 (glyph_rect): Remove unused variable `area'.
22847
22848 * w32fns.c (x_set_frame_parameters): Avoid infinite recursion for
22849 some items.
22850 (x_set_internal_border_width): Set frame garbaged when window
22851 doesn't exist yet.
22852 (Fx_create_frame): Accept zero tool_bar_button_relief.
22853 (x_clear_image_1, four_corners_best, image_background)
22854 (image_background_transparent): New functions.
22855 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
22856 (gs_format): Add `:background' entry.
22857 (lookup_image): Set IMG's background color if specified.
22858 (pbm_load, xbm_load_image, png_load): Set IMG's background field
22859 when appropriate.
22860 (x_clear_image_1): Reset `background_valid' and
22861 `background_transparent_valid' fields.
22862 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
22863 calculating it here. Set IMG's background_transparent field.
22864 (enum xpm_keyword_index): Add XPM_BACKGROUND.
22865 (enum png_keyword_index): Add PNG_BACKGROUND.
22866 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
22867 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
22868 (enum gif_keyword_index): Add GIF_BACKGROUND.
22869 (enum gs_keyword_index): Add GS_BACKGROUND.
22870 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
22871 Pre-calculate image background color where necessary.
22872 (x_create_x_image_and_pixmap, xbm_load, gs_load):
22873 Use display info's n_cbits entry for screen depth.
22874 (Fx_show_tip): Remove unused variables `buffer', `top',
22875 `left', `max_width' and `max_height'.
22876
22877 * w32menu.c (w32_menu_show, push_menu_pane): Doc fixes.
22878
22879 2001-11-18 Gerd Moellmann <gerd@gnu.org>
22880
22881 * puresize.h (BASE_PURESIZE): Increase to 750000.
22882
22883 2001-11-18 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22884
22885 * frame.c (Fframe_live_p): Doc fix.
22886
22887 2001-11-18 Richard M. Stallman <rms@gnu.org>
22888
22889 * xdisp.c (message_dolog_marker1, message_dolog_marker2)
22890 (message_dolog_marker3): New static variables hold three markers.
22891 (syms_of_xdisp): Initialize and staticpro them.
22892 (message_dolog): Use message_dolog_marker1..3 instead of
22893 allocating markers each time. Unchain them when done.
22894
22895 2001-11-17 Richard M. Stallman <rms@gnu.org>
22896
22897 * doc.c (Fsnarf_documentation): Doc fix.
22898
22899 2001-11-17 Andreas Schwab <schwab@suse.de>
22900
22901 * xterm.c (note_mouse_highlight): Fix type of variable `ignore'.
22902
22903 2001-11-17 Richard M. Stallman <rms@gnu.org>
22904
22905 * fileio.c (Fwrite_region): Avoid initializer for Lisp_Object.
22906
22907 2001-11-17 Jason Rumney <jasonr@gnu.org>
22908
22909 * xterm.c (notice_overwritten_cursor): Take care of end < 0 case.
22910
22911 2001-11-17 Gerd Moellmann <gerd@gnu.org>
22912
22913 * xdisp.c (tool_bar_item_info): Avoid calling Fget_text_property
22914 with invalid position.
22915
22916 2001-11-16 Richard M. Stallman <rms@gnu.org>
22917
22918 * syswait.h: Delete conditionals for HPUX7, ISC 4.1, and convex.
22919
22920 * s/isc4-1.h (HAVE_SYS_WAIT_H): Add #undef.
22921 * s/hpux.h (HAVE_SYS_WAIT_H): Add #undef.
22922 * s/hpux8.h (HAVE_SYS_WAIT_H): Define it.
22923
22924 * m/convex.h (HAVE_SYS_WAIT_H): Add #undef.
22925
22926 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22927
22928 * fileio.c (build_annotations): Split off the tail.
22929 (build_annotations_2): New fun. Extracted from build_annotations.
22930 (Fwrite_region): Split the call to build_annotations into two
22931 calls to build_annotations and build_annotations_2.
22932
22933 2001-11-16 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
22934
22935 * sysdep.c (wait_for_kbd_input) [VMS]: Do not call
22936 clear_waiting_for_input with argument.
22937
22938 * xterm.h (x_update_cursor): Remove duplicated prototype.
22939
22940 * keyboard.h (clear_waiting_for_input): Remove duplicated prototype.
22941
22942 * xterm.c (waiting_for_input): Remove unnecessary declaration.
22943
22944 * data.c (Ftimes, Fquo, Frem, Fmod): Doc fix.
22945
22946 2001-11-16 Stefan Monnier <monnier@cs.yale.edu>
22947
22948 * fileio.c (choose_write_coding_system): New fun, extracted
22949 from Fwrite_region.
22950 (Fwrite_region): Use it.
22951
22952 * eval.c (max_specpdl_size, max_lisp_eval_depth): Use EMACS_INT.
22953 (funcall_lambda, run_hook_with_args): Make static and add prototype.
22954 (ml_apply, find_handler_clause): Add prototype.
22955
22956 2001-11-16 Eli Zaretskii <eliz@gnu.org>
22957
22958 * config.in: Add #undef HAVE_COFF_H.
22959
22960 * unexec.c (coff.h): Don't include unless HAVE_COFF_H is defined.
22961 Required for ISC 4.1.
22962
22963 2001-11-16 Eli Zaretskii <eliz@is.elta.co.il>
22964
22965 * syswait.h (HAVE_SYS_WAIT_H): Undef for ISC 4.1. Reported by
22966 Andrew Wiseman <a.wiseman@btclick.com>.
22967
22968 2001-11-16 Kim F. Storm <storm@cua.dk>
22969
22970 The following changes are made to clean up the various internal
22971 references to the fringes to actually use the term `fringe' for
22972 them. Previously, they were called `flags areas', `bitmap areas',
22973 `left/right side of windows', or implicitly as `flags' or
22974 `bitmaps':
22975
22976 * dispextern.h (FRINGE_FACE_ID): Renamed from BITMAP_AREA_FACE_ID.
22977 Comments fixed. Use renamed symbols.
22978
22979 * dispnew.c: Comment fix. Use renamed symbols.
22980
22981 * frame.h (FRAME_FRINGE_COLS): Renamed from FRAME_FLAGS_AREA_COLS.
22982 (FRAME_FRINGE_WIDTH): Renamed from FRAME_FLAGS_AREA_WIDTH.
22983 (FRAME_LEFT_FRINGE_WIDTH): Renamed from FRAME_LEFT_FLAGS_AREA_WIDTH.
22984
22985 * msdos.c: Comment fix.
22986
22987 * w32fns.c: Use renamed symbols.
22988
22989 * w32term.c: Comment fixes. Use renamed symbols.
22990 (fringe_bitmap_type): Renamed from bitmap_type.
22991 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
22992 (w32_draw_fringe_bitmap): Renamed from w32_draw_bitmap.
22993 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
22994
22995 * w32term.h: Comment fixes. Use renamed symbols.
22996 (fringes_extra): Renamed from flags_areas_extra.
22997 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
22998 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
22999 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
23000 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
23001 (FRAME_X_LEFT_FRINGE_WIDTH):
23002 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
23003 (FRAME_X_RIGHT_FRINGE_WIDTH):
23004 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
23005
23006 * widget.c: Use renamed symbols.
23007
23008 * window.c: Comment fixes. Use renamed symbols.
23009 (coordinates-in-window-p): Doc fix.
23010
23011 * xdisp.c: Comment fixes. Use renamed symbols.
23012
23013 * xfaces.c (realize_basic_faces): Use FRINGE_FACE_ID.
23014
23015 * xfns.c: Use renamed symbols.
23016
23017 * xterm.c: Comment fixes. Use renamed symbols.
23018 (fringe_bitmap_type): Renamed from bitmap_type.
23019 (NO_FRINGE_BITMAP): Renamed from NO_BITMAP.
23020 (x_draw_fringe_bitmap): Renamed from x_draw_bitmap.
23021 (x_draw_row_fringe_bitmaps): Renamed from x_draw_row_bitmaps.
23022
23023 * xterm.h: Comment fixes. Use renamed symbols.
23024 (fringes_extra): Renamed from flags_areas_extra.
23025 (FRAME_FRINGE_BITMAP_WIDTH): Renamed from FRAME_FLAGS_BITMAP_WIDTH.
23026 (FRAME_FRINGE_BITMAP_HEIGHT): Renamed from FRAME_FLAGS_BITMAP_HEIGHT.
23027 (FRAME_X_FRINGE_COLS): Renamed from FRAME_X_FLAGS_AREA_COLS.
23028 (FRAME_X_FRINGE_WIDTH): Renamed from FRAME_X_FLAGS_AREA_WIDTH.
23029 (FRAME_X_LEFT_FRINGE_WIDTH):
23030 Renamed from FRAME_X_LEFT_FLAGS_AREA_WIDTH.
23031 (FRAME_X_RIGHT_FRINGE_WIDTH):
23032 Renamed from FRAME_X_RIGHT_FLAGS_AREA_WIDTH.
23033
23034 2001-11-15 Jason Rumney <jasonr@gnu.org>
23035
23036 * w32menu.c (add-menu-item): Make help_echo and radio buttons
23037 work for most menu items. From David Ponce
23038 <david.ponce@wanadoo.fr>.
23039
23040 2001-11-15 Gerd Moellmann <gerd@gnu.org>
23041
23042 * xfns.c (x_set_frame_parameters): Revert change of 2001-11-07.
23043 Some x_set_* function expect to be called even if old and new
23044 value are equal.
23045
23046 * xdisp.c (build_desired_tool_bar_string): Accept zero
23047 tool_bar_button_relief.
23048
23049 * xfns.c (Fx_create_frame): Accept zero tool_bar_button_relief.
23050
23051 * xterm.c (x_draw_image_relief): Accept zero tool_bar_button_relief.
23052
23053 * xterm.c (x_draw_bar_cursor): If the background color of the
23054 glyph under the cursor equals the frame's cursor color, use
23055 the glyph's foreground color for drawing the bar cursor.
23056
23057 * dispnew.c (direct_output_forward_char): Fix character/byte
23058 position comparison.
23059
23060 2001-11-15 Miles Bader <miles@gnu.org>
23061
23062 * editfns.c (find_field): Add BEG_LIMIT and END_LIMIT parameters.
23063 (Fdelete_field, Ffield_string, Ffield_string_no_properties):
23064 Update arguments to find_field.
23065 (Ffield_beginning, Ffield_end): Add LIMIT param, pass to find_field.
23066 (Fconstrain_to_field): Use LIMIT arg to shorten search time.
23067 * lisp.h (Ffield_beginning, Ffield_end): Update EXFUN decl.
23068 * minibuf.c (Fminibuffer_prompt_end): Update args to Ffield_end.
23069
23070 2001-11-14 Richard M. Stallman <rms@gnu.org>
23071
23072 * editfns.c (Fpropertize): Allow call with 1 arg.
23073
23074 * dispextern.h (image_background, image_background_transparent):
23075 Conditionalize on HAVE_X_WINDOWS.
23076
23077 2001-11-13 Richard M. Stallman <rms@gnu.org>
23078
23079 * print.c (Fprin1_to_string): Doc fix.
23080
23081 * sunfns.c (Fsun_change_cursor_icon): Doc fix.
23082
23083 * floatfns.c (Fceiling, Ffloor): Doc fixes.
23084
23085 * filelock.c (Funlock_buffer, Ffile_locked_p): Doc fixes.
23086
23087 * fileio.c (Ffile_accessible_directory_p): Doc fix.
23088
23089 * eval.c (syms_of_eval): Doc fix.
23090
23091 * coding.c (syms_of_coding): Doc fix.
23092
23093 * doc.c (Fsnarf_documentation): Doc fix.
23094
23095 * dispnew.c (syms_of_display): Doc fix.
23096
23097 * category.c (Fget_unused_category): Doc fix.
23098
23099 * buffer.c (syms_of_buffer): Doc fixes.
23100
23101 2001-11-14 Eli Zaretskii <eliz@is.elta.co.il>
23102
23103 * print.c (prin1, print): Doc fix.
23104
23105 2001-11-14 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23106
23107 * fontset.h: Remove declarations of variables
23108 `Vhighlight_wrong_size_font' and `Vclip_large_size_font'.
23109
23110 * fontset.c: Remove variables `Vhighlight_wrong_size_font' and
23111 `Vclip_large_size_font'.
23112
23113 2001-11-13 Jason Rumney <jasonr@gnu.org>
23114
23115 * w32fns.c: Doc fix.
23116
23117 2001-11-13 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23118
23119 * xfaces.c (Fface_attributes_as_vector): Doc fix.
23120
23121 * fns.c: Doc fix.
23122
23123 * emacs.c: Doc fix.
23124
23125 * coding.c: Doc fix.
23126
23127 * cmds.c, composite.c, dired.c, doc.c, filelock.c, floatfns.c,
23128 * fontset.c, insdel.c, keymap.c: Change doc-string comments to
23129 `new style' [w/`doc:' keyword].
23130
23131 2001-11-12 Richard M. Stallman <rms@gnu.org>
23132
23133 * xterm.c (XTread_socket): Don't update focus for EnterNotify or
23134 LeaveNotify events. Only FocusIn and FocusOut do that now.
23135 (x_display_and_set_cursor): Do display hollow cursors in active
23136 minibuffer windows when they are not selected.
23137
23138 2001-11-12 Jason Rumney <jasonr@gnu.org>
23139
23140 * w32console.c, w32fns.c, w32menu.c, w32proc.c, w32select.c,
23141 * w32term.c: Change doc-string comments to `new style'
23142 [w/`doc:' keyword]. Doc fixes.
23143
23144 * w32fns.c: Don't define max.
23145 (Fx_open_connection): Only execute once.
23146
23147 2001-11-12 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23148
23149 * ccl.c: Change macros to use do-while block instead of if-else.
23150 Use braces to follow GNU Coding Standards.
23151
23152 2001-11-11 Richard M. Stallman <rms@gnu.org>
23153
23154 * sysdep.c (child_setup_tty): Don't clear ICRNL or INLCR.
23155
23156 * lread.c (read_escape): Use end_of_file_error for reporting eof.
23157
23158 * insdel.c (replace_range): Use adjust_markers_for_replace
23159 instead of adjust_markers_for_delete and adjust_markers_for_insert.
23160
23161 * intervals.h (set_text_properties, set_text_properties_1): Declare.
23162
23163 * textprop.c (set_text_properties_1): New subroutine
23164 broken out of set_text_properties.
23165 (set_text_properties): Use set_text_properties_1.
23166
23167 * intervals.c (graft_intervals_into_buffer):
23168 Use set_text_properties_1 to clear out properties.
23169
23170 * search.c (Freplace_match): Use replace_range to insert
23171 and delete. Don't request property inheritance from
23172 surrounding text.
23173
23174 2001-11-10 Jason Rumney <jasonr@gnu.org>
23175
23176 * w32fns.c (enum_font_cb2): Use leading @ on face name to detect
23177 vertical fonts. Allow them if face name is explicitly specified.
23178 Do not give up if we find a font that cannot be converted to an xlfd.
23179
23180 2001-11-10 Gerd Moellmann <gerd@gnu.org>
23181
23182 * unexelf.c (unexec): Use mmap/munmap to allocate buffers
23183 instead of malloc/free.
23184
23185 2001-11-09 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23186
23187 * xfaces.c (merge_face_vectors): Use braces to follow GNU
23188 Coding Standards.
23189 (Finternal_set_lisp_face_attribute): Likewise.
23190
23191 * buffer.c (Fbury_buffer): Likewise.
23192
23193 * indent.c (current_column_1): Remove unused variable `prev_col'.
23194
23195 * coding.c (encode_coding): Use precomputed value of `src'.
23196 (encode_coding): Remove unused variable `src_end'.
23197 (code_convert_region): Remove unused variables `count'.
23198
23199 2001-11-07 Jason Rumney <jasonr@gnu.org>
23200
23201 * w32term.c (x_display_and_set_cursor): Do not move system caret
23202 if cursor_glyph is NULL.
23203
23204 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23205
23206 * keymap.c (access_keymap): Fix compilation error.
23207
23208 2001-11-07 Miles Bader <miles@gnu.org>
23209
23210 * xfns.c (x_set_frame_parameters): Avoid infinite recursion.
23211
23212 2001-11-07 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23213
23214 * intervals.c (graft_intervals_into_buffer):
23215 Remove #ifdef'd-out code.
23216 (graft_intervals_into_buffer): Remove unused variable `middle'.
23217
23218 * lread.c (Feval_region): Remove obsolete #ifdef'd-out
23219 code (eval-current-buffer).
23220 Change doc-string comments to `new style' [w/`doc:' keyword].
23221
23222 2001-11-06 Richard M. Stallman <rms@gnu.org>
23223
23224 * keymap.c (access_keymap): Don't use initializers on Lisp_Object.
23225
23226 2001-11-06 Stefan Monnier <monnier@cs.yale.edu>
23227
23228 * lread.c (read1): Fix behavior with nested backquoting.
23229
23230 * keyboard.c (make_lispy_event): Check integerness and fix
23231 Lisp_Object/int mixup.
23232
23233 2001-11-06 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23234
23235 * fns.c (copy_hash_table): Remove unused variable `v'.
23236
23237 * fontset.c (fontset_font_pattern): Remove unused variable
23238 `family_registry'.
23239
23240 * indent.c (current_column_1): Remove unused variable `prev_col'.
23241
23242 2001-11-05 Richard M. Stallman <rms@gnu.org>
23243
23244 * m/news-risc.h (BROKEN_PROTOTYPES): Defined.
23245
23246 * buffer.c (Fkill_buffer): Don't delete auto save file
23247 if buffer is modified.
23248
23249 2001-11-05 Andrew Innes <andrewi@gnu.org>
23250
23251 * w32proc.c (Fw32_set_keyboard_layout): Use CHECK_NUMBER_CAR and
23252 CHECK_NUMBER_CDR.
23253
23254 2001-11-05 Richard M. Stallman <rms@gnu.org>
23255
23256 * unexelf.c (unexec): Minor changes; clean up comments.
23257
23258 2001-11-05 Sam Steingold <sds@gnu.org>
23259
23260 * w32term.c (x_display_and_set_cursor): Fix w32 compilation error.
23261
23262 2001-11-05 Andreas Schwab <schwab@suse.de>
23263
23264 * sound.c (sound_perror): Save errno from being clobbered.
23265
23266 2001-11-05 Dale Hagglund <rdh@yottayotta.com>
23267
23268 * unexelf.c (unexec): Don't use `mmap'. Instead, read and write
23269 the program image directly.
23270
23271 2001-11-05 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23272
23273 * buffer.h (Fbuffer_local_value): Add prototype.
23274
23275 2001-11-04 Richard M. Stallman <rms@gnu.org>
23276
23277 * buffer.c (Fbuffer_local_value): Remove extra args from CHECK_SYMBOL
23278 and CHECK_BUFFER.
23279
23280 * keyboard.c (read_char): Use Fcar and Fcdr, not Fnth.
23281 (record_char): Likewise.
23282
23283 * keyboard.c (make_lispy_event): Don't insist a drag event must
23284 move to a different buffer position. Instead, check for moving at
23285 least double_click_fuzz.
23286
23287 * fns.c (Fmake_hash_table): Use XCAR and XCDR, not Fnth and Flength.
23288
23289 * keyboard.c (echo-area-clear-hook): Undo Oct 29 change.
23290
23291 * indent.c (current_column_1, Fmove_to_column): Separate the code
23292 for display-table glyphs from the code for buffer text, to fix
23293 bugs in the former.
23294
23295 2001-11-04 Michael Welsh Duggan <md5i@cs.cmu.edu>
23296
23297 * buffer.c (Fbuffer_local_value): New function.
23298 (syms_of_buffer): Defsubr it.
23299
23300 * xterm.c, w32term.c (x_display_and_set_cursor): Use buffer-local
23301 value of `cursor-in-non-selected-windows'.
23302
23303 * lisp.h (Qcursor_in_non_selected_windows): New declaration.
23304 * xdisp.c (Qcursor_in_non_selected_windows): New variable.
23305 (syms_of_xdisp): Initialize it.
23306
23307 2001-11-04 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23308
23309 * xfns.c (Fx_create_frame): Doc fix.
23310
23311 * coding.c: Change doc-string comments to `new style' [w/`doc:'
23312 keyword].
23313
23314 * eval.c (top_level_value, top_level_set): Remove commented and
23315 #ifdef'd-out code.
23316 (Fdefvar): Fix usage in doc-string.
23317
23318 2001-11-03 Richard M. Stallman <rms@gnu.org>
23319
23320 * xfns.c: Include unistd.h, if it exists.
23321
23322 * editfns.c: Move the include of ctype.h after unistd.h.
23323
23324 * gmalloc.c: Test BROKEN_PROTOTYPES.
23325
23326 2001-11-03 Ken Raeburn <raeburn@gnu.org>
23327
23328 * lisp.h (CHECK_STRING_CAR): New macro.
23329 * lread.c (Fload): Use XSETCARFASTINT, XSETCDRFASTINT instead of
23330 treating XCAR and XCDR as lvalues.
23331 (openp): Use CHECK_STRING_CAR.
23332 (read_list): Use XSETCDR instead of treating XCDR as lvalue.
23333
23334 2001-11-03 Eli Zaretskii <eliz@is.elta.co.il>
23335
23336 * s/sco5.h (sigprocmask_set): Declare as extern SIGMASKTYPE.
23337 (SIGMASKTYPE): Define.
23338
23339 * syssignal.h (sigunblock): Don't define if already defined.
23340
23341 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23342
23343 * eval.c (debugger_may_continue, Vdebug_ignored_errors)
23344 (call_debugger, Fcondition_case, skip_debugger, unbind_to):
23345 Fix typos in comments.
23346
23347 * mocklisp.c (Fml_defun, Fml_while, Fml_substr): Remove commented
23348 and #ifdef'd-out code.
23349 Fix and reindent comments.
23350
23351 * mocklisp.h: Remove comment which is a copy of comment in mocklisp.c.
23352
23353 * category.h (CHECK_CATEGORY, CHECK_CATEGORY_SET): Remove unused
23354 argument `i' in macros.
23355
23356 * frame.h (CHECK_FRAME, CHECK_LIVE_FRAME): Remove unused argument
23357 `i' in macros.
23358
23359 * lisp.h (CHECK_STRING_OR_BUFFER, CHECK_HASH_TABLE, CHECK_LIST)
23360 (CHECK_STRING, CHECK_CONS, CHECK_SYMBOL, CHECK_CHAR_TABLE)
23361 (CHECK_VECTOR, CHECK_VECTOR_OR_CHAR_TABLE, CHECK_BUFFER)
23362 (CHECK_WINDOW, CHECK_LIVE_WINDOW, CHECK_PROCESS, CHECK_NUMBER)
23363 (CHECK_NATNUM, CHECK_MARKER, CHECK_NUMBER_COERCE_MARKER)
23364 (CHECK_FLOAT, CHECK_NUMBER_OR_FLOAT)
23365 (CHECK_NUMBER_OR_FLOAT_COERCE_MARKER, CHECK_OVERLAY)
23366 (CHECK_NUMBER_CAR, CHECK_NUMBER_CDR): Remove unused argument `i'
23367 in macros.
23368
23369 * abbrev.c, alloc.c, buffer.c, bytecode.c, callint.c, callproc.c,
23370 * casefiddle.c, category.c, ccl.c, charset.c, cmds.c, coding.c,
23371 * composite.c, data.c, dired.c, dispnew.c, doc.c, dosfns.c, emacs.c,
23372 * eval.c, fileio.c, filelock.c, fns.c, fontset.c, frame.c, frame.h,
23373 * indent.c, keyboard.c, keymap.c, lread.c, macros.c, marker.c,
23374 * minibuf.c, mocklisp.c, msdos.c, print.c, process.c, search.c,
23375 * sunfns.c, syntax.c, textprop.c, undo.c, w16select.c, w32console.c,
23376 * w32fns.c, w32menu.c, w32proc.c, w32select.c, window.c, xdisp.c,
23377 * xfaces.c, xmenu.c, xselect.c: Update usage of CHECK_ macros
23378 (remove unused second argument).
23379
23380 2001-11-02 Stefan Monnier <monnier@cs.yale.edu>
23381
23382 * syntax.c (describe_syntax): New wrapper.
23383 (Finternal_describe_syntax_value): Rename from describe_syntax.
23384 Don't insert space at front and \n at the end.
23385 (syms_of_syntax): Defsubr Sinternal_describe_syntax_value.
23386
23387 * regex.c (re_wctype): Try to fix some warnings.
23388 (regcomp, regexec): Don't forget the __restrict.
23389
23390 2001-11-02 Richard M. Stallman <rms@gnu.org>
23391
23392 * textprop.c (Fget_char_property): Doc fix.
23393
23394 2001-11-02 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23395
23396 * process.c (Fstart_process): Add usage to doc-string.
23397
23398 * data.c (Fsetq_default): Ditto.
23399
23400 * callint.c (Finteractive): Ditto.
23401
23402 2001-11-01 Stefan Monnier <monnier@cs.yale.edu>
23403
23404 * macros.c: Don't include keymap.h any more.
23405
23406 2001-11-01 Richard M. Stallman <rms@gnu.org>
23407
23408 * data.c (Fmake_local_variable): Doc fix.
23409
23410 * eval.c (Frun_hooks, Frun_hook_with_args_until_failure): Doc fix.
23411 (Frun_hook_with_args_until_success, Frun_hook_with_args): Doc fix.
23412
23413 * keymap.c (Fdescribe_buffer_bindings): Print character property
23414 bindings along with or instead of the buffer local map.
23415 Make the overriding maps override what they should.
23416
23417 2001-11-01 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23418
23419 * window.c (grow_mini_window): Fix typo in comment.
23420
23421 2001-11-01 Gerd Moellmann <gerd@gnu.org>
23422
23423 * xterm.c (x_scroll_bar_create): Check for width and height > 0.
23424 (XTset_vertical_scroll_bar): Likewise.
23425
23426 * xfns.c (x_build_heuristic_mask): Use four_corners_best
23427 instead of IMAGE_BACKGROUND.
23428
23429 * xfns.c (four_corners_best): Reindent.
23430
23431 * xfaces.c (Finternal_set_lisp_face_attribute_from_resource):
23432 Handle :box so that it is possible to specify sexprs.
23433
23434 2001-10-31 Eli Zaretskii <eliz@is.elta.co.il>
23435
23436 * s/hpux11.h: New file.
23437
23438 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23439
23440 * emacs.c (USAGE1): Show command line option --no-window-system
23441 instead of --no-windows in usage.
23442 (standard_args): Rename --no-windows to --no-window-system.
23443 (bug_reporting_address): Follow Emacs coding conventions.
23444
23445 * eval.c (Fcommandp): Doc fix.
23446 Change doc-string comments to `new style' [w/`doc:' keyword].
23447
23448 * frame.c (Fframe_live_p): Doc fix.
23449
23450 * buffer.c (selective-display-ellipses): Doc fix.
23451
23452 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23453
23454 * lread.c (to_multibyte): Fix computation of new read_buffer_size.
23455
23456 * xfaces.c (realize_x_face): If C is not a single-byte character,
23457 set the face's colors_copied_bitwise_p instead of the defaulted_p
23458 members which have a different meaning.
23459 (free_face_colors): Do nothing for a face whose colors have been
23460 copied bitwise.
23461
23462 * dispextern.h (struct face) <colors_copied_bitwise_p>: New member.
23463
23464 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23465
23466 * marker.c, mocklisp.c: Change doc-string comments to `new style'
23467 [w/`doc:' keyword].
23468
23469 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23470
23471 * fns.c (require_unwind): Return Lisp_Object.
23472
23473 2001-10-31 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23474
23475 * keyboard.c (lucid-menu-bar-dirty-flag): Doc fix.
23476 (last-input-char): Revert doc-string to be the same as the
23477 doc-string of `last-input-event'.
23478
23479 * xdisp.c: Fix typos in comments.
23480
23481 2001-10-31 Gerd Moellmann <gerd@gnu.org>
23482
23483 * window.c (grow_mini_window): Handle case that the root
23484 window is already smaller than the nominal mininum height.
23485
23486 2001-10-30 Stefan Monnier <monnier@cs.yale.edu>
23487
23488 * emacs.c (main): Don't call keys_of_macros any more.
23489
23490 * lisp.h (keys_of_macros): Remove.
23491
23492 * macros.c (keys_of_macros): Remove.
23493
23494 * xfaces.c (Fface_attribute_relative_p): Declare args.
23495
23496 2001-10-30 Jason Rumney <jasonr@gnu.org>
23497
23498 * w32fns.c (w32_to_x_charset): Increase size of XLFD charset buffer.
23499 (enum_font_cb2): Ignore fonts with vertical orientation.
23500
23501 2001-10-30 Richard M. Stallman <rms@gnu.org>
23502
23503 * keyboard.c (Finput_pending_p): Doc fix.
23504
23505 2001-10-30 Gerd Moellmann <gerd@gnu.org>
23506
23507 * xterm.c (x_after_update_window_line): Don't run the code
23508 clearing in borders for rows whose visible height is 0.
23509
23510 * xdisp.c (clear_garbaged_frames): Redraw the frame only if its
23511 resized_p flag is set. If not set, use the much less flickering
23512 method previously used.
23513
23514 * dispnew.c (change_frame_size_1): Set frame's resized_p.
23515
23516 * frame.h (struct frame) <resized_p>: New member.
23517
23518 * lread.c (to_multibyte): Ensure read_buffer is at least twice
23519 as large as the number of bytes to convert.
23520
23521 * lread.c (to_multibyte): New function.
23522 (read1): Use it.
23523
23524 2001-10-30 Eli Zaretskii <eliz@is.elta.co.il>
23525
23526 * msdos.h (FRAME_LINE_HEIGHT): Define (it's used by xmenu.c).
23527
23528 2001-10-30 Gerd Moellmann <gerd@gnu.org>
23529
23530 * xterm.c (x_draw_relief_rect): Correct bottom relief by 1 pixel.
23531 (x_set_glyph_string_background_width): Set extends_to_end_of_line_p
23532 if the row's fill_line_p is set and drawing the last glyph with
23533 DRAW_IMAGE_{RAISED,SUNKEN}.
23534
23535 * xdisp.c (clear_garbaged_frames): Call Fredraw_frame.
23536
23537 2001-10-29 Stefan Monnier <monnier@cs.yale.edu>
23538
23539 * xmenu.c: Include coding.h and charset.h.
23540 (Fx_popup_menu): Use FRAME_PTR and FRAME_FONT and FRAME_LINE_HEIGHT.
23541 (Fx_popup_dialog): Use FRAME_PTR and enum scroll_bar_part.
23542 (single_submenu, xmenu_show): Use ENCODE_SYSTEM.
23543 Explicitly set wv->help. Use `TRUE' rather than `True'.
23544 (menu_help_callback): Use empty_string.
23545
23546 * w32menu.c (Fx_popup_menu): Explicitly init f, xpos, and ypos.
23547 (Fx_popup_dialog): Explicitly init f.
23548 (w32_menu_display_help): Use empty_string.
23549
23550 2001-10-29 Richard M. Stallman <rms@gnu.org>
23551
23552 * fns.c (Frequire): Detect recursive try to require the same
23553 feature 3 or more levels deep, and get error.
23554 (require_unwind): New subroutine.
23555 (require_nesting_list): New variable.
23556 (syms_of_fns): Init and staticpro it.
23557
23558 * print.c (print_object): Clarify indication of insertion type.
23559
23560 2001-10-29 Eli Zaretskii <eliz@is.elta.co.il>
23561
23562 * coding.c (syms_of_coding): Document that locale-coding-system is
23563 used for decoding input on X.
23564
23565 * window.c (Fscroll_left, Fscroll_right): Doc fix.
23566
23567 2001-10-29 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23568
23569 * keyboard.c (Finput_pending_p): Fix typo in doc-string.
23570 (echo-area-clear-hook): Properly DEFVAR_LISP and staticpro it.
23571
23572 2001-10-29 Gerd Moellmann <gerd@gnu.org>
23573
23574 * xterm.c (x_display_and_set_cursor): If cursor_in_echo_area,
23575 use NO_CURSOR if cursor_in_non_selected_windows is false.
23576
23577 * xfaces.c (Fface_font): Use UNSPECIFIEDP instead of NILP for
23578 the slant attribute if FRAME is t.
23579
23580 * xfns.c (x_set_internal_border_width): Set frame garbaged
23581 when X window doesn't exist yet.
23582
23583 * xterm.c (x_after_update_window_line): Clear internal border
23584 in different circumstances.
23585
23586 * xterm.c (XTread_socket) <KeyPress>: Don't use
23587 STRING_CHAR_AND_LENGTH if nchars == nbytes. From Kenichi Handa
23588 <handa@etl.go.jp>.
23589
23590 2001-10-28 Eli Zaretskii <eliz@is.elta.co.il>
23591
23592 * m/ibms390.h: New file. From Adam Thornton
23593 <athornton@sinenomine.net>.
23594
23595 2001-10-28 Gerd Moellmann <gerd@gnu.org>
23596
23597 * xfns.c (x_build_heuristic_mask): Use x_alloc_image_color.
23598
23599 * xfns.c (x_build_heuristic_mask): Fix a bug not incrementing
23600 a loop counter.
23601
23602 2001-10-28 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23603
23604 * emacs.c: Use argv[0] instead of "emacs" when -t was specified.
23605
23606 * keyboard.c: Change doc-string comments to `new style' [w/`doc:'
23607 keyword].
23608 Fix typos in comments.
23609
23610 * emacs.c (bug_reporting_address): New function.
23611 Use it when displaying usage message.
23612
23613 * minibuf.c (read_minibuf): Remove unused external declaration of
23614 variable `Qread_only'.
23615
23616 * keymap.c (access_keymap): Remove unused variable `charset'.
23617
23618 2001-10-28 Miles Bader <miles@gnu.org>
23619
23620 * xfaces.c (merge_face_heights): Handle TO being relative as well.
23621 Remove #ifdef'd-out code.
23622 (Fface_attribute_relative_p, Fmerge_face_attribute): New functions.
23623 (syms_of_xfaces): Initialize them.
23624
23625 2001-10-27 Jason Rumney <jasonr@gnu.org>
23626
23627 * w32fns.c (w32_wnd_proc) <WM_KILLFOCUS>: Destroy the system caret.
23628 <WM_EMACS_DESTROY_CARET, WM_EMACS_TRACK_CARET>: Track cursor
23629 position using the system caret.
23630
23631 * w32term.c (w32_system_caret_hwnd, w32_system_caret_width)
23632 (w32_system_caret_height, w32_system_caret_x)
23633 (w32_system_caret_y): New variables for tracking system caret.
23634 (w32_initialize): Initialize them.
23635 (x_display_and_set_cursor): Make system caret follow the active cursor.
23636
23637 * w32term.h (WM_EMACS_TRACK_CARET, WM_EMACS_DESTROY_CARET):
23638 New messages types.
23639
23640 * w32term.c (note_mouse_highlight): Clear old help_echo.
23641
23642 2001-10-27 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23643
23644 * xterm.c: Fix typo in a comment.
23645
23646 * emacs.c: Fix typos in comments.
23647 Remove unnecessary spaces.
23648 Change doc-string comments to `new style' [w/`doc:' keyword].
23649 (USAGE2): Fix typos in usage string.
23650
23651 * xterm.c: Fix typo in a comment.
23652
23653 * lisp.h (gdb_lisp_params): Remove code in #if 0 which is now in
23654 emacs.c.
23655
23656 2001-10-27 Gerd Moellmann <gerd@gnu.org>
23657
23658 * xdisp.c (move_it_vertically_backward): Use 2/3 line_height
23659 instead of 1/2 line_height in the heuristic for skipping
23660 farther backward when target_y was not reached.
23661
23662 * sound.c (sound_perror): Unblock SIGIO, turn on atimers.
23663 Display errno only if non-zero.
23664 (sound_warning): New function.
23665 (vox_configure): Don't treat failing to set sample rate as error.
23666 (various places): Improve error messages.
23667
23668 2001-10-26 Eli Zaretskii <eliz@is.elta.co.il>
23669
23670 * fileio.c (Faccess_file): Run the argument filename through
23671 Fexpand_file_name, before using it.
23672
23673 * dispnew.c (syms_of_display) <visible-bell>: Add a reference to
23674 ring-bell-function. Suggested by Alf-Ivar Holm <alfh@ifi.uio.no>
23675
23676 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23677
23678 * insdel.c (insert_1_both): Do nothing if NCHARS == 0.
23679
23680 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23681 Fix clearing in the case of scroll bars on the right.
23682
23683 2001-10-26 Juanma Barranquero <lektu@terra.es>
23684
23685 * w32gui.h (XImage): Add a dummy typedef.
23686
23687 2001-10-26 Gerd Moellmann <gerd@gnu.org>
23688
23689 * xfns.c (XScreenNumberOfScreen): Fix struct to pointer comparison.
23690
23691 2001-10-25 Eli Zaretskii <eliz@is.elta.co.il>
23692
23693 * frame.c (Fframe_parameter): Fix last change.
23694
23695 * fileio.c: Revert last change (which removed old commented-out
23696 version of expand-file-name). Add a comment that explains why
23697 this old version should not be removed.
23698
23699 2001-10-25 Gerd Moellmann <gerd@gnu.org>
23700
23701 * frame.c (Fframe_parameter): Fix a bug whereby some
23702 ``artificial'' frame parameters, like `minibuffer' were not
23703 obtained by calling Fframe_parameters.
23704
23705 * xterm.c (show_mouse_face): Clean up. Recognize overwritten
23706 cursor differently.
23707
23708 * xdisp.c (move_it_vertically_backward): Compute line height
23709 differently. Add heuristic to try to be more compatible to 20.x.
23710
23711 2001-10-25 Stefan Monnier <monnier@cs.yale.edu>
23712
23713 * lisp.h (make_fixnum_or_float): Coerce double to int explicitly.
23714
23715 * editfns.c (text_property_stickiness): Fix Lisp_Object used as
23716 boolean.
23717
23718 2001-10-25 Miles Bader <miles@gnu.org>
23719
23720 * xfns.c (png_load): Make sure SPECIFIED_BG is a string.
23721 BG is a pointer to a structure, not a structure.
23722 (gif_format, png_format): Add missing commas.
23723
23724 2001-10-24 Richard M. Stallman <rms@gnu.org>
23725
23726 * xfaces.c (Fface_attributes_as_vector): New function.
23727 (syms_of_xfaces): Defsubr it.
23728
23729 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23730
23731 * dispnew.c (sync_window_with_frame_matrix_rows): Remove unused
23732 variable `area'.
23733
23734 2001-10-25 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23735
23736 * search.c (scan_newline): Remove unused variable `selective_display'.
23737
23738 2001-10-25 Miles Bader <miles@gnu.org>
23739
23740 * dispextern.h (struct image): Add `background',
23741 `background_valid', and `background_transparent' fields.
23742 (image_background, image_background_transparent): New declarations.
23743 (IMAGE_BACKGROUND, IMAGE_BACKGROUND_TRANSPARENT): New macros.
23744 * xfns.c (image_background, image_background_transparent)
23745 (four_corners_best): New functions.
23746 (xpm_format, png_format, jpeg_format, tiff_format, gif_format)
23747 (gs_format): Add `:background' entry.
23748 (lookup_image): Set IMG's background color if specified.
23749 (pbm_load, xbm_load_image, png_load): Set IMG's background field
23750 when appropriate.
23751 (x_clear_image_1): Reset `background_valid' and
23752 `background_transparent_valid' fields.
23753 (x_build_heuristic_mask): Use IMAGE_BACKGROUND instead of
23754 calculating it here. Set IMG's background_transparent field.
23755 (enum xpm_keyword_index): Add XPM_BACKGROUND.
23756 (enum png_keyword_index): Add PNG_BACKGROUND.
23757 (enum jpeg_keyword_index): Add JPEG_BACKGROUND.
23758 (enum tiff_keyword_index): Add TIFF_BACKGROUND.
23759 (enum gif_keyword_index): Add GIF_BACKGROUND.
23760 (enum gs_keyword_index): Add GS_BACKGROUND.
23761 (pbm_load, png_load, jpeg_load, tiff_load, gif_load):
23762 Pre-calculate image background color where necessary.
23763 * xterm.c (x_setup_relief_colors): Use `IMAGE_BACKGROUND' and
23764 `IMAGE_BACKGROUND_TRANSPARENT' to calculate the correct background
23765 color to use for image glyph reliefs.
23766
23767 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23768
23769 * xterm.c (x_draw_glyphs): Don't check for cursor overwriting
23770 in full-width rows.
23771
23772 * xterm.c (XTset_vertical_scroll_bar) [!USE_TOOLKIT_SCROLL_BARS]:
23773 Fix clearing of area not covered by scroll bar.
23774
23775 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23776
23777 * xterm.c (x_insert_glyphs): Remove unused variables `real_end'
23778 and `real_start'.
23779 (x_draw_image_foreground): Remove unused variables `mask' and `xgcv'.
23780 (glyph_rect): Remove unused variable `area'.
23781
23782 2001-10-24 Gerd Moellmann <gerd@gnu.org>
23783
23784 * xdisp.c: Change #ifdef GLYPH_DEBUG to #if.
23785
23786 * xdisp.c (try_window_reusing_current_matrix): Use row_containing_pos.
23787 (row_containing_pos): Take additional argument DY.
23788 Treat rows ending in middle of char differently.
23789 (display_line): Handle tabs on window systems differently.
23790
23791 * xterm.c, w32term.c (fast_find_position): Call row_containing_pos
23792 with additional argument.
23793
23794 * dispextern.h (row_containing_pos): Adjust prototype.
23795
23796 * xdisp.c (inhibit_try_window_id, inhibit_try_window_reusing)
23797 (inhibit_try_cursor_movement) [GLYPH_DEBUG]: New variables.
23798 (try_window_id, try_window_reusing_current_matrix)
23799 (try_cursor_movement) [GLYPH_DEBUG]: Don't run if inhibited.
23800 (syms_of_xdisp) [GLYPH_DEBUG]: DEFVAR_BOOL the variables.
23801
23802 2001-10-24 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23803
23804 * xmenu.c: Spell the name of Emacs properly (GNU Emacs instead of
23805 gnuemacs).
23806 (HAVE_BOXES): Fix typo in comment.
23807 (push_menu_pane): Fix typo in comment.
23808
23809 * xdisp.c (display_prop_string_p): Remove unused local declaration
23810 of `Qwhen'.
23811 (single_display_prop_string_p): Remove unused local declarations
23812 of `Qwhen' and `Qmargin'.
23813 (string_buffer_position): Remove unused variable `around'.
23814 (store_frame_title): Remove unused variable `width'.
23815
23816 * window.c: Don't define max.
23817 (coordinates_in_window): Remove unused variable `uy'.
23818
23819 * widget.c: Don't define max.
23820
23821 * process.c: Don't define max.
23822 (create_process): Remove unused variable `buffer'.
23823
23824 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23825
23826 * xfaces.c (Finternal_set_lisp_face_attribute): Fix compilation error.
23827
23828 2001-10-23 Eli Zaretskii <eliz@is.elta.co.il>
23829
23830 * xfaces.c (Finternal_set_lisp_face_attribute)
23831 [HAVE_WINDOW_SYSTEM]: Don't do anything for QCfont unless the
23832 frame is on a windowed display.
23833
23834 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23835
23836 * dispnew.c (sync_window_with_frame_matrix_rows):
23837 Fix handling of windows which aren't full-width, fix handling
23838 of marginal areas.
23839
23840 * lread.c (syms_of_lread) <recursive-load-depth-limit>: Raise to 50.
23841
23842 2001-10-23 Andreas Schwab <schwab@suse.de>
23843
23844 * m/macppc.h [LINUX]: Undef LD_SWITCH_SYSTEM_TEMACS and override
23845 LD_SWITCH_MACHINE_TEMACS with "-Xlinker -znocombreloc".
23846
23847 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23848
23849 * xterm.c (x_draw_glyphs): Remove parameters READ_START and
23850 REAL_END. Notice if cursor gets overwritten.
23851 (notice_overwritten_cursor): Take X positions as parameters.
23852 (x_draw_phys_cursor_glyph): Save state of w->phys_cursor_on_p
23853 around call to x_draw_glyphs.
23854
23855 2001-10-23 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23856
23857 * syntax.c (modify-syntax-entry): Fix argument names (use CHAR
23858 instead of C) and usage.
23859
23860 * editfns.c (char-to-string): Fix argument names (use CHAR instead
23861 of C) and usage.
23862
23863 * xfns.c (Fx_show_tip): Remove unused variables `buffer', `top',
23864 `left', `max_width' and `max_height'.
23865
23866 2001-10-23 Gerd Moellmann <gerd@gnu.org>
23867
23868 * xdisp.c (display_line): For a tab continued to the next line,
23869 set row's ends_in_middle_of_char_p.
23870
23871 2001-10-22 Gerd Moellmann <gerd@gnu.org>
23872
23873 * xdisp.c (display_line): Fix computation of continuation lines
23874 width for TABs.
23875
23876 2001-10-22 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23877
23878 * xdisp.c (build_desired_tool_bar_string): Remove unused variable
23879 `Qlaplace'.
23880
23881 * fileio.c: Remove unused code.
23882
23883 2001-10-22 Miles Bader <miles@gnu.org>
23884
23885 * lisp.h (DEFVAR_LISP, DEFVAR_LISP_NOPRO, DEFVAR_BOOL)
23886 (DEFVAR_INT, DEFVAR_PER_BUFFER, DEFVAR_KBOARD):
23887 Remove `DOC_STRINGS_IN_COMMENTS' cases.
23888
23889 2001-10-21 Jason Rumney <jasonr@gnu.org>
23890
23891 * w32term.c (x_erase_phys_cursor): Remove inverse_p again.
23892
23893 2001-10-21 Eli Zaretskii <eliz@is.elta.co.il>
23894
23895 * mocklisp.c (Fml_if, Fml_provide_prefix_argument)
23896 (Finsert_string): Avoid the multi-line string literals warning.
23897
23898 2001-10-22 Miles Bader <miles@gnu.org>
23899
23900 * doc.c (Vhelp_manyarg_func_alist): Variable removed.
23901 (Fdocumentation): Don't use it.
23902 (syms_of_doc): Don't initialize it.
23903
23904 * keyboard.c (Ftrack_mouse): Add usage: string to doc string.
23905 * print.c (Fwith_output_to_temp_buffer): Likewise.
23906 * window.c (Fsave_window_excursion): Likewise.
23907 * editfns.c (Fsave_excursion, Fsave_current_buffer)
23908 (Fsave_restriction): Likewise.
23909 * eval.c (Frun_hooks, Frun_hook_with_args)
23910 (Frun_hook_with_args_until_failure)
23911 (Frun_hook_with_args_until_success, Ffuncall, For, Fand, Fif)
23912 (Fcond, Fprogn, Fprog1, Fprog2, Fsetq, Fquote, Ffunction, Fdefun)
23913 (Fdefmacro, Fdefvar, Fdefconst, FletX, Flet, Fwhile, Fcatch)
23914 (Funwind_protect, Fcondition_case): Likewise.
23915 * coding.c (Ffind_operation_coding_system): Likewise.
23916 * keyboard.c (Ftrack_mouse): Likewise.
23917
23918 2001-10-21 Miles Bader <miles@gnu.org>
23919
23920 * fns.c (Fappend, Fconcat, Fvconcat, Fnconc, Fwidget_apply)
23921 (Fmake_hash_table): Add usage: string to doc string.
23922 * editfns.c (Finsert, Finsert_and_inherit, Finsert_before_markers)
23923 (Fmessage, Fmessage_box, Fmessage_or_box, Fpropertize, Fformat)
23924 (Fencode_time, Finsert_and_inherit_before_markers): Likewise.
23925 * mocklisp.c (Finsert_string, Fml_if, Fml_provide_prefix_argument)
23926 (Fml_prefix_argument_loop): Likewise.
23927
23928 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
23929
23930 * fileio.c (Finsert_file_contents): Remove unused variable `gap_size'.
23931
23932 * sysdep.c (init_sys_modes): Change doc-string comments to `new
23933 style' [w/`doc:' keyword].
23934
23935 * data.c, fileio.c, indent.c, print.c, search.c, sound.c,
23936 * sunfns.c, textprop.c, undo.c, xselect.c: Change doc-string
23937 comments to `new style' [w/`doc:' keyword].
23938
23939 2001-10-21 Jason Rumney <jasonr@gnu.org>
23940
23941 * w32fns.c (Fx_file_dialog): Pass a filter to GetOpenFileName.
23942
23943 * w32term.c (remember_mouse_glyph): New function.
23944 (w32_mouse_position): Use it.
23945 (note_mouse_movement): If the mouse moved off the glyph, remember
23946 its new position.
23947
23948 * w32term.h (struct w32_output): Correct spelling of x_compatible.
23949 (w32_display_info): Add mouse_face_overlay.
23950
23951 * w32term.c (notice_overwritten_cursor): Renamed from
23952 note_overwritten_text_cursor. Rewritten to take glyph widths into
23953 account.
23954 (x_y_to_hpos_vpos): Add parameter BUFFER_ONLY_P.
23955 (fast_find_string_pos): New function.
23956 (fast_find_position): Return the correct vpos. Add parameter
23957 STOP. In the final row, stop before glyphs having STOP as object.
23958 Don't consider glyphs that are not from a buffer.
23959 (fast_find_position) [0]: Add a presumably more correct version
23960 for after 21.1.
23961 (expose_window_tree, expose_frame): Don't compute intersections here.
23962 (expose_window): Do it here instead.
23963 (expose_window_tree, expose_window, expose_line): Return 1 when
23964 overwriting mouse-face.
23965 (expose_window): If W is the window currently being updated, mark
23966 the frame garbaged.
23967 (expose_frame): If mouse-face was overwritten, redo it.
23968 (x_use_underline_position_properties): New variable.
23969 (syms_of_xterm): DEFVAR_BOOL it.
23970 (x_draw_glyph_string): Add comment to use it in future.
23971 (x_draw_glyph_string): Restore clipping after drawing box.
23972 Fix a computation of the underline position.
23973 (w32_get_glyph_string_clip_rect): Minor cleanup.
23974 (x_fill_stretch_glyph_string): Remove an assertion.
23975 (x_produce_glyphs): Don't convert multibyte characters
23976 to unibyte characters in unibyte buffers.
23977 (cursor_in_mouse_face_p): New function.
23978 (x_draw_stretch_glyph_string): Use it to choose a different GC
23979 when drawing a cursor within highlighted text. Don't draw
23980 background again if it has already been drawn.
23981 (x_draw_glyph_string_box): Don't draw a full-width
23982 box just because the glyph row's full_width_p flag is set.
23983 (x_draw_glyphs): Fix computation of rightmost x for
23984 full-width rows.
23985 (x_dump_glyph_string): Put in #if GLYPH_DEBUG.
23986 (w32_draw_relief_rect): Extend left shadow to the bottom and left;
23987 change bottom shadow accordingly. Some cleanup.
23988 (x_update_window_end): Handle overwritten mouse face
23989 also for tool bar windows.
23990 (show_mouse_face): Set the glyph row's mouse_face_p flag also when
23991 DRAW is DRAW_IMAGE_RAISED.
23992 (clear_mouse_face): Return 1 if text with mouse face was
23993 actually redrawn. Make the function static.
23994 Reset dpyinfo->mouse_face_overlay otherwise note_mouse_highlight might
23995 optimize away highlighting if we pass over that same overlay again.
23996 (note_mouse_highlight): Call mouse_face_overlay_overlaps
23997 to detect a case where we have to highlight a different region
23998 despite not having left the currently highlighted region.
23999 Set mouse_face_overlay in the x_display_info. Avoid changing the
24000 mouse pointer shape when show_mouse_face has already done it, or
24001 there is no need. Handle mouse-face and help-echo in strings.
24002 (glyph_rect): New function.
24003 (w32_mouse_position): Use it to raise the threshold for mouse
24004 movement event generation.
24005 (w32_initialize_display_info): Initialize the x_display_info's
24006 mouse_face_overlay.
24007 (w32_set_vertical_scroll_bar): Don't clear a zero height
24008 or width area.
24009 (w32_set_vertical_scroll_bar, x_scroll_bar_create): Don't configure
24010 a widget to zero height.
24011
24012 * w32menu.c (single_submenu, w32_menu_show) [!HAVE_MULTILINGUAL_MENU]:
24013 Protect unibyte strings created by replacing their multibyte
24014 equivalents in menu_items.
24015 (w32_menu_show): Don't overwrite an item's name with its key
24016 description in case the description is a multibyte string.
24017 (single_submenu): Some cleanup.
24018
24019 * w32fns.c (x_laplace_read_row, x_laplace_write_row): Removed.
24020 (postprocess_image): New function.
24021 (lookup_image): Call it for all image types except PostScript.
24022 (x_kill_gs_process): Call postprocess_image.
24023 (tiff_error_handler, tiff_warning_handler): New functions.
24024 (tiff_load): Install them as handlers.
24025 (x_kill_gs_process): Recognize if someone has cleared the image
24026 cache under us.
24027 (valid_image_p): Protect better against invalid image
24028 specifications. Previous code could signal an error.
24029 (Fx_hide_tip, Fshow_tip): Doc fix.
24030 (Fv_max_tooltip_size): New variable.
24031 (syns_of_xfns): DEFVAR_LISP it.
24032 (Fx_show_tip): Add parameter TEXT. Set the tip frame's root
24033 window buffer to *tip* right after creating the frame. Set frame's
24034 window_width. Use a maximum tooltip size specified by
24035 Vx_max_tooltip_size, if that has valid contents.
24036 (compute_tip_xy): Add parameters WIDTH and HEIGHT.
24037 Make sure the tooltip is completely visible.
24038 (x_create_tip_frame): Set tooltip buffer's truncate-lines to nil.
24039 (Fx_create_frame): Adjust the frame's height for presence
24040 of the tool bar before calling x_figure_window_size.
24041 (x_set_tool_bar_lines): Clear the tool bar window's current matrix
24042 when the window gets smaller.
24043 (x_set_foreground_color): Set frame's cursor_pixel.
24044 (x_set_foreground_color, x_set_background_color): Cleaned up.
24045 (x_set_font): Handle case of x_new_fontset returning the same name
24046 as before, although there was a change in fontsets.
24047
24048 2001-10-21 Miles Bader <miles@gnu.org>
24049
24050 * data.c (Fplus, Fminus, Fmax, Ftimes, Fquo, Flogand, Flogior)
24051 (Flogxor): Add usage: string to doc string.
24052 * charset.c (Fstring): Likewise.
24053 * callproc.c (Fcall_process_region, Fcall_process): Likewise.
24054 * alloc.c (Fmake_byte_code, Fvector, Flist): Likewise.
24055
24056 2001-10-21 Pavel Jan\e,Am\e(Bk <Pavel@Janik.cz>
24057
24058 * buffer.c: Reindent DEFUNs and DEFVARs with doc: keywords.
24059
24060 * alloc.c: Reindent DEFUNs with doc: keywords.
24061
24062 * abbrev.c (Finsert_abbrev_table_description): Reindent.
24063
24064 * frame.c: Change doc-string comments to `new style' [w/`doc:'
24065 keyword].
24066
24067 See ChangeLog.9 for earlier changes.
24068
24069 ;; Local Variables:
24070 ;; coding: iso-2022-7bit
24071 ;; End:
24072
24073 Copyright (C) 2001, 2002, 2003, 2004, 2005,
24074 2006 Free Software Foundation, Inc.
24075 Copying and distribution of this file, with or without modification,
24076 are permitted provided the copyright notice and this notice are preserved.
24077
24078 ;;; arch-tag: 5dcc435f-4038-4141-b3bf-5be51cd76bd4